Digital humans the art of the digital double
Ever wanted to know how digital doubles are created in the movie industry? This course will give you an insight into how it's done.
# 1 19-04-2006 , 07:19 AM
Registered User
Join Date: Apr 2006
Location: San Diego
Posts: 3

problems with backfaces and rendering some paint fx

Code:
I'm having some problems with transparency/raytracing/backface culling.

First, if I have a paint effect, let's say, on a NURBS surface, 
it won't render behind a transparent blinn mat'l unless antialiasing 
is set to a low setting (i think medium is the highest I can go 
while still keeping it visible). i think it's not rendering in 
front of the transparent material- said material is surrounded 
by a fully opaque blinn shader and the paint effect can't be seen. 
(more precisely - this is a problem with the tutorial on the 
Alias learning tools that's based on the short movie blue, the 
lesson where you build the space station and the paint effect 
is for the stars outside. the room has a window, and outside you 
can see planet earth and the stars are painted on a large-scale 
nurbs sphere) i've read some of the forums and there's talk 
about depth buffers and scanline but I don't really follow.

the second is: can post effects (like glow) show up in 
raytraced reflections? obviously not since the raytrace 
happens during rendering. how do you manage that 
special effect? just staying away from it? i wouldn't 
know how to add this even using compositing.

third question: I built a room, so I made a polygon cube 
and reversed its normals. then I turned off component display 
of back faces so i could see in the room. when i switch to 
"high quality rendering" in the viewport shading tab, 
the block goes solid again - regardless of the setting 
in component display. so i went to the cube's shape node 
and in its attributes I switched it to "single sided" - so 
now the only face normals pointing in to the room are the 
ones that are renderable right? the camera being outside 
now renders perfectly in the software renderer. 

so now if I bring my camera into the room, the floor 
doesn't render, but the walls do. then at different 
camera angles the floor might render, but only half of 
the triangle (it's not tessellated, just one segment 
on each dimension). I guess this is a complicated 
question in the sense that I can't explain myself... 
so basically the question is: how do I force maya to 
render only the faces that have the normal on the side 
of the face the camera sees, regardless of how many 
other faces are in the way?

here's my ascii orthogonal art.
legend:
->          ...normal
|           ...poly face
o-> OR o-*  ...persp. camera eye and look-at

this arrangement works, but I don't want to be limited 
to having my eye outside of the flipped-normals room.
              ---------------
        o->   |             |
              |             |
              |->    ^    <-|
              |      |      |
              ---------------


this one does - note the camera is low, pointing slightly down:
              ---------------
              |             |
              |             |
              |->    ^    <-|
              | o->  |      |
              ---------------


this one doesn't work (floor won't render at all, or only 
one of the triangles of the floor polygon. i've used an asterisk 
for the camera look at since i can't find a suitable character 
in this character set, and i'm a bit lazy for it right now.) - note 
the camera is high, pointing mostly down, but slightly to the 
right of the ASCII scene):
              ---------------
              |          o  |
              |          |  |
              |->    ^   *<-|
              |      |      |
              ---------------


it seems the triangles on the floor render depending on the angle 
of attack of the camera? a shallow angle will render fine but 
anything more acute (>45degrees?) will show through. yet the 
wall on the right always renders fine! it's had some extrusion 
done on it. more specifically, an inset followed by a slight 
push extrusion, to make a window ledge and a face for the window itself.

I've used the commmand edit poly->normals->reverse to reverse 
all the normals in the cube. when I go to the normal node attributes 
there's several different normal manipulations, and the help file 
doesn't help a lot. is the component display setting considered at 
render time or is it just a viewport thing? should I keep the polygons 
double sided when I build them? What's the point of a normal if it's 
double sided, wouldn't there be two normals to a face, both opposite?

I often feel the help file for Maya is very high level for me. if 
it's not in the tutorial book chances are I won't pick it up. the 
help is excellent for features I'm familiar with and just want to 
learn more deeply though. I'm sorry if I can't explain myself any 
better, I've spent a lot of time rereading and rewriting this 
question. Thank you for your effort and time.


Last edited by dgarcia; 19-04-2006 at 07:22 AM.
# 2 27-04-2006 , 10:28 AM
Alan's Avatar
Moderator
Join Date: Oct 2002
Location: London, UK
Posts: 2,800
the paint fx not rendering could be because of the fact that with the depth buffer renderer it is seeing the pfx as sitting behind an object. So because it doesn't take transparency into account unless you turn on raytracing it wont render it.

You can't raytrace a post effect e.g. your glows .You have to do it in post using something like ID layers to grab the part you want to glow and then increasing brightness and blurring it and then comping it back over the top.

The room problem sounds like a clipping plane problem. Go to your camera Attribute editor and change the near clipping plane to a small number and you should see all of the floor.

user added image
A


Technical Director - Framestore

Currently working on: Your Highness

IMDB
Posting Rules Forum Rules
You may not post new threads | You may not post replies | You may not post attachments | You may not edit your posts | BB code is On | Smilies are On | [IMG] code is On | HTML code is Off