Class TCommonSurfaceShaderNode
Unit
Declaration
type TCommonSurfaceShaderNode = class(TAbstractShaderNode)
Description
Warning: this symbol is deprecated.
Advanced material that can be heavily configured using textures (specular maps, normal maps and much more).
Use TMaterialNode that has been extended in X3D 4.0 to cover all the features of TComposedShaderNode. See https://github.com/michaliskambi/x3d-tests/wiki/X3D-version-4%3A-New-features-of-materials%2C-lights-and-textures .
Source: scene/x3d/x3dnodes_instantreality.inc (line 145).
Hierarchy
- TObject
- TPersistent
- TX3DFileItem
- TX3DNode
- TAbstractNode
- TAbstractAppearanceChildNode
- TAbstractShaderNode
- TCommonSurfaceShaderNode
Overview
Fields
| Protected | VRML1ChildrenAllowed: Boolean; |
| Protected | VRML1ChildrenParsingAllowed: Boolean; |
Methods
| Public | constructor Create; |
| Public | procedure SaveToStream(Writer: TX3DWriter); virtual; abstract; |
| Public | function SaveToXml: TSaveToXmlMethod; virtual; |
| Protected | procedure WarningOnce(var WarningDone: Boolean; const Message: string); |
| Protected | function DeepCopyCore(CopyState: TX3DNodeDeepCopyState): TX3DNode; virtual; |
| Protected | function DeepCopyCreate(CopyState: TX3DNodeDeepCopyState): TX3DNode; virtual; |
| Protected | procedure AddFunctionality(const F: TNodeFunctionality); |
| Protected | function DefaultContainerFieldInContext( const Version: TX3DVersion; const ParentNode: TX3DNode): String; virtual; |
| Protected | class function VRML1ChildrenSaveToStream: Boolean; virtual; |
| Protected | function DirectEnumerateActive( Func: TEnumerateChildrenFunction): Pointer; virtual; |
| Protected | function DirectEnumerateActiveForTraverse( Func: TEnumerateChildrenFunction; StateStack: TX3DGraphTraverseStateStack): Pointer; virtual; |
| Protected | function DirectEnumerateAll( Func: TEnumerateChildrenFunction): Pointer; |
| Protected | function DirectEnumerate( Func: TEnumerateChildrenFunction; OnlyActive: Boolean): Pointer; |
| Protected | procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
| Protected | procedure MiddleTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
| Protected | procedure AfterTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
| Protected | function ParseNodeBodyElement(Lexer: TX3DLexer; Reader: TX3DReaderNames; const APositionInParent: Integer): Boolean; virtual; |
| Protected | procedure ParseAfter(Reader: TX3DReaderNames); virtual; |
| Protected | procedure CreateNode; virtual; |
| Public | function FieldsCount: Integer; |
| Public | procedure AddField(const Value: TX3DField); |
| Public | function IndexOfField(const AName: string): Integer; |
| Public | function EventsCount: Integer; |
| Public | procedure AddEvent(const Value: TX3DEvent); |
| Public | function IndexOfEvent(const AName: string): Integer; |
| Public | function Field(const AName: string; const RaiseOnError: Boolean = false): TX3DField; |
| Public | function FieldOrEvent(const AName: string; const RaiseOnError: Boolean = false): TX3DFieldOrEvent; |
| Public | function AnyEvent(const AName: string; const RaiseOnError: Boolean = false): TX3DEvent; |
| Public | function VRML1ChildrenCount: integer; |
| Public | procedure VRML1ChildAdd(const Index: Integer; const Child: TX3DNode); overload; |
| Public | procedure VRML1ChildAdd(const Child: TX3DNode); overload; |
| Public | procedure VRML1ChildRemove(const I: Integer); |
| Public | procedure VRML1ChildrenClear; |
| Public | function VRML1ChildExtract(const I: Integer): TX3DNode; |
| Public | function VRML1ParentsCount: integer; |
| Public | function ParentFieldsCount: Integer; |
| Public | procedure FreeRemovingFromAllParents; |
| Public | procedure FreeIfUnused; |
| Public | procedure KeepExistingBegin; |
| Public | procedure KeepExistingEnd; |
| Public | procedure WaitForRelease; |
| Public | function Unused: Boolean; |
| Public | function PathFromBaseUrl(const RelativePath: string): string; |
| Public | procedure Parse(Lexer: TX3DLexer; Reader: TX3DReaderNames); virtual; |
| Public | procedure ParseXML(Element: TDOMElement; Reader: TX3DReaderNames); |
| Public | constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); virtual; |
| Public | destructor Destroy; override; |
| Public | function X3DType: string; virtual; |
| Public | function NodeTypeName: string; deprecated 'use X3DType'; |
| Public | class function ClassX3DType: string; virtual; |
| Public | function Traverse( NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc): Pointer; |
| Public | function TraverseInternal(StateStack: TX3DGraphTraverseStateStack; NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc; ParentInfo: PTraversingInfo): Pointer; |
| Public | function TraverseIntoChildren(StateStack: TX3DGraphTraverseStateStack; NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc; ParentInfo: PTraversingInfo): Pointer; |
| Public | procedure EnumerateNodes( proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
| Public | procedure EnumerateNodes(nodeClass: TX3DNodeClass; proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
| Public | procedure EnumerateNodes(nodeClass: TX3DNodeClass; const SeekNodeName: string; proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
| Public | function SearchNodes(const Proc: TX3DNodeSearchProc; const OnlyActive: Boolean): Pointer; |
| Public | function TryFindNodeByName(FindClass: TX3DNodeClass; const FindName: string; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
| Public | function FindNodeByName(FindClass: TX3DNodeClass; const FindName: string; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
| Public | function TryFindNode(FindClass: TX3DNodeClass; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
| Public | function FindNode(FindClass: TX3DNodeClass; OnlyActive: Boolean): TX3DNode; overload; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
| Public | function FindNode(const NodeClass: TX3DNodeClass; const FindName: String; const Options: TFindNodeOptions = []): TX3DNode; overload; |
| Public | function FindNode(const FindName: string): TX3DNode; overload; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
| Public | function TryFindNodeState( NodeClass: TX3DNodeClass; out Node: TX3DNode; out State: TX3DGraphTraverseState): Boolean; deprecated 'use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their TX3DGraphTraverseState'; |
| Public | function TryFindNodeTransform( NodeClass: TX3DNodeClass; out Node: TX3DNode; out Transform: TMatrix4; out TransformScale: Single): Boolean; deprecated 'use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their transformations'; |
| Public | function TryFindParentByName(const FindName: string): TX3DNode; |
| Public | function FindParentByName(const FindName: string): TX3DNode; |
| Public | function HasParentNode(Node: TX3DNode): Boolean; |
| Public | function TryFindDirectParentByName(const FindName: string): TX3DNode; |
| Public | function IsNodePresent(Node: TX3DNode; OnlyActive: Boolean): Boolean; |
| Public | function NodesCount(NodeClass: TX3DNodeClass; CountOnlyActiveNodes: Boolean): integer; |
| Public | procedure SaveToStream(Writer: TX3DWriter); override; |
| Public | class function VRML1StateNode(out StateNode: TVRML1StateNode): Boolean; |
| Public | class function ForVRMLVersion(const Version: TX3DVersion): Boolean; virtual; |
| Public | function EnumerateReplaceChildren( Func: TEnumerateReplaceNodesFunction): Cardinal; |
| Public | function RemoveChildrenWithMatchingName( const Wildcard: string; IgnoreCase: Boolean): Cardinal; |
| Public | function PrototypesCount: Integer; |
| Public | procedure AddPrototype(const Value: TX3DPrototypeBase); |
| Public | function RoutesCount: Integer; |
| Public | procedure AddRoute(const Value: TX3DRoute); overload; |
| Public | procedure AddRoute(const Source, Destination: TX3DFieldOrEvent); overload; |
| Public | procedure RemoveRoute(const Value: TX3DRoute); overload; |
| Public | procedure RemoveRoute(const Index: Integer); overload; |
| Public | function ImportsCount: Integer; |
| Public | procedure AddImport(const Value: TX3DImport); |
| Public | function ExportsCount: Integer; |
| Public | procedure AddExport(const Value: TX3DExport); |
| Public | function DeepCopy: TX3DNode; |
| Public | procedure AddDestructionNotification(const Event: TNodeDestructionNotification); |
| Public | procedure RemoveDestructionNotification(const Event: TNodeDestructionNotification); |
| Public | procedure PostAddInterfaceDeclaration(IDecl: TX3DInterfaceDeclaration); virtual; |
| Public | procedure AddCustomField(AField: TX3DField); |
| Public | procedure AddCustomFieldOrEvent(AFieldOrEvent: TX3DFieldOrEvent); |
| Public | function NiceName: string; |
| Public | procedure UnregisterScene; |
| Public | function FieldSetByEvent(const Event: TX3DEvent): TX3DField; virtual; |
| Public | function FieldSendingEvent(const Event: TX3DEvent): TX3DField; virtual; |
| Public | function Functionality( const FunctionalityClass: TNodeFunctionalityClass): TNodeFunctionality; |
| Public | procedure InternalInsertMetadata(const M: TAbstractMetadataNode); |
| Public | function FindMetadata(const Key: String): TAbstractMetadataNode; |
| Public | procedure CreateNode; override; |
| Public | class function ClassX3DType: String; override; |
| Public | procedure CreateNode; override; |
| Public | class function ClassX3DType: String; override; |
| Public | procedure CreateNode; override; |
| Public | class function ClassX3DType: String; override; |
| Public | destructor Destroy; override; |
| Public | function ShininessFactorExp: Single; |
| Public | function MaterialInfo: TMaterialInfo; |
| Public | procedure CreateNode; override; |
| Public | class function ClassX3DType: String; override; |
| Public | procedure SetTextureTransformEnabled(const Value: array of boolean); overload; |
| Public | procedure SetTextureTransformEnabled(const Value: TBooleanList); overload; |
Properties
| Public | property PositionInParent: Integer
read FPositionInParent write FPositionInParent default -1; |
| Protected | property CDataField: TMFString read FCDataField write FCDataField; |
| Public | property Fields [const Index: Integer]: TX3DField read GetFields; |
| Public | property Events [const Index: Integer]: TX3DEvent read GetEvents; |
| Public | property VRML1Children [const I: Integer]: TX3DNode read GetVRML1Child write SetVRML1Child; |
| Public | property VRML1Parents [const I: Integer]: TX3DNode read GetVRML1Parent; |
| Public | property ParentFields[Index: Integer]: TX3DField read GetParentFieldsItem; |
| Public | property ParentFieldsNode[Index: Integer]: TX3DNode
read GetParentFieldsNodeItem; |
| Public | property KeepExisting: Cardinal read FKeepExisting write FKeepExisting; deprecated 'do not access this directly; instead use TX3DNode.WaitForRelease and NodeRelease (eventually KeepExistingBegin and KeepExistingEnd) if you want to control node lifetime'; |
| Public | property X3DName: string read FX3DName write FX3DName; |
| Public | property NodeName: string read FX3DName write FX3DName; deprecated 'use X3DName'; |
| Public | property BaseUrl: String read FBaseUrl write FBaseUrl; |
| Public | property WWWBasePath: string read FBaseUrl write FBaseUrl; deprecated; |
| Public | property Prototypes [const Index: Integer]: TX3DPrototypeBase read GetPrototypes; |
| Public | property Routes [const Index: Integer]: TX3DRoute read GetRoutes; |
| Public | property ImportsList [const Index: Integer]: TX3DImport read GetImports; |
| Public | property ExportsList [const Index: Integer]: TX3DExport read GetExports; |
| Public | property PrototypeInstance: Boolean read FPrototypeInstance; |
| Public | property PrototypeInstanceSourceNode: TX3DPrototypeNode
read FPrototypeInstanceSourceNode; |
| Public | property PrototypeInstanceHelpers: TX3DNode read FPrototypeInstanceHelpers; |
| Public | property DefaultContainerField: string
read FDefaultContainerField write FDefaultContainerField; |
| Public | property HasInterfaceDeclarations: TX3DAccessTypes
read FHasInterfaceDeclarations
write SetHasInterfaceDeclarations default []; |
| Public | property InterfaceDeclarations: TX3DInterfaceDeclarationList
read FInterfaceDeclarations; |
| Public | property Scene: TX3DEventsEngine read FScene write FScene; |
| Public | property TransformFunctionality: TTransformFunctionality read FTransformFunctionality; |
| Public | property TimeFunctionality: TTimeDependentFunctionality read FTimeFunctionality; |
| Public | property GenTexFunctionality: TGeneratedTextureFunctionality read FGenTexFunctionality; |
| Public | property MetadataBoolean[const Key: String]: Boolean read GetMetadataBoolean write SetMetadataBoolean; |
| Public | property MetadataBooleanArray[const Key: String; const Index: Cardinal]: Boolean read GetMetadataBooleanArray write SetMetadataBooleanArray; |
| Public | property MetadataString[const Key: String]: String read GetMetadataString write SetMetadataString; |
| Public | property MetadataStringArray[const Key: String; const Index: Cardinal]: String read GetMetadataStringArray write SetMetadataStringArray; |
| Public | property MetadataInteger[const Key: String]: Integer read GetMetadataInteger write SetMetadataInteger; |
| Public | property MetadataIntegerArray[const Key: String; const Index: Cardinal]: Integer read GetMetadataIntegerArray write SetMetadataIntegerArray; |
| Public | property MetadataDouble[const Key: String]: Double read GetMetadataDouble write SetMetadataDouble; |
| Public | property MetadataDoubleArray[const Key: String; const Index: Cardinal]: Double read GetMetadataDoubleArray write SetMetadataDoubleArray; |
| Public | property FdMetadata: TSFNode read FFdMetadata; |
| Public | property Metadata: TAbstractMetadataNode read GetMetadata write SetMetadata; |
| Public | property EventActivate: TSFBoolEvent read FEventActivate; |
| Public | property EventIsSelected: TSFBoolEvent read FEventIsSelected; |
| Public | property EventIsValid: TSFBoolEvent read FEventIsValid; |
| Public | property FdLanguage: TSFStringEnum read FFdLanguage; |
| Public | property Language: TShaderLanguage read GetLanguage write SetLanguage; |
| Public | property Transparency: Single read GetTransparency write SetTransparency; |
| Public | property FdAlphaFactor: TSFFloat read FFdAlphaFactor; |
| Public | property AlphaFactor: Single read GetAlphaFactor write SetAlphaFactor; |
| Public | property FdAlphaTextureId: TSFInt32 read FFdAlphaTextureId; |
| Public | property AlphaTextureId: Integer read GetAlphaTextureId write SetAlphaTextureId; |
| Public | property FdAlphaTextureCoordinatesId: TSFInt32 read FFdAlphaTextureCoordinatesId; |
| Public | property AlphaTextureCoordinatesId: Integer read GetAlphaTextureCoordinatesId write SetAlphaTextureCoordinatesId; |
| Public | property FdAlphaTextureChannelMask: TSFString read FFdAlphaTextureChannelMask; |
| Public | property AlphaTextureChannelMask: String read GetAlphaTextureChannelMask write SetAlphaTextureChannelMask; |
| Public | property FdAlphaTexture: TSFNode read FFdAlphaTexture; |
| Public | property AlphaTexture: TAbstractTextureNode read GetAlphaTexture write SetAlphaTexture; |
| Public | property FdAmbientFactor: TSFVec3f read FFdAmbientFactor; |
| Public | property AmbientFactor: TVector3 read GetAmbientFactor write SetAmbientFactor; |
| Public | property FdAmbientTextureId: TSFInt32 read FFdAmbientTextureId; |
| Public | property AmbientTextureId: Integer read GetAmbientTextureId write SetAmbientTextureId; |
| Public | property FdAmbientTextureCoordinatesId: TSFInt32 read FFdAmbientTextureCoordinatesId; |
| Public | property AmbientTextureCoordinatesId: Integer read GetAmbientTextureCoordinatesId write SetAmbientTextureCoordinatesId; |
| Public | property FdAmbientTextureChannelMask: TSFString read FFdAmbientTextureChannelMask; |
| Public | property AmbientTextureChannelMask: String read GetAmbientTextureChannelMask write SetAmbientTextureChannelMask; |
| Public | property FdAmbientTexture: TSFNode read FFdAmbientTexture; |
| Public | property AmbientTexture: TAbstractTextureNode read GetAmbientTexture write SetAmbientTexture; |
| Public | property FdDiffuseFactor: TSFVec3f read FFdDiffuseFactor; |
| Public | property DiffuseFactor: TVector3 read GetDiffuseFactor write SetDiffuseFactor; |
| Public | property FdDiffuseTextureId: TSFInt32 read FFdDiffuseTextureId; |
| Public | property DiffuseTextureId: Integer read GetDiffuseTextureId write SetDiffuseTextureId; |
| Public | property FdDiffuseTextureCoordinatesId: TSFInt32 read FFdDiffuseTextureCoordinatesId; |
| Public | property DiffuseTextureCoordinatesId: Integer read GetDiffuseTextureCoordinatesId write SetDiffuseTextureCoordinatesId; |
| Public | property FdDiffuseTextureChannelMask: TSFString read FFdDiffuseTextureChannelMask; |
| Public | property DiffuseTextureChannelMask: String read GetDiffuseTextureChannelMask write SetDiffuseTextureChannelMask; |
| Public | property FdDiffuseTexture: TSFNode read FFdDiffuseTexture; |
| Public | property DiffuseTexture: TAbstractTextureNode read GetDiffuseTexture write SetDiffuseTexture; |
| Public | property FdDiffuseDisplacementTexture: TSFNode read FFdDiffuseDisplacementTexture; |
| Public | property DiffuseDisplacementTexture: TAbstractTextureNode read GetDiffuseDisplacementTexture write SetDiffuseDisplacementTexture; |
| Public | property FdDisplacementAxis: TSFString read FFdDisplacementAxis; |
| Public | property DisplacementAxis: String read GetDisplacementAxis write SetDisplacementAxis; |
| Public | property FdDisplacementFactor: TSFFloat read FFdDisplacementFactor; |
| Public | property DisplacementFactor: Single read GetDisplacementFactor write SetDisplacementFactor; |
| Public | property FdDisplacementTextureId: TSFInt32 read FFdDisplacementTextureId; |
| Public | property DisplacementTextureId: Integer read GetDisplacementTextureId write SetDisplacementTextureId; |
| Public | property FdDisplacementTextureCoordinatesId: TSFInt32 read FFdDisplacementTextureCoordinatesId; |
| Public | property DisplacementTextureCoordinatesId: Integer read GetDisplacementTextureCoordinatesId write SetDisplacementTextureCoordinatesId; |
| Public | property FdDisplacementTexture: TSFNode read FFdDisplacementTexture; |
| Public | property DisplacementTexture: TAbstractTextureNode read GetDisplacementTexture write SetDisplacementTexture; |
| Public | property FdEmissiveFactor: TSFVec3f read FFdEmissiveFactor; |
| Public | property EmissiveFactor: TVector3 read GetEmissiveFactor write SetEmissiveFactor; |
| Public | property FdEmissiveTextureId: TSFInt32 read FFdEmissiveTextureId; |
| Public | property EmissiveTextureId: Integer read GetEmissiveTextureId write SetEmissiveTextureId; |
| Public | property FdEmissiveTextureCoordinatesId: TSFInt32 read FFdEmissiveTextureCoordinatesId; |
| Public | property EmissiveTextureCoordinatesId: Integer read GetEmissiveTextureCoordinatesId write SetEmissiveTextureCoordinatesId; |
| Public | property FdEmissiveTextureChannelMask: TSFString read FFdEmissiveTextureChannelMask; |
| Public | property EmissiveTextureChannelMask: String read GetEmissiveTextureChannelMask write SetEmissiveTextureChannelMask; |
| Public | property FdEmissiveTexture: TSFNode read FFdEmissiveTexture; |
| Public | property EmissiveTexture: TAbstractTextureNode read GetEmissiveTexture write SetEmissiveTexture; |
| Public | property FdEnvironmentFactor: TSFVec3f read FFdEnvironmentFactor; |
| Public | property EnvironmentFactor: TVector3 read GetEnvironmentFactor write SetEnvironmentFactor; |
| Public | property FdEnvironmentTextureId: TSFInt32 read FFdEnvironmentTextureId; |
| Public | property EnvironmentTextureId: Integer read GetEnvironmentTextureId write SetEnvironmentTextureId; |
| Public | property FdEnvironmentTextureCoordinatesId: TSFInt32 read FFdEnvironmentTextureCoordinatesId; |
| Public | property EnvironmentTextureCoordinatesId: Integer read GetEnvironmentTextureCoordinatesId write SetEnvironmentTextureCoordinatesId; |
| Public | property FdEnvironmentTextureChannelMask: TSFString read FFdEnvironmentTextureChannelMask; |
| Public | property EnvironmentTextureChannelMask: String read GetEnvironmentTextureChannelMask write SetEnvironmentTextureChannelMask; |
| Public | property FdEnvironmentTexture: TSFNode read FFdEnvironmentTexture; |
| Public | property EnvironmentTexture: TAbstractEnvironmentTextureNode read GetEnvironmentTexture write SetEnvironmentTexture; |
| Public | property FdMultiDiffuseAlphaTexture: TSFNode read FFdMultiDiffuseAlphaTexture; |
| Public | property MultiDiffuseAlphaTexture: TAbstractTextureNode read GetMultiDiffuseAlphaTexture write SetMultiDiffuseAlphaTexture; |
| Public | property FdMultiEmmisiveAmbientIntensityTexture: TSFNode read FFdMultiEmmisiveAmbientIntensityTexture; |
| Public | property MultiEmmisiveAmbientIntensityTexture: TAbstractTextureNode read GetMultiEmmisiveAmbientIntensityTexture write SetMultiEmmisiveAmbientIntensityTexture; |
| Public | property FdMultiSpecularShininessTexture: TSFNode read FFdMultiSpecularShininessTexture; |
| Public | property MultiSpecularShininessTexture: TAbstractTextureNode read GetMultiSpecularShininessTexture write SetMultiSpecularShininessTexture; |
| Public | property FdMultiVisibilityTexture: TSFNode read FFdMultiVisibilityTexture; |
| Public | property MultiVisibilityTexture: TAbstractTextureNode read GetMultiVisibilityTexture write SetMultiVisibilityTexture; |
| Public | property FdNormalFormat: TSFString read FFdNormalFormat; |
| Public | property NormalFormat: String read GetNormalFormat write SetNormalFormat; |
| Public | property FdNormalSpace: TSFString read FFdNormalSpace; |
| Public | property NormalSpace: String read GetNormalSpace write SetNormalSpace; |
| Public | property FdNormalTextureId: TSFInt32 read FFdNormalTextureId; |
| Public | property NormalTextureId: Integer read GetNormalTextureId write SetNormalTextureId; |
| Public | property FdNormalTextureCoordinatesId: TSFInt32 read FFdNormalTextureCoordinatesId; |
| Public | property NormalTextureCoordinatesId: Integer read GetNormalTextureCoordinatesId write SetNormalTextureCoordinatesId; |
| Public | property FdNormalTextureChannelMask: TSFString read FFdNormalTextureChannelMask; |
| Public | property NormalTextureChannelMask: String read GetNormalTextureChannelMask write SetNormalTextureChannelMask; |
| Public | property FdNormalScale: TSFVec3f read FFdNormalScale; |
| Public | property NormalScale: TVector3 read GetNormalScale write SetNormalScale; |
| Public | property FdNormalBias: TSFVec3f read FFdNormalBias; |
| Public | property NormalBias: TVector3 read GetNormalBias write SetNormalBias; |
| Public | property FdNormalTexture: TSFNode read FFdNormalTexture; |
| Public | property NormalTexture: TAbstractTextureNode read GetNormalTexture write SetNormalTexture; |
| Public | property FdNormalTextureParallaxHeight: TSFFloat read FFdNormalTextureParallaxHeight; |
| Public | property NormalTextureParallaxHeight: Single read GetNormalTextureParallaxHeight write SetNormalTextureParallaxHeight; |
| Public | property FdReflectionFactor: TSFVec3f read FFdReflectionFactor; |
| Public | property ReflectionFactor: TVector3 read GetReflectionFactor write SetReflectionFactor; |
| Public | property FdReflectionTextureId: TSFInt32 read FFdReflectionTextureId; |
| Public | property ReflectionTextureId: Integer read GetReflectionTextureId write SetReflectionTextureId; |
| Public | property FdReflectionTextureCoordinatesId: TSFInt32 read FFdReflectionTextureCoordinatesId; |
| Public | property ReflectionTextureCoordinatesId: Integer read GetReflectionTextureCoordinatesId write SetReflectionTextureCoordinatesId; |
| Public | property FdReflectionTextureChannelMask: TSFString read FFdReflectionTextureChannelMask; |
| Public | property ReflectionTextureChannelMask: String read GetReflectionTextureChannelMask write SetReflectionTextureChannelMask; |
| Public | property FdReflectionTexture: TSFNode read FFdReflectionTexture; |
| Public | property ReflectionTexture: TAbstractTextureNode read GetReflectionTexture write SetReflectionTexture; |
| Public | property FdShininessFactor: TSFFloat read FFdShininessFactor; |
| Public | property ShininessFactor: Single read GetShininessFactor write SetShininessFactor; |
| Public | property FdShininessTextureId: TSFInt32 read FFdShininessTextureId; |
| Public | property ShininessTextureId: Integer read GetShininessTextureId write SetShininessTextureId; |
| Public | property FdShininessTextureCoordinatesId: TSFInt32 read FFdShininessTextureCoordinatesId; |
| Public | property ShininessTextureCoordinatesId: Integer read GetShininessTextureCoordinatesId write SetShininessTextureCoordinatesId; |
| Public | property FdShininessTextureChannelMask: TSFString read FFdShininessTextureChannelMask; |
| Public | property ShininessTextureChannelMask: String read GetShininessTextureChannelMask write SetShininessTextureChannelMask; |
| Public | property FdShininessTexture: TSFNode read FFdShininessTexture; |
| Public | property ShininessTexture: TAbstractTextureNode read GetShininessTexture write SetShininessTexture; |
| Public | property FdSpecularFactor: TSFVec3f read FFdSpecularFactor; |
| Public | property SpecularFactor: TVector3 read GetSpecularFactor write SetSpecularFactor; |
| Public | property FdSpecularTextureId: TSFInt32 read FFdSpecularTextureId; |
| Public | property SpecularTextureId: Integer read GetSpecularTextureId write SetSpecularTextureId; |
| Public | property FdSpecularTextureCoordinatesId: TSFInt32 read FFdSpecularTextureCoordinatesId; |
| Public | property SpecularTextureCoordinatesId: Integer read GetSpecularTextureCoordinatesId write SetSpecularTextureCoordinatesId; |
| Public | property FdSpecularTextureChannelMask: TSFString read FFdSpecularTextureChannelMask; |
| Public | property SpecularTextureChannelMask: String read GetSpecularTextureChannelMask write SetSpecularTextureChannelMask; |
| Public | property FdSpecularTexture: TSFNode read FFdSpecularTexture; |
| Public | property SpecularTexture: TAbstractTextureNode read GetSpecularTexture write SetSpecularTexture; |
| Public | property FdTransmissionFactor: TSFVec3f read FFdTransmissionFactor; |
| Public | property TransmissionFactor: TVector3 read GetTransmissionFactor write SetTransmissionFactor; |
| Public | property FdTransmissionTextureId: TSFInt32 read FFdTransmissionTextureId; |
| Public | property TransmissionTextureId: Integer read GetTransmissionTextureId write SetTransmissionTextureId; |
| Public | property FdTransmissionTextureCoordinatesId: TSFInt32 read FFdTransmissionTextureCoordinatesId; |
| Public | property TransmissionTextureCoordinatesId: Integer read GetTransmissionTextureCoordinatesId write SetTransmissionTextureCoordinatesId; |
| Public | property FdTransmissionTextureChannelMask: TSFString read FFdTransmissionTextureChannelMask; |
| Public | property TransmissionTextureChannelMask: String read GetTransmissionTextureChannelMask write SetTransmissionTextureChannelMask; |
| Public | property FdTransmissionTexture: TSFNode read FFdTransmissionTexture; |
| Public | property TransmissionTexture: TAbstractTextureNode read GetTransmissionTexture write SetTransmissionTexture; |
| Public | property FdTangentTextureCoordinatesId: TSFInt32 read FFdTangentTextureCoordinatesId; |
| Public | property TangentTextureCoordinatesId: Integer read GetTangentTextureCoordinatesId write SetTangentTextureCoordinatesId; |
| Public | property FdBinormalTextureCoordinatesId: TSFInt32 read FFdBinormalTextureCoordinatesId; |
| Public | property BinormalTextureCoordinatesId: Integer read GetBinormalTextureCoordinatesId write SetBinormalTextureCoordinatesId; |
| Public | property FdInvertAlphaTexture: TSFBool read FFdInvertAlphaTexture; |
| Public | property InvertAlphaTexture: Boolean read GetInvertAlphaTexture write SetInvertAlphaTexture; |
| Public | property FdRelativeIndexOfRefraction: TSFFloat read FFdRelativeIndexOfRefraction; |
| Public | property RelativeIndexOfRefraction: Single read GetRelativeIndexOfRefraction write SetRelativeIndexOfRefraction; |
| Public | property FdFresnelBlend: TSFFloat read FFdFresnelBlend; |
| Public | property FresnelBlend: Single read GetFresnelBlend write SetFresnelBlend; |
| Public | property FdTextureTransformEnabled: TMFBool read FFdTextureTransformEnabled; |
Description
Fields
| Protected | VRML1ChildrenAllowed: Boolean; |
|
Are VRML 1.0 children allowed. This condition is checked in VRML1ChildAdd, so it's strictly impossible to add a node that is not allowed. Note that in some special cases Default | |
| Protected | VRML1ChildrenParsingAllowed: Boolean; |
|
VRML 1.0 children allowed to be added during parsing. This is used only by *Inline nodes for now, that do not allow reading children during parsing but may get new children in memory. So their When VRML1ChildrenAllowed is Default | |
Methods
| Public | constructor Create; |
|
This item has no description. | |
| Public | procedure SaveToStream(Writer: TX3DWriter); virtual; abstract; |
|
Save to stream. | |
| Public | function SaveToXml: TSaveToXmlMethod; virtual; |
|
How is this saved to X3D XML encoding. This determines when SaveToStream is called. It also cooperates with some SaveToStream implementations, guiding how the item is actually saved. By default it is sxChildElement. | |
| Protected | procedure WarningOnce(var WarningDone: Boolean; const Message: string); |
|
Make a specified warning, but only once for this node instance. Uses WarningDone to track if warning was already done. Warning will contain automatically NiceName, so X3D node name and type. | |
| Protected | function DeepCopyCore(CopyState: TX3DNodeDeepCopyState): TX3DNode; virtual; |
|
Does actual DeepCopy work. You can override this to copy some more properties for descendants. | |
| Protected | function DeepCopyCreate(CopyState: TX3DNodeDeepCopyState): TX3DNode; virtual; |
|
This should be a mere call to constructor of your own class. In TX3DNode, this simply calls default virtual constructor, which is Ok for all normal nodes. But we have some special nodes, like TX3DPrototypeNode or TX3DUnknownNode, that simply cannot be created by default constructor. They need to override this. | |
| Protected | procedure AddFunctionality(const F: TNodeFunctionality); |
|
Register new TNodeFunctionality instance to be returned by Functionality, and automatically freed when this node is freed. | |
| Protected | function DefaultContainerFieldInContext( const Version: TX3DVersion; const ParentNode: TX3DNode): String; virtual; |
|
Use this instead of DefaultContainerField to account that containerField may change depending on X3D version (like containerField of metadata nodes, changed between X3D 3 and 4) or parent node (like containerField of HAnimMotion). ParentNode may be | |
| Protected | class function VRML1ChildrenSaveToStream: Boolean; virtual; |
|
Should SaveToStream save our VRML1Children. In this class default implementation returns | |
| Protected | function DirectEnumerateActive( Func: TEnumerateChildrenFunction): Pointer; virtual; |
|
Enumerate all active child nodes of given node. "Active nodes" are the ones affecting current look or collisions, e.g. from Switch node only one child will be enumerated. See Traverse for more precise definition. "Direct" means that this enumerates only direct descendants, i.e. this is not recursive. See methods like Traverse or EnumerateNodes if you want recursive behavior. This can enumerate both VRML1Children nodes and nodes within TSFNode and TMFNode fields. Default implementation in this class enumerates all Children nodes of VRML 1.0. If you need to remove some children for VRML 1.0 (e.g. for Switch or LOD nodes) or add some children for VRML 2.0 you have to override this. You do not need to call inherited when overriding this — in fact, you should not, if you want to omit some nodes. Stops and returns immediately if Func returns non-nil for some child. | |
| Protected | function DirectEnumerateActiveForTraverse( Func: TEnumerateChildrenFunction; StateStack: TX3DGraphTraverseStateStack): Pointer; virtual; |
|
Enumerate all active child nodes of given node, and may additionally modify StateStack. It's used by Traverse. Default implementation in this class simply calls DirectEnumerateActive, ignoring StateStack, and this is suitable for 99% of nodes. However, for some special nodes (only Collision node for now), they have to modify state during traversing into various children, and then they can override this. Stops and returns immediately in Func returns non-nil for some child. | |
| Protected | function DirectEnumerateAll( Func: TEnumerateChildrenFunction): Pointer; |
|
Simply enumerate all direct descendant nodes. That is, all children in VRML 1.0 style and all nodes in SFNode and MFNode fields. This includes prototype stuff, if this node is expanded from prototype: PrototypeInstanceSourceNode and PrototypeInstanceHelpers. | |
| Protected | function DirectEnumerate( Func: TEnumerateChildrenFunction; OnlyActive: Boolean): Pointer; |
|
This enumerates direct descendant nodes of this node. This is equivalent to DirectEnumerateActive or DirectEnumerateAll, depending on value of OnlyActive param. | |
| Protected | procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
|
Override these methods to determine what happens when given node is traversed during Traverse call. The main use of this is to operate on TX3DGraphTraverseStateStack. Remember to always call inherited when overriding. In Besides changing StateStack.Top fields, you can do push/pop on the stack. Remember that if you do StateStack.Push in | |
| Protected | procedure MiddleTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
|
This item has no description. | |
| Protected | procedure AfterTraverse(StateStack: TX3DGraphTraverseStateStack); virtual; |
|
This item has no description. | |
| Protected | function ParseNodeBodyElement(Lexer: TX3DLexer; Reader: TX3DReaderNames; const APositionInParent: Integer): Boolean; virtual; |
|
Parse VRML node body element. Usually, this is a field. May also be VRML 1.0 style child node. May also be VRML 2.0 Script node interface declaration, etc. — see VRML 2.0 grammar spec. This should be overriden to parse special features within particular nodes. While generally VRML is very clean and there's no need to override this, there's one use for this currently:
When overriding, always check inherited result first, and exit if inherited handled successfully. Otherwise either read your stuff and return | |
| Protected | procedure ParseAfter(Reader: TX3DReaderNames); virtual; |
|
Called at the end of parsing this node (including children) in any encoding. | |
| Protected | procedure CreateNode; virtual; |
|
This item has no description. | |
| Public | function FieldsCount: Integer; |
|
This item has no description. | |
| Public | procedure AddField(const Value: TX3DField); |
|
This item has no description. | |
| Public | function IndexOfField(const AName: string): Integer; |
|
This item has no description. | |
| Public | function EventsCount: Integer; |
|
This item has no description. | |
| Public | procedure AddEvent(const Value: TX3DEvent); |
|
This item has no description. | |
| Public | function IndexOfEvent(const AName: string): Integer; |
|
This item has no description. | |
| Public | function Field(const AName: string; const RaiseOnError: Boolean = false): TX3DField; |
|
Search by name for given field. When RaiseOnError=false (default) returns Exceptions raised | |
| Public | function FieldOrEvent(const AName: string; const RaiseOnError: Boolean = false): TX3DFieldOrEvent; |
|
Search by name for given field or event (exposed by some field or not). When RaiseOnError=false (default) returns Exceptions raised | |
| Public | function AnyEvent(const AName: string; const RaiseOnError: Boolean = false): TX3DEvent; |
|
Search by name for given event (exposed by some field or not). When RaiseOnError=false (default) returns Exceptions raised | |
| Public | function VRML1ChildrenCount: integer; |
|
This item has no description. | |
| Public | procedure VRML1ChildAdd(const Index: Integer; const Child: TX3DNode); overload; |
|
Add a VRML 1.0 child node at given position. Index (position) must be in [0..VRML1ChildrenCount]. Items at and above Index position are moved to the right, to insert new child at Index position. | |
| Public | procedure VRML1ChildAdd(const Child: TX3DNode); overload; |
|
Add a VRML 1.0 child node at the end of VRML1Children list. | |
| Public | procedure VRML1ChildRemove(const I: Integer); |
|
This item has no description. | |
| Public | procedure VRML1ChildrenClear; |
|
This item has no description. | |
| Public | function VRML1ChildExtract(const I: Integer): TX3DNode; |
|
Remove a VRML 1.0 children at index I and return it (do not free it). Compare this with VRML1Remove, that removes children I and frees it if it's no longer used by anything. This removes children I, appropriately adjusting all parent / children links, but even if a node is unused after removing, it is not freed. It's always returned. | |
| Public | function VRML1ParentsCount: integer; |
|
This item has no description. | |
| Public | function ParentFieldsCount: Integer; |
|
This item has no description. | |
| Public | procedure FreeRemovingFromAllParents; |
|
Free this object (if it's not By design, normal destructor (Destroy called by Free) doesn't care about removing references to this object from it's parents. That's because it's the parents that usually initialize freeing of their children, and they free child when it's reference count is 0. So this freeing method is special in this regard. Use this if you really want to remove all node occurrences from the middle of VRML hierarchy. | |
| Public | procedure FreeIfUnused; |
|
Free this node if it is not referenced by any parent fields or nodes. Takes into account that node may have VRML 1.0 parent nodes and VRML 2.0 / X3D parent fields (SFNode or MFNode). This is a safe way of removing a node that may, but doesn't have to, be part of some VRML/X3D graph. The idea is that if a node is a part of some graph, we don't need to do anything (since you should have a reference to the entine graph somewhere anyway), otherwise node is considered unused and freed. Analogous to standard TObject.Free, this also works when called on a For safety, it's advised to set reference to | |
| Public | procedure KeepExistingBegin; |
|
Increase "fake reference count" by 1, preventing the node from being automatically freed when the reference count changes from non-zero to zero. It is discouraged to use this method. In most cases, TX3DNode.WaitForRelease and NodeRelease are easier to use than KeepExistingBegin + KeepExistingEnd + FreeIfUnusedAndNil. | |
| Public | procedure KeepExistingEnd; |
|
Decrease "fake reference count" by 1. This should match previous KeepExistingBegin call. When nothing will refer to this node, and the "fake reference count" is zero, the node will be freed. Note that merely calling It is discouraged to use this method. In most cases, TX3DNode.WaitForRelease and NodeRelease are easier to use than KeepExistingBegin + KeepExistingEnd + FreeIfUnusedAndNil. | |
| Public | procedure WaitForRelease; |
|
Do not free this node, even if it will become unused. You must call NodeRelease to free this node. By default, if this method was not used, every X3D node is reference-counted. This means that when the node starts being referenced by some other node (e.g. TAbstractShapeNode.Geometry refers to TIndexedFaceSetNode instance), the reference count is increased. When the node stops being referenced (e.g. TAbstractShapeNode.Geometry is set to Calling this routine pauses this "automatic freeing" of the node. Calling this rouine multiple times on the same node has no effect. So you don't need to pair every The reference count is still increased and decreased, but we also keep additional "fake" reference to the node, so it will not be freed. This should be always paired with NodeRelease, that will remove this "fake" reference and free the node (if it is unused). See the https://castle-engine.io/shaders#node_release for an example of this. | |
| Public | function Unused: Boolean; |
|
Is node unused, looking at all mechanisms (VRML 1.0 parents, X3D parents, KeepExistingBegin/End, WaitsForRelease). | |
| Public | function PathFromBaseUrl(const RelativePath: string): string; |
|
Returns an absolute path, assuming that RelativePath is relative path from BaseUrl or that RelativePath is already absolute. | |
| Public | procedure Parse(Lexer: TX3DLexer; Reader: TX3DReaderNames); virtual; |
|
Parse node. This should set values of your fields, VRML 1.0 Children list, BaseUrl. In special cases like TX3DUnknownNode this may actually initialize whole Fields list (by VRML 1.0 "fields" extensibility feature). | |
| Public | procedure ParseXML(Element: TDOMElement; Reader: TX3DReaderNames); |
|
Parse node body, i.e. mainly node's fields. | |
| Public | constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); virtual; |
|
Constructor. Initializes various properties:
| |
| Public | destructor Destroy; override; |
|
This item has no description. | |
| Public | function X3DType: string; virtual; |
|
Type of the node in X3D, like Note that VRML/X3D is generally case-sensitive, so this property is too. In TX3DNode, this returns ClassX3DType, which is suitable for most nodes. See ClassX3DType. | |
| Public | function NodeTypeName: string; deprecated 'use X3DType'; |
|
Warning: this symbol is deprecated: use X3DType This item has no description. | |
| Public | class function ClassX3DType: string; virtual; |
|
Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value. Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there. You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance. | |
| Public | function Traverse( NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc): Pointer; |
|
Traverse all the nodes of VRML graph that are active. An "active" part of the VRML graph are the nodes that actually change what the VRML file represents, in terms of geometry, collision detection etc. For example, the Switch node has only one child usually active. Nodes that merely influence the active graph by some events and routes do not have to be active (these nodes may change what the VRML file actually represents, but only by changing other nodes). For all nodes of NodeClass TraversingFunc will be called. If if returns non-nil for some node, the processing of following nodes (children and siblings) will be aborted and result will be returned. Traverse not only enumerates these nodes, it also collects all state (transformation, etc — see TX3DGraphTraverseState) that affects how given node should be presented. Also, TraversingInfo is passed to each TraversingFunc call. This allows you to investigate, during TraversingFunc call, the parents hierarchy (you can't use VRML1Parents / ParentFields of the current node, since a node may have many parents). Traverse calls are naturally recursive, and so the stack of TraversingInfo structures is naturally build and destroyed by recursive calls. For the root node (the one where you called Traverse without specifying initial TraversingInfo), ParentInfo is simply The scheme of how Traverse works:
BeforeTraverse;
TraverseIntoChildren := true;
if Self is NodeClass then TraversingFunc (Self, State, TraverseIntoChildren);
MiddleTraverse;
if TraverseIntoChildren is still true then
for all children returned by DirectEnumerateActive
call their Traverse(State);
AfterTraverse;
Add Self to State.VRML1State (for VRML 1.0 state nodes);
Note: setting TraverseIntoChildren to false means that some part of the tree is explicitly omitted from traversing. Use this only if you know what you're doing, as for some nodes they actually affect their parents too (for example, chilren within VRML 1.0 Group affect other nodes too; global lights within VRML >= 2.0 affect all nodes; and so on...). Usually, you will use this only for separator-like nodes (for VRML >= 2.0, all Group, Transform, Switch etc. act like separators), and only when you will somehow traverse into these nodes anyway. We guarantee that AfterTraverse will be called if BeforeTraverse was called and finished (that is, AfterTraverse is called in the During traversing, you can only modify the children (direct or not) nodes of the current node. | |
| Public | function TraverseInternal(StateStack: TX3DGraphTraverseStateStack; NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc; ParentInfo: PTraversingInfo): Pointer; |
|
Like Traverse, but it takes explicit starting state stack and starting ParentInfo. Not generally useful, use only for special purposes. | |
| Public | function TraverseIntoChildren(StateStack: TX3DGraphTraverseStateStack; NodeClass: TX3DNodeClass; TraversingFunc: TTraversingFunc; ParentInfo: PTraversingInfo): Pointer; |
|
Like Traverse, but only enters children. This does the job of Traverse normally omitted if your Traverse callback returns | |
| Public | procedure EnumerateNodes( proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
|
Enumerate all our children of some class. Recursively. Enumerates also this instance (Self), if it satisfies the NodeClass and SeekNodeName conditions. This enumerates both VRML 1.0 children (VRML1Children) as well as VRML >= 2.0 (including X3D) children (nodes in TSFNode and TMFNode fields). If OnlyActive then it will enumerate only active parts of the graph ("active" as defined by Traverse), so it will work as a simpler version of Traverse (simpler, because it doesn't track any state). If not OnlyActive then it will simply enumerate all nodes. This will include then also prototype helpers, if this node was expanded from prototype: see PrototypeInstanceSourceNode and PrototypeInstanceHelpers. If you give SeekNodeName parameter, we'll only look for nodes with X3DName = SeekNodeName. When SeekNodeName = '' it, consistently, looks for unnamed nodes (where X3DName = ''). Enumerates children only after enumerating Self. So you can modify children before enumerating them in the Proc callback. You can only modify your children in the Proc callback. | |
| Public | procedure EnumerateNodes(nodeClass: TX3DNodeClass; proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
|
This item has no description. | |
| Public | procedure EnumerateNodes(nodeClass: TX3DNodeClass; const SeekNodeName: string; proc: TX3DNodeProc; OnlyActive: Boolean); overload; |
|
This item has no description. | |
| Public | function SearchNodes(const Proc: TX3DNodeSearchProc; const OnlyActive: Boolean): Pointer; |
|
Search nodes, like enumerating nodes but allows early exit during the enumeration. We search for a node for which Proc(Node) returns something non-nil. For every node, the given Proc callback is run. If the Proc callback returns something non-nil, the enumeration of the following nodes stops, and we return the callback result. | |
| Public | function TryFindNodeByName(FindClass: TX3DNodeClass; const FindName: string; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
|
Warning: this symbol is deprecated: use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])
These functions are quite like EnumerateNodes, except they stop at the first occurrence and return it.
Exceptions raised
| |
| Public | function FindNodeByName(FindClass: TX3DNodeClass; const FindName: string; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
|
Warning: this symbol is deprecated: use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = []) This item has no description. | |
| Public | function TryFindNode(FindClass: TX3DNodeClass; OnlyActive: Boolean): TX3DNode; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
|
Warning: this symbol is deprecated: use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = []) This item has no description. | |
| Public | function FindNode(FindClass: TX3DNodeClass; OnlyActive: Boolean): TX3DNode; overload; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
|
Warning: this symbol is deprecated: use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = []) This item has no description. | |
| Public | function FindNode(const NodeClass: TX3DNodeClass; const FindName: String; const Options: TFindNodeOptions = []): TX3DNode; overload; |
|
Find a node by name and class, in this node and children (recursively). By default it searches both active and inactive graph parts. Add fnOnlyActive to search only in active parts. Exceptions raised
| |
| Public | function FindNode(const FindName: string): TX3DNode; overload; deprecated 'use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = [])'; |
|
Warning: this symbol is deprecated: use FindNode(NodeClass: TX3DNodeClass, FindName: String, Options: TFindNodeOptions = []) This item has no description. | |
| Public | function TryFindNodeState( NodeClass: TX3DNodeClass; out Node: TX3DNode; out State: TX3DGraphTraverseState): Boolean; deprecated 'use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their TX3DGraphTraverseState'; |
|
Warning: this symbol is deprecated: use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their TX3DGraphTraverseState Find the first node with given class (NodeClass), return it's state or just transformation. Similar to Traverse, but stops as soon as the given node is found. Returns | |
| Public | function TryFindNodeTransform( NodeClass: TX3DNodeClass; out Node: TX3DNode; out Transform: TMatrix4; out TransformScale: Single): Boolean; deprecated 'use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their transformations'; |
|
Warning: this symbol is deprecated: use FindNode to look for nodes easier; or iterate over TCastleScene.Shapes.TraverseList if you really need to know nodes with their transformations This item has no description. | |
| Public | function TryFindParentByName(const FindName: string): TX3DNode; |
|
Seeks Self and parent nodes (from VRML1Parents and ParentFields, recursively) for given node name. In other words, this is similar to TryNodeByName or NodeByName, but it goes "upward" in graph hierarchy. Note that this never restricts itself only to "active" graph part ("active" as defined by Traverse) because you really can't detect what is the "active" part of the graph when going upward.
Exceptions raised
| |
| Public | function FindParentByName(const FindName: string): TX3DNode; |
|
This item has no description. | |
| Public | function HasParentNode(Node: TX3DNode): Boolean; |
|
Looks for a given Node in parents (and self), recursively. Similar to TryFindParentByName. Returns | |
| Public | function TryFindDirectParentByName(const FindName: string): TX3DNode; |
|
Search immediate parents of this node for a node with given FindName. Returns | |
| Public | function IsNodePresent(Node: TX3DNode; OnlyActive: Boolean): Boolean; |
|
Looks for a given node in our children (direct and not, including self). If OnlyActive, then only active parts are searched ("active" as defined by Traverse). | |
| Public | function NodesCount(NodeClass: TX3DNodeClass; CountOnlyActiveNodes: Boolean): integer; |
|
Count the occurrences of given node class in our children. For example, you can pass NodeClass = TAbstractLightNode to count the light sources in the scene. If CountOnlyActiveNodes, then only active parts are searched ("active" as defined by Traverse). This traverses both VRML 1.0 children nodes and VRML 2.0 nodes inside SFNode and MFNode fields. | |
| Public | procedure SaveToStream(Writer: TX3DWriter); override; |
|
Save node to a stream. Saves everything, including node name, node type, and node contents. | |
| Public | class function VRML1StateNode(out StateNode: TVRML1StateNode): Boolean; |
|
Do the nodes of (exactly) this class should be included in VRML 1.0 state (see TX3DGraphTraverseState.VRML1State). | |
| Public | class function ForVRMLVersion(const Version: TX3DVersion): Boolean; virtual; |
|
Some nodes are present only in specific VRML/X3D version. This functions decides it. For example some nodes can only work in VRML < 2.0, some others only in VRML >= 2.0. There are even some pairs of nodes: for example TConeNode_1 works with VRML < 2.0, TConeNode works with VRML >= 2.0. NodesManager will use this. Default implementation of this function returns always In practice I only use this function when various VRML/X3D versions specify the same node name but
| |
| Public | function EnumerateReplaceChildren( Func: TEnumerateReplaceNodesFunction): Cardinal; |
|
Enumerates all children nodes (recursively), allowing you to decide for each node to replace or remove it. So this is something like EnumerateNodes, except that it allows you to remove the nodes. It always enumerates all nodes, not only active (e.g. it enumerates all Switch node children, not only the chosen one). Note that (unlike regular EnumerateNodes) this doesn't report Self to Func !. Which is natural, since this may remove nodes by normal VRML1ChildRemove calls, so it needs to know ParentNode of the removed node. For each node Func will be called, with ParentNode and Node set. If you change the Node to something else, then the old node will be removed and new Node inserted in the same place. If new Node is Nodes are traversed in depth-first search. Node is first reported to Func, and then (if it's not replaced) we descend into this Node. ReturnsThe number of removed (and possibly replaced) nodes. | |
| Public | function RemoveChildrenWithMatchingName( const Wildcard: string; IgnoreCase: Boolean): Cardinal; |
|
Removes all children (and their children, recursively) with node names matchig Wildcard. You can use * and ? special chars in the Wildcard. ReturnsThe number of removed nodes. | |
| Public | function PrototypesCount: Integer; |
|
This item has no description. | |
| Public | procedure AddPrototype(const Value: TX3DPrototypeBase); |
|
This item has no description. | |
| Public | function RoutesCount: Integer; |
|
This item has no description. | |
| Public | procedure AddRoute(const Value: TX3DRoute); overload; |
|
This item has no description. | |
| Public | procedure AddRoute(const Source, Destination: TX3DFieldOrEvent); overload; |
|
This item has no description. | |
| Public | procedure RemoveRoute(const Value: TX3DRoute); overload; |
|
Removes an X3D route (passing event between 2 nodes) from being stored in this node, and thus from being used. Note that TX3DRoute is "owned" by the node, and thus removing it also frees it. | |
| Public | procedure RemoveRoute(const Index: Integer); overload; |
|
This item has no description. | |
| Public | function ImportsCount: Integer; |
|
This item has no description. | |
| Public | procedure AddImport(const Value: TX3DImport); |
|
This item has no description. | |
| Public | function ExportsCount: Integer; |
|
This item has no description. | |
| Public | procedure AddExport(const Value: TX3DExport); |
|
This item has no description. | |
| Public | function DeepCopy: TX3DNode; |
|
Create a deep copy of this node and all it's children. New copy is completely independent from original, having all children nodes (in both VRML 1.0 sense (Children) and VRML >= 2.0 (inside SFNode and MFNode fields)) also duplicated. New copy has protypes, routes, interface declarations and generally everything established like in the original, using copied nodes. Doesn't copy things which are dependent on container hierarchy. (So copying them would be more dangerous than useful.) This means: DestructionNotifications, Scene, VRML1Parents, ParentFields. VRML1Parents and ParentFields will be set for children anyway (to appropriate copies). Caller owns this newly created copy — as returned by this method, it's not linked anywhere. | |
| Public | procedure AddDestructionNotification(const Event: TNodeDestructionNotification); |
|
Callbacks registered here will be called when this node is destroyed. | |
| Public | procedure RemoveDestructionNotification(const Event: TNodeDestructionNotification); |
|
This item has no description. | |
| Public | procedure PostAddInterfaceDeclaration(IDecl: TX3DInterfaceDeclaration); virtual; |
|
This will be always called by VRML parsers after adding new item to our InterfaceDeclarations. In this class, this simply adds IDecl.FieldOrEvent to our normal fields/events by IDecl.AddFieldOrEvent. You may override this in subclasses to react in some special way to new fields/events, for example Script node may register here to receive notification when input event is received. | |
| Public | procedure AddCustomField(AField: TX3DField); |
|
Add to node InterfaceDeclarations given field. This should only be used with nodes having HasInterfaceDeclarations = | |
| Public | procedure AddCustomFieldOrEvent(AFieldOrEvent: TX3DFieldOrEvent); |
|
Add to node InterfaceDeclarations given field or event. This should only be used with nodes having HasInterfaceDeclarations = | |
| Public | function NiceName: string; |
|
Nice and concise node description for user. Shows node type and name. | |
| Public | procedure UnregisterScene; |
|
Detach this node from parent scene, recursively. Useful if you take a node and want to put it in another TCastleSceneCore. You almost never need to call this method from your application. This is done automatically for you when TCastleSceneCore is destroyed. And a node can only be part of one TCastleSceneCore instance at one time. Notable exceptions when you need to call this:
| |
| Public | function FieldSetByEvent(const Event: TX3DEvent): TX3DField; virtual; |
|
Find field set by given event of this node. | |
| Public | function FieldSendingEvent(const Event: TX3DEvent): TX3DField; virtual; |
|
Find field that sends given event of this node. | |
| Public | function Functionality( const FunctionalityClass: TNodeFunctionalityClass): TNodeFunctionality; |
|
Return an instance performing given Descendants should register TNodeFunctionality classes using AddFunctionality. | |
| Public | procedure InternalInsertMetadata(const M: TAbstractMetadataNode); |
|
This item has no description. | |
| Public | function FindMetadata(const Key: String): TAbstractMetadataNode; |
|
Find a "metadata" information within this node with given key. Returns This seeks for a TAbstractMetadataNode instance within the X3D "metadata" field of this node. Looks for TAbstractMetadataNode with TAbstractMetadataNode.NameField matching the parameter It ignores TMetadataSet when searching, as TMetadataSet doesn't contain any simple data, it serves only as container for other metadata nodes. | |
| Public | procedure CreateNode; override; |
|
Create node fields and events. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dnode.inc (line 33). | |
| Public | class function ClassX3DType: String; override; |
|
This item has no description. Showing description inherited from TX3DNode.ClassX3DType. Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value. Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there. You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dnode.inc (line 34). | |
| Public | procedure CreateNode; override; |
|
Create node fields and events. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dappearancechildnode.inc (line 28). | |
| Public | class function ClassX3DType: String; override; |
|
This item has no description. Showing description inherited from TX3DNode.ClassX3DType. Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value. Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there. You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dappearancechildnode.inc (line 29). | |
| Public | procedure CreateNode; override; |
|
Create node fields and events. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 31). | |
| Public | class function ClassX3DType: String; override; |
|
This item has no description. Showing description inherited from TX3DNode.ClassX3DType. Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value. Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there. You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 32). | |
| Public | destructor Destroy; override; |
|
This item has no description. | |
| Public | function ShininessFactorExp: Single; |
|
Shininess expressed as an exponent for shading equations. This is just ShininessFactor * 128. | |
| Public | function MaterialInfo: TMaterialInfo; |
|
Material information based on this node. It is automatically updated when properties of this material change. Do not free it yourself, it will be automatically freed when this node is freed. | |
| Public | procedure CreateNode; override; |
|
Create node fields and events. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 167). | |
| Public | class function ClassX3DType: String; override; |
|
This item has no description. Showing description inherited from TX3DNode.ClassX3DType. Node type name in VRML/X3D, for this class. Normal VRML/X3D node classes should override this to return something non-empty, and then X3DType automatically will return the same value. Empty for classes that don't have a hardcoded VRML/X3D node name, like a special TX3DUnknownNode. Such special classes should override then X3DType to return actual non-empty name there. You usually should call X3DType. The only use of this method is that it works on classes (it's "class function"), without needing at actual instance. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 168). | |
| Public | procedure SetTextureTransformEnabled(const Value: array of boolean); overload; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 588). | |
| Public | procedure SetTextureTransformEnabled(const Value: TBooleanList); overload; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 590). | |
Properties
| Public | property PositionInParent: Integer
read FPositionInParent write FPositionInParent default -1; |
|
Position of this item within parent VRML/X3D node, used for saving the VRML/X3D graph to file. Default value -1 means "undefined". For normal usage and processing of VRML graph, this is totally not needed. This position doesn't dictate actual meaning of VRML graph. If you're looking to change order of nodes, you probably want to rather look at something like ReplaceItems within TMFNode or such. This field is purely a hint when encoding VRML file how to order VRML items (nodes, fields, routes, protos) within parent node or the VRML file. Reason: VRML allows non-unique node names. Each DEF XXX overrides all previous ("previous" in lexical sense, i.e. normal order of tokens in the file) DEF XXX with the same XXX, thus hiding previous node name "XXX". This means that when saving VRML file we have to be very careful about the order of items, such that e.g. all routes are specified when appropriate node names are bound. This is a relative position, relative to other See e.g. ../../../demo_models/x3d/tricky_def_use.x3dv for tests of some tricky layout. When reading such file we have to record | |
| Protected | property CDataField: TMFString read FCDataField write FCDataField; |
|
The field where CDATA section from XML is added. Used when loading X3D in XML encoding: XML elements may contain CDATA sections, that are added to "url" field. See X3D XML encoding specification about "Encapsulating Script node code" [http://www.web3d.org/x3d/specifications/ISO-IEC-19776-1.2-X3DEncodings-XML/Part01/concepts.html#EncapsulatingScriptNodeCode]. We also allow this for shader nodes (sensible (follows the intention of the spec) and compatible with InstantReality). When not assigned, then CDATA section for this node is not allowed. This should be set in descendants constructor. | |
| Public | property Fields [const Index: Integer]: TX3DField read GetFields; |
|
Node fields. For normal nodes, all fields are created and added using AddField from the constructor. Fields default values are set, and current field values are set to these defaults. Later, we only modify these fields current values (e.g. when parsing). However, there are special node classes that set their fields differently. TX3DPrototypeNode has their fields set according to it's VRML 2.0 prototype. TX3DUnknownNode may have it's fields set by VRML 1.0 "fields" feature (so it's Fields are initialized by parsing it). Nodes with HasInterfaceDeclarations have some Fields and Events added when reading node. All fields on this list are owned by this instance. | |
| Public | property Events [const Index: Integer]: TX3DEvent read GetEvents; |
|
Explicit events (that is, not exposed by some field) of this node. For exposed events, see each field's property ExposedEvents. | |
| Public | property VRML1Children [const I: Integer]: TX3DNode read GetVRML1Child write SetVRML1Child; |
|
VRML 1.0 children nodes. These are nodes directly specified inside a VRML 1.0 node, they don't belong to any node field. (In VRML 1.0, there was no SFNode / MFNode fields.) In VRML 2.0, this is always empty. VRML 1.0 nodes may have any number of children. The children nodes refer back to it's parent nodes in VRML1Parents list. When travelling over VRML/X3D graph, remember that cycles are possible, because of DEF/USE. Obviously, they possible when travelling along the VRML1Parents list. We currently assume that there are no cycles when we treat the graph as directed, but it may change one day (some VRML/X3D models create real cycles). Adding/removing stuff from the Note that given node instance may be a children of a single node multiple times, through DEF/USE mechanism. The order of children is important and preserved. (On the other hand, the order of VRML1Parents is not important, as that list is mostly for reference-counting.) You can replace one children with another like | |
| Public | property VRML1Parents [const I: Integer]: TX3DNode read GetVRML1Parent; |
|
All VRML 1.0 parent nodes. | |
| Public | property ParentFields[Index: Integer]: TX3DField read GetParentFieldsItem; |
|
All SFNode and MFNode fields where this node is referenced. This is somewhat analogous for VRML1Parents, but for VRML 2.0. ParentFieldsNode is just for your comfort, it returns always appropriate field's ParentNode property value (i.e. | |
| Public | property ParentFieldsNode[Index: Integer]: TX3DNode
read GetParentFieldsNodeItem; |
|
This item has no description. | |
| Public | property KeepExisting: Cardinal read FKeepExisting write FKeepExisting; deprecated 'do not access this directly; instead use TX3DNode.WaitForRelease and NodeRelease (eventually KeepExistingBegin and KeepExistingEnd) if you want to control node lifetime'; |
|
Warning: this symbol is deprecated: do not access this directly; instead use TX3DNode.WaitForRelease and NodeRelease (eventually KeepExistingBegin and KeepExistingEnd) if you want to control node lifetime
When For example, you may want to remove the node from X3D graph hierarchy, but keep a valid reference to it anyway (for example, maybe you'll free it later by hand or add it somewhere else). Methods KeepExistingBegin and KeepExistingEnd simply increase / decrease | |
| Public | property X3DName: string read FX3DName write FX3DName; |
|
Name of this node. When saving/loading, this comes from VRML/X3D "DEF" construct. Empty value means that the name is not defined. Do not change this during loading / saving of the X3D graph, or searching for nodes e.g. by EnumerateNodes. Note that this property is deliberately not called | |
| Public | property NodeName: string read FX3DName write FX3DName; deprecated 'use X3DName'; |
|
Warning: this symbol is deprecated: use X3DName This item has no description. | |
| Public | property BaseUrl: String read FBaseUrl write FBaseUrl; |
|
Base URL for all URLs inside our fields. Used everywhere as a base for relative URLs, to handle fields that refer to external files like textures, other 3D models (ImageTexture, Inline nodes, many others). It must be an absolute URL. Currently, it doesn't have to contain a protocol, and is then interpreted as a path on local filesystem (just like it had file:// prefix). Still, it must be an absolute path. This is set in constructor, and eventually adjusted by various parsing routines. This way we could, if only we would like to, resolve nodes like Inline or ImageTexture immediately after parsing them. | |
| Public | property WWWBasePath: string read FBaseUrl write FBaseUrl; deprecated; |
|
Warning: this symbol is deprecated. Old deprecated name for BaseUrl. | |
| Public | property Prototypes [const Index: Integer]: TX3DPrototypeBase read GetPrototypes; |
|
This item has no description. | |
| Public | property Routes [const Index: Integer]: TX3DRoute read GetRoutes; |
|
This item has no description. | |
| Public | property ImportsList [const Index: Integer]: TX3DImport read GetImports; |
|
This item has no description. | |
| Public | property ExportsList [const Index: Integer]: TX3DExport read GetExports; |
|
This item has no description. | |
| Public | property PrototypeInstance: Boolean read FPrototypeInstance; |
|
Then PrototypeInstanceSourceNode is non-nil and indicates parsed prototype node (and PrototypeInstanceSourceNode.Prototype gives you even a link to the actual prototype specification). PrototypeInstanceSourceNode is used for events: any ROUTEs specified outside of prototype and leading to/from instantiated prototype should actually lead to PrototypeInstanceSourceNode events (not to events of Self). Reason: prototype events may be different than actual expanded node events, and ROUTEs want to lead to prototype events. This is implemented when expanding prototype (TX3DPrototypeNode.Instantiate) and when linking ROUTE (TX3DRoute.SetSource, TX3DRoute.SetDestination). PrototypeInstanceHelpers may be Any other nodes and accompanying scene graphs are not part of the transformation hierarchy, but may be referenced by ROUTE statements or Script nodes in the prototype definition. Note that for TX3DPrototypeNode (within PrototypeInstanceSourceNode) these have a little different meaning: they describe the nested prototype, if any, that was used to create this node. This may happen if the node was expanded from one prototype within another. (Usually, you shouldn't be concerned about this; see TX3DPrototypeNode.Instantiate implementation comments for gory details about this.) | |
| Public | property PrototypeInstanceSourceNode: TX3DPrototypeNode
read FPrototypeInstanceSourceNode; |
|
This item has no description. | |
| Public | property PrototypeInstanceHelpers: TX3DNode read FPrototypeInstanceHelpers; |
|
This item has no description. | |
| Public | property DefaultContainerField: string
read FDefaultContainerField write FDefaultContainerField; |
|
Default value of "containerField" attribute for this node in X3D XML encoding. | |
| Public | property HasInterfaceDeclarations: TX3DAccessTypes
read FHasInterfaceDeclarations
write SetHasInterfaceDeclarations default []; |
|
For some special VRML / X3D nodes (like Script, ComposedShader) that allow the definition of additional fields/events within. In X3D specification this is marked like # And any number of: fieldType [in] fieldName fieldType [in,out] fieldName initialValue fieldType [out] fieldName fieldType [] fieldName initialValue
If | |
| Public | property InterfaceDeclarations: TX3DInterfaceDeclarationList
read FInterfaceDeclarations; |
|
This item has no description. | |
| Public | property Scene: TX3DEventsEngine read FScene write FScene; |
|
Scene that will be notified about changes to this node. This is necessary to allow the scene to properly process VRML/X3D events, and also to react properly to any other changes to the nodes (like when you change some field directly by ObjectPascal code, e.g. by TX3DField.Send). May be A given TX3DNode may be renderable only by a single renderer. This means it can be placed only within one TCastleScene. | |
| Public | property TransformFunctionality: TTransformFunctionality read FTransformFunctionality; |
|
Fast shortcut to Functionality(TTransformFunctionality). | |
| Public | property TimeFunctionality: TTimeDependentFunctionality read FTimeFunctionality; |
|
Fast shortcut to Functionality(TTimeDependentFunctionality). | |
| Public | property GenTexFunctionality: TGeneratedTextureFunctionality read FGenTexFunctionality; |
|
Fast shortcut to Functionality(TGeneratedTextureFunctionality). | |
| Public | property MetadataBoolean[const Key: String]: Boolean read GetMetadataBoolean write SetMetadataBoolean; |
|
Get/set metadata, identified by a given Key, as a Boolean. "Metadata" is any value you want to save with this node, it has no effect on the rendering/behavior. This property hides various complexities of the X3D metadata nodes. This property looks for a TMetadataBooleanNode node inside the "metadata" of this node using FindMetadata. If found, it allows to operate TMetadataBooleanNode.FdValue array. The MetadataBooleanArray allows to get/set appropriate items of this array. The If such metadata node is not found, or it's TMetadataBooleanNode.FdValue array is too short, this returns false. When setting, it adds such metadata node if necessary, and increases the TMetadataBooleanNode.FdValue array length if necessary. | |
| Public | property MetadataBooleanArray[const Key: String; const Index: Cardinal]: Boolean read GetMetadataBooleanArray write SetMetadataBooleanArray; |
|
This item has no description. | |
| Public | property MetadataString[const Key: String]: String read GetMetadataString write SetMetadataString; |
|
Get/set metadata, identified by a given Key, as a String. "Metadata" is any value you want to save with this node, it has no effect on the rendering/behavior. This property hides various complexities of the X3D metadata nodes. This property looks for a TMetadataStringNode node inside the "metadata" of this node using FindMetadata. If found, it allows to operate TMetadataStringNode.FdValue array. The MetadataStringArray allows to get/set appropriate items of this array. The If such metadata node is not found, or it's TMetadataStringNode.FdValue array is too short, this returns ''. When setting, it adds such metadata node if necessary, and increases the TMetadataStringNode.FdValue array length if necessary. | |
| Public | property MetadataStringArray[const Key: String; const Index: Cardinal]: String read GetMetadataStringArray write SetMetadataStringArray; |
|
This item has no description. | |
| Public | property MetadataInteger[const Key: String]: Integer read GetMetadataInteger write SetMetadataInteger; |
|
Get/set metadata, identified by a given Key, as a Integer. "Metadata" is any value you want to save with this node, it has no effect on the rendering/behavior. This property hides various complexities of the X3D metadata nodes. This property looks for a TMetadataIntegerNode node inside the "metadata" of this node using FindMetadata. If found, it allows to operate TMetadataIntegerNode.FdValue array. The MetadataIntegerArray allows to get/set appropriate items of this array. The If such metadata node is not found, or it's TMetadataIntegerNode.FdValue array is too short, this returns 0. When setting, it adds such metadata node if necessary, and increases the TMetadataIntegerNode.FdValue array length if necessary. | |
| Public | property MetadataIntegerArray[const Key: String; const Index: Cardinal]: Integer read GetMetadataIntegerArray write SetMetadataIntegerArray; |
|
This item has no description. | |
| Public | property MetadataDouble[const Key: String]: Double read GetMetadataDouble write SetMetadataDouble; |
|
Get/set metadata, identified by a given Key, as a Double. "Metadata" is any value you want to save with this node, it has no effect on the rendering/behavior. This property hides various complexities of the X3D metadata nodes. This property looks for a TMetadataDoubleNode or TMetadataFloatNode node inside the "metadata" of this node using FindMetadata. If found, it allows to operate TMetadataDoubleNode.FdValue array or TMetadataFloatNode.FdValue array. The MetadataDoubleArray allows to get/set appropriate items of this array. The If such metadata node is not found, or it's TMetadataDoubleNode.FdValue array is too short, this returns 0.0. When setting, it adds such metadata node if necessary, and increases the TMetadataDoubleNode.FdValue array length if necessary. | |
| Public | property MetadataDoubleArray[const Key: String; const Index: Cardinal]: Double read GetMetadataDoubleArray write SetMetadataDoubleArray; |
|
This item has no description. | |
| Public | property FdMetadata: TSFNode read FFdMetadata; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dnode.inc (line 39). | |
| Public | property Metadata: TAbstractMetadataNode read GetMetadata write SetMetadata; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dnode.inc (line 43). | |
| Public | property EventActivate: TSFBoolEvent read FEventActivate; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 36). | |
| Public | property EventIsSelected: TSFBoolEvent read FEventIsSelected; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 40). | |
| Public | property EventIsValid: TSFBoolEvent read FEventIsValid; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 44). | |
| Public | property FdLanguage: TSFStringEnum read FFdLanguage; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 48). | |
| Public | property Language: TShaderLanguage read GetLanguage write SetLanguage; |
|
Shading language. Only the GLSL (OpenGL Shading Language) is actually supported. The default value, empty string, is equivalent to GLSL. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_x3dshadernode.inc (line 50). | |
| Public | property Transparency: Single read GetTransparency write SetTransparency; |
|
Transparency determined by the AlphaFactor. This is just 1 - AlphaFactor. | |
| Public | property FdAlphaFactor: TSFFloat read FFdAlphaFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 172). | |
| Public | property AlphaFactor: Single read GetAlphaFactor write SetAlphaFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 174). | |
| Public | property FdAlphaTextureId: TSFInt32 read FFdAlphaTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 178). | |
| Public | property AlphaTextureId: Integer read GetAlphaTextureId write SetAlphaTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 180). | |
| Public | property FdAlphaTextureCoordinatesId: TSFInt32 read FFdAlphaTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 184). | |
| Public | property AlphaTextureCoordinatesId: Integer read GetAlphaTextureCoordinatesId write SetAlphaTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 186). | |
| Public | property FdAlphaTextureChannelMask: TSFString read FFdAlphaTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 190). | |
| Public | property AlphaTextureChannelMask: String read GetAlphaTextureChannelMask write SetAlphaTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 192). | |
| Public | property FdAlphaTexture: TSFNode read FFdAlphaTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 196). | |
| Public | property AlphaTexture: TAbstractTextureNode read GetAlphaTexture write SetAlphaTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 198). | |
| Public | property FdAmbientFactor: TSFVec3f read FFdAmbientFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 202). | |
| Public | property AmbientFactor: TVector3 read GetAmbientFactor write SetAmbientFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 204). | |
| Public | property FdAmbientTextureId: TSFInt32 read FFdAmbientTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 208). | |
| Public | property AmbientTextureId: Integer read GetAmbientTextureId write SetAmbientTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 210). | |
| Public | property FdAmbientTextureCoordinatesId: TSFInt32 read FFdAmbientTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 214). | |
| Public | property AmbientTextureCoordinatesId: Integer read GetAmbientTextureCoordinatesId write SetAmbientTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 216). | |
| Public | property FdAmbientTextureChannelMask: TSFString read FFdAmbientTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 220). | |
| Public | property AmbientTextureChannelMask: String read GetAmbientTextureChannelMask write SetAmbientTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 222). | |
| Public | property FdAmbientTexture: TSFNode read FFdAmbientTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 226). | |
| Public | property AmbientTexture: TAbstractTextureNode read GetAmbientTexture write SetAmbientTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 228). | |
| Public | property FdDiffuseFactor: TSFVec3f read FFdDiffuseFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 232). | |
| Public | property DiffuseFactor: TVector3 read GetDiffuseFactor write SetDiffuseFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 234). | |
| Public | property FdDiffuseTextureId: TSFInt32 read FFdDiffuseTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 238). | |
| Public | property DiffuseTextureId: Integer read GetDiffuseTextureId write SetDiffuseTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 240). | |
| Public | property FdDiffuseTextureCoordinatesId: TSFInt32 read FFdDiffuseTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 244). | |
| Public | property DiffuseTextureCoordinatesId: Integer read GetDiffuseTextureCoordinatesId write SetDiffuseTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 246). | |
| Public | property FdDiffuseTextureChannelMask: TSFString read FFdDiffuseTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 250). | |
| Public | property DiffuseTextureChannelMask: String read GetDiffuseTextureChannelMask write SetDiffuseTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 252). | |
| Public | property FdDiffuseTexture: TSFNode read FFdDiffuseTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 256). | |
| Public | property DiffuseTexture: TAbstractTextureNode read GetDiffuseTexture write SetDiffuseTexture; |
|
The texture controlling the diffuse color, multiplied by DiffuseFactor. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 258). | |
| Public | property FdDiffuseDisplacementTexture: TSFNode read FFdDiffuseDisplacementTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 262). | |
| Public | property DiffuseDisplacementTexture: TAbstractTextureNode read GetDiffuseDisplacementTexture write SetDiffuseDisplacementTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 264). | |
| Public | property FdDisplacementAxis: TSFString read FFdDisplacementAxis; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 268). | |
| Public | property DisplacementAxis: String read GetDisplacementAxis write SetDisplacementAxis; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 270). | |
| Public | property FdDisplacementFactor: TSFFloat read FFdDisplacementFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 274). | |
| Public | property DisplacementFactor: Single read GetDisplacementFactor write SetDisplacementFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 276). | |
| Public | property FdDisplacementTextureId: TSFInt32 read FFdDisplacementTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 280). | |
| Public | property DisplacementTextureId: Integer read GetDisplacementTextureId write SetDisplacementTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 282). | |
| Public | property FdDisplacementTextureCoordinatesId: TSFInt32 read FFdDisplacementTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 286). | |
| Public | property DisplacementTextureCoordinatesId: Integer read GetDisplacementTextureCoordinatesId write SetDisplacementTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 288). | |
| Public | property FdDisplacementTexture: TSFNode read FFdDisplacementTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 292). | |
| Public | property DisplacementTexture: TAbstractTextureNode read GetDisplacementTexture write SetDisplacementTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 294). | |
| Public | property FdEmissiveFactor: TSFVec3f read FFdEmissiveFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 298). | |
| Public | property EmissiveFactor: TVector3 read GetEmissiveFactor write SetEmissiveFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 300). | |
| Public | property FdEmissiveTextureId: TSFInt32 read FFdEmissiveTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 304). | |
| Public | property EmissiveTextureId: Integer read GetEmissiveTextureId write SetEmissiveTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 306). | |
| Public | property FdEmissiveTextureCoordinatesId: TSFInt32 read FFdEmissiveTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 310). | |
| Public | property EmissiveTextureCoordinatesId: Integer read GetEmissiveTextureCoordinatesId write SetEmissiveTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 312). | |
| Public | property FdEmissiveTextureChannelMask: TSFString read FFdEmissiveTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 316). | |
| Public | property EmissiveTextureChannelMask: String read GetEmissiveTextureChannelMask write SetEmissiveTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 318). | |
| Public | property FdEmissiveTexture: TSFNode read FFdEmissiveTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 322). | |
| Public | property EmissiveTexture: TAbstractTextureNode read GetEmissiveTexture write SetEmissiveTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 324). | |
| Public | property FdEnvironmentFactor: TSFVec3f read FFdEnvironmentFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 328). | |
| Public | property EnvironmentFactor: TVector3 read GetEnvironmentFactor write SetEnvironmentFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 330). | |
| Public | property FdEnvironmentTextureId: TSFInt32 read FFdEnvironmentTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 334). | |
| Public | property EnvironmentTextureId: Integer read GetEnvironmentTextureId write SetEnvironmentTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 336). | |
| Public | property FdEnvironmentTextureCoordinatesId: TSFInt32 read FFdEnvironmentTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 340). | |
| Public | property EnvironmentTextureCoordinatesId: Integer read GetEnvironmentTextureCoordinatesId write SetEnvironmentTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 342). | |
| Public | property FdEnvironmentTextureChannelMask: TSFString read FFdEnvironmentTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 346). | |
| Public | property EnvironmentTextureChannelMask: String read GetEnvironmentTextureChannelMask write SetEnvironmentTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 348). | |
| Public | property FdEnvironmentTexture: TSFNode read FFdEnvironmentTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 352). | |
| Public | property EnvironmentTexture: TAbstractEnvironmentTextureNode read GetEnvironmentTexture write SetEnvironmentTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 354). | |
| Public | property FdMultiDiffuseAlphaTexture: TSFNode read FFdMultiDiffuseAlphaTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 358). | |
| Public | property MultiDiffuseAlphaTexture: TAbstractTextureNode read GetMultiDiffuseAlphaTexture write SetMultiDiffuseAlphaTexture; |
|
The texture controlling the diffuse (rgb) and alpha (alpha channel). Diffuse color is multiplied by DiffuseFactor, alpha is (or rather: should be) multiplied by AlphaFactor. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 360). | |
| Public | property FdMultiEmmisiveAmbientIntensityTexture: TSFNode read FFdMultiEmmisiveAmbientIntensityTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 364). | |
| Public | property MultiEmmisiveAmbientIntensityTexture: TAbstractTextureNode read GetMultiEmmisiveAmbientIntensityTexture write SetMultiEmmisiveAmbientIntensityTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 366). | |
| Public | property FdMultiSpecularShininessTexture: TSFNode read FFdMultiSpecularShininessTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 370). | |
| Public | property MultiSpecularShininessTexture: TAbstractTextureNode read GetMultiSpecularShininessTexture write SetMultiSpecularShininessTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 372). | |
| Public | property FdMultiVisibilityTexture: TSFNode read FFdMultiVisibilityTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 376). | |
| Public | property MultiVisibilityTexture: TAbstractTextureNode read GetMultiVisibilityTexture write SetMultiVisibilityTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 378). | |
| Public | property FdNormalFormat: TSFString read FFdNormalFormat; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 382). | |
| Public | property NormalFormat: String read GetNormalFormat write SetNormalFormat; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 384). | |
| Public | property FdNormalSpace: TSFString read FFdNormalSpace; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 388). | |
| Public | property NormalSpace: String read GetNormalSpace write SetNormalSpace; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 390). | |
| Public | property FdNormalTextureId: TSFInt32 read FFdNormalTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 394). | |
| Public | property NormalTextureId: Integer read GetNormalTextureId write SetNormalTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 396). | |
| Public | property FdNormalTextureCoordinatesId: TSFInt32 read FFdNormalTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 400). | |
| Public | property NormalTextureCoordinatesId: Integer read GetNormalTextureCoordinatesId write SetNormalTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 402). | |
| Public | property FdNormalTextureChannelMask: TSFString read FFdNormalTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 406). | |
| Public | property NormalTextureChannelMask: String read GetNormalTextureChannelMask write SetNormalTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 408). | |
| Public | property FdNormalScale: TSFVec3f read FFdNormalScale; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 412). | |
| Public | property NormalScale: TVector3 read GetNormalScale write SetNormalScale; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 414). | |
| Public | property FdNormalBias: TSFVec3f read FFdNormalBias; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 418). | |
| Public | property NormalBias: TVector3 read GetNormalBias write SetNormalBias; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 420). | |
| Public | property FdNormalTexture: TSFNode read FFdNormalTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 424). | |
| Public | property NormalTexture: TAbstractTextureNode read GetNormalTexture write SetNormalTexture; |
|
Normalmap for bump mapping (the texture controlling the normals). Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 426). | |
| Public | property FdNormalTextureParallaxHeight: TSFFloat read FFdNormalTextureParallaxHeight; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 430). | |
| Public | property NormalTextureParallaxHeight: Single read GetNormalTextureParallaxHeight write SetNormalTextureParallaxHeight; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 432). | |
| Public | property FdReflectionFactor: TSFVec3f read FFdReflectionFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 436). | |
| Public | property ReflectionFactor: TVector3 read GetReflectionFactor write SetReflectionFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 438). | |
| Public | property FdReflectionTextureId: TSFInt32 read FFdReflectionTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 442). | |
| Public | property ReflectionTextureId: Integer read GetReflectionTextureId write SetReflectionTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 444). | |
| Public | property FdReflectionTextureCoordinatesId: TSFInt32 read FFdReflectionTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 448). | |
| Public | property ReflectionTextureCoordinatesId: Integer read GetReflectionTextureCoordinatesId write SetReflectionTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 450). | |
| Public | property FdReflectionTextureChannelMask: TSFString read FFdReflectionTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 454). | |
| Public | property ReflectionTextureChannelMask: String read GetReflectionTextureChannelMask write SetReflectionTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 456). | |
| Public | property FdReflectionTexture: TSFNode read FFdReflectionTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 460). | |
| Public | property ReflectionTexture: TAbstractTextureNode read GetReflectionTexture write SetReflectionTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 462). | |
| Public | property FdShininessFactor: TSFFloat read FFdShininessFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 466). | |
| Public | property ShininessFactor: Single read GetShininessFactor write SetShininessFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 468). | |
| Public | property FdShininessTextureId: TSFInt32 read FFdShininessTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 472). | |
| Public | property ShininessTextureId: Integer read GetShininessTextureId write SetShininessTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 474). | |
| Public | property FdShininessTextureCoordinatesId: TSFInt32 read FFdShininessTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 478). | |
| Public | property ShininessTextureCoordinatesId: Integer read GetShininessTextureCoordinatesId write SetShininessTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 480). | |
| Public | property FdShininessTextureChannelMask: TSFString read FFdShininessTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 484). | |
| Public | property ShininessTextureChannelMask: String read GetShininessTextureChannelMask write SetShininessTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 486). | |
| Public | property FdShininessTexture: TSFNode read FFdShininessTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 490). | |
| Public | property ShininessTexture: TAbstractTextureNode read GetShininessTexture write SetShininessTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 492). | |
| Public | property FdSpecularFactor: TSFVec3f read FFdSpecularFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 496). | |
| Public | property SpecularFactor: TVector3 read GetSpecularFactor write SetSpecularFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 498). | |
| Public | property FdSpecularTextureId: TSFInt32 read FFdSpecularTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 502). | |
| Public | property SpecularTextureId: Integer read GetSpecularTextureId write SetSpecularTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 504). | |
| Public | property FdSpecularTextureCoordinatesId: TSFInt32 read FFdSpecularTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 508). | |
| Public | property SpecularTextureCoordinatesId: Integer read GetSpecularTextureCoordinatesId write SetSpecularTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 510). | |
| Public | property FdSpecularTextureChannelMask: TSFString read FFdSpecularTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 514). | |
| Public | property SpecularTextureChannelMask: String read GetSpecularTextureChannelMask write SetSpecularTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 516). | |
| Public | property FdSpecularTexture: TSFNode read FFdSpecularTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 520). | |
| Public | property SpecularTexture: TAbstractTextureNode read GetSpecularTexture write SetSpecularTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 522). | |
| Public | property FdTransmissionFactor: TSFVec3f read FFdTransmissionFactor; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 526). | |
| Public | property TransmissionFactor: TVector3 read GetTransmissionFactor write SetTransmissionFactor; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 528). | |
| Public | property FdTransmissionTextureId: TSFInt32 read FFdTransmissionTextureId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 532). | |
| Public | property TransmissionTextureId: Integer read GetTransmissionTextureId write SetTransmissionTextureId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 534). | |
| Public | property FdTransmissionTextureCoordinatesId: TSFInt32 read FFdTransmissionTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 538). | |
| Public | property TransmissionTextureCoordinatesId: Integer read GetTransmissionTextureCoordinatesId write SetTransmissionTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 540). | |
| Public | property FdTransmissionTextureChannelMask: TSFString read FFdTransmissionTextureChannelMask; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 544). | |
| Public | property TransmissionTextureChannelMask: String read GetTransmissionTextureChannelMask write SetTransmissionTextureChannelMask; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 546). | |
| Public | property FdTransmissionTexture: TSFNode read FFdTransmissionTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 550). | |
| Public | property TransmissionTexture: TAbstractTextureNode read GetTransmissionTexture write SetTransmissionTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 552). | |
| Public | property FdTangentTextureCoordinatesId: TSFInt32 read FFdTangentTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 556). | |
| Public | property TangentTextureCoordinatesId: Integer read GetTangentTextureCoordinatesId write SetTangentTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 558). | |
| Public | property FdBinormalTextureCoordinatesId: TSFInt32 read FFdBinormalTextureCoordinatesId; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 562). | |
| Public | property BinormalTextureCoordinatesId: Integer read GetBinormalTextureCoordinatesId write SetBinormalTextureCoordinatesId; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 564). | |
| Public | property FdInvertAlphaTexture: TSFBool read FFdInvertAlphaTexture; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 568). | |
| Public | property InvertAlphaTexture: Boolean read GetInvertAlphaTexture write SetInvertAlphaTexture; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 570). | |
| Public | property FdRelativeIndexOfRefraction: TSFFloat read FFdRelativeIndexOfRefraction; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 574). | |
| Public | property RelativeIndexOfRefraction: Single read GetRelativeIndexOfRefraction write SetRelativeIndexOfRefraction; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 576). | |
| Public | property FdFresnelBlend: TSFFloat read FFdFresnelBlend; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 580). | |
| Public | property FresnelBlend: Single read GetFresnelBlend write SetFresnelBlend; |
|
This item has no description. Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 582). | |
| Public | property FdTextureTransformEnabled: TMFBool read FFdTextureTransformEnabled; |
|
Internal wrapper for property Source: scene/x3d/auto_generated_node_helpers/x3dnodes_commonsurfaceshader.inc (line 586). | |
Generated by PasDoc 0.17.0.snapshot.