Sunday, November 27, 2011

JII Version 4: Lobby Color and Ride Elevations

Version 4 of the interactive Journey Into Imagination simulation is up and running!

I've been working on the project quite a bit in the past 2 weeks.  90% of that work is behind the scenes stuff.  I had to do a lot of updating to bring the models up to speed with the new Play-up software version (that's a good thing).  I've also started trying to make the thing run better, and I must admit that there is a long way to go there.

Most importantly, I have rebuilt and upgraded the ride system (which had disappeared for a little while there).  It now runs better AND features elevation changes.  I finally gave up trying to find elevation blueprints and just worked out the elevations from watching online videos.  However, the trick is that I did it using videos of the current ride (which are much clearer than the old ride videos) and then compared the elevations against the old track plan.  I used both track plans and videos from Martin Smith to do this.  See here:

I've also temporarily added several placeholder photos of the ride scenes and some preliminary speed changes.  I'll adjust those speeds once I add the final soundtrack (that's my next major step).


Another thing that I've done in this version is adding a bit of color to the lobby.  I've been hunting for clean photos of the lobby murals and have had no luck.  I'm still looking but I went ahead and added what I could find for now.  I think it gives the proper look even if it isn't as accurate as I'd prefer.  The quest continues...


This version also features a new method for running music that I think sounds much better and is so much easier to manage for me.  I'm also starting to experiment with lighting.  In particular, I'm using lightmapping in a few places to varying degrees of success.  This is new to me but I'll get there.  I'm rapidly learning that my real-world understanding of theatrical lighting is almost entirely useless here.  Also, I'm using the free version of Unity 3D so lightmapping and shadows are limited.  Oh well.


Finally, this version has some simple effects added to it.  I think the animated fountains (not the jumping ones yet though) and sunlight flares add a nice finishing touch.  You be the judge.

Sunday, October 23, 2011

Bug Hunting in JII

This week, I have refocused my Journey Back Into Imagination efforts from adding elements to getting the web simulation engine optimized.  It's been getting bulky and has always been a bit sloppy in the controls.  


This task switch was well-timed.  The import tool that I use to get the Sketchup models into Unity is called Playup and it had a few bugs that I didn't really know how to deal with.  This is the very first 3D project I've ever attempted so I'm still very new at it.  Anyway, the biggest issue is that Playup was importing objects at a huge scale and rotated 90 degrees sideways.  I compensated for this by scaling up Unity components to match and by building my Sketchup models sideways.  These bugs have been fixed in the most recent version of Playup and it is wonderful.  However, it means that I have to go back and un-rotate the models, re-import them all and fix the upscaled Unity components.  It'll be worth it but the progress is slow going.  The ride system in particular is going to be a problem and it may need to be rebuilt from scratch.


As you can see in the attached screenshot, I have already fixed most of the exterior areas.  What you see here is about 1/100th the size of the last model.


I have also begun working on something called culling.  Using a Unity plug-in, I can now "turn off" items that are not immediately visible to save processor strain.  This sounded simple at first but doing it for the exterior is proving complicated.  The system uses zones of visibility, but my trouble is that the exterior is wide open and there is glass everywhere.  There are very few places where something is out of sight.  I'll figure it out.  This technique is going to be very important inside the ride though.  Things will be complicated in there and it will be nice to shut-off scenes that the riders aren't in.


Another thing I am adjusting is the controller sensitivity.  This is a lot easier now that the scale is smaller and more logical.  The mouse sensitivity in the next version will be less than 1/3rd of what it is right now.


The work load for these updates is pretty big.  What I think I'm going to do is get the scaling corrected in the exterior and EO Theater scenes but leave the ride scene alone until I can figure out the ride system issue.  I'll also get the controller sensitivity fixed and some basic culling in.  Then I'll update the web simulation at that point.  It'll be a bit of a step backwards since some previous elements might be missing (vehicles in lobby, EO canopy, trees) but at least it should run smoother.  This part isn't all that much fun but it'll be nice to have it done.


I'll let everyone know as soon as the fixes are published.


Tuesday, August 23, 2011

Big Changes



Big changes are happening for me and it has been a long time coming.  Anyone who has known me for longer than 10 minutes knows that my lifelong goal is to help design and build theme parks for a living.  A few days ago, I accepted a job with a company called Thinkwell Design and Production that does this very thing.  I start in September and the job is in Burbank (so I won't be moving again).
I will be a Technical Manager, helping take creative designs and figure out how to make them work in the real world.  My first assignment will be working on a new $1.5 billion theme park in China called Monkey Kingdom, but I may also be working on other projects at the same time.  Check out some pictures of Monkey Kingdom here.
I'm excited and terrified.  It's a little intimidating when when your dream for the last 3 decades is suddenly real and sitting right in front of you.  I'm very happy, but part of me still can't believe this is happening.

Tuesday, August 16, 2011

Florida Vacation

Harry Potter at IOA
I have just returned from a great vacation to Orlando.

Pictures, pictures, pictures....

This vacation was a trip to the WDW and IOA theme parks and also a family reunion.  There were 19 of us though the group never got bigger than 16 at a time.

"How many in your party?"
"A metric ****-ton.  Just give us the whole boat, please."

In addition to a much overdue family visit, this was my first time back in Orlando since I left Disney back in 2007.  I didn't get to see a lot of my old friends and co-workers but I did get to see some.  Good times.

I also got to see all of the new things that have been added to WDW and IOA since I left (although some of it was technically added before I left but I never had the chance to check it out).  And since I'm a hardcore theme park nerd, this is the part where I dish on those new additions.  If you aren't a theme park nerd, you may want to eject now.

HARRY POTTER
Quite possibly the most beautiful piece of bad traffic management ever conceived.  I'm consistently amazed at how gorgeous and detailed IOA is while simultaneously missing the mark on traffic flow, ride capacity and American-sized seating.  The Harry Potter land itself was eye-popping and very true to the movies visually.  And much to my surprise, I liked the butterbeer.  The ride was also very well done and had a great queue line... with one exception.  SERIOUSLY, setting the queue in a greenhouse does not help with the stifling heat on a psychological level no matter how much fake snow you put outside.  The ride was cooler than I thought it would be.  Well done.  As for the queue to for the Dragon Challenge.  How did they manage to make the coolest queue in IOA into the lamest?

HAUNTED MANSION
I was really looking forward to this and I was not disappointed.  I believe this was done as a series of separate enhancements over a long period of time.  All of them were great without interfering in the original flavor of the attraction.  The staircase scene was my favorite and the new attic was extra creepy.  Loved this.

STAR TOURS 2
Holy ****!  I heard good things about this but still didn't know what to expect.  An amazing surprise is what I got.  This was more than an update.  It's a whole new attraction and the quality is unmatched.  I knew I was in for something cool when I saw the detailed new console graphics next to C3PO in the queue.  I thought the abandoned Rex pilots in the queue was a nice touch.  I only got to ride once (Kashyyyk and Coruscant) and was blown away.  The depth of the CGI is intense for a theme park ride.  It kind of made the prequel trilogy worth it.  I can't wait to do it again.

LMA w/ LIGHTNING MCQUEEN
The replacement of Herbie with characters from Cars was a good choice.  Making the sequence go on for what feels like 20 minutes... not so much.  Also, the assumption that everyone has seen Cars 2 was annoying.  The "story" made absolutely no sense to me, not having seen the 2nd film.

CAPTAIN EO
I don't know if it changed since re-opening or if the WDW version was done differently from Disneyland.  Either way, this was a much better experience.  Gone away was the annoying bounce through the entire "We Are Here to Change the World".  The subtler theater movement and whip warrior / rat tail programming was a nice enhancement here.  I know this attraction's rebirth may be a short one but I'm glad to see it back for now.

MONSTERS INC LAUGH FLOOR
This is just cute and I really enjoyed it.  Elements of it seem eerily similar to a proposal I made while working at WDW but that's OK.  I doubt they stole my idea but if they did, somebody owes me lunch.  As much as I miss Timekeeper, I do really like this.  Fun!

SPACE MOUNTAIN
I thought this was going to be another update like the Mansion.  Mostly, it was just a sponsor removal.  I still like the ride but the changes are very "Meh".  Why did they kill the man and dog robots in the exit scenes!?  Lame!

PIRATES
I knew these changes would be minimal.  Best I could tell, the only change was the film on the fog curtain to include the latest movie.  Since the fog curtain is the most out of place enhancement in the ride, I can't say the film change helped much.  Oh well.

FANTASMIC
Mixed feeling about my old stomping grounds here... and mostly about pyro.  Simply, the decision to cut pyro from the 1st half of the show (Sorcerer comets and flowers) was just wrong.  Shame on y'all.  The additions of pyro later in the show were cool though.  I miss the saxons on the Steamboat but the waterfalls do add some consistency.  Making all the tracer plates the same color was a little lame though.  The strobes and twinkle lights in the mountain looked better than I remembered seeing in a long time.  If they rehabbed those, good choice.  All nit-picking aside, it was nice to see the show again where a little piece of my soul (and a lot of my programmin still lives.

Whew!  I've got my park and family fix for a little while now.  I'm happy and exhausted (and somehow NOT sunburned for once).  I'd been looking forward to this trip for a long time and it was exactly what I hoped for.

Wednesday, July 13, 2011

Dreamfinder's Ride


I've started building the interior ride parts now.  First up also happens to be one of the more intimidating parts of the project for me: the Dreamfinder Vehicle.  Check out the photos HERE or download the Sketchup model HERE.  Some parts and 2 important occupants are still missing but I have to determine how I'm going to handle their animation before I can add them.  I hope to put the vehicle into the interactive model soon.

Sunday, July 3, 2011

Big Interactive JII Update

The latest version of the Journey Into Imagination simulation is online.  See it HERE.

At first glance, there aren't a lot of obvious changes to this.  But there are a TON of technical changes.  The biggest change is that the whole thing has been broken down into separate scenes to save processor power and load times.  I'm now maintaining 4 different Sketchup models, customized for use in the Untiy game engine: Outside, the Ride, Captain EO interior, and the Image Works (which is not available online yet, though you can go upstairs into the pyramid for a better view).  I've also turned off a lot of heavy geometry and will be fixing it to run smoother and faster in future versions.  Almost every inch of these models has been rebuilt in some way for use in Unity.  Programming will be easier in the future.

The ride simulation is now integrated directly into the overall model.  There still isn't much to see in there but it is working. You can look around 360 degrees while on the ride and press "Enter" when you want to get off.  Although it is still running at super speed for now, I do have the turntable synced up (mostly via programmer cheating) and the 90 degree rotation works as well.  I'll eventually add the proper speed changes, but that will probably wait until time to sync the soundtrack.

I have already started learning and integrating audio and lighting.  I'm a theatrical technician by trade so I'm having to un-learn how to use these tools.  They don't really work like real life in Unity.  You can see some early lighting attempts in the Captain EO scene.  I also put some (at least temporary) audio in most of the indoor areas.  Those elements should be working better in my next major update.

This little project has now officially become the most technically complicated thing I've ever taken on without being paid for it.  I'm a professional control systems programmer and I think I've become pretty adept at Sketchup, but the 3D game stuff is totally foreign to me.  It's fun though and I'm glad I'm doing this.  It is forcing me to learn not only Unity and more advanced Sketchup functions but also things like Javascript, C#, Blender (animation is another big learning curve for me), and the wonders of 3D geometry and math in general.  I'm really hoping to come out of this with a nice marketable skill set.  It feels like a long road to get there though.

I hope you enjoy the updates.  Please feel free to give me useful feedback (bad or good) or advice.  I'm also always on the hunt for new reference resources.  Soon I'll be crediting some great folks who have sent some wonderful material.  Thank you all.

Friday, June 17, 2011

Ride System Simulation

The last couple of days have been spent on one of the bigger technical challenges I've been preparing for.  I built the functioning ride system (and rider viewing engine).  It actually works!

I built this in Unity using a module called Splines.  The track, walls and scale are all correct but the speed is very high to offset the fact that there is basically nothing to see yet.  I still need to add the speed changes but that is proving complicated since my "train" is actually 4 autonomous vehicles that would close in or spread apart as they pass over a track-based speed trigger.  I need to figure out how to get the lead car's speed changes to trigger the other 3 at the same time.  Working on it.

The vehicles do make the 90 degree turn for the Flight of the Imagination scene but I haven't put in the elevation changes yet.  That is mostly because I don't know where they are yet.  I think my next challenge besides the speed triggers will be synchronizing the turntable.  I may be able to cheat with this since I only have to deal with one train and one POV.  I would love to eventually create a fully functional 3rd person view of the entire ride running at once.  That would be extremely complicated though.  I would basically be faced with the exact same technical challenges as the original ride programmers.  I'm going to focus solely on the single train 1st person ride POV for now.

My plan is to make this a "scene" in the game.  When you approach the load, you'll be moved into the vehicle and ride it restrained this way.  In the load scene, there will be an endless train passing through load to give the correct Omnimover appearance but it will switch to the single train for the ride.

Speaking of scenes (which I'm learning about now), I've decided to divide the interactive model into 4 scenes: outside (including the main ride lobby / load), the ride (with restrained POV), Captain EO interiors (with music), and eventually, The image Works.  This will lower the load times and break the project into more manageable chunks for programming.  The next major update should include that break up minus The Image Works.  We'll see.