The Geometry Attribute Node is used to specify various parameters for a given object, such as the lights to use to light the attached objects, visibility to ray traced rays, and various RenderMan related attributes. Geometry attribute nodes are created and assigned inside the Shader Assignment Panel; refer to The Assignement Panel.
Figure 3.11: An empty Geometry Attribute Node
When a geometry attribute node is first created, it contains no attributes at all. It is an empty container where one can add just the relevant attributes. This avoids cluttering the UI and allows attribute inheritance. Attributes can be added and removed by using the Add / Remove Attributes button. ⟨Left-Click⟩ on this button brings up the Add / Remove Attributes Window, which is better suited for multiple attribute addition or removal (see The Add / Remove Attributes Window) ⟨Right-Click⟩ on the Add / Remove Attributes button offers the same functionality through popup menus, which are more convenient when only one attribute or attribute group needs to be added or removed.
Some of the attributes available in the ‘Geometry Attribute Node’ clash with the Maya Render Stats attributes. The attributes defined in a ‘Geometry Attribute Node’ attached to an object will override the related Maya Render Stat attribute. Refer to Section 5.4.1 [Maya Render Stats and Geometry Attribute Nodes], page 128 for more details.
Polygons Wireframe
The attributes in this panel can be used to generate a wireframe on polygon mesh objects. The edge detection feature of a display can be used to render unshaded wireframes instead; see [Edge Detection], page 74 for details.
Output Wireframe
When this attribute is on, curve primitives that follow the polygon edges are output along with the mesh. These new primitives are shaded like the polygon mesh. This attribute is off by default.
Raster Space Wireframe
This attribute determines how the "Wireframe Width" attribute is interpreted. When "Raster Space Wireframe" is on, the width is expressed in pixels. When it is off, the width is expressed in object space. In other words, turning on this attribute means that the wireframe width will remain constant even when the object or the camera is moving. This attribute is on by default.
Wireframe Width
This attribute defines the width or the wireframe. Its value is interpreted in pixels or in object space units depending on what the "Raster Space Wireframe" attribute is set to. This attribute is set to ‘1.0’ by default.
Maya Fur
This panel contains attributes relevant to Maya Fur rendering. They are effective when attached to a FurFeedback node. The table below shows each toggle with the corresponding RenderMan variable, default status, and description.
Toggle | Default | RenderMan Variable Name | Additional Information |
---|---|---|---|
Output Surface Opacity | ON | vertex color Os | -- |
Output Surface Color | ON | vertex color Cs | -- |
Output Base Color | ON | uniform color basecolor | -- |
Output Tip Color | ON | uniform color tipcolor | -- |
Output Base Ambient Color | ON | uniform color baseambientcolor | -- |
Output Tip Ambient Color | ON | uniform color tipambientcolor | -- |
Output Specular Color | ON | uniform color specularcolor | -- |
Output Specular Sharpness | ON | uniform float sharpness | -- |
Output Surface Point | ON | uniform point surfacepoint | Containts the surface 3D position where the hair is rooted |
Output Surface Normal | ON | uniform normal surfacenormal | Contains the surface normal at the position where the hair is rooted |
Output Surface U | OFF | uniform float surfaceu | Contains the U coordinate at the position where the hair is rooted |
Output Surface V | OFF | uniform float surfacev | Contains the V coordinate at the position where the hair is rooted |
Output Hair Id | OFF | uniform float hairid | A unique hair identifier that is valid accross multiple frames |
Output Hair Length | OFF | uniform float hairlength | Contains an approximate length of the hair |
Output Hair Tip Point | OFF | uniform point hairtippoint | Contains the world space position of the hair tip. |
Output Clump Id | OFF | uniform float clumpid | Contains an identifier of the clump that attracts the hair strand. Valid across multiple frames |
Reference Geometry
If the Maya primitive has an attached reference geometry then 3Delight For Maya can output it along with the rendered object. Reference geometry can be accessed in the shaders using the Pref and NRef variables.
Output Pref
When this attribute is on, the geometry passed to 3delight will also contain reference geometry that represents geometry before any deformation has been applied to it. This geometry is accessible to any shader that declares the varying point Pref parameter. This attribute is off by default.
Output Nref
If checked, geometry passed to 3delight will also contain reference normals; those are normals before any deformation has been applied. These non deformed normals are accessible to shaders that declare the varying normal Nref parameter. This attribute is off by default.
Subsurface Scattering
The following attributes are needed for subsurface scattering simulations. Note that the reduced absorption and reduced scattering coefficients and refraction index are usually obtained from specialized literature. The 3Delight User’s Manual contains a discussion about this topic and a reference to surface properties directly usable by 3Delight.
Subsurface Group
This attribute specifies a group name. Objects that have the same group name will belong to the same subsurface group. If the object that will undergo the subsurface simulation consists of several separate models, each of these models should be attached to a "Geometry Attribute Node" and this attribute should be assigned the same value in all of these nodes. Even if a model is closed and thus would be alone in its group, it is still required to specify a group name here. This attribute is empty by default. Leaving this attribute empty effectively turns off subsurface scattering.
Reduced Absorption
This attribute specifies the reduced absorption coefficients. Its default value is ‘0.002 0.004 0.007’.
Reduced Scattering
This attribute specified the reduced scattering coefficients. Its default value is ‘2.190 2.620 3.00’.
Refraction Index
This attribute specifies the refraction index of the simulated material. It is set to ‘1.5’ by default.
Coefficient Scale
The values for subsurface scattering use a millimeter scale. This attribute specifies the scale to apply these parameters when the objects are not exported in millimeters. The default value for this attribute is ‘0.1’, since 3Delight for Maya exports the objects in centimeters.
Subsurface Shading Rate
This attribute specifies the shading rate used for the subsurface simulation. Its default value is ‘1.0’.
MEL Scripts
The following attributes allow the user to call custom MEL scripts before and after the attached object’s geometry is output.
Pre Geo MEL Script
This attribute specify a MEL script that will be executed before the geometry is exported. More precisely, this script is called after all attributes of this "Geom- etry Attribute Node" are output and right before the geometry is instantiated. If this attribute is attached to several objects, it will be called once for each object. This attribute is empty by default.
Post Geo MEL Script
This attribute specify a MEL script that will be executed after the geometry is exported. More precisely, this script is called right after the geometry is instantiated. If this attribute is attached to several objects, it will be called once for each object. This attribute is empty by default.
The following table explains that variables that are automatically defined in the context of MEL scripts execution.
Variable Name | Description |
---|---|
string $render_pass | This variable is assigned the currently rendered pass node name |
string $shape_path | This variable is assigned the current object shape path.‘ |
string $attribs_node | This variable is assigned the current geometry attribute node name |
RIB Archive
The following attributes allow the user to request that specific portions of an archive should be ignored. These attributes are meant to be attached to a "RIB archive node". For instance, they could be used to allow the same RIB archive to be used for a beauty pass (using the various Hypershade materials it contains) and in an occlusion pass, where the "Ignore Archived Surface Shaders" attribute would be turned on and an occlusion shader would be attached to the "RIB archive node". Refer to Section 3.11 [The RIB Archive Node], page 97.
Ignore Archived Light Sources
When this attribute is turned on, any light source in the archive will be disregarded.
Ignore Archived Light Links
When this attribute is on, the light linking information (illuminate statements) in the archive will not be considered.
Ignore Archived Transforms
Turning on this attribute will ignore any transforms stored in the archive.
Ignore Archived Surface Shaders
When this attribute is on, any surface shaders contained in the archive will be ignored.
Ignore Archived Displacement Shaders
Turning on this attribute will disregard all displacement shaders contained in the archive.
Ignore Archived Geometry Attributes
This attributes controls if the archived attributes that come from "geometry attribute nodes" are ignored or not. Note that attributes in the ‘Geometry’ sections of the "geometry attribute node", such as "Poly As Subd" will retain their effect regardless of this attribute.
User Attributes
Each Geometry Attribute Node can define as many arbitrary user attributes as needed. For each geometry attribute node, 3Delight for Maya will look for attributes whose name begin with "user ". This prefix is removed from the name and the attribute is output to RIB as a user attribute, along with its value. For instance, a ‘color float3’ attribute named ‘user_colorMultiplier’ will produce a Attribute "
colorMultiplier
"
. The supported attribute types are: string, bool, long, long2, long3, float, float2, float3 (color or non-color), double, double2, double3.