posepros header
Menu Tail Fade

3D Tutorial - Inside the Poser 5 MAT Pose file

 
Post new topic   Reply to topic    Forum Index -> Tutorials, Hints, and Tips and Help
View previous topic :: View next topic  
Author Message
JHoagland



Joined: 20 Jan 2003
Posts: 803
Location: Orlando, FL

PostPosted: Wed Feb 19, 2003 3:23 pm    Post subject: 3D Tutorial - Inside the Poser 5 MAT Pose file Add User to Ignore List Reply with quote

So you want to know what's in the Poser 5 MAT pose file? Before we begin, I just want to let everyone know that this may not be for the faint of heart- it's a lot more difficult than either copying & pasting from a cr2 file or slapping a value into an existing MAT pose file. Due to Poser 5's new "shader node" system, each node can be connected to another node. Keeping track of what node is connected to what, and using which name, can get tricky. But, it's definitely a challenge! icon_smile.gif So, let's get right into it.

Before beginning, though, you should have basic understanding of MAT poses in general. If not, please review Xena's "Inside the MAT File" thread for more information.

The MAT pose code is in blue, comments about the code are in red, and the explanation text is black.
This example is based on the "DonBlueEyeHi.pz2" file found in your Poser5\Runtime\Libraries\Poses\P5 MAT Poses\Don MAT Poses folder.

