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 class function URNMatching(const URN: string): boolean; override;
Public function CommonSurfaceShader: TCommonSurfaceShaderNode;
Public function DiffuseAlphaTexture: TAbstractTextureNode;
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 TAbstractLightNode);
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 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: TMaterialNode read GetMaterial write SetMaterial;
Public property FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties;
Public property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties;
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 class function URNMatching(const URN: string): boolean; override;
 
Public function CommonSurfaceShader: TCommonSurfaceShaderNode;

Find a suitable CommonSurfaceShader to be used when rendering this shape, or Nil.

Public function DiffuseAlphaTexture: TAbstractTextureNode;

Returns an effective diffuse (and alpha) texture node that should be used for this appearance, or Nil. This texture may come from Texture or from CommonSurfaceShader.

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 TAbstractLightNode);
 
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 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.sourceforge.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.sourceforge.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: TMaterialNode read GetMaterial write SetMaterial;

The material of this appearance. This only sets the simple, one-sided material node.

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 FillProperties: TFillPropertiesNode read GetFillProperties write SetFillProperties;
 
Public property LineProperties: TLinePropertiesNode read GetLineProperties write SetLineProperties;
 
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.