CS 455 Lecture 15 – Skyboxes, Environment Mapping, and Normal Maps
Before Class Skyboxes and Environment Maps Watch http://youtu.be/AOc42rtfwuI. Watch http://youtu.be/HdmRc7seDsg. Read section Simulating Reflection with Cubemaps in chapter 4 of your book, pp. 123-129. Normal Maps Watch http://youtu.be/3BI6J-TiC2A. Watch http://youtu.be/x7zUc38Zik0. Sadly, normal mapping is usually more complicated than presented in the videos. Read section Using Normal Maps in chapter 4 of your book, pp. 116-122. In Class Please work […]
Feature 8 Post Mortem
Applying textures to my terrain was actually more frustrating for me than it should have been. I thought that I had all of my textures ready to go, as there were a few of them that came with the obj files that I downloaded. However, for whatever reason, these textures refused to match up with […]
Feature 8 Post Mortem
This feature was fairly simple to implement. Using the code supplied by Chris Johnson, I simply had to read in the .ppm image for my texture and send it off to the shaders. One thing I had to worry about, was making sure my texture mapped to the terrain correctly. Because I felt it would […]
Feature 4 Post Mortem
This feature was not all that difficult to implement. I ran into some trouble trying to load the skybox texture initially, because I was already using a texture for the terrain. My renderer is not set up to handle multiple textures currently, and from what I could tell, would take quite a bit of modification […]
Feature 3 – Light Your Scene
This should be a pretty short post, because lighting is something that we have been doing for a while now. To light my scene, I am currently using a combination of diffuse, ambient, and specular lighting, depending on which objecting I am applying the light to. I still have pretty generic albedos for my objects, […]
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 […]