public class SCNProgram extends NSObject implements NSCopying, NSSecureCoding
A SCNProgram lets you specify custom shaders to use when rendering materials.
| Modifier and Type | Class and Description |
|---|---|
static interface |
SCNProgram.Block_handleBindingOfBufferNamedFrequencyUsingBlock |
NSObject.Function_instanceMethodForSelector_ret, NSObject.Function_methodForSelector_ret| Modifier | Constructor and Description |
|---|---|
protected |
SCNProgram(org.moe.natj.general.Pointer peer) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
_supportsSecureCoding()
This property must return YES on all classes that allow secure coding.
|
static boolean |
accessInstanceVariablesDirectly() |
static SCNProgram |
alloc() |
static SCNProgram |
allocWithZone(org.moe.natj.general.ptr.VoidPtr zone) |
static boolean |
automaticallyNotifiesObserversForKey(java.lang.String key) |
static void |
cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget) |
static void |
cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument) |
static NSArray<java.lang.String> |
classFallbacksForKeyedArchiver() |
static org.moe.natj.objc.Class |
classForKeyedUnarchiver() |
java.lang.Object |
copyWithZone(org.moe.natj.general.ptr.VoidPtr zone) |
static java.lang.String |
debugDescription_static() |
SCNProgramDelegate |
delegate()
[@property] delegate
|
static java.lang.String |
description_static() |
void |
encodeWithCoder(NSCoder coder) |
java.lang.String |
fragmentFunctionName()
[@property] fragmentFunctionName
|
java.lang.String |
fragmentShader()
[@property] fragmentShader
|
void |
handleBindingOfBufferNamedFrequencyUsingBlock(java.lang.String name,
long frequency,
SCNProgram.Block_handleBindingOfBufferNamedFrequencyUsingBlock block)
handleBindingOfBufferNamed:frequency:usingBlock:
|
static long |
hash_static() |
SCNProgram |
init() |
SCNProgram |
initWithCoder(NSCoder coder)
NS_DESIGNATED_INITIALIZER
|
static NSObject.Function_instanceMethodForSelector_ret |
instanceMethodForSelector(org.moe.natj.objc.SEL aSelector) |
static NSMethodSignature |
instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector) |
static boolean |
instancesRespondToSelector(org.moe.natj.objc.SEL aSelector) |
boolean |
isOpaque()
[@property] opaque
|
static boolean |
isSubclassOfClass(org.moe.natj.objc.Class aClass) |
static NSSet<java.lang.String> |
keyPathsForValuesAffectingValueForKey(java.lang.String key) |
MTLLibrary |
library()
[@property] library
|
static SCNProgram |
new_objc() |
static SCNProgram |
program()
program
|
static boolean |
resolveClassMethod(org.moe.natj.objc.SEL sel) |
static boolean |
resolveInstanceMethod(org.moe.natj.objc.SEL sel) |
java.lang.String |
semanticForSymbol(java.lang.String symbol)
semanticForSymbol:
|
void |
setDelegate_unsafe(SCNProgramDelegate value)
[@property] delegate
|
void |
setDelegate(SCNProgramDelegate value)
[@property] delegate
|
void |
setFragmentFunctionName(java.lang.String value)
[@property] fragmentFunctionName
|
void |
setFragmentShader(java.lang.String value)
[@property] fragmentShader
|
void |
setLibrary(MTLLibrary value)
[@property] library
|
void |
setOpaque(boolean value)
[@property] opaque
|
void |
setSemanticForSymbolOptions(java.lang.String semantic,
java.lang.String symbol,
NSDictionary<java.lang.String,?> options)
setSemantic:forSymbol:options:
|
static void |
setVersion_static(long aVersion) |
void |
setVertexFunctionName(java.lang.String value)
[@property] vertexFunctionName
|
void |
setVertexShader(java.lang.String value)
[@property] vertexShader
|
static org.moe.natj.objc.Class |
superclass_static() |
static boolean |
supportsSecureCoding() |
static long |
version_static() |
java.lang.String |
vertexFunctionName()
[@property] vertexFunctionName
|
java.lang.String |
vertexShader()
[@property] vertexShader
|
accessibilityActivate, accessibilityActivationPoint, accessibilityAssistiveTechnologyFocusedIdentifiers, accessibilityAttributedHint, accessibilityAttributedLabel, accessibilityAttributedUserInputLabels, accessibilityAttributedValue, accessibilityContainerType, accessibilityCustomActions, accessibilityCustomRotors, accessibilityDecrement, accessibilityDragSourceDescriptors, accessibilityDropPointDescriptors, accessibilityElementAtIndex, accessibilityElementCount, accessibilityElementDidBecomeFocused, accessibilityElementDidLoseFocus, accessibilityElementIsFocused, accessibilityElements, accessibilityElementsHidden, accessibilityFrame, accessibilityHint, accessibilityIncrement, accessibilityLabel, accessibilityLanguage, accessibilityNavigationStyle, accessibilityPath, accessibilityPerformEscape, accessibilityPerformMagicTap, accessibilityRespondsToUserInteraction, accessibilityScroll, accessibilityTextualContext, accessibilityTraits, accessibilityUserInputLabels, accessibilityValue, accessibilityViewIsModal, addObserverForKeyPathOptionsContext, attemptRecoveryFromErrorOptionIndex, attemptRecoveryFromErrorOptionIndexDelegateDidRecoverSelectorContextInfo, autoContentAccessingProxy, awakeAfterUsingCoder, awakeFromNib, class_objc, classForCoder, classForKeyedArchiver, copy, dealloc, debugDescription, description, dictionaryWithValuesForKeys, didChangeValueForKey, didChangeValueForKeyWithSetMutationUsingObjects, didChangeValuesAtIndexesForKey, doesNotRecognizeSelector, fileManagerShouldProceedAfterError, fileManagerWillProcessPath, finalize_objc, forwardingTargetForSelector, forwardInvocation, hash, indexOfAccessibilityElement, isAccessibilityElement, isEqual, isKindOfClass, isMemberOfClass, isProxy, methodForSelector, methodSignatureForSelector, mutableArrayValueForKey, mutableArrayValueForKeyPath, mutableCopy, mutableOrderedSetValueForKey, mutableOrderedSetValueForKeyPath, mutableSetValueForKey, mutableSetValueForKeyPath, observationInfo, observeValueForKeyPathOfObjectChangeContext, performSelector, performSelectorInBackgroundWithObject, performSelectorOnMainThreadWithObjectWaitUntilDone, performSelectorOnMainThreadWithObjectWaitUntilDoneModes, performSelectorOnThreadWithObjectWaitUntilDone, performSelectorOnThreadWithObjectWaitUntilDoneModes, performSelectorWithObject, performSelectorWithObjectAfterDelay, performSelectorWithObjectAfterDelayInModes, performSelectorWithObjectWithObject, prepareForInterfaceBuilder, provideImageDataBytesPerRowOrigin_Size_UserInfo, removeObserverForKeyPath, removeObserverForKeyPathContext, replacementObjectForCoder, replacementObjectForKeyedArchiver, respondsToSelector, self, setAccessibilityActivationPoint, setAccessibilityAttributedHint, setAccessibilityAttributedLabel, setAccessibilityAttributedUserInputLabels, setAccessibilityAttributedValue, setAccessibilityContainerType, setAccessibilityCustomActions, setAccessibilityCustomRotors, setAccessibilityDragSourceDescriptors, setAccessibilityDropPointDescriptors, setAccessibilityElements, setAccessibilityElementsHidden, setAccessibilityFrame, setAccessibilityHint, setAccessibilityLabel, setAccessibilityLanguage, setAccessibilityNavigationStyle, setAccessibilityPath, setAccessibilityRespondsToUserInteraction, setAccessibilityTextualContext, setAccessibilityTraits, setAccessibilityUserInputLabels, setAccessibilityValue, setAccessibilityViewIsModal, setIsAccessibilityElement, setNilValueForKey, setObservationInfo, setShouldGroupAccessibilityChildren, setValueForKey, setValueForKeyPath, setValueForUndefinedKey, setValuesForKeysWithDictionary, shouldGroupAccessibilityChildren, superclass, validateValueForKeyError, validateValueForKeyPathError, valueForKey, valueForKeyPath, valueForUndefinedKey, willChangeValueForKey, willChangeValueForKeyWithSetMutationUsingObjects, willChangeValuesAtIndexesForKeypublic static boolean accessInstanceVariablesDirectly()
public static SCNProgram alloc()
public static SCNProgram allocWithZone(org.moe.natj.general.ptr.VoidPtr zone)
public static boolean automaticallyNotifiesObserversForKey(java.lang.String key)
public static void cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget)
public static void cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument)
public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
public static org.moe.natj.objc.Class classForKeyedUnarchiver()
public static java.lang.String debugDescription_static()
public static java.lang.String description_static()
public static long hash_static()
public static NSObject.Function_instanceMethodForSelector_ret instanceMethodForSelector(org.moe.natj.objc.SEL aSelector)
public static NSMethodSignature instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector)
public static boolean instancesRespondToSelector(org.moe.natj.objc.SEL aSelector)
public static boolean isSubclassOfClass(org.moe.natj.objc.Class aClass)
public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey(java.lang.String key)
public static SCNProgram new_objc()
public static SCNProgram program()
Creates and initialize a program instance.
public static boolean resolveClassMethod(org.moe.natj.objc.SEL sel)
public static boolean resolveInstanceMethod(org.moe.natj.objc.SEL sel)
public static void setVersion_static(long aVersion)
public static org.moe.natj.objc.Class superclass_static()
public static boolean supportsSecureCoding()
public static long version_static()
public java.lang.Object copyWithZone(org.moe.natj.general.ptr.VoidPtr zone)
copyWithZone in interface NSCopyingpublic SCNProgramDelegate delegate()
Determines the receiver's delegate
public void encodeWithCoder(NSCoder coder)
encodeWithCoder in interface NSCodingpublic java.lang.String fragmentFunctionName()
Determines the receiver's fragment function name.
The name of the fragment function (for Metal programs).
public java.lang.String fragmentShader()
Determines the receiver's fragment shader.
public void handleBindingOfBufferNamedFrequencyUsingBlock(java.lang.String name,
long frequency,
SCNProgram.Block_handleBindingOfBufferNamedFrequencyUsingBlock block)
Sets the block to call at render time to bind the buffer of the specified symbol of the receiver's program.
This method can only be used with Metal based programs.
name - The name of the buffer to bind.frequency - The frequency at which the block has to be invoked. Can be per frame, per node or per geometry or material. See SCNBufferBindingBlock above.block - The block that binds the buffer.public SCNProgram init()
public SCNProgram initWithCoder(NSCoder coder)
NSCodinginitWithCoder in interface NSCodingpublic boolean isOpaque()
Determines the receiver's fragment are opaque or not. Defaults to YES.
public void setOpaque(boolean value)
Determines the receiver's fragment are opaque or not. Defaults to YES.
public MTLLibrary library()
Specifies the Metal library to use to locate the function names specified above.
If set to nil the default library is used. Defaults to nil.
public java.lang.String semanticForSymbol(java.lang.String symbol)
Retrieves the SceneKit semantic associated to a symbol from the program source code.
symbol - A symbol from the program source code.public void setDelegate_unsafe(SCNProgramDelegate value)
Determines the receiver's delegate
public void setDelegate(SCNProgramDelegate value)
Determines the receiver's delegate
public void setFragmentFunctionName(java.lang.String value)
Determines the receiver's fragment function name.
The name of the fragment function (for Metal programs).
public void setFragmentShader(java.lang.String value)
Determines the receiver's fragment shader.
public void setLibrary(MTLLibrary value)
Specifies the Metal library to use to locate the function names specified above.
If set to nil the default library is used. Defaults to nil.
public void setSemanticForSymbolOptions(java.lang.String semantic,
java.lang.String symbol,
NSDictionary<java.lang.String,?> options)
Associates a SceneKit semantic to a symbol.
Associates semantics handled by the SceneKit runtime to a symbol from the program. Supported semantics are listed in SCNGeometry.h and SCNNode.h.
semantic - The SceneKit semantic to associate to the specified symbol.symbol - A symbol from the program source code.options - An optional dictionary. See the 'Semantic options' above.public void setVertexFunctionName(java.lang.String value)
Determines the receiver's vertex function name.
The name of the vertex function (for Metal programs).
public void setVertexShader(java.lang.String value)
Determines the receiver's vertex shader.
public boolean _supportsSecureCoding()
NSSecureCoding_supportsSecureCoding in interface NSSecureCodingpublic java.lang.String vertexFunctionName()
Determines the receiver's vertex function name.
The name of the vertex function (for Metal programs).
public java.lang.String vertexShader()
Determines the receiver's vertex shader.