Class TNavigationInfoNode

Unit

Declaration

type TNavigationInfoNode = class(TAbstractBindableNode)

Description

Describe the physical characteristics of the viewer's avatar and navigation.

Hierarchy

Overview

Methods

Public constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); override;
Public procedure CreateNode; override;
Public class function ClassX3DType: String; override;
Public procedure SetAvatarSize(const Value: array of Single); overload;
Public procedure SetAvatarSize(const Value: TSingleList); overload;
Public procedure SetTransitionType(const Value: array of string); overload;
Public procedure SetTransitionType(const Value: TCastleStringList); overload;
Public procedure SetType(const Value: array of string); overload;
Public procedure SetType(const Value: TCastleStringList); overload;

Properties

Public property FdAvatarSize: TMFFloat read FFdAvatarSize;
Public property FdHeadlight: TSFBool read FFdHeadlight;
Public property Headlight: Boolean read GetHeadlight write SetHeadlight;
Public property FdSpeed: TSFFloat read FFdSpeed;
Public property Speed: Single read GetSpeed write SetSpeed;
Public property FdTransitionTime: TSFTime read FFdTransitionTime;
Public property TransitionTime: TFloatTime read GetTransitionTime write SetTransitionTime;
Public property FdTransitionType: TMFString read FFdTransitionType;
Public property FdType: TMFString read FFdType;
Public property FdVisibilityLimit: TSFFloat read FFdVisibilityLimit;
Public property VisibilityLimit: Single read GetVisibilityLimit write SetVisibilityLimit;
Public property EventTransitionComplete: TSFBoolEvent read FEventTransitionComplete;
Public property FdBlendingSort: TSFStringEnum read FFdBlendingSort;
Public property BlendingSort: TShapeSort read GetBlendingSort write SetBlendingSort;
Public property FdTimeOriginAtLoad: TSFBool read FFdTimeOriginAtLoad;
Public property TimeOriginAtLoad: Boolean read GetTimeOriginAtLoad write SetTimeOriginAtLoad;
Public property FdHeadBobbing: TSFFloat read FFdHeadBobbing;
Public property HeadBobbing: Single read GetHeadBobbing write SetHeadBobbing;
Public property FdHeadBobbingTime: TSFFloat read FFdHeadBobbingTime;
Public property HeadBobbingTime: Single read GetHeadBobbingTime write SetHeadBobbingTime;
Public property FdHeadlightNode: TSFNode read FFdHeadlightNode;
Public property HeadlightNode: TAbstractLightNode read GetHeadlightNode write SetHeadlightNode;

Description

Methods

Public constructor Create(const AX3DName: string = ''; const ABaseUrl: String = ''); override;

This item has no description. Showing description inherited from TX3DNode.Create.

Constructor. Initializes various properties:

  • Name, BaseUrl are initialized from given parameters.

  • The Fields, Events lists are filled in every descendant, to have all the fields/events defined by the specification.

  • DefaultContainerField, and other node-specific stuff, is filled in descendants. This is actually implemented in CreateNode, that is called at the end of this constructor.

Public procedure CreateNode; override;

Create node fields and events.

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.

Public procedure SetAvatarSize(const Value: array of Single); overload;

This item has no description.

Public procedure SetAvatarSize(const Value: TSingleList); overload;

This item has no description.

Public procedure SetTransitionType(const Value: array of string); overload;

This item has no description.

Public procedure SetTransitionType(const Value: TCastleStringList); overload;

This item has no description.

Public procedure SetType(const Value: array of string); overload;

This item has no description.

Public procedure SetType(const Value: TCastleStringList); overload;

This item has no description.

Properties

Public property FdAvatarSize: TMFFloat read FFdAvatarSize;

Internal wrapper for property AvatarSize. This wrapper API may change, we advise to access simpler AvatarSize instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FdHeadlight: TSFBool read FFdHeadlight;

Internal wrapper for property Headlight. This wrapper API may change, we advise to access simpler Headlight instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Headlight: Boolean read GetHeadlight write SetHeadlight;

Warning: this symbol is deprecated.

Control the headlight. Instead of this, control the headlight by placing light component (like TCastleDirectionalLight or TCastleSpotLight) as child of TCastleCamera.

Public property FdSpeed: TSFFloat read FFdSpeed;

Internal wrapper for property Speed. This wrapper API may change, we advise to access simpler Speed instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property Speed: Single read GetSpeed write SetSpeed;

Warning: this symbol is deprecated.

Movement speed. Instead of this, control the move speed using TCastleWalkNavigation.MoveSpeed.

