Feature 5 Post Mortem
This feature wasn’t all that difficult to implement. The hardest part was probably figuring out how to use vectors in c++. I ended up writing another function in the ObjUtilities class that reads an obj and turns it into a 2D array of heights. This is admittedly not the best way to do this, because […]
Feature 2 Post Mortem
For generating terrain, I decided to go with a heightmap approach, because I figured it would be more useful down the road. I found a few great high resolution height maps and corresponding textures at http://www.crydev.net/project_db.php?action=project_profile&team_id=1873&project_id=1809 which I used for my terrain generation. I leveraged the ruby script provided by Chris Johnson and converted it […]
Feature 3 Post Mortem
Shading the objects in my scene wasn’t difficult, but it took me a while to perfect. To start, I initialized the three different ShaderPrograms in my scene so I can set each individual shader to one of these three later. My three programs are for diffuse lighting, specular lighting, and my terrain. After doing this, I simply applied […]
Feature 1 Post Mortem
To load OBJ meshes into my scene, I didn’t change too much from the examples in the videos. I used the same function in ObjUtilities to load them in, and I used arrays of VertexAttributes, ShaderPrograms, and VertexArrays to store the different objects. Before I set the individual elements of the arrays, I initialized all […]
HW F.3 – Hannah
My scene is lit and my goal post is specularly-highlighted. I really didn’t have any trouble with this because it was pretty much straight from the lectures. Here is the shader code: Here is a comparison of the goal post in my scene from before it was […]
HW F.8 – Hannah
For this feature, I added a texture to my terrain. I found an image online of a view of a Packer football field, and the image was square. I took the image and converted it into a PPM. In my vertex shader, I forwarded texture coordinates on to the fragment shader using the x and […]
CS 455 Lecture 14 – Mipmapping and UV Mapping
Before Class Mipmapping Watch http://youtu.be/ZyH–0fh2hM. Watch http://youtu.be/NTy0uKlYpJQ. Watch http://youtu.be/NAcwJOvkx4M. Contrast http://www.twodee.org/forothers/check_linear.png, http://www.twodee.org/forothers/check_nearest.png, and http://www.twodee.org/forothers/check_mipmap.png. Read https://developer.valvesoftware.com/wiki/MIP_Mapping. Skim what NVIDIA has to say about mipmapping: ftp://download.nvidia.com/developer/presentations/2005/Misc/Lets_Get_Small-2005.pdf. The first third, ending at the talk of caching, is most relevant. UV Mapping Watch http://youtu.be/w7G1S2jGLu8. Watch http://youtu.be/6yfFelpqBdo. Read http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/UV_Map_Basics. In Class We haven’t talked much about Blender, so call upon me or Google if you’re not sure how to […]
HW F.2 – Hannah
I completed feature 2, which was including a computationally-generated terrain in my scene. I took the ruby code Chris wrote in his diamond-square lecture and translated it into C++ so I could run it in Visual Studio (I didn’t know how to run the ruby code :/, and it was fun converting it :). This […]
HW F.1 – Hannah
I completed feature number 1, which was loading an OBJ mesh into my scene. Essentially, I took Chris’s code from lecture, but changed it so that the obj file doesn’t have to be manually altered in order to work correctly (counting the vertex and face lines and putting the totals in the file). Now, my […]
Feature 2 Post Mortem – Conor
This is my post for feature 2 of the project, terrain generation. Since I felt like I didn’t fully grasp the diamond-square algorithm the first time that I watched the video, I watched the video again and re-implemented the algorithm in Python. As far as the algorithm itself goes, I didn’t use any other help than the […]