Fracking Geometry Shells, how do they work?
vrba79
Posts: 1,432
Can someone explain their usage to me? I know it has something to do with making geographed parts look better by blending the textures or something, but I don't know what do to with one, once it's created.
Comments
A geometry shell gives a second copy of a figure, matched to the current pose of the figure though it can be moved around the scene. A shell can have different settings from the master figure, and can have a push modifier applied. It can be used as a collision target, to increase the offset (once a push modifier has been added), or it can have a second skin applied to make clothes or body hair, or it can be moved elsewhere in the scene, with new materials, to add crowding without as much resource use as a full figure, or it can be used as an occlusion shield - set to be visible to AO but not otherwise to render, with transparency maps removed, so that you get faster renders with at least approximate AO from hair.
Richard, thank you a lot for your answers. I was searching around on the forum and your answer seems to be the most complete information on geometry shells.
Nevertheless can someone fill in the specifics of those points?
There are still quite some things that I am not sure I completly get the idea how it works.
From that I gather that the geometry shell is indeed an advanced "instance".
The geometry shell does have material zones. Instance Nodes do not have material zones.
Is there anything a instance node can be used for that the gemoetry shell cannot do?
Or to put it different what are the occasions where it would be more useful to use instance nodes instead of a geometry shell?
A possible use for this is explained in this thread:
Hair Tutorial for DS4 Users
http://www.daz3d.com/forums/discussion/17656/
Nevertheless I still do not understand:
What is the interaction between "rays" from raytracing a gemeotry shell and the original gemetry below?
Do "rays" from raytracing pass through the geometry shell or not?
Is the idea of adding a "geometry shell" on top of the geometry that all rays are blocked by the geometry shell?
- - -
I see that the geometry shells can have transparency / opacity settings.
Are they affecting only visibility but not if rays pass through?
If I add a transparency map or opacity map will the "rays" go through the geometry shell and then calculate the interaction between the orginal geometry and the "geometry shell"? Or are rays blocked completly at the shell?
Is there a setting that deceides if rays pass through the gemetry shell or not?
Or is the main definiton of gemetry shell that no "rays" pass trough at all in any cases?
To put it different is that technique with fantom hair only usefull for hair that has "transmaps"? But on the other hand for fiber mesh hair without "transmaps" there is no added value by adding a geometry shell? Or am I missing a point?
Is the idea of "geometry shells" in this use the same as puting on a tinfoil hat on ones head so alien rays cannot enter and read ones thought?
Or course now the whole idea of the tinfoil hats may indeed actually not work. But who knows...
Push Modifiers are indeed the same thing as Mesh Offset (the latter being a property that is added by using the former, I think). You can find it under the menu entry:
Edit/Figure/Geometry/Apply Push Modifier
and also as an option from the Scene tab Options button.
As I understand it, an instance is just a pointer to the mesh and UV, which takes a lot less memory just like a program shortcut takes minimal space compared to a copy of the program itself. A Geometry shell is better than an instance because it also has its own UV call (i.e. the material can be different from the underlying mesh; this doesn't mean that the UV mapping is different, BTW, unless one programs it so).
Therefore instances are less general but take less memory, so if you're hitting your memory cap with geometry shells, you can try with instances instead.
The geometry shell is exactly like the mesh and thus its interaction with light rays, is pretty unavoidably, determined by the shader you apply to it. If it's 100% transparent then the geometry shell will be invisible, etc. The advantage of the phantom shield technique is that there is no transparency to deal with, since you removed the transmap, so it will cut down render times by several times. However the occlusion will be computed up to the end of the geometry strips that make up the hair.
ReDave, thank you so much for providing all that information.
Now I finally understood that it is the "removing" of the transmap that is the key to the whole phantom shield technique.
Yes, thank you! I understand this better now too. :-)
I might have to disagree about being able to use a different UVs for the shell different mats and textures but not UVs even if you have two different UV set for the underlining geometry You can't change the UVs and there's noway to import new ones, even if you export the geometry shell out redo the UVs and try importing the new ones. So in it's current state it's pretty useless, so we'll just have to wait to see if they can do it.
Wow, this is pretty fascinating. Thank you everyone for your contributions.
I have another side question: is it possible to create instances within DS or Carrara? I'm used to creating instances in 3D Studio, but instances would be great for creating crowds of people in DS. Is that possible, or do I have to wait for a future update?
With the current DS4.5 beta (4.5.2.40) you can use different UV maps on the shell from the originating figure.
Thanks for the info that open up some good possibilities for geo grafts.
In DS, it's just Create>New Node Instance. Note that instances can be repositioned but not reposed or retextured, though. Might be useful for creating a crowd of soldiers in uniform standing at attention, that sort of thing. Or a field of flowers, for example. But not a crowd of people with different skins, clothing, and poses.
I've heard it's possible in Carrara too, but I don't know the method.
Let's see if this can be sorted out: Saving a geometry shell preset —>
My goal is to save a geometry shell with a specific mesh offset. If I select the shell and save as> properties I have access to save these mesh offset settings. Now I leave that area checked in the save as menu but when I try and load the preset the settings are ignored and stay at the default.
The materials/shaders that were applied do load, it's just the mesh offset thats being ignored.
If this can be sorted out my new product will be much more user friendly.
Thanks for any advice here.