Sadly the Corner Store was cut from Surviving Independence so I'm posting a couple screen captures to archive the level. There wasn't enough production time to add the unique gameplay and scenarios for this level. One video shows the completed base modeling and the other shows nearly final environment art.
Independence has over 500 models & 1000 textures in it. As the only artist on the game, I had to develop fast production techniques. Knowing I wouldn't be able to hand-paint most of the textures, I created an uber shader network. The shader looked-up vertex values I would flood fill onto polygons while modeling. The shader then applied the appropriate base colors for the level theme and added some color variation , edge wear, & damage. I could then bake all the level textures with a single push of a button. This texturing method was similar to a Substance Designer workflow, but lightweight and without having to leave & return to the base 3d application. Below are screen captures showing this technique applied to props in the Corner Store. While this level was cut from the game, this method helped ship the other 37 levels!
Here is a Redshift vs Mental Ray sequence test. Cheats and workarounds for computationally expensive processing like global illumination, motion blur, depth of field, and refractions/reflections are a thing of the past!
Took a chance buying a new, but cosmetically damaged Tesla k20c off of Ebay. Had a small ding on one corner so I got it for pennies on the dollar. Works perfectly! Being a headless GPU compute card, I can change the motherboard bios to TCC (Tesla Compute Cluster) mode letting the hardware run without any overhead from MS Windows. In TCC mode my test renders were 50% faster, so it's worth the trouble to see if your headless GPU can run in TCC mode; Titans can... possibly others as well. Combined with the Quadro k5000 the nVidia drivers go into Maximus mode. Redshift screeeeeams!
Redshift GPU computing on the Reading Nook scene. This used to take hours to render with Mental Ray.
This is a great cheat for low cost 'dynamic' lights. If you bake lightmaps in passes, this is a very easy effect to author.
Essentially I combine two lightmaps; adding the dynamic map over the base map. For this demo, I do exactly that. In practical application, you would not want to double your lightmap textures space for a whole level. Instead, create a pass where duplicate chunks of localized geometry will hold low resolution dynamic maps (or even make a larger texture sheet for all the dynamic maps in your level, a 512x512 will do) and bake to a new set of UVs.
There is a lot of flexibilty, production time-savings, and specific look development which can be gained by building lightmaps (for realtime engines) in passes. Using mental ray, these passes are fairly easy to setup and bake. However, while final gathering (FG) works great (result-wise) for radiosity sampling, it is only single threaded when used for rendermapping. Seeing as how FG is a screen space method for sampling, I don't know if this can be called a bug (definitely an oversight). This limitation is made worse when several computers are used via satellite rendering to generate a single lightmap (or lightmap pass). The other systems sit idle, while one machine (using one core) calculates the FG prepass.
To avoid this production slow down and get your systems rendering with full CPU power, an environment sampling shader can do the work FG would normally calculate. Using mental ray's ambient occlusion shader with the below parameters, I generated the environment sampling with satellite rendering using 100% of 24 cores.
Use this sampling method with interactive IBL light domes for a fast and iterative lighting solution.
Here is the collection I use the most; feel free to download the .zip file. I took the liberty of giving the IES files artist friendly names. Using IES profiles to scatter indirect light energy into a scene gives a certain legitimacy to the render; even if the profile isn't used for light scatter effects directly. You can accomplish indirect scatter by setting up photon only lights with an IES profiles.
Streaming many 128 x 128 pre-baked textures on a consumer mobile device to push very highend looking graphics on limited hardware. Textures are loaded based on the viewers location; a 'poor man's' mega-texturing system. Fun to use all the cheats and lessons learned from the past to manipulate the phone's capabilities.
Using an intergrated compositor (Blender, Softimage, Houdini) it is possible to create an interactive studio environment to drive the IBL in a 3d scene. By wiring a couple vector paint nodes together in Softimage I can create an interactive environment map; then I use the map as the source image for the final-gathering or environment sampling. HDR Light Studio is a standalone product that does just that. Read about the setup in Softimage here.
This environment sampling setup was used in two, full-scale production, Tony Hawk video game projects.
Volume lighting tests with mental ray. Found this book very helpful. Its not an easy read (gets very technical) but contains an abundance of condensed knowledge that is difficult to find. If you use a version of Softimage prior to version 2011, download the .spdl files below for the required shaders.
Derek Jenson Blog
My website serves to archive experiments, document projects, share techniques, and motivate further exploration & artistry in 3d space.