js/SceneKit/SCNProgramDelegate.js
'use strict'
//import SCNProgram from './SCNProgram'
//import SCNRenderer from './SCNRenderer'
/**
* The interface for tracking errors that occur when compiling shader source code.
* @interface
* @see https://developer.apple.com/documentation/scenekit/scnprogramdelegate
*/
export default class SCNProgramDelegate {
/**
* constructor
* @access public
* @constructor
*/
//constructor() {
//}
// Handling Shader Compilation Errors
/**
* Tells the delegate that an error occurred when compiling GLSL source code.
* @access public
* @param {SCNProgram} program - The program that generated the compilation error.
* @param {Error} error - The compilation error that was raised.
* @returns {void}
* @desc Examine the error parameter for details of the compilation error provided by the GLSL compiler.
* @see https://developer.apple.com/documentation/scenekit/scnprogramdelegate/1523007-program
*/
programHandleError(program, error) {
}
// Finding Fragment Opaqueness
/**
* Asks the delegate whether fragments rendered by a program are opaque.
* @deprecated
* @access public
* @param {SCNProgram} program -
* @returns {boolean} -
* @see https://developer.apple.com/documentation/scenekit/scnprogramdelegate/1523068-programisopaque
*/
programIsOpaque(program) {
return false
}
// Binding and Unbinding Values
/**
* Invoked on the delegate to let it bind program values and/or associated graphics resources (such as textures) for symbols.
* @deprecated
* @access public
* @param {SCNProgram} program - The SCNProgram object to bind values for.
* @param {string} symbol - The name of the symbol to bind a value for.
* @param {number} location - The location of the symbol within the program object to be modified.
* @param {number} programID - The underlying OpenGL program object in which the binding is made.
* @param {SCNRenderer} renderer - The renderer that is currently rendering the scene.
* @returns {boolean} -
* @desc If you use the handleBinding(ofSymbol:handler:) method to associate a handler block with a SceneKit object for a symbol, SceneKit will not call the delegate’s program(_:bindValueForSymbol:atLocation:programID:renderer:) method for that symbol when rendering that object.
* @see https://developer.apple.com/documentation/scenekit/scnprogramdelegate/1524155-program
*/
programBindValueForSymbolAtLocation(program, symbol, location, programID, renderer) {
return false
}
/**
* Invoked on the delegate to let it unbind program values and/or also unbind associated graphic resources (such as textures).
* @deprecated
* @access public
* @param {SCNProgram} program - The SCNProgram object to unbind values for.
* @param {string} symbol - The name of the symbol to unbind a value for.
* @param {number} location - The location of the symbol within the program object to be modified.
* @param {number} programID - The underlying OpenGL program object in which the unbinding is done.
* @param {SCNRenderer} renderer - The renderer that is currently rendering the scene.
* @returns {void}
* @desc 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.
* @see https://developer.apple.com/documentation/scenekit/scnprogramdelegate/1523857-program
*/
programUnbindValueForSymbolAtLocation(program, symbol, location, programID, renderer) {
}
}