Thursday, March 15, 2012

Math:Dot Product

Once I got into fx for games I found myself using a ton more math when creating shaders for our particle effects. This gave me a renewed love for all things mathematical as well as a practical application for mathematics I've learned over the course of time. It also gave me a reason to expand on that knowledge and push it further to allow me to create better shaders. It's incredibly rewarding. That said, I've decided to make some videos demonstrating some general and not so general mathematics used in creating shaders. The principles and operations are not limited to an engine as the math behind how the shaders work is universal. Such is math. I will preface this first video by saying I am not that great of an instructor and I sometimes find it difficult coming up with the right examples to explain things. Because of this I have asked Eben Cook to preview my work and make sure it's understandable and correct. I have jumped into the deep end here with the first video by explaining the "dot product" of two vectors. If it's a little too advanced then don't worry I'll be starting on some more basic concepts in my forthcoming videos. I'll be using UDK to demonstrate these examples since the material editor has a good preview system for visualizing the math. Enjoy.

Sunday, March 4, 2012


This level was a huge undertaking on our department. Almost every fx artist had their hands on it and we still didn't get everything in that we wanted to or the amount of polish we desired. This was mostly due to time constraints and you rarely feel like you got "everything" you wanted in but that's the nature of deadlines. All that said, The level is really impressive. The studio developed a really cool technique that actually manipulated the geometry for the hallucination sequences. This required a lot of additional tweaking at the end since this wasn't just a post effect not everything would distort. Liiiiiiike particles. The emitters would move around but of course the sprites could not be deformed so we had to limit the types of effects we propagated while this effect was active. In the area with the reflecting pool there was a second Drake that only rendered in the reflection and directed the player to different obstacles in the room. That was pretty cool. I was able to make an effect that Drake tries to grab under the water. It had to look interesting without actually resembling anything. Originally it was a giant golden nugget but, c'mon, it had to be more ambiguous. So That's what I came up with. I liked it. It worked. Eben created a really cool sand funnel effect where Marlowe meets her end. He also made the giant sand wall that comes rushing out at the end when you're traversing across the floating platforms in the sand. In addition to that he made a material that looked like sand thinly running over edges. You can see this effect coming through the ceiling when the whole place is coming down. Carlos gave us the ability to put a flow technique we use at the studio to make the clouds around the level look like they are moving. Keith also made the effects for the "Shade" characters but I'd like to make a separate post about the shades and the sand footprints he created for the game. That's just a rough overview of some of the highlights on the level. Everyone worked tirelessly down to the wire on this level and a lot of unique tricks were implemented throughout. Congrats to everyone still on finishing an insane spectacle of a game.

Who worked on this level:
Design: Eric Shatz, Jacob Minkoff
Modeler: Adam LIttledale
Texture Artist: Jeremy Huxley
Foreground Artist: Neilan Naicker, Mike Fadollone
FX Artists: Eben Cook, Mike Dudley, Doug Holder, Keith Guerrette, Iki Ikram
Lighting: David Witters