{
version
{
number 5
}

This is the usual "header" part of the MAT pose file. The first thing you'll notice is the version number- yep, "5" for Poser 5. If you tried to use this MAT pose in Poser 4 or Poser Pro Pack, you would get the common "This file has a newer version than expected. Poser will try to read it anyway." message.

figure
{ (begin figure code)
material EyeBall
{ (begin material EyeBall code)
KdColor 0.745098 0.74902 0.980392 1
KaColor 0 0 0 1
KsColor 1 1 1 1
TextureColor 0.8 0.8 0.8 1
NsExponent 100
tMin 0.95
tMax 1
tExpo 0.95
bumpStrength 1
ksIgnoreTexture 0
reflectThruLights 0
reflectThruKd 0
textureMap ":Runtime:Textures:P5Textures:DonHi.jpg"
0 0
bumpMap NO_MAP
reflectionMap NO_MAP
transparencyMap NO_MAP
ReflectionColor 1 1 1 0
reflectionStrength 0

This part of the MAT pose is the same as the Poser 4-style MAT poses: object color, highlight color, ambient color, reflective color, transparency max, min, texture map, etc. However, almost all of these settings must be repeated in the "base node" (and in some "attached nodes"), as seen below. And, yes, you need ALL of the base node information for every material (except "Preview").
In this example, we will use a texture map called "DonHi.jpg". Remember that the recommended method of referencing image maps is to use the ":" character (instead of the "\") and to start the path name from "Runtime:Textures" instead of "C:\Program Files\Curious Labs\Poser 5\Runtime\Textures").

Here comes the fun part:


shaderTree
{ (begin shaderTree code)

This line tells Poser 5 that "shader node" information will follow. First comes the information for the "base node":

node "poser" "PoserSurface"
{ (begin "PoserSurface" code)
name "PoserSurface"
pos 10 10 (don't know how this affects the node)
showPreview 1

This tells Poser 5 that the following node information should be applied to the surface of the named material. In this example, the following information will be applied to the material EyeBall (as seen above).

nodeInput "Diffuse_Color"
{ (begin node value code)
name "Diffuse_Color" (node name)
value 0.745098 0.74902 0.980392 (node value)
parmR NO_PARM (never used?)
parmG NO_PARM (never used?)
parmB NO_PARM (never used?)
node "Image_Map" (attaches this node to a second node)
file "" (file name, only used in the "Image_Map" node)
} (end node value code)

  • This is the node that controls the Diffuse Color, formerly known as "Object Color".
  • The value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values. See previous MAT pose turorial threads for converting RGB color to Poser's values.
  • The parmR NO_PARM, parmG NO_PARM, parmB NO_PARM lines seem to never need actual values, but they must always be included.
  • The node "" line tells Poser that this node attaches to another node. If there is no node attached here, this line will read node NO_NODE. In this example, this node is attached to an image map. You must be careful to use the "Poser name" of the attaching node- this information will be covered in a second tutorial on "Node Information".
    Note: this line does NOT contain the actual name of the image map, but a reference to another node (found below).
    For better realism, the same image map node used here should also be attached to the "Highlight_Color" node.
    If your MAT pose uses multiple image maps, make sure you give this referencing node a different name: "Image_Map" for the first one, "Image_Map_2" for the second, "Image_Map_3" for the third, and so on. You may be able to use your own name instead of just "Image_Map_3"- experiment and see what happens.
  • The file "" does not need a value.

    nodeInput "Diffuse_Value"
    {
    name "Diffuse_Value"
    value 1 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE (attach other node here)
    file ""
    }

  • This is the node that controls the Diffuse Value which controls the strength of the diffuse color. In other words, it's what "Texture Strength" is to the Texture Map- it controls the strength.
  • As before, the value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.
  • Also, as before, the node "" line tells Poser that this node attaches to another node. In this example, this node is not attached to anything.


    nodeInput "Highlight_Color"
    {
    name "Specular_Color"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node "Image_Map" (see notes)
    file ""
    }

  • This is the node that controls the Highlight Color, which is the same as the old "Highlight Color".
  • Like the "Diffuse_Color" node, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values.
  • Note: the node "" line tells Poser that this node attaches to another node. In this example, this node is attached to an image map- the same one as the "Diffuse_Color".

    nodeInput "Highlight_Value"
    {
    name "Specular_Value"
    value 0 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Highlight Value which controls the strength of the highlight color.
  • Like the "Diffuse_Value" node, the value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Roughness"
    {
    name "Highlight_Size"
    value 0.01 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the old "Bump Strength", this new Poser 5 setting controls how rough a surface will be.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Ambient_Color"
    {
    name "Ambient_Color"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Ambient Color, which is the same as the old "Ambient Color".
  • Like the other color nodes, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values.

    nodeInput "Ambient_Value"
    {
    name "Ambient_Value"
    value 0 1 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Ambient Value which controls the strength of the ambient color.
  • Like the "Diffuse_Value" node, the value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Transparency_Max"
    {
    name "Transparency"
    value 1 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE (attach other node here, see notes)
    file ""
    }

  • This is the node that controls the Transparency Max, which is the same as the old "Transparency Max".
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.
  • The node "" line tells Poser that this node attaches to another node.
    The same image map node used here should also be attached to the "Transparency_Min" node.
    Remember, if your MAT pose uses multiple image maps, make sure you give this referencing node a different name: "Image_Map" for the first one, "Image_Map_2" for the second, "Image_Map_3" for the third, and so on. If you already use a texture map (for example, in the "Diffuse_Color node), this line would read file "Image_Map_2".

    nodeInput "Transparency_Min"
    {
    name "Transparency_Edge"
    value 0.95 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE (see notes)
    file ""
    }

  • This is the node that controls the Transparency Min, which is the same as the old "Transparency Min".
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.
  • The node "" line tells Poser that this node attaches to another node. This node should be attached to the same image map as the "Transparency_Max".

    nodeInput "Transparency_Falloff"
    {
    name "Transparency_Falloff"
    value 0.95 0 100
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Transparency Falloff, which is the same as the old "Transparency Falloff".
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Translucence_Color"
    {
    name "Translucence_Color"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Translucence Color, which is a new setting for Poser 5.
  • Like the other color nodes, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values.

    nodeInput "Translucence_Value"
    {
    name "Translucence_Value"
    value 0 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the other "strength"-type nodes, this new Poser 5 setting controls how translucent a surface will be.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Reflection_Color"
    {
    name "Reflection_Color"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node "Reflect"
    file ""
    }

  • This is the node that controls the Reflection Color, which is a new setting for Poser 5.
  • Like the other color nodes, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values.
  • The node "" line tells Poser that this node attaches to another node. In this example, this node is attached to node called "Reflect".

    nodeInput "Reflection_Value"
    {
    name "Reflection_Value"
    value 0.23 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the other "strength"-type nodes, this new Poser 5 setting controls how strong the reflection color will be.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Refraction_Color"
    {
    name "Refraction_Color"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the Refraction Color, which is a new setting for Poser 5.
  • Like the other color nodes, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values.

    nodeInput "Refraction_Value"
    {
    name "Refraction_Value"
    value 1 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the other "strength"-type nodes, this new Poser 5 setting controls how strong the refraction color will be.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "Bump"
    {
    name "Bump"
    value 0.1 1 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node "Image_Map"
    file ""
    }

  • This is the node that controls the "bumpiness" of a surface, which is the same as the old "Bump Map".
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.
  • The node "" line tells Poser that this node attaches to another node.
    Again, remember that if your MAT pose uses multiple image maps, make sure you give this referencing node a different name: "Image_Map" for the first one, "Image_Map_2" for the second, "Image_Map_3" for the third, and so on.

    nodeInput "Displacement"
    {
    name "Displacement"
    value 1 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the other "strength"-type nodes, this new Poser 5 setting controls the displacement of the attached node on the material. For example, you could attach a square image map and use this setting to "displace" it on the object. Experiment with this node's settings and see what works best.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    nodeInput "AlternateDiffuse"
    {
    name "Alternate_Diffuse"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This node, which controls the Alternate Diffuseness, may be similar to the other color nodes or it may be similar to the "strength" nodes. Experiment with this node's settings and see what works best.
  • The value for this node may be a color or it may be the value of the first digit. Experiment with this node's settings and see what works best.

    nodeInput "AlternateSpecular"
    {
    name "Alternate_Specular"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node "Anisotropic"
    file ""
    }

  • This node, which controls the Alternate Specularity, may be similar to the other color nodes or it may be similar to the "strength" nodes. Experiment with this node's settings and see what works best.
  • The value for this node may be a color or it may be the value of the first digit. Experiment with this node's settings and see what works best.
  • In this example, this node is attached to the "Anisotropic" node. What is "Ansiotropic"? Good question. It seems to affect the Alternate Specular value for Don's eyes, though.

    nodeInput "ReflectionLiteMult"
    {
    name "Reflection_Lite_Mult"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the "Reflect Through Lights", which is the same as the old "Reflect Through Lights".
  • The value for this node is the first value: 0 (for "off"/ unchecked) and 1 (for "on"/ checked). The other 2 digits have no effect on this setting.
  • No other parameters are needed for this node.

    nodeInput "ReflectionKdMult"
    {
    name "Reflection_Kd_Mult"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the "Reflect Through Color", which is the same as the old "Reflect Through Color".
  • The value for this node is the first value: 0 (for "off"/ unchecked) and 1 (for "on"/ checked). The other 2 digits have no effect on this setting.
  • No other parameters are needed for this node.

    nodeInput "Gradient_Bump"
    {
    name "Gradient_Bump"
    value 1 -1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • Similar to the other "strength"-type nodes, this new Poser 5 setting controls how strong the Gradient Bump (image) map will be.
  • The value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    } (end "PoserSurface"/ "base node" code)

    The end of the base node information!

    The following nodes can be included in the MAT pose in any order, but the name must match the attaching node above and these node must be included if there is a reference in any node setting, above. For example, a texture map referenced as "Image_Map" in the Diffuse_Color node must have a "connecting" node with the name "Image_Map" or the MAT pose will not work (or worse, Poser may crash). So, let's start with the additional nodes:

    node "aniso" "Anisotropic"
    {
    name "Anisotropic"
    pos 263 437 (don't know how this affects the node)

  • The "header" part of the additional node.
    The first line translates into "node " "node file name" "node name". For this example, the name "aniso" tells Poser to read information stored in the "aniso.nod" file (located in your Runtime\Materials folder) and "Anisotropic" is the name used to attach the nodes to one another.

    nodeInput "Specular_Color"
    {
    name "Specular_Color"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "Specular_Value"
    {
    name "Specular_Value"
    value 0.65 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • The information for Specular Color and Specular Value. See above for information on these nodes.
  • As a side note, these nodes (within the Anisotropic node), can be attached to further nodes, which in turn, can be attached to other nodes.

    nodeInput "u_Roughness"
    {
    name "u_Highlight_Size"
    value 0.05 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "v_Roughness"
    {
    name "v_Highlight_Size"
    value 0.05 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • These nodes control the "roughness" in the U and V directions. (See other tutorials for full descriptions on "U" and "V" mapping.)
  • The value for this node is the first digit, ranging from 0 to 1.

    nodeInput "xdir_x"
    {
    name "xdir_x"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "xdir_y"
    {
    name "xdir_y"
    value 1 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "xdir_z"
    {
    name "xdir_z"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • These nodes control the displacement of the node on the surface material. Adjusting the values will "shift" the material on the X, Y, and Z axis.
  • The value for this node is the first digit, ranging from 0 to 1. You may be able to set these values to numbers larger than 1. Experiment and see what happens.

    } (end "aniso" node code)

    And that's all there is to the "Anisotropic" node! Wasn't that easy? icon_smile.gif (If anyone can explain what "Anisotropic" really does, please let me know.)

    Anyway, let's start on a more exciting node: the Image_Map:

    node "image_map" "Image_Map"
    {
    name "Image_Map"
    pos 490 259 (don't know how this affects the node)


  • The "header" part of the Image_Map node.
    As with the previous node, the first line translates into "node " "node file name" "node name". For this example, the name "image_map" tells Poser to read information stored in the "image_map.nod" file (located in your Runtime\Materials folder) and "Image_Map" is the name used to attach the nodes to one another.
    If there is more than one image map attached to the "base" node, this line will read node "image_map" "Image_Map_2".

    nodeInput "Image_Source"
    {
    name "Image_Source"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file "Runtime:Reflection Maps:GoldRefl.pct"
    }

  • Here is where you specify the actual file name that will be used as the image map.
  • The value should be set to "0 0 0". Changing this value may or not have any effect on the node.
  • For the file, you may or may not need the entire path name:
    --If the image map has already been referenced in the "Poser 4" section of the MAT pose, then you only need the file name. In this example, you would only need "GoldRefl.pct".
    --However, if the image map has not been referenced earlier, you do need to specify the full path name. Remember to use ":" (not "\") in the path name and start from the "Runtime" folder.

    nodeInput "U_Scale"
    {
    name "U_Scale"
    value 1 -1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "V_Scale"
    {
    name "V_Scale"
    value 1 -1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • These nodes control the U and V scaling of the image map. (See other tutorials for full descriptions on "U" and "V" mapping.)
  • The value for this node is the first digit, ranging from 0 to 1. The other two digits should have no effect on the node.

    nodeInput "U_Offset"
    {
    name "U_Offset"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "V_Offset"
    {
    name "V_Offset"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • These nodes control the U and V offset of the image map. In other words, how far should the image map be shifted on the surface.(See other tutorials for full descriptions on "U" and "V" mapping.)
  • The value for this node is the first digit, ranging from 0 to 1, but you will probably want to keep it at 0 (for "no shift").

    nodeInput "Texture_Coords"
    {
    name "Texture_Coords"
    value 1 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This node tells Poser how to calculate the texture coordinates of the image map.
  • The value of the first digit corresponds to an item in a "1 based" list. The other two digits are not needed. The values for the "Texture_Coords" list are:
    1: UV
    2: VU
    3: XY
    4: XZ
    5: ZY
    6: Mapper
    So, for this example, the value is "2", so Poser calculates the image "texture coordinates" based on "UV".

    nodeInput "Image_Mapped"
    {
    name "Image_Mapped"
    value 4 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This node tells how the image map is applied (or "mapped") to the surface.
  • The value of the first digit corresponds to an item in a "1 based" list. The other two digits are not needed. The values for the "Image_Mapped" list are:
    1: None
    2: Alpha
    3: Clamped
    4: Tile
    So, for this example, the value is "4", so Poser applies the image map "tiled".


    nodeInput "Background"
    {
    name "Background"
    value 1 1 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • The background color for the image map.
  • Like the other color nodes, the value is the R G B color, ranging from 0 (for 0) to 1 (for 255), for all three values. You will usually want to keep this color white (value 1 1 1) so the image map shows up correctly.

    nodeInput "Global_Coordinates"
    {
    name "Global_Coordinates"
    value 0 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This node tells Poser whether or not to apply the image map according to its global coordinates.
  • The value for this node is the first value: 0 (for "off"/ unchecked) and 1 (for "on"/ checked). The other 2 digits have no effect on this setting.

    nodeInput "Mirror_U"
    {
    name "Mirror_U"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }
    nodeInput "Mirror_V"
    {
    name "Mirror_V"
    value 0 0 0
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • These nodes tell Poser whether (or not) to mirror the image map on the U axis or the V axis.
  • The value for this node is the first value: 0 (for "off"/ unchecked) and 1 (for "on"/ checked). The other 2 digits have no effect on this setting.

    nodeInput "Texture_Strength"
    {
    name "Texture_Strength"
    value 1 0 1
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE
    file ""
    }

  • This is the node that controls the "Texture Strength", which is the same as the old "Texture Strength".
  • The value for this node is the first digit, ranging from 0 to 1.

    } (end Image_Map node "code")

    The end of the Image_Map node! And you know what that means... we're all done! Well, almost. icon_smile.gif
    First, let's make sure to "close" of this section of the MAT pose code:

    } (end shaderTree "code")
    } (end material EyeBall "code")

    Remember to ALWAYS make sure to include the same number of "}" as "{". In programming terms, the "{" is the "Begin block code" command and the "}" is the "End block code" command.
    If you want this to be a complete MAT pose, you should include the settings for the "Preview" material. Luckily, this material does NOT need Poser 5 node information. (And, if you're doing a partial MAT pose, you don't even need the "Preview" material!)
    So, for completeness, the Preview material would look like this:

    material Preview
    {
    KdColor 0.930906 0.325999 0.996185 1
    KaColor 0 0 0 1
    KsColor 0.0798303 0.101932 0.00789819 1
    TextureColor 1 1 1 1
    NsExponent 30
    tMin 0
    tMax 0
    tExpo 0.6
    bumpStrength 1
    ksIgnoreTexture 0
    reflectThruLights 1
    reflectThruKd 0
    textureMap NO_MAP
    bumpMap NO_MAP
    reflectionMap NO_MAP
    transparencyMap NO_MAP
    ReflectionColor 1 1 1 1
    reflectionStrength 1
    }
    } (end Preview material code)

    And so, now, we're all done. Just add the final "close" bracket and the MAT pose will be complete.

    } (end figure code)


    If you have any question, comments, or other feedback, just let me know. Like I said in the introduction, making Poser 5 MAT poses from scratch is not for the faint-of-heart! icon_smile.gif

    --John
  • Back to top
    View users profile Send private message Visit posters website
    Xena



    Joined: 18 Mar 2002
    Posts: 5735
    Location: Australia

    My Gallery
    My Store

    PostPosted: Wed Feb 19, 2003 3:31 pm    Post subject: Add User to Ignore List Reply with quote

    Excellent! Thank you John icon_smile.gif
    _________________
    Save the Earth-It's the only planet with chocolate!
    Back to top
    View users profile Send private message Send email Visit posters website
    mickmca



    Joined: 06 Apr 2002
    Posts: 1432
    Location: Colorado, USA

    My Gallery

    PostPosted: Sun Feb 23, 2003 6:48 am    Post subject: Add User to Ignore List Reply with quote

    Thanks for putting all this together. I'm going to print it as a desk reference, I think.

    Is it possible that the mysterious Pos settings are offsets into the UV? They look like X,Y coordinates.

    Mick
    _________________
    "Eat rice, work, sleep."
    Back to top
    View users profile Send private message Send email Visit posters website
    scourge



    Joined: 23 Oct 2003
    Posts: 151
    Location: Finland

    My Gallery

    PostPosted: Fri Mar 12, 2004 10:01 am    Post subject: Add User to Ignore List Reply with quote

    I'm about a year late here but anyway...
    Thanks John for the tutorial, it's really helpful to those who make their MATs with a text-editor. However I'd like to complement it a little:

    Quote:
    pos 10 10 (don't know how this affects the node)

    This is the position of the node in the Material room workspace (X and Y coordinates in pixels).

    Quote:
    nodeInput "Diffuse_Value"
    {
    name "Diffuse_Value"
    value 1 0 10
    parmR NO_PARM
    parmG NO_PARM
    parmB NO_PARM
    node NO_NODE (attach other node here)
    file ""
    }


    This is the node that controls the Diffuse Value which controls the strength of the diffuse color. In other words, it's what "Texture Strength" is to the Texture Map- it controls the strength.

    As before, the value for this node is the first digit, ranging from 0 to 1. (This value may accept settings higher than 1- test and see what happens.) The next two digits do not seem to have an effect on the setting.

    Actually the next two digits set the minimum and maximum for the value. So in this case the range is 0 - 10, not 0 - 1.

    Probably quite useless knowledge to people who only make MATs but I thought I'd share...




    the "pos" line
    the

    File downloaded or viewed 5250 time(s)

    Back to top
    View users profile Send private message Send email
    ToolmakerSteve



    Joined: 11 Sep 2002
    Posts: 437
    Location: California

    PostPosted: Sat Mar 13, 2004 1:01 am    Post subject: Add User to Ignore List Reply with quote

    scourge-- I'm glad for your tidbits of info. Never know what will come in handy some day. icon_wink.gif

    "Better Late Than Never"
    Back to top
    View users profile Send private message Send email Visit posters website
    Display posts from previous:   
    Post new topic   Reply to topic    Forum Index -> Tutorials, Hints, and Tips and Help All times are GMT - 7 Hours
    Page 1 of 1

     
    Jump to:  
    You cannot post new topics in this forum
    You cannot reply to topics in this forum
    You cannot edit your posts in this forum
    You cannot delete your posts in this forum
    You cannot vote in polls in this forum
    You cannot attach files in this forum


    Powered by phpBB © 2001, 2002 phpBB Group
    Spacer
    Email PoserPros Customer Service at storeadmin@poserpros.com
    Spacer
    © 2005 DAZ Productions. All Rights Reserved.     (Server time is 10:27am CST)
    Spacer
    Poser is a registered trademark of Curious Labs, Inc. and e-frontier, Inc.