PDA

View Full Version : Modelling a bird in XSI


Torador
05-08-2006, 02:56 PM
For a project I'm working on, I need to model a bird in XSI, and it's proving tricky. I'm going to use box modelling for it, but at one point in the scene the bird needs to fly.

I'm wondering whether or not XSI's "hair" system could in theory be used to create a look of stylised feathers. Has anyone done anything like this before?

Or does anyone have any tutorials for modelling birds?

AdrianLazar
05-08-2006, 04:20 PM
i think that this (http://www.xsi-blog.com/index.php/2005/07/23/prototyping-a-simple-feather-simulator/) can help :thumbsup:
good luck!

kimaldis
05-08-2006, 06:38 PM
for smaller birds with fairly fine feathers hair works just fine. use textured flats for the wing and tail feathers.

One of the things you'll have to deal with is modifying the groom so it sits well with wings both open and closed. You can't shape animate fur so you're going to have to figure out a way to move it as the wings open and close. A scripted would be one way. There are also ways to rig hair using envelopes.

check this out for what's possible. Something I did for a movie last year.

http://www.cg-soup.com/archives/2005/01/for_the_birds_1.html

larger image by clicking the shot of the bird.

TheLostVertex
05-08-2006, 06:44 PM
http://img266.imageshack.us/img266/4011/bird2gc.jpg

BenBarker
05-09-2006, 04:27 AM
Kim's bird is about as good as it can get with the current hair system. The problem is that hairs rotate to face the camera, and hair instance rotation is totally wacked, so any feathers past a certain thickness and it breaks apart.
I think something interesting could be done with particle instancing with a scripted particle event to distribute them on the surface, but it would require that you make your bird out of NURBS, and could potentially be slow.

ThE_JacO
05-09-2006, 05:00 AM
Kim's bird is about as good as it can get with the current hair system. The problem is that hairs rotate to face the camera, and hair instance rotation is totally wacked, so any feathers past a certain thickness and it breaks apart.


just for the record, hair DOES NOT rotate to face the camera.
Hair is a bunch of MI_Hair primitives. When rendered, these primitives are covered with a ribbon made of segments, and these segments are camera oriented billboards.
Instancing on hair doesn't suffer for the same problem, as it's not billboard, but actual instanced geometry deformed along the curves.
In its first implementation it had issues that aren't trivial to solve (resolving a frameset around a curve with no explicit upvectoring), but for 5.1 a lot of work has been done on the heuristics that create the frameset and in how control over such things is handled on the user side of things, and it's now a much more viable solution.


I think something interesting could be done with particle instancing with a scripted particle event to distribute them on the surface, but it would require that you make your bird out of NURBS, and could potentially be slow.

particles instancing would suffer from the same exact problems of the first instancing on hair implementation, so, unless you want to go for a scripting/coding heavy solution, you're better off using instancing on hair to start with, as Soft has gone through considerable amounts of pain to solve such problems that you would have to solve yourself if you were to go for a custom solution.
as for the need of nurbs, that's an entirely moot point, as polys can have UVs that can be arbitrary and that you can look up at any given time to obtain the same results of what nurbs UVs would give you.

kimaldis
05-09-2006, 10:14 PM
Kim's bird is about as good as it can get with the current hair system.

very kind of you to say so.

I think something interesting could be done with particle instancing with a scripted particle event to distribute them on the surface, but it would require that you make your bird out of NURBS, and could potentially be slow.

When I started that project I dug around a bit and thought for a while about how one might deal with actual feathers. The problems you'll face with feather intersection and orientation to surface aren't trivial and while I'm not normally too worried about a bit of dev in this case I was most thankful that I didn't have to go down a custom route. I'm not really sure that working with NURBS would really help you either. As raf points out, meshes can have UVs and modelling with parametric surfaces is horrible.

As Raf also mentions, a lot of work has been done with respect to hair instance orientation in 5.1. While I haven't tried it myself yet, someone who should know seems to think hair instancing may now be a good way to go for proper feathering.

Anyone who wants to see how it should be done, check out the griffin in the last but one Harry Potter - can't be arsed to remember the titles ;). That was a fabulous piece of work.

BenBarker
05-10-2006, 04:22 AM
Of course the hair doesn't rotate, billboarding is what I meant. Just make some really thick hairs and the visual problem caused is unmistakable. I haven't had the chance to use hair instancing in 5.1, so its quite possible the rotation works now. Softimage added hair instancing for us a while ago (pre 5), so I'm not sure what code there is here but rotation on deforming surfaces is jacked.

I only suggest NURBS because its easier to just ask for the tangent and binormal rather than try and calculate it yourself from UVs, but I know there is an article floating around using just that along with "guide feathers" that did a pretty damn good job on polys.

I've done the particle instance SCOP on NURBS and they don't spin like hair instancing. They are just much harder to control and slow, and there are some issues with passing particle initial states through our character pipeline here.

ThE_JacO
05-10-2006, 05:16 AM
yes, nurbs will provide you with a definite frameset right out of the box, but they come with their own set of problems.
Also, if you bring into the picture the feathers placing and grooming aspect of things it becomes even more painful, as finding proximity on nurbs is a minimization operation *shudder*, and the UVs can't be arbitrary, requiring a lot of dicing work to be done on your side, whereas polys will actually allow you to use arbitrary UVs set, and derivating the rest is pretty much trivial.

jason-slab
05-10-2006, 08:44 AM
Torador: cool thread, i've just started on a bird(eagle) project myself, i'm still in the modeling stage though. i'm also looking/thinking about a hair instancing solution, lets see what we can come up with!!

check out the cool lil bird in the Assassins Creed trailer http://www.gametrailers.com/gamepage.php?id=2581 done in XSI BTW, wouldn't mind taking a closer look at it:)


jason

kidult one
05-14-2006, 10:41 AM
No suggestions just a newbie (got xsi 2 days ago) have u seen the mtv hd clip at
www.psyop.tv ? That bird is awesome and its done with xsi i believe, send them an email u never know maybe the big boys will share their secrets!

CGTalk Moderation
05-14-2006, 10:41 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.