Wednesday, October 31, 2012

Entertainment Design Studio: Progress Pt. 2!

As part of my elective this semester, during which I am learning Houdini 12, I recently finished my bowl-breaking simulation. Watch the video of my progress and the final version below:
I'm quite proud of how it turned out, especially considering what it looked like to start with and the number of iterations it went through. One of the main things I changed between the previous iteration and this one is the way the bowl is broken. I initially used the "Make Breakable" shelf tool, which breaks the object immediately on impact. For the final version, I instead went with the "Break" shelf tool for the model itself, followed by the "RBD Glue" shelf tool to ensure that the break occurred gradually.

There are a few things I think could use some work, if I had more time to fix this up. I would definitely like to do something about the leakage from the bowl. My initial idea was to use a proxy volume, but the problem was that the bowl needed to be a rigid body in order to be able to be broken by the falling rock. When I tried to use the proxy volume, it collided with the bowl and popped out on top of it, defeating the purpose of the proxy volume entirely. Finally, I came up with a sort of makeshift fix for the leakage: I compensated for it by starting the simulation with the bowl already tilted and slightly cracked. This made the splashing and movement of the leaking fluid plausible, as the whole bowl was moving and cracking further. The other issue I'd like to fix, given more time, is that the fluid that leaks out of the bowl becomes thinner and eventually disappears, as is evidenced in the video. I think the leakage would be more convincing if I could add some fluid emitters beneath the bowl which emit fluid as the fluid leaks from the bowl, keeping the amount of fluid present in the scene constant at all times (rather than slowly decreasing).

I also had some technical constraints to work with. I would have loved to have used a glass material for the bowl, to give it that extra bit of realism. However, I discovered that the machine I have to work with is not powerful enough to render scenes with complex lighting or simulation. While this put a damper on my creative juices, I think it also poses an interesting and definitely useful challenge for me: learning to construct an effect such that it is as easy to render as possible, while still looking realistic.

All adjustments aside, I'm pretty pleased with the final outcome. I've added the bowl breaking video to my film demo reel, which can be found here.

I've started my final Houdini project for the semester this week, so expect a progress update on that soon!

Tuesday, October 9, 2012

Entertainment Design Studio: Progress!

As I mentioned in a previous post, I'm using my elective for the semester, Entertainment Design Studio, to learn the basics of Houdini and to start to create my own VFX demo reel. Thus far, I've gotten solid introductions to lighting, rendering, shaders, particles, rigid body dynamics, fluids, and pyro. I've also gotten the chance to create custom tools using nodes (the one I use most frequently is a Light/Shade/Render tool which sets up a basic camera, ground plane, key light, and fill light for rendering purposes). The new topic I've been learning for this week and last week is how to integrate Python scripts and expressions into my simulation. It's proving pretty useful for my current simulation!

Ever since I finished the particles and fluids section, I've been working on a small simulation with which I've tried to combine all of the physical simulation techniques I've learned. It's a work in progress which has gone through several different iterations, but I think it's going well. This "mini-project" started out as a geyser shooting up out of some terrain, but it was pointed out to me that, since I am a beginner at using Houdini, it would be better for me to start out with something on a smaller scale. So, I set out to create a simulation of a bowl of water, into which a rock is dropped. The rock breaks the bowl, and the water spills out. Video of the work in progress is below.

Some challenges I have run into thus far:
  • Realistic breaking - I haven't yet experimented with the Voronoi fracture node, and have instead been using the "Make Breakable" shelf tool. While this is physically accurate and easy to use, it doesn't provide a realistic-looking or interesting fracture. It would be cool if the fracture appeared gradually (small cracks at first, then bigger ones), but instead it fractures into large pieces almost immediately.
  • Rendering limitations - As I am not using Houdini as part of a project, I don't have access to the ETC's render farm. Because of this, I have to be careful of which materials and shaders I use, and how complex they are. As I found out when I tried to render a bowl made of glass, rendering time can really add up if I'm not careful of how complex the lighting and simulation is in a scene.
  • Feedback: Learning curve vs. realism - One of the biggest challenges I've found is the feedback I've gotten on my work so far from my classmates. Not the quality of the feedback, but rather what they are commenting about. I am the only one in my class (and, maybe, the only one in my graduate program) who has any Houdini experience, and, as I am a beginner, there is a bit of a learning curve when I work on projects. When they see my projects, my classmates can at most give me feedback on the realism of my work, but not on the technique, the latter of which I think would be more useful to me. 
