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

Overview

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;
Protected procedure ParseAfter(Reader: TX3DReaderNames); override;
Public procedure CreateNode; override;
Public class function ClassX3DType: string; override;
Public function CommonSurfaceShader: TCommonSurfaceShaderNode; deprecated 'use TMaterialNode instead of TCommonSurfaceShaderNode (it has the same functionality and is standardized in X3D v4)';
Public function MainTexture: TAbstractTextureNode; overload;
Public function MainTexture(const GeometryForTexCoord: TAbstractGeometryNode; out TexCoordIndex: Integer): TAbstractTextureNode; overload;
Public function InternalMaterialProperty: TMaterialProperty;
Public function MaterialProperty: TMaterialProperty; deprecated 'use InternalMaterialProperty, or (better) do not use it at all -- this is internal';
Public procedure SetShaders(const Value: array of TAbstractShaderNode);
Public procedure SetReceiveShadows(const Value: array of TAbstractPunctualLightNode);
Public procedure SetEffects(const Value: array of TEffectNode);

Properties

Public property FdFillProperties: TSFNode read FFdFillProperties;
Public property FdLineProperties: TSFNode read FFdLineProperties;
Public property FdMaterial: TSFNode read FFdMaterial;
Public property FdBackMaterial: TSFNode read FFdBackMaterial;
Public property FdShaders: TMFNodeShaders read FFdShaders;
Public property FdTexture: TSFNode read FFdTexture;
Public property FdTextureTransform: TSFNode read FFdTextureTransform;
Public property FdReceiveShadows: TMFNode read FFdReceiveShadows;
Public property FdShadowCaster: TSFBool read FFdShadowCaster;
Public property FdEffects: TMFNode read FFdEffects;
Public property FdNormalMap: TSFNode read FFdNormalMap;
Public property FdHeightMap: TSFNode read FFdHeightMap;
Public property FdHeightMapScale: TSFFloat read FFdHeightMapScale;
Public property FdBlendMode: TSFNode read FFdBlendMode;
Public property Texture: TAbstractTextureNode read GetTexture write SetTexture;
Public property NormalMap: TAbstractTexture2DNode read GetNormalMap write SetNormalMap;
Public property Material: TAbstractMaterialNode read GetMaterial write SetMaterial;
Public property FdAlphaChannel: TSFStringEnum read FFdAlphaChannel;
Public property AlphaChannel: TAutoAlphaChannel read GetAlphaChannel write SetAlphaChannel;
Public property FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties;
Public property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties;
Public property BackMaterial: TAbstractOneSidedMaterialNode read GetBackMaterial write SetBackMaterial;
Public property TextureTransform: TAbstractTextureTransformNode read GetTextureTransform write SetTextureTransform;
Public property ShadowCaster: Boolean read GetShadowCaster write SetShadowCaster;
Public property HeightMapScale: Single read GetHeightMapScale write SetHeightMapScale;
Public property BlendMode: TBlendModeNode read GetBlendMode write SetBlendMode;

Description

Methods

Protected function DirectEnumerateActive(Func: TEnumerateChildrenFunction): Pointer; override;
 
Protected procedure ParseAfter(Reader: TX3DReaderNames); override;
 
Public procedure CreateNode; override;
 
Public class function ClassX3DType: string; override;
 
Public 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 CommonSurfaceShader to be used when rendering this shape, or Nil.

Public 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 MainTexture is a MultiTexture node, and should use appropriate texture coordinates for MultiTexture children.

Returns Nil if none.

Public function MainTexture(const GeometryForTexCoord: TAbstractGeometryNode; out TexCoordIndex: Integer): TAbstractTextureNode; overload;
 
Public function InternalMaterialProperty: TMaterialProperty;
 
Public function MaterialProperty: TMaterialProperty; deprecated 'use InternalMaterialProperty, or (better) do not use it at all -- this is internal';

Warning: this symbol is deprecated: use InternalMaterialProperty, or (better) do not use it at all -- this is internal

 
Public procedure SetShaders(const Value: array of TAbstractShaderNode);
 
Public procedure SetReceiveShadows(const Value: array of TAbstractPunctualLightNode);
 
Public procedure SetEffects(const Value: array of TEffectNode);
 

Properties

Public property FdFillProperties: TSFNode read FFdFillProperties;
 
Public property FdLineProperties: TSFNode read FFdLineProperties;
 
Public property FdMaterial: TSFNode read FFdMaterial;
 
Public property FdBackMaterial: TSFNode read FFdBackMaterial;
 
Public property FdShaders: TMFNodeShaders read FFdShaders;
 
Public property FdTexture: TSFNode read FFdTexture;
 
Public property FdTextureTransform: TSFNode read FFdTextureTransform;
 
Public property FdReceiveShadows: TMFNode read FFdReceiveShadows;
 
Public property FdShadowCaster: TSFBool read FFdShadowCaster;
 
Public property FdEffects: TMFNode read FFdEffects;
 
Public property FdNormalMap: TSFNode read FFdNormalMap;
 
Public property FdHeightMap: TSFNode read FFdHeightMap;
 
Public property FdHeightMapScale: TSFFloat read FFdHeightMapScale;
 
Public property FdBlendMode: TSFNode read FFdBlendMode;
 
Public property Texture: TAbstractTextureNode read GetTexture write SetTexture;

The texture of this appearance.

This is a comfortable property for getting and setting the appropriate X3D field, checking class types along the way and setting the value through X3D events if necessary.

Public property NormalMap: TAbstractTexture2DNode read GetNormalMap write SetNormalMap;

The normal map of this appearance.

See https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_ext_bump_mapping . This is a deprecated method of using bump mapping, a better method is to use CommonSurfaceShader: https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_ext_common_surface_shader .

This is a comfortable property for getting and setting the appropriate X3D field, checking class types along the way and setting the value through X3D events if necessary.

Public property Material: TAbstractMaterialNode read GetMaterial write SetMaterial;

The material of this appearance. This is a comfortable property for getting and setting the appropriate X3D field, checking class types along the way and setting the value through X3D events if necessary.

Public property FdAlphaChannel: TSFStringEnum read FFdAlphaChannel;
 
Public property AlphaChannel: TAutoAlphaChannel read GetAlphaChannel write SetAlphaChannel;
 
Public property FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties;
 
Public property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties;
 
Public property BackMaterial: TAbstractOneSidedMaterialNode read GetBackMaterial write SetBackMaterial;
 
Public property TextureTransform: TAbstractTextureTransformNode read GetTextureTransform write SetTextureTransform;
 
Public property ShadowCaster: Boolean read GetShadowCaster write SetShadowCaster;
 
Public property HeightMapScale: Single read GetHeightMapScale write SetHeightMapScale;
 
Public property BlendMode: TBlendModeNode read GetBlendMode write SetBlendMode;
 

Generated by PasDoc 0.15.0.