Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Instancer : Encapsulation ignores transform segments of prototype root #5634

Open
johnhaddon opened this issue Jan 18, 2024 · 0 comments
Open

Comments

@johnhaddon
Copy link
Member

Version: Gaffer 1.3.10.0

Description

When encapsulateInstanceGroups is turned on, the Instancer evaluates the transform of the prototype root at times according to the transform segments for the instancer itself, rather than the transform segments of the prototype root.

Steps to reproduce

  1. Render the script below and observe linear motion blur in the output.
  2. Turn off Instancer.encapsulateInstanceGroups and re-render. Observe curved motion blur.
  3. Turn Instancer.encapsulateInstanceGroups back on, and enable the Group node. Re-render, and observe curved motion blur. This demonstrates the problem applies only to the transform samples for the root of the prototype.
Example script

import Gaffer
import GafferArnold
import GafferDispatch
import GafferImage
import GafferScene
import IECore
import imath

Gaffer.Metadata.registerValue( parent, "serialiser:milestoneVersion", 1, persistent=False )
Gaffer.Metadata.registerValue( parent, "serialiser:majorVersion", 4, persistent=False )
Gaffer.Metadata.registerValue( parent, "serialiser:minorVersion", 0, persistent=False )
Gaffer.Metadata.registerValue( parent, "serialiser:patchVersion", 0, persistent=False )

__children = {}

