program(_:unbindValueForSymbol:atLocation:programID:renderer:)
Invoked on the delegate to let it unbind program values and/or also unbind associated graphic resources (such as textures).
Declaration
optional func program(_ program: SCNProgram, unbindValueForSymbol symbol: String, atLocation location: UInt32, programID: UInt32, renderer: SCNRenderer)Parameters
- program:
The
SCNProgramobject to unbind values for. - symbol:
The name of the symbol to unbind a value for.
- location:
The location of the symbol within the program object to be modified.
- programID:
The underlying OpenGL program object in which the unbinding is done.
- renderer:
The renderer that is currently rendering the scene.
Discussion
If you use the handleUnbinding(ofSymbol:handler:) method to associate a handler block with a SceneKit object for a symbol, SceneKit will not call the delegate’s program(_:unbindValueForSymbol:atLocation:programID:renderer:) method for that symbol when rendering that object.