CS148 - Introduction to Computer Graphics and Imaging
This image was rendered with OpenGL for the scanline assignment of this class.
I modeled all the meshes as low poly meshes on Blender, and they were then loop-subdivided if needed to look smoother.
The textures (egg, marble, coffee, orange skin and orange pulp, background) were all taken from the Internet (most of them come from CGTextures, which has a big database of convenient textures). The pattern from the cereal box is adapted from a T-shirt found online.
The egg, orange skins, and orange pulp have a normal map, generated from the texture using CrazyBump. The orange skins also have a displacement map so that they don't look too artificial (a sphere with a normal map looked really too artificial), and the same for the donuts. I made the displacement maps from a computer generated cloud pattern on Blender. I could choose the size of the patterns so that the objects would not be too flat or too bumpy.
The icings of the donuts were a bit tricky : I used a fluid generator with high viscosity to generate a fluid torus falling on a solid torus, and I took one of the images that looked adequate. I then smoothed the surface to get a nice icing.
I blurred the background to simulate very grossly a depth of field. The result is not that convincing but it's still much better than a uniform background.
On the whole, this image has some interesting textures and geometry but it still seems very unreal, mainly because of the absence of shadows on the horizontal plane. With more time, I could have designed a way to make them appear by modifying the shader.