Wetter is Better

While working on a landscape for a forthcoming project at Ninjaneer Studios, I found that the animated reflections in some open water took prohibitively long to render thanks to a combination of the reflections and the diffused lighting of the scene. There had to be a quicker process that gave similar results, so I began investigating alternatives.

Render With Full Lighting and Raytraced Reflections

I found that Adobe After Effects has a filter called Displacement Map, allowing me to distort one layer based on another. One big drawback to this filter is the way it displaces, resulting in artifacts at the edge of the screen and other transparent areas where it attempts to sample data that is out-of-frame. This was easy enough to solve, but required some creative shot breakout.

Displacement Map (Note the ragged edges along the bottom and left sides)

Returning to Lightwave, I rendered out a reflection pass of the foreground elements. I changed the surfacing of the water so it was mirrored, deleted everything except the foreground elements, and set the foreground element to be unseen by the camera. This gave a pass consisting only of the reflection of the foreground, accounting for the perspective distortion in the reflection.

Thanks to the distance, there wasn’t enough perspective difference between the background and sky and their reflections to require a true reflection pass to be rendered, so I just reused those, flipped vertically. The clouds were a single panoramic plate, slowly receding, so those were likewise flipped vertically and layered into the basic reflection composite.

With the reflected version of the scene now created, all that remained was to make it look like water. I returned to Lightwave and rendered out basic diffusion and specularity passes from the original water object. To get the input for the distortion map, I created a duplicate of the water object and took surfacing in the bump channel and reapplied to to the color channel. After zeroing out the other channels and setting luminosity to 100%, I rendered it out, creating a shifting cloud pattern which corresponded perfectly to the diffusion and specularity passes I rendered earlier.

Diffusion, Specularity, and Bump Passes

Back in After Effects, I brought these passes in and layered them over the reflection composite I had created. I hid the bump layer and added an adjustment layer between the reflection elements and the diffuse and specularity layers. I applied a displacement map to it and set the bump layer as the input. All that remained was to tweak the horizontal and vertical displacement to make the reflection appropriately wavy.

The Final Post-Production Reflection

A version of this post appeared on the official Ninjaneer Studios blog.

Clearing Out the Workbench

Over at Foundation3D, a new downloads category opened up for unfinished models. A couple days after seeing the thread, I remembered that I had a very rough version of the hangar deck from the 2003 version of Battlestar Galactica, and also the foundation for the Halo: Reach version of the Pillar of Autumn. I’d finished the initial work for both, which is usually the part of modeling that gives me the most trouble, but I’d also burned out on them getting that far and moved on to other things.

I uploaded both of them. The Autumn includes a large number of screencaps from Reach, a few downloaded from the internet, but most I took myself to use as reference for the project.

The hangar was actually for a school assignment, to match a professionally made 3D rendered environment, either a virtual set or something from an animated film.

You can download the Pillar of Autumn and hangar (local mirror) from Foundation3D. The models are in Lightwave format, though I included OBJ versions for users of other packages. All I ask is that if you let me know if you do anything with them. I still have a few images in mind that I’d like to make with these objects.

As an aside, the reason I was looking at my hangar model was that I was playing with some of the new BSG designs from Blood and Chrome and comparing them to the parent show. While doing that, I did some scaling with the new Viper (based on a production diagram posted by Doug Drexler) and found out that it’s a big sucker (10.6 meters long, with a 6.8 meter wingspan). I thought I may have made a mistake, but the cockpit matches the size of the cockpit on the Mark II version, and they seem to be using the second Mark II cockpit set from BSG without any modifications, so they should take up the same space.

Babylon 5 2×01 Effects Update Part 004- Steamed, Not Boiled

Today’s update is a fairly straightforward sequence. We’ve now reached Act 2 of the episode, which begins with one of the common season 1 establishing shots of the station.

The stock shots of the station were something I wondered about earlier in this project. On the one hand, part of the philosophical basis for doing this is to give the show a more unified appearance, rather than the variations from shifting styles and evolving technology during the original run. On the other hand, I would like it if each chapter of the show had it’s own style (more than just how many and what kind of spaceships are loitering around Babylon 5). This didn’t quite occur in the original run, with very early stock footage being used in later episodes where the look of the show had evolved into something totally different, so what I’m shooting for can be described as stylistic evolution over the five seasons, but technical consistency for the run of the show. Another concern was the ever-present question of when I want to make a direct recreation of the original shot, and when I think I have my own idea for how to set it up. It’s hard to think of a “better” way to do any given generic, interchangeable establishing shot, as opposed to something with a more specific context.

