Thursday, December 20, 2012

UDK: Aligning MobileInputZones with your ScaleForm UI

I spent some time getting my UI ready for iOS, using the Layout tools ScaleForm provides. This let me get my UI elements to work on all screen sizes and aspect ratios without having to do complicated functions and other hacks. If you're doing a mobile UI in ScaleForm, I highly recommend it.
Here's some reference:
Scaleform Docs on Layout
Scaleform Layout in Unity (I know, the video is for Unity, but the same code applies)

So, everything was working great... until I got back to UDK (Shocker!)

What I needed was a MobileInputZone to stay the right size and snapped to the upper-right hand corner. After tweaking pretty much every setting, I figured out two things:

Tuesday, December 18, 2012

Stupid Kismet Tricks : Forcing a Camera Fade While a Matinee with a Fade Track is Playing

I just ran into an issue where I wanted to do the following:

  1. When the app opens, play the Opening Matinee sequence
  2. When the user clicks, fade to white
  3. Fade from white into another Matinee
The problem I was having is that the Fade SeqAct won't override the Matinee Director Track's Fade keyframes. I'm assuming this is because they are updated on every tick and override the Camera's fade variables.

What I've done is set up two Matinee's: A FadeIn and a FadeOut. Each one only contains a Director track with a Fade track and the two keyframes to set the fade on and off.
Fading Matinee
And, in Kismet, I simply play the fade Matinee and when it's complete, it turns off the Opening Matinee and Plays the second matinee (Which also has a Fade track!).
(There's a Fade SeqAct there. It's ONLY turning the fade color to pure white, FANCY!)

Saturday, December 1, 2012

NHI Safe Bridges App

In addition to the apps in the previous post, I got to design a new one. This time I had a stack of data to visualize with TONS of variations. Almost all the data was delivered as text files or spreadsheets or velocity maps in .txt form.

I wrote translations scripts to bring it into MAX then out to the UDK. That was a real challenge as all of the datasets were needlessly complicated and interconnected. (One text file contained the vector of the water's flow and the Z position of each sample as an offset from the terrain, defined in another .txt file that loosely defined a triangulated grid...)

However, i'm most proud of the UI. It was done in Flash/Scaleform using the CLIK components extensively. They've been subclassed to add a tiny bit of additional functionality but nothing remarkable. It's really fast and user-friendly and presents the data in an easy-to -use manner. Also, the CLIK components allowed me to mock it up really fast and get signoff fromt he client upfront before adding all the fancy-schmancityness that you see in the video :D

NHI Apps Videos

We got to redo a bunch of our training apps for the National Highway Institute. They use them in coursework for their hydrology courses for bridge safety engineers. The applications demonstrate various inssues that are often difficult to explain without visual aid.

These apps cosistently rank as the highest rated features of each course they are featured in. As the sole designer, artist and programmer for these applications.

The UDK made doing each of these MUCH easier due to the more powerful toolset. in fact, it was really hard in some cases to not completely redo everything to take proper advantage of the UDK.

For example, the terrains are 25,000 polys+ each and have multiple morph targets. Transforming them is hugely expensive thanks to all the pretty rendering tricks available :D

However, due to the tiny budget available, I was only really able to redo the rip-rap stones as a simple plane with fancy mapping applied to mimic the geometry rocks used previously.

Thursday, August 30, 2012

UDK Lens Flares as Labels (+Using the Emitter Color to modify the UV coordinates of the texture)

So, I've needed to put floating labels in some of my scenes. For this, I've been using lens flares to good success.
Here's an example:

As you can see, it's pretty straight-forward. I'm just using the source of the LensFlare and adjusting the  properties to fit the scene. With this, I get fading up close, fading far away and other nifty transforms based on distance and screen position.

In my current project, I needed sequentially numbered labels from 1-9. I really didn't want 9 textures, 9 material instances and 9 lens flare objects in my library. If I had to update any of those things, it would be an ordeal. Admittedly, a MaterialInstance would have helped a lot, allowing me to make changes to all the labels fairly easily. However, the LensFlare system does not have an instancing system, so I'd still be stuck with 9 lens flares to adjust. Blech! I REALLY wanted to find a way to avoid that and have a single texture/material/lens flare to deal with, and I think I found a good way of doing it.

Monday, February 20, 2012

Tutorial: How to get an accurate sun path into the UDK from MAX

Okay, so this is pretty hackey, but it works great. One day, I'll have the time to implement a real sun/sky system with actual math but for now it will just have to do. Really, I'm just stealing the animation of a Daylight system in MAX and rigging a light to it in UDK. There's a couple of tricks to make authoring in the UDK easier as well as some thoughts on how I can expand the system in the future. I won't be discussing the details of the sun and sky to create convincing sunrise effects, just the way I got the camera path into the UDK.

Monday, February 13, 2012

Stupid SVN Trick: Move your local Working Copy to a new UDK build

I just had to move a large project to a new build and didn't want to download all 40 gigs again from my SVN server. I recently updated to version tortoiseSVN 1.7 and noticed that it took all the .svn hooey and put it into one folder at the root of my install. This made me wonder what would happen if I just moved that folder to the root of my new, stock install of UDK and update. BAM! It worked! It takes a while to copy the working copy back out of the .svn cache but it's WAY faster than a checkout and way easier than doing it by hand.

  1.  Copy the .svn folder from your old build
  2. Paste the .svn into the new, fresh build
  3. SVN>Update the new build
  4. Drink Coffee

Thursday, February 9, 2012

Doha Map WIP Flythrough Video

Finally got Matinee working with the Transportation Simulator codebase. Goodbye networking, nuahahaha! :D It's a LOT more fun to drive these maps with tons of AI traffic to bump into :D

Sunday, January 29, 2012

My Favorite UDK Bug

I finally get to show this off, yay! I had it sitting on my desktop, thrilling my toddler for the last year. I'm really sad this bug is fixed but it made for entertaining stress tests. :D

Oh, and yes. It's still confidential. Please delete your memories of seeing this after viewing. Thank you.

Great joke at the end.

It's probably a bit obscure, but the wntire reson we created the driving simulators was because the tarnished image of the new Bay Bridge after a rash of accidental deaths happened around the last detour. Then they show the press what it looks like to plunge off the bridge in a simulator. Doh!

Friday, January 27, 2012

UDK Day/Night System (Update!)

I've been trying to get the 3D Studio MAX daylight system sun position into the UDK for a bit now. I managed to rig a way to export a skeletal animation and tie the light to it. I'm writing up a tutorial now to help everybody out who is trying to impliment something like this.

While it's certainly harder than just rotating the sun in the UDK, I'm getting location-specific, accurate sun position as well as an accurate arc through the sky.

The tutorial on how to get the accurate path into the UDK is here:

Tuesday, January 24, 2012

Using single-sided V-Ray materials for translucent effects

On the pbviz boards, Nicky asked how to acheive a translucent stained-glass look. V-Ray has a really simple way of doing this:

By using a single-sided V-Ray material, light passes through very convincingly:

VRay Translucent Lighting

Friday, January 20, 2012

Doha Map WIP

Tracey and the boys are at it again. Simply amazing stuff. We're building a map based in Doha and the team simply took it to the next level. I can't wait to get my hands on it and get it sparkling! :D

Lots More pics here: