Class TAppearanceNode
Unit
Declaration
type TAppearanceNode = class(TAbstractAppearanceNode)
Description
Visual properties of geometry.
Note that the geometry is unlit (pure white, regardless of lighting) if no Material is assigned. To make the geometry lit, you can just set there a default material created by TMaterialNode.Create
.
Hierarchy
- TObject
- TPersistent
- TX3DFileItem
- TX3DNode
- TAbstractNode
- TAbstractAppearanceNode
- TAppearanceNode
Overview
Methods
function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override; |
|
procedure ParseAfter(Reader: TX3DReaderNames); override; |
|
function CommonSurfaceShader: TCommonSurfaceShaderNode; deprecated 'use TMaterialNode instead of TCommonSurfaceShaderNode (it has the same functionality and is standardized in X3D v4)'; |
|
function MainTexture: TAbstractTextureNode; overload; |
|
function MainTexture(const GeometryForTexCoord: TAbstractGeometryNode; out TexCoordIndex: Integer): TAbstractTextureNode; overload; |
|
function InternalMaterialProperty: TMaterialProperty; |
|
function MaterialProperty: TMaterialProperty; deprecated 'use InternalMaterialProperty, or (better) do not use it at all -- this is internal'; |
|
procedure CreateNode; override; |
|
class function ClassX3DType: String; override; |
|
procedure SetShaders(const Value: array of TAbstractShaderNode); |
|
procedure SetReceiveShadows(const Value: array of TAbstractPunctualLightNode); |
|
procedure SetEffects(const Value: array of TEffectNode); |
Properties
property FdFillProperties: TSFNode read FFdFillProperties; |
|
property FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties; |
|
property FdLineProperties: TSFNode read FFdLineProperties; |
|
property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties; |
|
property FdMaterial: TSFNode read FFdMaterial; |
|
property Material: TAbstractMaterialNode read GetMaterial write SetMaterial; |
|
property FdShaders: TMFNode read FFdShaders; |
|
property FdTexture: TSFNode read FFdTexture; |
|
property Texture: TAbstractTextureNode read GetTexture write SetTexture; |
|
property FdTextureTransform: TSFNode read FFdTextureTransform; |
|
property TextureTransform: TAbstractTextureTransformNode read GetTextureTransform write SetTextureTransform; |
|
property FdBackMaterial: TSFNode read FFdBackMaterial; |
|
property BackMaterial: TAbstractOneSidedMaterialNode read GetBackMaterial write SetBackMaterial; |
|
property FdAlphaMode: TSFStringEnum read FFdAlphaMode; |
|
property AlphaMode: TAlphaMode read GetAlphaMode write SetAlphaMode; |
|
property FdAlphaCutoff: TSFFloat read FFdAlphaCutoff; |
|
property AlphaCutoff: Single read GetAlphaCutoff write SetAlphaCutoff; |
|
property FdReceiveShadows: TMFNode read FFdReceiveShadows; |
|
property FdShadowCaster: TSFBool read FFdShadowCaster; |
|
property ShadowCaster: Boolean read GetShadowCaster write SetShadowCaster; |
|
property FdNormalMap: TSFNode read FFdNormalMap; |
|
property NormalMap: TAbstractTexture2DNode read GetNormalMap write SetNormalMap; |
|
property FdHeightMap: TSFNode read FFdHeightMap; |
|
property HeightMap: TAbstractTexture2DNode read GetHeightMap write SetHeightMap; |
|
property FdHeightMapScale: TSFFloat read FFdHeightMapScale; |
|
property HeightMapScale: Single read GetHeightMapScale write SetHeightMapScale; |
|
property FdBlendMode: TSFNode read FFdBlendMode; |
|
property BlendMode: TBlendModeNode read GetBlendMode write SetBlendMode; |
|
property FdEffects: TMFNode read FFdEffects; |
|
property FdAlphaChannel: TSFStringEnum read FFdAlphaChannel; |
|
property AlphaChannel: TAutoAlphaChannel read GetAlphaChannel write SetAlphaChannel; |
Description
Methods
function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override; |
|
This item has no description. Showing description inherited from TX3DNode.DirectEnumerateActive. 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. |
procedure ParseAfter(Reader: TX3DReaderNames); override; |
|
This item has no description. Showing description inherited from TX3DNode.ParseAfter. Called at the end of parsing this node (including children) in any encoding. |
function CommonSurfaceShader: TCommonSurfaceShaderNode; deprecated 'use TMaterialNode instead of TCommonSurfaceShaderNode (it has the same functionality and is standardized in X3D v4)'; |
|
Warning: this symbol is deprecated: use TMaterialNode instead of TCommonSurfaceShaderNode (it has the same functionality and is standardized in X3D v4)
Find a suitable |
function MainTexture: TAbstractTextureNode; overload; |
|
Texture that determines the primary RGB color of the material, and transparency of the material. This is the texture used when rendering using Gouraud shading (following the new X3D 4 specification advise). For Phong shading, this is the texture: - diffuseTexture for Material - emissiveTexture for UnlitMaterial - baseTexture for PhysicalMaterial This is also the texture that determines the opacity of the material. This is also the texture which is affected by FdTexture field (if appropriate material slot is empty). The overloaded version with TexCoordIndex parameter also specifies which texture coordinates / transformations should be used for this texture. It returns -1 when we should use standard MultiTexture specification for this, which also covers the case when Returns |
function MainTexture(const GeometryForTexCoord: TAbstractGeometryNode; out TexCoordIndex: Integer): TAbstractTextureNode; overload; |
|
This item has no description. |
function InternalMaterialProperty: TMaterialProperty; |
|
This item has no description. |
procedure CreateNode; override; |
|
Create node fields and events. |
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. |
procedure SetShaders(const Value: array of TAbstractShaderNode); |
|
Override shaders used for rendering this shape. Instead of this, it is usually better to use SetEffects – the effects set that way are easier, cooperate with CGE built-in rendering features, and one code is more portable to both mobile and desktop. |
procedure SetReceiveShadows(const Value: array of TAbstractPunctualLightNode); |
|
This item has no description. |
procedure SetEffects(const Value: array of TEffectNode); |
|
Additional shader code for rendering this shape. See https://castle-engine.io/compositing_shaders.php . The shader effects they are easy to use, cooperate with CGE built-in rendering features, and one code is more portable to both mobile and desktop. |
Properties
property FdFillProperties: TSFNode read FFdFillProperties; |
|
Internal wrapper for property |
property FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties; |
|
This item has no description. |
property FdLineProperties: TSFNode read FFdLineProperties; |
|
Internal wrapper for property |
property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties; |
|
Properties how to display line geometry (line width and such). |
property FdMaterial: TSFNode read FFdMaterial; |
|
Internal wrapper for property |
property Material: TAbstractMaterialNode read GetMaterial write SetMaterial; |
|
Material determines how the shape looks, and how it interacts with lighting. |
property FdShaders: TMFNode read FFdShaders; |
|
Internal wrapper for property |
property FdTexture: TSFNode read FFdTexture; |
|
Internal wrapper for property |
property Texture: TAbstractTextureNode read GetTexture write SetTexture; |
|
Warning: this symbol is deprecated. Main texture used by this appearance (diffuse texture for Phong lighting model, base texture for physical lighting model, emissive texture for the unlit lighting model). It is more flexible to set the relevant texture inside material node, like TMaterialNode.DiffuseTexture, TPhysicalMaterialNode.BaseTexture, TUnlitMaterialNode.EmissiveTexture. |
property FdTextureTransform: TSFNode read FFdTextureTransform; |
|
Internal wrapper for property |
property TextureTransform: TAbstractTextureTransformNode read GetTextureTransform write SetTextureTransform; |
|
Texture transformation. |
property FdBackMaterial: TSFNode read FFdBackMaterial; |
|
Internal wrapper for property |
property BackMaterial: TAbstractOneSidedMaterialNode read GetBackMaterial write SetBackMaterial; |
|
Alternative material to use for back faces (not implemented). |
property FdAlphaMode: TSFStringEnum read FFdAlphaMode; |
|
Internal wrapper for property |
property AlphaMode: TAlphaMode read GetAlphaMode write SetAlphaMode; |
|
This item has no description. |
property FdAlphaCutoff: TSFFloat read FFdAlphaCutoff; |
|
Internal wrapper for property |
property AlphaCutoff: Single read GetAlphaCutoff write SetAlphaCutoff; |
|
This item has no description. |
property FdReceiveShadows: TMFNode read FFdReceiveShadows; |
|
Internal wrapper for property |
property FdShadowCaster: TSFBool read FFdShadowCaster; |
|
Internal wrapper for property |
property ShadowCaster: Boolean read GetShadowCaster write SetShadowCaster; |
|
This item has no description. |
property FdNormalMap: TSFNode read FFdNormalMap; |
|
Internal wrapper for property |
property NormalMap: TAbstractTexture2DNode read GetNormalMap write SetNormalMap; |
|
Normal map of this appearance. See https://castle-engine.io/x3d_implementation_texturing_extensions.php |
property FdHeightMap: TSFNode read FFdHeightMap; |
|
Internal wrapper for property |
property HeightMap: TAbstractTexture2DNode read GetHeightMap write SetHeightMap; |
|
Height map of this appearance. See https://castle-engine.io/x3d_implementation_texturing_extensions.php |
property FdHeightMapScale: TSFFloat read FFdHeightMapScale; |
|
Internal wrapper for property |
property HeightMapScale: Single read GetHeightMapScale write SetHeightMapScale; |
|
This item has no description. |
property FdBlendMode: TSFNode read FFdBlendMode; |
|
Internal wrapper for property |
property BlendMode: TBlendModeNode read GetBlendMode write SetBlendMode; |
|
Determines the exact blending equation used, in case AlphaMode indicates blending. See https://castle-engine.io/x3d_extensions.php |
property FdEffects: TMFNode read FFdEffects; |
|
Internal wrapper for property |
property FdAlphaChannel: TSFStringEnum read FFdAlphaChannel; |
|
Internal wrapper for property |
property AlphaChannel: TAutoAlphaChannel read GetAlphaChannel write SetAlphaChannel; |
|
This item has no description. |
Generated by PasDoc 0.16.0-snapshot.