Thursday, February 17, 2011

Roll Harder (Now With 100% More Splitscreens)

I've been incredibly busy with other work for the past week, so this post will be uncharacteristically short. Consider yourself lucky! I'm sure next week will see the return of my overly-long and excessively-wordy blog posts with unnecessary illustrations.

Sorry, I'm already getting overly-long with this one.

Anyway, I did manage to figure out windows-within-windows! Now when the smart camera is active, a window pops up to show what it sees. I also wanted to learn GUI text, so I stuck in a status which tells you whether an event is occurring or not. Again, for this test, the event is simply "the ball is moving." Of course, I didn't want the camera to quickly appear and disappear whenever the ball jitters a little bit, so I've made an easily adjustable variable for how long the ball must have been moving for it to be considered an "event." Likewise, you can determine how long the ball must be immobile before it's declared that the event is over.

As I've said, the user should also be able to control the main camera as if they're using Unity normally (or Maya, since it has the same controls). As far as I can tell, there's no included script for this which can be attached to the main camera... I may have to do that myself. For now, you can right click and drag the view around a little.

Enough of my yammering. Let's see some video!

So there you have it. You can see me move the main camera around a bit at the beginning of the video. Pressing 'x' on the keyboard makes the barrier disappear, causing the ball to start rolling, and the smart camera to start tracking it. Watch the camera view at the bottom, but you can also see the actual camera moving in the top. Exciting stuff.

Next week it's time for alpha reviews! I'm going to try out more complex events, to see how the camera responds to them (like when things become occluded)—right now the camera is just using the SmoothFollow script which is included in Unity, so I will start editing that to make it behave more interestingly. I really want the camera to handle single shots well before it starts cutting to multiple angles.

Time to get to work on "Ball Rolling Down A Hill Into A Wall: The Movie: 3: Roll With A Vengeance"


  1. Great video. Can't wait for the sequel, although sequels are normally a let-down...

    One thing that may be interesting is to work with zooms while the SmoothFollow is happening. If you can figure out when zooms might be desirable, you can have some sort of variable that says whether or not an event is zoom-worthy. Also, you could utilize zooms when the object you are following take up less than a certain percentage of the screen.

    It may be interesting to explore having one camera begin to follow one event and then pan to another event in the same shot (possibly one that occludes the first event). That may be farther in the future though.

    Unrelatedly, we heard Joseph Gordon-Levitt is starring in "Ball Rolling Down A Hill Into A Wall: The Movie: 3: Roll With A Vengeance" btw. Can you confirm the rumor?

  2. Don't worry, the next video is the "Godfather: Part 2" of sequels, not the "Godfather: Part 3" of sequels.

    And yeah, zooms are definitely something I want to do (along with other things like change in focus). In my design docs, I also talked about possibly doing "Camera Genres": you could tell one camera that they're an "Action Camera," and they would do lots of zooming and quick cutting and shaky cam; you could tell one camera that they're a "Romantic Comedy Camera" and they'll have slower paced movement; and so on.

    I don't know who your source is, but I can neither confirm nor deny that Joseph Gordon-Levitt will be playing The Riddler in future installments of the "Ball Rolling Down A Hill Into A Wall" franchise.