parent["variables"].addChild( Gaffer.NameValuePlug( "image:catalogue:port", Gaffer.IntPlug( "value", defaultValue = 0, flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "imageCataloguePort", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
parent["variables"].addChild( Gaffer.NameValuePlug( "project:name", Gaffer.StringPlug( "value", defaultValue = 'default', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "projectName", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
parent["variables"].addChild( Gaffer.NameValuePlug( "project:rootDirectory", Gaffer.StringPlug( "value", defaultValue = '$HOME/gaffer/projects/${project:name}', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "projectRootDirectory", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["openColorIO"] = GafferImage.OpenColorIOConfigPlug( "openColorIO", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, )
parent.addChild( __children["openColorIO"] )
__children["defaultFormat"] = GafferImage.FormatPlug( "defaultFormat", defaultValue = GafferImage.Format( 1920, 1080, 1.000 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, )
parent.addChild( __children["defaultFormat"] )
__children["Sphere"] = GafferScene.Sphere( "Sphere" )
parent.addChild( __children["Sphere"] )
__children["Sphere"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Expression"] = Gaffer.Expression( "Expression" )
parent.addChild( __children["Expression"] )
__children["Expression"]["__out"].addChild( Gaffer.V3fPlug( "p0", direction = Gaffer.Plug.Direction.Out, defaultValue = imath.V3f( 0, 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Expression"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Parent"] = GafferScene.Parent( "Parent" )
parent.addChild( __children["Parent"] )
__children["Parent"]["children"].addChild( GafferScene.ScenePlug( "child1", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Parent"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Camera"] = GafferScene.Camera( "Camera" )
parent.addChild( __children["Camera"] )
__children["Camera"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["StandardOptions"] = GafferScene.StandardOptions( "StandardOptions" )
parent.addChild( __children["StandardOptions"] )
__children["StandardOptions"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"] = GafferScene.Outputs( "Outputs" )
parent.addChild( __children["Outputs"] )
__children["Outputs"]["outputs"].addChild( Gaffer.ValuePlug( "output1", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.StringPlug( "name", defaultValue = '', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.BoolPlug( "active", defaultValue = True, flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.StringPlug( "fileName", defaultValue = '', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.StringPlug( "type", defaultValue = '', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.StringPlug( "data", defaultValue = '', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"].addChild( Gaffer.CompoundDataPlug( "parameters", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "driverType", Gaffer.StringPlug( "value", defaultValue = 'ClientDisplayDriver', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "driverType", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "displayHost", Gaffer.StringPlug( "value", defaultValue = 'localhost', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "displayHost", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "displayPort", Gaffer.StringPlug( "value", defaultValue = '${image:catalogue:port}', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "displayPort", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "remoteDisplayType", Gaffer.StringPlug( "value", defaultValue = 'GafferImage::GafferDisplayDriver', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "remoteDisplayType", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "catalogue:imageName", Gaffer.StringPlug( "value", defaultValue = 'Image', flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "catalogue_imageName", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"]["outputs"]["output1"]["parameters"].addChild( Gaffer.NameValuePlug( "quantize", Gaffer.IntVectorDataPlug( "value", defaultValue = IECore.IntVectorData( [ 0, 0, 0, 0 ] ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ), "quantize", Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic ) )
__children["Outputs"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"] = GafferImage.Catalogue( "Catalogue" )
parent.addChild( __children["Catalogue"] )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image1", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image2", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image3", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image4", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image5", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image6", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image7", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image8", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image9", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image10", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image11", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image12", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image13", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image14", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image15", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image16", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image17", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image18", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image19", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image20", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image21", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image22", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"]["images"].addChild( GafferImage.Catalogue.Image( "Image23", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Catalogue"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["ArnoldRender"] = GafferArnold.ArnoldRender( "ArnoldRender" )
parent.addChild( __children["ArnoldRender"] )
__children["ArnoldRender"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["ArnoldOptions"] = GafferArnold.ArnoldOptions( "ArnoldOptions" )
parent.addChild( __children["ArnoldOptions"] )
__children["ArnoldOptions"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["StandardAttributes"] = GafferScene.StandardAttributes( "StandardAttributes" )
parent.addChild( __children["StandardAttributes"] )
__children["StandardAttributes"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Plane"] = GafferScene.Plane( "Plane" )
parent.addChild( __children["Plane"] )
__children["Plane"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Instancer"] = GafferScene.Instancer( "Instancer" )
parent.addChild( __children["Instancer"] )
__children["Instancer"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["PathFilter"] = GafferScene.PathFilter( "PathFilter" )
parent.addChild( __children["PathFilter"] )
__children["PathFilter"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Group"] = GafferScene.Group( "Group" )
parent.addChild( __children["Group"] )
__children["Group"]["in"].addChild( GafferScene.ScenePlug( "in1", flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["Group"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = imath.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
parent["variables"]["imageCataloguePort"]["value"].setValue( 37779 )
Gaffer.Metadata.registerValue( parent["variables"]["imageCataloguePort"], 'readOnly', True )
Gaffer.Metadata.registerValue( parent["variables"]["projectName"]["name"], 'readOnly', True )
Gaffer.Metadata.registerValue( parent["variables"]["projectRootDirectory"]["name"], 'readOnly', True )
__children["Sphere"]["transform"]["translate"].setInput( __children["Expression"]["__out"]["p0"] )
__children["Sphere"]["radius"].setValue( 0.20000000298023224 )
__children["Sphere"]["__uiPosition"].setValue( imath.V2f( -10.3008366, 42.1103439 ) )
__children["Expression"]["__uiPosition"].setValue( imath.V2f( -20.8003578, 42.1095352 ) )
__children["Parent"]["in"].setInput( __children["Instancer"]["out"] )
__children["Parent"]["parent"].setValue( '/' )
__children["Parent"]["children"][0].setInput( __children["Camera"]["out"] )
__children["Parent"]["__uiPosition"].setValue( imath.V2f( -8.05083656, 0.8359375 ) )
__children["Camera"]["transform"]["translate"].setValue( imath.V3f( 0, 0, 3.45713711 ) )
__children["Camera"]["__uiPosition"].setValue( imath.V2f( 10.4499998, 10.6000004 ) )
__children["StandardOptions"]["in"].setInput( __children["Parent"]["out"] )
__children["StandardOptions"]["options"]["renderCamera"]["value"].setValue( '/camera' )
__children["StandardOptions"]["options"]["renderCamera"]["enabled"].setValue( True )
__children["StandardOptions"]["options"]["transformBlur"]["value"].setValue( True )
__children["StandardOptions"]["options"]["transformBlur"]["enabled"].setValue( True )
__children["StandardOptions"]["options"]["deformationBlur"]["value"].setValue( True )
__children["StandardOptions"]["options"]["deformationBlur"]["enabled"].setValue( True )
__children["StandardOptions"]["__uiPosition"].setValue( imath.V2f( -8.05170536, -7.328125 ) )
__children["Outputs"]["in"].setInput( __children["StandardOptions"]["out"] )
__children["Outputs"]["outputs"]["output1"]["name"].setValue( 'Interactive/Beauty' )
__children["Outputs"]["outputs"]["output1"]["fileName"].setValue( 'beauty' )
__children["Outputs"]["outputs"]["output1"]["type"].setValue( 'ieDisplay' )
__children["Outputs"]["outputs"]["output1"]["data"].setValue( 'rgba' )
__children["Outputs"]["__uiPosition"].setValue( imath.V2f( -8.0508604, -15.4921875 ) )
__children["Catalogue"]["images"]["Image"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/ca7fe92889a3f6f6e1374865d92d67d2.exr' )
__children["Catalogue"]["images"]["Image1"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/5932d54422dc300831a42bcc1eaca1f0.exr' )
__children["Catalogue"]["images"]["Image2"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/5076e49a7d1e03ceeb75719f5592de79.exr' )
__children["Catalogue"]["images"]["Image3"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/605de23e7e2302e5bc1513b5f9c09adf.exr' )
__children["Catalogue"]["images"]["Image4"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/2d2685630fc84ed0a7119926ed5c4f6c.exr' )
__children["Catalogue"]["images"]["Image5"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/09faabfb31ef82e36119f71985581f26.exr' )
__children["Catalogue"]["images"]["Image6"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/bd2aaabe9a38c9c2423e33abc1d94918.exr' )
__children["Catalogue"]["images"]["Image7"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/83caa89c9ae59d65e33d8397b4fdf3b4.exr' )
__children["Catalogue"]["images"]["Image8"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/9898b991b40fa02354281d64285c0db0.exr' )
__children["Catalogue"]["images"]["Image9"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/a94156914085dd684eebd02841122dc8.exr' )
__children["Catalogue"]["images"]["Image10"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/d145557bea8906b0eb412994424e9316.exr' )
__children["Catalogue"]["images"]["Image11"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/0204b17217387bfb407437007409ff6d.exr' )
__children["Catalogue"]["images"]["Image12"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/9b7ce2c799a5d745a691aea8078adfa4.exr' )
__children["Catalogue"]["images"]["Image13"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/05bc6826ca24d590384f268e6bf2cca3.exr' )
__children["Catalogue"]["images"]["Image14"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/45040a39bb644c8b85933851921f3f6d.exr' )
__children["Catalogue"]["images"]["Image15"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/095d4f81677e181fb7079a6ab5f3cd1b.exr' )
__children["Catalogue"]["images"]["Image16"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/ad0039b032fa85de8cc124ec1fd2447f.exr' )
__children["Catalogue"]["images"]["Image17"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/3718de546f7e809f65eaab59ad5ed1ed.exr' )
__children["Catalogue"]["images"]["Image18"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/3e349b192741375d2ad9f81f3d99e814.exr' )
__children["Catalogue"]["images"]["Image19"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/6c5d36070be11cbab4118f6c06c7aef0.exr' )
__children["Catalogue"]["images"]["Image20"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/c12bd350de25c070a40d9a56649cbc34.exr' )
__children["Catalogue"]["images"]["Image21"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/ebef5d42a6a0f8e0700af69c2210a908.exr' )
__children["Catalogue"]["images"]["Image22"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/75062949052453e979c0b1245ba21ffa.exr' )
__children["Catalogue"]["images"]["Image23"]["fileName"].setValue( '/home/john/gaffer/projects/default/catalogues/instancerMotionAttributes/72056de94d029a10e591f9d76b60b7b7.exr' )
__children["Catalogue"]["imageIndex"].setValue( 23 )
__children["Catalogue"]["directory"].setValue( '${project:rootDirectory}/catalogues/${script:name}' )
__children["Catalogue"]["__uiPosition"].setValue( imath.V2f( 29.4000797, -32.9280624 ) )
__children["ArnoldRender"]["in"].setInput( __children["ArnoldOptions"]["out"] )
__children["ArnoldRender"]["fileName"].setValue( '${project:rootDirectory}/asses/${script:name}/${renderPass}/${script:name}.####.ass' )
__children["ArnoldRender"]["__uiPosition"].setValue( imath.V2f( -9.5508604, -31.8203125 ) )
__children["ArnoldOptions"]["in"].setInput( __children["Outputs"]["out"] )
__children["ArnoldOptions"]["options"]["aaSamples"]["enabled"].setValue( True )
__children["ArnoldOptions"]["__uiPosition"].setValue( imath.V2f( -8.0508604, -23.65625 ) )
__children["StandardAttributes"]["in"].setInput( __children["Group"]["out"] )
__children["StandardAttributes"]["attributes"]["transformBlurSegments"]["value"].setValue( 5 )
__children["StandardAttributes"]["attributes"]["transformBlurSegments"]["enabled"].setValue( True )
__children["StandardAttributes"]["__uiPosition"].setValue( imath.V2f( -10.3008366, 28.2241669 ) )
__children["Plane"]["__uiPosition"].setValue( imath.V2f( -33.7136078, 24.347271 ) )
__children["Instancer"]["in"].setInput( __children["Plane"]["out"] )
__children["Instancer"]["filter"].setInput( __children["PathFilter"]["out"] )
__children["Instancer"]["prototypes"].setInput( __children["StandardAttributes"]["out"] )
__children["Instancer"]["prototypeIndex"].setValue( 'prototypeIndex' )
__children["Instancer"]["omitDuplicateIds"].setValue( False )
__children["Instancer"]["orientation"].setValue( 'orientation' )
__children["Instancer"]["scale"].setValue( 'scale' )
__children["Instancer"]["attributePrefix"].setValue( 'user:' )
__children["Instancer"]["encapsulateInstanceGroups"].setValue( True )
__children["Instancer"]["__uiPosition"].setValue( imath.V2f( -32.2144394, 16.183197 ) )
__children["PathFilter"]["paths"].setValue( IECore.StringVectorData( [ '/plane' ] ) )
__children["PathFilter"]["__uiPosition"].setValue( imath.V2f( -19.2144394, 22.2652283 ) )
__children["Group"]["enabled"].setValue( False )
__children["Group"]["in"][0].setInput( __children["Sphere"]["out"] )
__children["Group"]["__uiPosition"].setValue( imath.V2f( 2.6991632, 36.3882294 ) )
__children["Expression"]["__engine"].setValue( 'python' )
__children["Expression"]["__expression"].setValue( 'import imath\nimport math\n\nt = context.getTime() * 40\n\nparent["__out"]["p0"] = imath.V3f( math.sin( t ), math.cos( t ), 0 )' )


del __children


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant