ID 520494 - [NME] Parameters with animated curves get stuck on a stale value from a different frame when rendering

Follow

Problem summary
In a NetworkMaterialEdit node, curve animations on a parameter are not reflected or updated based on the current time during a render. Only the last calculated value is used when the curve was modified and this stale value is used for all frames in a render. Although the UI is updated, like the parameter shows the desired value for the current frame time, the render does not display the correct updated value based on the curve and time. This undesired behavior is true for Live renders, Preview renders, and Batch renders.
 
Customer reported version
katana.5.0v3
 
Customer reported platform
centos7
 
Steps to reproduce
 
  1. Create a PrimitiveCreate node, NetworkMaterialCreate node, and a CameraCreate node.
  2. Merge all three nodes with a Merge node.
  3. Create a GafferThree node downstream and add a skyLight (or equivalent)
  4. Create a MaterialAssign node downstream and materialAssign /root/world/materials/NetworkMaterial to the /root/world/geo/primitive location.
  5. Create NetworkMaterialEdit node downstream and set Material Location to Edit to /root/world/materials/NetworkMaterial
  6. In the Viewer tab, look through /root/world/cam/camera and zoom out until you see the sphere geometry.
  7. Go in the NetworkMaterialCreate node context, create a dlStandard (or equivalent) shading node and attach the outColor port to the NetworkMaterial.dlSurface port.
  8. Go in the NetworkMaterialEdit node context, add a linear curve to the dlStandard node's Specular.Metalness parameter with frame 0 having "0" value and frame 10 having a "1" value.
  9. Set the Specular.Metalness parameter to Show Curve on the Curve Editor tab.
  10. In the Scene Graph tab, enable Live Render Updates to all scene graph locations.
  11. Set the current frame time to 0
  12. Start a Live Render on the NetworkMaterialEdit node.
  13. Notice the sphere has no metalness; this is correct.
  14. Set the current frame time to 10.
  15. Notice the sphere has no metalness; this is incorrect.
  16. Modify the curve in the Curve Editor tab slightly.
  17. Notice the sphere now has correct metalness in the render.
 
Expected behavior
Frame time changes would show the correct parameter values on a render when the parameter has an animated curve.
 
Actual behavior
The parameters with animated curves are stuck on a stale value from a different frame. 
 
Workaround
Use NetworkMaterialParametersEdit node instead of NME.
 
Reproduced by support
This bug has been reproduced in:
Katana 5.0v4 - Windows 10
Katana 5.0v1 - Windows 10
Katana 4.5v4 - Windows 10
Katana 4.5v1 - Windows 10
Katana 4.0v8 - Windows 10
Katana 4.0v1 - Windows 10
Katana 3.6v1 - Windows 10
 
Earliest version tested
Katana 3.6v1 - NME did not exist before this version.
 

    We're sorry to hear that

    Please tell us why