3D Graphics

Fragmenting objects for animation in ICE

Currently ICE has no provisions for creating or destroying faces or edges, which means we can’t create compounds directly in ice which for instance shatter objects. So what do you do if you need a “blastcode” type destruction effect in XSI? One solution is to approach the problem with XSI’s rigid bodies, but they have their own issues and it’s frustrating not to be able to leverage some of ICE’s power for this kind of thing.

The good news is that if you can create fragments outside of ICE you can use ICE instancing to go from pre-fragmented instance masters to ICE particles. For instance, build a brick wall out of individual bricks, instance them in ICE with the same SRTs, and do a rigid body simulation in ICE. Or in the examples below, use ICE to animate geometry fragments or polygons.


To achieve these effects I’ve written a script which extracts selected polys from a model and groups them as needed, and a compound which seamlessly takes a group of instance masters and creates identically placed ICE instances ready for simulation.

extractpolys_sam.js
Emit SRT matched instances

Test Images – Game Cinematic

A recent project caused me to explore XSI’s capabilities in the area of destruction by simulating a vehicle crash. The project was a lot of fun and I was working with a great crew, and this kind of effect is the sort of thing I love doing. I used ICE and RBDs primarily, unfortunately there wasn’t time for me to get into ICE deforms to the extent of creating travelling shock deformations similar to houdini cloth gags… but the effect came out well all the same. Here are some early test images where I was pushing ICE instancing to see how much ‘junk’ I could deal with and still have decent interaction. The answer? A whole lot more than I needed, with tens of thousands of instances simulated without my machine doing more than chug on occasion. Wow!

Car crash effect in ICE
Car crash effect in ICE

Flocking Tool

Recently there has been a lot of talking and experimentation with flocking in ICE. Kim Aldis and Brad Gabe have both done some neat implementations of flocking, and Phil wrote some impressive compounds early on to deal with not only flocking but similar behaviors like chasing, path/maze navigation and so on.

I found myself joining the bandwagon on my last project where we needed a quickly-constructed tool to handle crowds of flying dragons. It was suprisingly quick (hours not days) to implement a basic flocking system using simple cohesion, alignment and avoidance, as well as some path following and artist-driven steering.

Andy Jones had some great input into dealing with banking and vertical alignment, so I learned a lot making this tool. This is where ICE is at it’s best – rapid development of production solutions on the fly. Below is a result. (The video is intentionally zoomed out, when the project results are public I’ll update the article with more detailed images.)

Diffusion limited aggregation in ICE

Diffusion-limited aggregations are formed in nature as a result of particles of matter diffuse through a solution and are deposited onto surfaces over time, forming nodules or clumps. Examples are mineral deposits, depositions on electrodes during electroplating processes etc. It’s a relatively easy process to mimic in particle systems. I’ve created some ICE compounds which let me create aggregates with varying tropisims, deposition rates, separation and so on. Here are some results.

ICE Work

I will be publishing a number of ICE compounds soon, after the site changes are ready and I have some time.