Process 3d

This process is use to render 3d scenes. The calculations are delegated to a 3d design software: 3D Studio Max, Maya, or Blender.
The features are:
  • Create primitive: box, floor, wall, etc.
  • Transform object: position, roation, scale, etc.
  • Manage material: asign to an object, change material, etc.
  • Merge scenes: merge a secondary scene into a main scene
  • Animate: animate object position, object properties, etc.
  • Render: render a scene, change rendering paramters, etc.
example
<Process id="scene1Render" type="3d" delegate="blender">
     <Input creationId="scene1" />
     <Output creationId="scene1b" />
     <Object name="teapot" create="object">
             <Param name="class">Teapot</Param>
             <Param name="pos">100;20;0</Param>
     </Object>
     <Merge>
             <Param name="creationId">roof</Param>
             <Param name="pos">100;50;150</Param>
     </Merge>
     <Object name="cameraA" create="camera">
             <Param name="pos">10;100;50</Param>
             <Param name="target.pos">10;0;0</Param>
             <Param name="fov">30</Param>
     </Object>
     <Render>
             <Param name="width">1920</Param>
             <Param name="height">1080</Param>
             <Param name="camera">cameraA</Param>
             <Param name="creationId">render1</Param>
     </Render>
</Process>
Nodes:  Input  Output  Object  Merge  Render  Layer  Character  Script  Export 
Attributes

 Attribute id  | String  |  mandatory

 process identifier

 Attribute type"3d"  | String  |  mandatory

 process type

 Attribute delegate  | String  |  optional

 The delegation software name.
Values:
  • 3ds: 3d Studio Max
  • blender: Blender
  • maya: Maya

 Attribute name  | String  |  optional

 process name

 Attribute creationGroup  | creationGroupId  |  optional

  Creation group identifier used by the process. See details "Creation Group". If this attribute is defined, creations identifiers declared in the process must be included in the creation group.
Nodes

 Node Input  |  optional

example
<Input creationId="scene1" />
Attributes:  creationId 
Node Attributes

 Attribute creationId  | creationId  |  mandatory

  The creation identifier. The creation type must be "*.max".

 Node Output  |  optional

example
<Output creationId="scene1b" />
Attributes:  creationId 
Node Attributes

 Attribute creationId  | creationId  |  mandatory

  The creation identifier. The creation type must be "*.max".

 Node Object  |  optional

  This node is used to create or udapte objects in the scene
Node Attributes

 Attribute name  | String  |  mandatory

 object name

 Attribute create  | String  |  optional

  This attribute is used to create a primitive. See details "Primitive Nodes"
Values:
  • object: any object creation
  • box: box object creation
  • floor: rectangular floor creation
  • wall: rectangular wall creation
  • wall.floor: rectangular wall creation, base d on a edge of the floor
  • camera: camera creation
Node Params "Tranformation"
  These params are used to transform the object: position, rotation, scale.
Name Format Description
posVectorXYZ position
pos.xFloatX position
pos.yFloatY position
pos.zFloatZ position
rposRVectorrelative XYZ position in the local base of the parent object
pivotVectorXYZ pivot position
pivot.xFloatX pivot position
pivot.yFloatY pivot position
pivot.zFloatZ pivot position
rotation.xFloatX rotation
rotation.yFloatY rotation
rotation.zFloatZ rotation
scaleFloatuniform scale
scale.xFloatscale only on X axe
scale.yFloatscale only on Y axe
scale.zFloatscale only on Z axe
size.xFloatbounding-box X dimension (an uniforme scale is applied)
size.yFloatbounding-box Y dimension (an uniforme scale is applied)
size.zFloatbounding-box Z dimension (an uniforme scale is applied)
Node Params "Material"
  These params are used to set object's material properties. All param names are defined like: material.<property>
Node Params "Object Class"
  These params are used to set the property value of the object's class.
example: set a sphere radius
<Object name="earth" create="object">
     <Param name="class">Sphere</Param>
     <Param name="radius">50</Param>
</Object>

 Node Merge  |  optional

  This node is used to merge a secondary scene into the main scene.
Node Attributes

 Attribute name  | String  |  optional

 object name. List names can be defined like this: name1;name2;name3
Node Params

 Param creationId  | creationId  |  optional

 Secndary scene creation to merge.

 Param processId  | creationId  |  optional

 Secondary scene scan process to merge. See details $link(process_3d_scene_scan)
Node Params "Tranformation"
  These params are params defined for the Object Node. Here, the transformation is applied on the merged objects group.

 Node Render  |  optional

  This node is used to render a scene.
Node Params

 Param creationId  | creationId  |  mandatory

 This param is used to set the rendering output creation. The creation must be an image, a video or a frameset.

 Param camera  | String  |  mandatory

 The camera name

 Param width  | Integer  |  optional

 Output width. By default, the output width will be the width project's resolution: see details "Configuration"

 Param height  | Integer  |  optional

 Output height. By default, the output width will be the height project's resolution: see details "Configuration"

 Param gamma  | Float  |  optional

 Output gamma.

 Param layer  | Boolean  |  optional

 If true, the ouput creation layers are taken in account for the rendering.

 Param frames  | Render Frames  |  optional

  Begin and end frames for a sequence rendering. Optionnaly, a frame count can be set.
Example: 1-250 251 frames will be rendered
Example: 1-250/6 only 6 frames will be rendered: 1, 50, 100, 150, 200, 250

 Node Layer  |  optional

  This node is used to manager scene layers.
Node Attributes

 Attribute name  | String  |  mandatory

 layer name.

 Attribute action  | String  |  mandatory

  This attribute is used to apply an action on the layer
Values:
  • create: create the layer
  • current: set the layer as the current layer
  • visible: set the layer visible
  • hide: set the layer hidden
  • froze: set the layer frozen
  • unfroze: set the layer unfrozen