Castle Game Engine: CastleWindow: Class TCastleWindow

# Class TCastleWindow
Description | Hierarchy | Fields | Methods | Properties
## Unit CastleWindow ## Declaration `type TCastleWindow = class(TCastleWindowCustom)` ## Description Window with an OpenGL context, most comfortable to render 3D worlds with 2D controls above. Add your 3D stuff to the scene manager available in SceneManager property. Add your 2D stuff to the TCastleWindowCustom.Controls property (from ancestor TCastleWindowCustom). You can directly access the SceneManager and configure it however you like. You have comfortable Load method that simply loads a single 3D model to your world. If you're looking for analogous Lazarus component (that does basically the same, but can be placed on a Lazarus form) see TCastleControl component. ## Hierarchy TComponent TCastleWindowBase TCastleWindowDemo TCastleWindowCustom TCastleWindow ## Overview ### Methods
| `constructor Create(AOwner: TComponent); override;`
| `procedure Load(const SceneURL: string);`
| `procedure Load(ARootNode: TX3DRootNode; const OwnsRootNode: boolean);`
| `function MainScene: TCastleScene;`
### Properties
| `property SceneManager: TGameSceneManager read FSceneManager;`
| `property ShadowVolumes: boolean read GetShadowVolumes write SetShadowVolumes default TCastleAbstractViewport.DefaultShadowVolumes;`
| `property ShadowVolumesDraw: boolean read GetShadowVolumesDraw write SetShadowVolumesDraw default false;`
## Description ### Methods
| `constructor Create(AOwner: TComponent); override;`
| `procedure Load(const SceneURL: string);`
Load a single 3D model to your world (removing other models, and resetting the camera). This is nice for simple 3D model browsers, but usually for games you don't want to use this method — it's more flexible to create TCastleScene yourself, and add it to scene manager yourself, see engine examples like scene_manager_basic.lpr.
| `procedure Load(ARootNode: TX3DRootNode; const OwnsRootNode: boolean);`
| `function MainScene: TCastleScene;`
### Properties
| `property SceneManager: TGameSceneManager read FSceneManager;`
| `property ShadowVolumes: boolean read GetShadowVolumes write SetShadowVolumes default TCastleAbstractViewport.DefaultShadowVolumes;`
See TCastleAbstractViewport.ShadowVolumes.
| `property ShadowVolumesDraw: boolean read GetShadowVolumesDraw write SetShadowVolumesDraw default false;`
See TCastleAbstractViewport.ShadowVolumesDraw.
Generated by PasDoc 0.13.0 on 2013-08-17 21:27:15