@class SCNMaterialProperty, NSString, NSArray, SCNShadableHelper, NSMutableDictionary, NSDictionary, SCNOrderedDictionary, NSNumber, SCNProgram; @interface SCNMaterial : NSObject <SCNAnimatable, SCNShadable, NSCopying, NSSecureCoding> { struct __C3DMaterial { } *_material; SCNMaterialProperty *_ambient; SCNMaterialProperty *_diffuse; SCNMaterialProperty *_specular; SCNMaterialProperty *_emission; SCNMaterialProperty *_reflective; SCNMaterialProperty *_transparent; SCNMaterialProperty *_multiply; SCNMaterialProperty *_normal; SCNMaterialProperty *_ambientOcclusion; SCNMaterialProperty *_selfIllumination; SCNMaterialProperty *_metalness; SCNMaterialProperty *_roughness; SCNMaterialProperty *_displacement; SCNMaterialProperty *_clearCoat; SCNMaterialProperty *_clearCoatRoughness; SCNMaterialProperty *_clearCoatNormal; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _animationsLock; SCNOrderedDictionary *_animations; NSMutableDictionary *_bindings; NSString *_name; NSMutableDictionary *_valuesForUndefinedKeys; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _valuesForUndefinedKeysLock; float _shininess; float _transparency; float _indexOfRefraction; float _fresnelExponent; float _selfIlluminationOcclusion; long long _transparencyMode; NSString *_lightingModelName; long long _cullMode; SCNShadableHelper *_shadableHelper; BOOL _isPresentationInstance; BOOL _litPerPixel; BOOL _doubleSided; BOOL _locksAmbientWithDiffuse; BOOL _avoidsOverLighting; BOOL _writesToDepthBuffer; BOOL _readsFromDepthBuffer; unsigned long long _fillMode; long long _blendMode; long long _colorBufferWriteMask; } @property (class, readonly) BOOL supportsSecureCoding; @property (copy, nonatomic) NSString *name; @property (readonly, nonatomic) SCNMaterialProperty *diffuse; @property (readonly, nonatomic) SCNMaterialProperty *ambient; @property (readonly, nonatomic) SCNMaterialProperty *specular; @property (readonly, nonatomic) SCNMaterialProperty *emission; @property (readonly, nonatomic) SCNMaterialProperty *transparent; @property (readonly, nonatomic) SCNMaterialProperty *reflective; @property (readonly, nonatomic) SCNMaterialProperty *multiply; @property (readonly, nonatomic) SCNMaterialProperty *normal; @property (readonly, nonatomic) SCNMaterialProperty *displacement; @property (readonly, nonatomic) SCNMaterialProperty *ambientOcclusion; @property (readonly, nonatomic) SCNMaterialProperty *selfIllumination; @property (readonly, nonatomic) SCNMaterialProperty *metalness; @property (readonly, nonatomic) SCNMaterialProperty *roughness; @property (readonly, nonatomic) SCNMaterialProperty *clearCoat; @property (readonly, nonatomic) SCNMaterialProperty *clearCoatRoughness; @property (readonly, nonatomic) SCNMaterialProperty *clearCoatNormal; @property (nonatomic) double shininess; @property (nonatomic) double transparency; @property (copy, nonatomic) NSString *lightingModelName; @property (nonatomic, getter=isLitPerPixel) BOOL litPerPixel; @property (nonatomic, getter=isDoubleSided) BOOL doubleSided; @property (nonatomic) unsigned long long fillMode; @property (nonatomic) long long cullMode; @property (nonatomic) long long transparencyMode; @property (nonatomic) BOOL locksAmbientWithDiffuse; @property (nonatomic) BOOL writesToDepthBuffer; @property (nonatomic) long long colorBufferWriteMask; @property (nonatomic) BOOL readsFromDepthBuffer; @property (nonatomic) double fresnelExponent; @property (nonatomic) long long blendMode; @property (readonly) NSArray *animationKeys; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (retain, nonatomic) SCNProgram *program; @property (copy, nonatomic) NSDictionary *shaderModifiers; @property (retain, nonatomic) NSNumber *minimumLanguageVersion; + (BOOL)accessInstanceVariablesDirectly; + (BOOL)resolveInstanceMethod:(SEL)a0; + (id)material; + (id)materialNamed:(id)a0; + (id)materialWithColor:(id)a0; + (id)materialWithContents:(id)a0; + (id)materialWithMDLMaterial:(id)a0; + (id)materialWithMDLMaterial:(id)a0 options:(id)a1; + (id)materialWithMaterialRef:(struct __C3DMaterial { } *)a0; - (id)debugQuickLookObject; - (void)setContent:(id)a0; - (id)valueForUndefinedKey:(id)a0; - (void)_setAttributes:(id)a0; - (id)init; - (id)color; - (void)dealloc; - (id)content; - (void)addAnimation:(id)a0 forKey:(id)a1; - (void)setValue:(id)a0 forUndefinedKey:(id)a1; - (id)contents; - (void)setIdentifier:(id)a0; - (id)properties; - (id)scene; - (void)encodeWithCoder:(id)a0; - (void)setContents:(id)a0; - (id)copy; - (id)identifier; - (void)removeAllAnimations; - (void)setColor:(id)a0; - (void)addAnimation:(id)a0; - (id)initWithCoder:(id)a0; - (id)copyWithZone:(struct _NSZone { } *)a0; - (id)animationForKey:(id)a0; - (BOOL)doubleSided; - (void)removeAnimationForKey:(id)a0; - (id)animationPlayerForKey:(id)a0; - (struct __C3DAnimationManager { } *)animationManager; - (void *)__CFObject; - (BOOL)__removeAnimation:(id)a0 forKey:(id)a1; - (id)__shadableHelper; - (void)_copyAnimationsFrom:(id)a0; - (void)_copyAttributes:(id)a0; - (void)_customDecodingOfSCNMaterial:(id)a0; - (void)_customEncodingOfSCNMaterial:(id)a0; - (id)_integrateModelKitComputedMaps:(id)a0 withGeometry:(id)a1 node:(id)a2 texturePathProvider:(id /* block */)a3 vertexAttributeNamed:(id)a4 materialPropertyNamed:(id)a5 filePath:(id)a6; - (Class)_materialPropertyClass; - (void)_pauseAnimation:(BOOL)a0 forKey:(id)a1 pausedByNode:(BOOL)a2; - (id)_property:(id *)a0; - (id)_scnAnimationForKey:(id)a0; - (id)_scnBindings; - (void)_setupMaterialProperty:(id *)a0; - (void)_setupShadableHelperIfNeeded; - (void)_shadableSetValue:(id)a0 forUndefinedKey:(id)a1; - (void)_syncEntityObjCModel; - (void)_syncObjCAnimations; - (void)_syncObjCModel; - (void)addAnimationPlayer:(id)a0 forKey:(id)a1; - (BOOL)avoidsOverLighting; - (void)bindAnimatablePath:(id)a0 toObject:(id)a1 withKeyPath:(id)a2 options:(id)a3; - (id)builtinProperties; - (struct __C3DEffectCommonProfile { struct __CFRuntimeBase { unsigned long long x0; _Atomic unsigned long long x1; } x0; struct __C3DMaterial *x1; int x2; struct __C3DEffectSlot *x3; struct __C3DEffectSlot *x4; struct __C3DEffectSlot *x5; struct __C3DEffectSlot *x6; struct __C3DEffectSlot *x7; struct __C3DEffectSlot *x8; struct __C3DEffectSlot *x9; struct __C3DEffectSlot *x10; struct __C3DEffectSlot *x11; struct __C3DEffectSlot *x12; struct __C3DEffectSlot *x13; struct __C3DEffectSlot *x14; struct __C3DEffectSlot *x15; struct __C3DEffectSlot *x16; struct __C3DEffectSlot *x17; struct __C3DEffectSlot *x18; float x19; float x20; float x21; float x22; float x23; unsigned char x24; long long x25; BOOL x26; BOOL x27; unsigned char x28 : 1; unsigned char x29 : 1; unsigned char x30 : 1; unsigned char x31 : 1; unsigned char x32 : 1; unsigned char x33 : 1; unsigned char x34 : 1; unsigned char x35 : 1; unsigned char x36 : 1; unsigned short x37 : 13; } *)commonProfile; - (id)copyAnimationChannelForKeyPath:(id)a0 animation:(id)a1; - (id)copyAnimationChannelForKeyPath:(id)a0 property:(id)a1; - (void)copyShaderModifiersAndLanguageVersionFrom:(id)a0; - (id)customMaterialAttributeNames; - (id)customMaterialAttributes; - (id)customMaterialProperties; - (id)customMaterialPropertyNames; - (id)debugQuickLookData; - (void)handleBindingOfSymbol:(id)a0 usingBlock:(id /* block */)a1; - (void)handleUnbindingOfSymbol:(id)a0 usingBlock:(id /* block */)a1; - (double)indexOfRefraction; - (id)initPresentationMaterialWithMaterialRef:(struct __C3DMaterial { } *)a0; - (id)initWithMaterialRef:(struct __C3DMaterial { } *)a0; - (BOOL)isAnimationForKeyPaused:(id)a0; - (BOOL)isPausedOrPausedByInheritance; - (BOOL)litPerPixel; - (struct __C3DMaterial { } *)materialRef; - (struct __C3DMaterial { } *)materialRefCreateIfNeeded; - (void)pauseAnimationForKey:(id)a0; - (id)presentationInstance; - (id)presentationMaterial; - (void)removeAllAnimationsWithBlendOutDuration:(double)a0; - (void)removeAllBindings; - (void)removeAnimationForKey:(id)a0 blendOutDuration:(double)a1; - (void)removeAnimationForKey:(id)a0 fadeOutDuration:(double)a1; - (void)resumeAnimationForKey:(id)a0; - (struct __C3DScene { } *)sceneRef; - (double)selfIlluminationOcclusion; - (void)setAvoidsOverLighting:(BOOL)a0; - (void)setIndexOfRefraction:(double)a0; - (void)setSelfIlluminationOcclusion:(double)a0; - (void)setSpeed:(double)a0 forAnimationKey:(id)a1; - (id)shaderModifiersArgumentsNames; - (void)unbindAnimatablePath:(id)a0; @end