What I think I’ll end up doing is to try to preserve the “feel” of the original establishing shots, while recreating them in my own idiom. For instance, a lot of the establishing shots in the first season of B5, including this one, either started from came to a complete stop, with a very spline-y acceleration or deceleration that screams “early computer graphics.” Eliminating that, along with framing it from the start in 16×9, makes the shot feel a lot more comfortable and cinematic than the version on the DVD.

Assuming this project continues on, I’ll probably make adjusted versions of early shots when they pop up in later seasons to fit in better with those episodes. A good example of this is one of my favorite touches from the new Battlestar Galactica. There was one particular establishing shot of the ship which was used throughout the series, and in later appearances, as the Galactica became more beat-up, new versions of the exact same shot appeared with the additional weathering. It was a fun twist on the concept of stock footage, and something I’d like to do myself.

The other segment in this update is from (the first half of) Sheridan’s good-luck speech in the Observation Dome. There are two shots out the window, one of which had a pivot and a zoom, and the other which was locked off. I found that the first shot was more difficult for After Effects to track than I had anticipated, so I’m going to mark that as another one to revisit down the line. The locked-off shot looks gorgeous, though. I only wish it lasted more than a second or two so I could appreciate the spinning stars while the observation drones pretend to be amused by anecdotes about the Dali Lama.

I’ve also been having a lot of trouble with the Premiere file I’d been using, so there’s an odd editing issue with the first Observation Dome window shot, and there are no crossfades or subtitles in this batch. I’ll probably just recreate the project file within the next couple of updates. Hopefully it’s just the Premiere file that’s gone bad, and the program itself isn’t reacting to something in the source videos.

Next up is another establishing shot of the station (which I’ll probably swap out for continuity reasons I’ll go into when I post it), then the Battle of the Line flashback, which will be preceded by what I’m sure will be an epic dissertation on just what happened during the Battle of the Line.

 

Model Credits:

Babylon 5: Ed Giddings
“Epsilon 3”: Nick Stevens
Epsilon Nebula: Amras
Starfury: Mark Kane
Starfury Wingart: Chris Guinn
Shuttle: Alexander Shareef

 

Babylon 5 2×01 Effects Update Supplemental- It’s Your Standard Warcruiser

It’s been a while since I updated this project, but a few weeks ago, it came back up in conversation. I realized at the time that I was now spending a lot of time sitting by a high-power desktop that wasn’t usually doing anything, and decided to take advantage of it.

I did end up trying Autodesk MatchMover. It handled the shot of Ivanova and Corwin from the last update with aplomb, but choked on the closing shot of the episode, which I expected to be the sharp, pointy crown jewel of difficulty on this project, containing both a lengthy camera move and a focal-length change.

I used the spare computer to re-render the second shot of the Agamemnon from the episode’s teaser, removing the odd tweening error I’d hoped no one would notice but which someone did. I then re-rendered it again when I got frustrated with the jump point opening effect. Yuri Parovin’s “A Call to Arms” jump point used a pre-made animated image map to accomplish the sparking that occurs before the point opens. Unfortunately, it was set for 30 frames per second, and I’m rendering the shots for this episode at 24 FPS. Lightwave appears to make an odd choice when it comes to splitting the difference in this case, keeping the timing correct by holding on the nearest frame, rather than making the transition within frames. The upshot was that the texture would hold for two frames, then skip a frame, then proceed normally for a time, giving the effect a noticeable stutter.

I asked around at the office, and figured out a plan of attack to recreate the effect procedurally. In Lightwave, it’s using “Previous Layer” as the input to a gradient shader, and in Maya, it’s called a Ramp Shader. Whatever it’s named, the way it works is to take a source image and redefine what its colors output as. In this case, grey becomes white, and both black and white become black.