Public property FdTransitionTime: TSFTime read FFdTransitionTime;

Internal wrapper for property TransitionTime. This wrapper API may change, we advise to access simpler TransitionTime instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property TransitionTime: TFloatTime read GetTransitionTime write SetTransitionTime;

This item has no description.

Public property FdTransitionType: TMFString read FFdTransitionType;

Internal wrapper for property TransitionType. This wrapper API may change, we advise to access simpler TransitionType instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FdType: TMFString read FFdType;

Internal wrapper for property Type. This wrapper API may change, we advise to access simpler Type instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property FdVisibilityLimit: TSFFloat read FFdVisibilityLimit;

Internal wrapper for property VisibilityLimit. This wrapper API may change, we advise to access simpler VisibilityLimit instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property VisibilityLimit: Single read GetVisibilityLimit write SetVisibilityLimit;

This item has no description.

Public property EventTransitionComplete: TSFBoolEvent read FEventTransitionComplete;

This item has no description.

Public property FdBlendingSort: TSFStringEnum read FFdBlendingSort;

Internal wrapper for property BlendingSort. This wrapper API may change, we advise to access simpler BlendingSort instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property BlendingSort: TShapeSort read GetBlendingSort write SetBlendingSort;

Best blending sort for this scene. It may be honored by some model viewers, e.g. castle-model-viewer honors this to display currently loaded scene.

Note: In CGE applications, the blending sort is determined by TCastleViewport.BlendingSort. It is up to each particular application if, and how, to honor this value on TNavigationInfoNode. In general, CGE applications may display multiple models (multiple TCastleScene) and there's not necessarily any scene that is "central" or "main", so most CGE applications will just ignore this, at least on most loaded models.

If an application wants to honor this property of TNavigationInfoNode, then set TCastleViewport.BlendingSort based on the bound navigation info node. For example like this:

if (Scene.NavigationInfoStack.Top <> nil) and
   (Scene.NavigationInfoStack.Top.BlendingSort <> sortAuto) then
  MainViewport.BlendingSort :=
    Scene.NavigationInfoStack.Top.BlendingSort;

The value sortAuto (specified as string "AUTO" in X3D file) says to not change TCastleViewport.BlendingSort. The TCastleViewport.BlendingSort may be, in turn, also sortAuto, which means that we will detect whether to use sort2D or sort3D depending on camera.

Public property FdTimeOriginAtLoad: TSFBool read FFdTimeOriginAtLoad;

Internal wrapper for property TimeOriginAtLoad. This wrapper API may change, we advise to access simpler TimeOriginAtLoad instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property TimeOriginAtLoad: Boolean read GetTimeOriginAtLoad write SetTimeOriginAtLoad;

Warning: this symbol is deprecated.

When this is True, world time TCastleSceneCore.Time equals 0 when the scene is loaded. Otherwise (when this is False, by default) world time 0 means "January 1, 1970" and when the scene is loaded the world time is a big number (and should only be processed as Double, not Single floating-point value). See https://castle-engine.io/x3d_time_origin_considered_uncomfortable.php for discussion.

Public property FdHeadBobbing: TSFFloat read FFdHeadBobbing;

Internal wrapper for property HeadBobbing. This wrapper API may change, we advise to access simpler HeadBobbing instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property HeadBobbing: Single read GetHeadBobbing write SetHeadBobbing;

Intensity of head bobbing. 0 means to not do head bobbing. Must be >= 0 and < 1, but sensible values are close to 0 (while any values < 1 are technically allowed, but they make the head bobbing effect crazily exaggerated). See https://castle-engine.io/x3d_implementation_navigation_extensions.php

Public property FdHeadBobbingTime: TSFFloat read FFdHeadBobbingTime;

Internal wrapper for property HeadBobbingTime. This wrapper API may change, we advise to access simpler HeadBobbingTime instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property HeadBobbingTime: Single read GetHeadBobbingTime write SetHeadBobbingTime;

How much time passes to make full head bobbing sequence (camera swing up and then down back to original height). See https://castle-engine.io/x3d_implementation_navigation_extensions.php

Public property FdHeadlightNode: TSFNode read FFdHeadlightNode;

Internal wrapper for property HeadlightNode. This wrapper API may change, we advise to access simpler HeadlightNode instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).

Public property HeadlightNode: TAbstractLightNode read GetHeadlightNode write SetHeadlightNode;

Headlight to shine, if Headlight is True. See https://castle-engine.io/x3d_implementation_navigation_extensions.php


Generated by PasDoc 0.16.0-snapshot.