I originally intended this project to only last about two weeks, but I think I can learn a lot more from continuing to experiment with different effects and techniques for this simulation. I'll be working on this project for about another week. Check back for the final version!

Sunday, October 7, 2012


This past August, I had the privilege of being selected to be a Student Volunteer at the SIGGRAPH 2012 conference, a conference and exhibition focusing on Computer Graphics and Interactive Techniques convened by ACM SIGGRAPH. There was no photography allowed at the conference, so the only two photos I have are of the lobby and outside area; however, rest assured that any photo I could take could not possibly convey how amazing this experience was for me. I have wanted to attend this conference for a few years, as it is such an incredible learning opportunity for computer scientists interested in computer graphics, as well as a great way to network. Unfortunately, I (until now) was never able to procure the funds to attend. I was ecstatic to be selected as a student volunteer this year and to have access to the ETC’s conference stipend as well, in order to make this trip possible! 

While at the conference, I attended many talks and presentations, including (but not limited to) “Studio Views of Demo Reels,” SIGGRAPH Dailies, Real-Time Live!, “Grooving” (a Studio Talk), “Effects Omelet” (several VFX studios’ presentations on how they achieved complex effects), and some presentations exclusively for student volunteers. One such presentation, “Getting Your Foot in The Door at a Major VFX Studio,” I found extremely useful. It was presented by Andrea Pace of the Production Services & Resources department at Sony Imageworks; she described an entry level position at the company (with equivalent positions at other studios) where I would be able to gain experience working on a major film production while also learning skills to carry on to another position. This talk definitely opened a new door for me in terms of career paths and skills I can work on in order to get a job in the film industry. Along the same lines, “Studio Views of Demo Reels” was also quite useful, as representatives from various studios showed reels and reel clips of skills they look for in potential hires.

Real-Time Live!, another favorite presentation of mine. showcased the latest trends and techniques in interactive visuals. The part of the presentation that I found most intriguing was “Beauty: Real-Time Visuals,” a presentation of BeautyPi. This is a project that takes advantage of high-quality, advanced, real-time rendering to create an engaging and interactive experience. BeautyPi is the perfect example of something I would love to do as a career: merging great VFX with music and audience interactivity to really captivate and immerse the audience.

Aside from attending talks and presentations, I also explored the different areas of the conference, such as the Art Gallery, the Exhibition Hall (of course), and the Emerging Technologies area. The Emerging Technologies area was neat, for obvious reasons, and I liked the Art Gallery as well! My two favorite works there were "The Galloping Horse" and "The HeartBeats Watch" (the latter of which I was tasked with guarding as part of my student volunteer duties).

My biggest takeaway from this conference was first and foremost that it really inspired me to stay creative, to keep looking for ways to integrate the various things I’ve learned, and to continue to work across disciplines (a la BeautyPi).  A secondary (but not less important) takeaway was all of the amazing people I met. Not only did I get to network with industry professionals and learn about all of the innovations in the graphics industry, but I also came away with many new friends! (Not to mention, I got to catch up with Greg Turk and Chris Wojtan from Georgia Tech, both of whom advised me on an NSF-funded CG research project I worked on back in Summer of 2010.) Attending this conference made me realize that Computer Graphics is not purely a technical field, and that there is a lot to be learned in this area from artists as well! I learned so much from this year’s conference, and I can’t wait to go back next year!