I’d seen this technique described before, in a presentation by Bungie Studios (“Blowing S#!t Up the Bungie Way”) describing how they were able to get everything from flaming explosions to electrical arcing from one or two grayscale textures, and recognized it as how that jump point texture had to have been done, but I hadn’t realized until speaking with bottomless font of wisdom Chris Brown (my coworker, not the one you’re thinking of) how to translate that technique into the programs I use.

I tried a purely procedural solution, but it didn’t quite look right. The “energy ring” was too even, and it didn’t crinkle up at the center of the cone object the way the image map did. I eventually created a map in Photoshop to use as a baseline, and animated the “Previous layer” gradient instead. I threw in a semi-transparent layer of fractal turbulence in Lightwave which was gradually animated just so the energy effect wouldn’t repeat precisely every time. This was also the most contact I’ve had with Lightwave’s node-based surfacing, and I finally used some of the features that set it apart from the traditional surfacing options. The ability to directly feed one texture into multiple channels was a revelation, compared to the old way of having to copy-and-paste texture layers from color to specularity to glow to transparency and so on.

The upshot is, the new jump point now looks smooth opening up even at 24 FPS. Here’s the updated version of the shot.

I took another pass at the lighting rig for Rhys Salcombe‘s Minbari Warcruiser, brightening it considerably and switching the lights between the bottom ribs to single points rather than pairs of spots. I experimented with doing the effect with a luminance map, but it didn’t quite achieve the goal, so I stuck with doing it with lights. I also created a beaten-up version of the ship to represent the Trigati, to give some visual credence to the idea that the ship had been square in the middle of the biggest battle of the Earth-Minbari War when it deserted and hadn’t been able to make port for repairs in the twelve years since, and to differentiate it from the second Warcruiser that shows up at the end. It’s the first time I’ve done modeled damage on a spaceship, so that was fun.

The top fin has a blast mark on both sides, inspired by one of the shots of the Battle of the Line in “In the Beginning,” where a Starfury crashes into that section of a Minbari ship and blows out through the other side. I chewed away the lower left fin, and added a fairly large hole on the right side of the main hull, as if the right forward gun on the ship had misfired. I put a layer of procedural dirt over the whole ship, as well. I’m sure some people will think I’m overdoing it, given how much the Minbari outmatched Earth during the war, but there were a fair few shots of damaged Minbari ships in ITB, and I figured a Warrior Caste ship would be more likely than most to wade into the middle of the fight where they might take a few blows.

 

 

Ninjaneer Studios Projection Mapping Display at Otronicon

Recently, my company, Ninjaneer Studios, was invited to exhibit at the Otronicon event. We decided to set up a small-scale 3D projection mapping show. My specific contribution was the cityscape at the end of the show.

http://www.youtube.com/watch?v=gNpawNyJ1ng

While Ninjaneer generally uses Maya for 3D work, I use LightWave occasionally, especially in projects where I’m working solo. This was my first big test of a cross-platform workflow, since the template for the stage and projector set-up was a Maya file, I wanted to model the city buildings in Lightwave so I could work with the greatest speed, and my scene would have to go back to Maya for rendering by my colleague Christopher Brown, who was in charge implementing the show. It was much easier than I expected, though it helped that thanks to time constraints and the nature of the final output, I elected not to give the buildings more than the simplest of surfaces.

Design doodles

The first step was to do research. I had five-and-a-half rectangular silhouettes, and needed to make each building as distinct and interesting as possible. The first building from the left was inspired by a computer-animated video showing the construction of the replacement World Trade Center tower in New York. I took advantage of the transparent design to incorporate an elevator at each corner, adding some life to the building.

Building two was primarily based on the Flatiron Building, also in New York. It was the last or second-to-last I did, and I felt I was being a bit too modernist with the others, and that “Otron City” (as no one else called it) needed some older architecture. I also wanted to make a small reference to the apartment building which was the setting of my University class’s graduation project, the animated short “Squeaky Business.”

Building three was a lucky break during research, coming from a Google image search. I eventually learned it was a (new? Proposed? I never found a detailed description) building in Miami. I actually decided building four would just be a concrete cube with some fans in it before  I found out how the practical boxes would be arranged, since it was the only thing I could think of for something so small. It ended up fitting perfectly on top of number three as if it were a machine room. The inclusion of the fans added some more animation to buildings.

Building five was loosely based on the Swiss Re building in London (which I had never actually noticed before the most recent season finale of “Doctor Who,” where I briefly thought it was a special effect because it was so aggressively modern).

Building six is my personal favorite, and is based on the HSBC Building in Hong Kong. I became aware of it during the research process, while I was looking through a coffee table book I got on clearance some years ago in case something like this happened, Masterpieces of Modern Architecture.

Our template 3D set

I exported the Maya template scene for the show’s setup as a Collada file, and brought it into LightWave Modeler. I modeled the six buildings and sent them back to Maya using LightWave’s FBX exporter, since I wanted to try all the interoperability. Due to time constraints and the way the fact that fine detail wouldn’t be very apparent in the final output, the Maya versions had just simple values set for the shading. I set up a basic scene with duplicate buildings filling out the background and a skydome rotating around the scene to give the illusion that the time of day was changing and really sell the simulated depth of the projection, as well as animating the fans on building four and the elevators on building one in a cycle so the whole thing could be looped.

The Maya version of the cityscape being projected

During the course of Otronicon, there were periods of downtime where I returned to the LightWave version of the city. I  added texture maps to the window boxes of the buildings, gave the rest of the buildings more complicated procedural textures, and added basic lighting setups. Once I was done, I rendered the “sweetened” version of the city as a still in day and night versions, to be used on our idle screen in between shows.

The LightWave daytime version of the city being projected

The LightWave night version of the city being projected

A version of this post appeared on the official Ninjaneer Studios blog.

Presenting “Blue Box,” the New Fragrance From Amy Pond

Let it be known that boredom, inspiration, and graphic design experience are a dangerous combination. In a recent episode of “Doctor Who,” we learned that the Doctor’s now-former companion, Amy Pond, had made it big as some sort of cosmetics or fashion designer, complete with her own line of perfume. On the TrekBBS, Samurai8472 made a post saying that this perfume ad would be a pretty good design for an Amy Pond ad.

I immediately saw where he was going with that (I hope), and started trolling the web for the necessary images (note to Karen Gillian: Please be photographed more in full body shots, against solid-colored backgrounds, while looking towards the camera. My options ended up a little limited). The central elements ended up being photos used for cardboard standees of Amy Pond and the TARDIS, this HDR image of London and this TARDIS inkbottle, which may or may not be a Photoshop. A few pixels pushed, et voilà.

 

Soft Opening

I’ve finally gone through with beginning to create a new homepage. Or is it “blog,” now? Vanity-internet-place-with-my-words-and-pictures. And it only took three and a quarter years.

I chose WordPress because it combined versatility with ease of use. Most importantly, it would give me an easy way to include primarily written articles in addition to image galleries, as I saw with sites like Modelers Miniatures and Magic and Craig Clark’s site. I’m looking forward to squaring the circle on that one, and using a blogging platform to host a site whose flagship feature will be image galleries, video files, and 3D model downloads.

My current plan for the site is to begin by duplicating and updating the content of my old site.

  1. Upload still image galleries
  2. Upload movie galleries
  3. Upload 3D models (I should probably check that the archives are up-to-date)
  4. Copy over any remaining oddball pages from the old site, such as my build-a-Stargate guide
Next comes the exciting part, the content I couldn’t have put on the old pages if I tried.
  1. Copy image old image and animation commentaries from various internet forums I posted them to, and provide links to each commentary with the corresponding image in the galleries. Backdate them to reflect when they were originally created. If all goes well, this will result in posts that are ostensibly older than the WordPress platform itself. This will be cheerfully ignored.
  2. Copy over other content along these lines, such as my recent and recently delayed Battlestar Galactica rewatch and review series. I can’t really think of anything else at the moment, but I’m sure something will come up. If you have any suggestions for the Best of David that should be copied over to here (and you probably do, since the only way you’d be reading this is if you were systematically going though the blog, since God knows it won’t be anywhere near the top of the heap once I actually announce this thing).
  3. Announce this thing! Open it up to search engines, pimp the link out to friends and forums, and set up redirects from the old site. Redirects that go to the corresponding pages, if I’m really feeling my oats that day.
  4. Regular publishing, including cross-posting commentary on new images, animations, and models, articles on whatever I feel like writing about, and, most importantly, a portfolio section to set apart my professional and personal work. I intend to cover that work to the same exhaustive extent I write about my personal work, to the extent which I am allowed to by my employers.
At some point, I’ll also have to find a proper theme for the site to rejigger the look and feel, but for now, content must be king. To the coronation we go…

Babylon 5 2×01 Effects Update Part 003- A Miscommunication About the Time

And here comes the really ambitious part. I’ve decided to fill in an appropriately spinning starscape into the Observation Dome window. The first scene in the C’n’C was next up in the episode. One of the shots was locked off and at an angle, so there were no reflections, characters, or preexisting felt-and-rindstone star-fields to worry about. The other had all of those, as well as a relatively sweeping camera move that I had to match in Lightwave, rather than just rendering the view outside from the angle where you could see the most out the window and match-moving it in After Effects. In fact, it’s probably tied for the most difficult such shot in the episode. In light of that, I just temped it in here, superimposing the exterior render on top of the episode footage. I’ll come back later after I’ve done more of the simpler ones and gotten a better handle on how things work. Not to mention that I didn’t do the best job eyeballing the match move in Lightwave, and missed rendering one frame. Whoops.

Actually, I just remembered that my student copy of Maya is good for a while longer, and it included the unimaginatively named MatchMover. So, that should at least solve my “shots with big camera moves” problem. That only leaves the “thundering pain in the butt rotoscoping” problem. Why couldn’t the Earthforce uniforms have been, like, powder blue instead of navy? Why couldn’t Ivanova be blonde?

Anyway, here’s the scene in question, in glorious 720p. Even though that slightly uprezzes my 3D stuff, and drastically uprezzes the footage from the DVDs, it’s the only thing that I can think of that’ll stop YouTube from compressing it to death when I upload something at anything less. There’s also a photoshopped mockup for what the difficult shot might look like once it’s properly masked, and a modeler screenshot of the low-detail C’n’C I built so I could match the shots to exactly the right position and angle on B5.

I built it by matching camera angles to DVD screencaps in layout then shifting points in modeler until everything lined up. It’s a bit weird, probably since I had to guess about the original camera FoVs, but as long as the window was close, it was good enough. I’ll come back to it later and try to adjust the whole thing to be in proportion, especially the right side. The captain’s station is so screwed up, I don’t even know how it’s all supposed to fit together in the same space as the left side.

I was also really surprised when I figured out that the left wall wasn’t perpendicular to anything, not to mention how much bigger the room is in scale to the station than the corresponding part of the show model was.

Babylon 5: The Complete Second Season is available on DVD.

Babylon 5 2×01 Effects Update Part 002- Paying Off Karma

So, I’ve still been fiddling with this in the background, conducting some research and prep-stuff. Just to make myself happy, I found an on-line calculator for centrifugal artificial gravity and got a spin-rate for B5 that I could use with authority (once every 90 seconds). I added more of a self-lighting rig on Rhys Salcombe’s Minbari Warcruiser based on Sheridan’s ship in “The Lost Tales,” with lights in the recesses between the ribs, and one of B5 Scrolls’ interviews mentioned how the high deffy Epsilon 3 map was made for TLT (a recolored Mars with a bunch of gouges added from topographical surveys of the Grand Canyon so there’s somewhere for the Great Machine to go) so I shamelessly ripped off that tactic because I don’t trust my own painting ability and it looked fine in the movie.

I noticed something while splitting out the rest of the shots for this episode which amused me. The last establishing shot before the rogue Minbari ship arrives is the sun going down behind B5 and the station lights coming on. The first one after the Minbari are taken care of is the sun coming up. So, I have three choices, near as I can tell.

1- I can ignore it, like they did in the episode. 2- I can keep the establishing shots and redo all the scenes with the Minbari ships to be in local night, which will look cool and/or be an enormous pain in the butt, or 3- I can flip the establishing shots so it’s morning when Lennier explains Season One to Sheridan and Ivanova and evening when everyone meets up at the officer’s club and Sheridan gives his speech to an empty C’n’C. I’m leaning towards the last one as making the most logical sense.

Yesterday I cranked out the next shot in the episode, an establisher of Babylon 5. When I was looking at it, I realized that, as nice and proportional as Ed Giddings’ B5 is (the benefit of being the first one released after plan drawings of the original were released, IIRC), it’s really ’90s in terms of detailing. Since I’d want to replace it as soon as I could with a HD-level version anyway, I decided to phone it in a little and not do a proper shot breakout for this one yet, and just use it as a placeholder for now. Since I didn’t go through all that work, it meant I wasn’t really that upset when I looked at the finished product and found that I’d forgotten to reset my fake nebula radiosity from 30 fps to 24 fps, so the fill light is flickering, and that the red light in the center docking bay has shadow casting on, so the bay flickers off then back on when the little shuttle flies through it.

Babylon 5: Ed Giddings
“Epsilon 3”: Starbase1
Epsilon Nebula: Amras
Starfury: Mark Kane
Starfury Wingart: Chris Guinn
Freighter: Dave Hribarm
Shuttle: Alexander Shareef