Unit CastleScene
Description
Rendering of scenes (TCastleScene).
Uses
- SysUtils
- Classes
- Generics.Collections
- GL
- GLExt
- CastleVectors
- CastleBoxes
- X3DNodes
- CastleClassUtils
- CastleUtils
- CastleSceneCore
- CastleInternalRenderer
- CastleInternalBackground
- CastleGLUtils
- CastleInternalShapeOctree
- CastleInternalGLShadowVolumes
- X3DFields
- CastleTriangles
- CastleShapes
- CastleFrustum
- CastleTransform
- CastleGLShaders
- CastleRectangles
- CastleCameras
- CastleRendererInternalShader
- CastleColors
- CastleSceneInternalShape
- CastleSceneInternalOcclusion
- CastleSceneInternalBlending
- CastleInternalBatchShapes
- CastleRenderOptions
- CastleTimeUtils
Overview
Classes, Interfaces, Objects and Records
| Name | Description |
|---|---|
Class TCastleScene |
Complete loading, processing and rendering of a scene. |
Class TCastleSceneList |
|
Class TCastleRootTransform |
Root of transformations and scenes (tree of TCastleTransform and TCastleScene). |
Functions and Procedures
procedure Register; |
Types
TBeforeShapeRenderProc = procedure (Shape: TShape) of object; |
TRenderingAttributesEvent = TCastleRenderOptionsEvent deprecated 'use TCastleRenderOptionsEvent'; |
TSceneRenderingAttributes = TCastleRenderOptions deprecated 'use TCastleRenderOptions'; |
TPrepareResourcesOption = CastleTransform.TPrepareResourcesOption; |
TPrepareResourcesOptions = CastleTransform.TPrepareResourcesOptions; |
TFrustumCulling = (...); |
TCastleSceneClass = class of TCastleScene; |
TTriangle4List = specialize TStructList<TTriangle4>; |
TUseHeadlight = (...); |
Constants
Variables
GLContextCache: TGLRendererContextCache; |
InternalEnableRendering: Boolean = true; |
DynamicBatching: Boolean = false; |
Description
Functions and Procedures
procedure Register; |
Types
TBeforeShapeRenderProc = procedure (Shape: TShape) of object; |
TRenderingAttributesEvent = TCastleRenderOptionsEvent deprecated 'use TCastleRenderOptionsEvent'; |
|
Warning: this symbol is deprecated: use TCastleRenderOptionsEvent |
TSceneRenderingAttributes = TCastleRenderOptions deprecated 'use TCastleRenderOptions'; |
|
Warning: this symbol is deprecated: use TCastleRenderOptions |
TPrepareResourcesOption = CastleTransform.TPrepareResourcesOption; |
TPrepareResourcesOptions = CastleTransform.TPrepareResourcesOptions; |
TFrustumCulling = (...); |
|
Possible checks done while frustum culling. This is used by TCastleScene.FrustumCulling (what checks should be done when shapes octree is not available) and TCastleScene.OctreeFrustumCulling (what checks should be done when shapes octree is available). In the second case, checks done by Generally, more checks mean that more shapes may be eliminated but also that we waste more time on checks themselves. What is optimal depends on given 3D model, and how you expect the player to view it (e.g. if player usually sees the whole model, then Values
|
TCastleSceneClass = class of TCastleScene; |
TTriangle4List = specialize TStructList<TTriangle4>; |
TUseHeadlight = (...); |
|
Possible value of TCastleRootTransform.UseHeadlight. Values
|
Constants
prRenderSelf = CastleTransform.prRenderSelf; |
prRenderClones = CastleTransform.prRenderClones; |
prBackground = CastleTransform.prBackground; |
prBoundingBox = CastleTransform.prBoundingBox; |
prShadowVolume = CastleTransform.prShadowVolume; |
bsNone = CastleRenderOptions.bsNone; |
|
We recommend using CastleRenderOptions unit to get these types. But for backward compatibility, they are also available here. |
bs2D = CastleRenderOptions.bs2D; |
bs3D = CastleRenderOptions.bs3D; |
weNormal = CastleRenderOptions.weNormal; |
weWireframeOnly = CastleRenderOptions.weWireframeOnly; |
weSolidWireframe = CastleRenderOptions.weSolidWireframe; |
weSilhouette = CastleRenderOptions.weSilhouette; |
paDefault = CastleSceneCore.paDefault; |
paForceLooping = CastleSceneCore.paForceLooping; |
paForceNotLooping = CastleSceneCore.paForceNotLooping; |
paLooping = CastleSceneCore.paLooping; |
paNotLooping = CastleSceneCore.paNotLooping; |
ssRendering = CastleSceneCore.ssRendering; |
ssDynamicCollisions = CastleSceneCore.ssDynamicCollisions; |
ssVisibleTriangles = CastleSceneCore.ssVisibleTriangles; |
ssStaticCollisions = CastleSceneCore.ssStaticCollisions; |
Variables
GLContextCache: TGLRendererContextCache; |
|
Global OpenGL context cache. This caches common things, like textures, shapes, and much more. Our OpenGL resources are currently shared across all OpenGL contexts, and they all automatically share this cache. |
InternalEnableRendering: Boolean = true; |
DynamicBatching: Boolean = false; |
|
Combine (right before rendering) multiple shapes with a similar appearance into one. This can drastically reduce the number of "draw calls", making rendering much faster. |
Generated by PasDoc 0.16.0.