ISceneEntityView
Description
- Derived from
-
ISceneObject
IGraphicsComponent
IInputConsumer
IRenderPreparable
IRenderable2D - Extended by
-
ISceneEntityViewFocusable
SceneEntityView abstract
Represents the visual aspects of a scene entity for a specific scene view.
The various callback methods are invoked in the following order:
-
Per life-cycle of the underlying graphics context:
-
For each scene processing cycle:
(a) - if effectively enabled, see SceneView.Enabled
(b) - if effectively visible see SceneView.Visible
Public / Methods
QueryScreen
Performs a spatial query to find the 2D screen elements that contain the given point in.
This method is used by ISceneQueryProvider.Query for operations created with SceneQueryOp.ForScreen.
Render3D
Performs additional 3D rendering.
When this method is called the given renderer in will have been prepared:
-
Renderer.Bounds has been set.
-
ILineThickness.LineThickness has been set to default.
-
IBeginEnd.Begin has been called.
RenderOffscreen
Performs custom offscreen rendering.
Custom offscreen rendering may involve the following steps:
-
Rendering to one ore more IRenderTarget objects, by issuing rendering work via IPrimitiveRenderer. For high-level rendering work, the following helper objects may be used:
-
IGraphicsContext.Graphics of context in
None of the high-level helpers will have been prepared when this method is called. Implementing methods must perform preparation, for example by calling IBeginEnd.Begin and IBeginEnd.End properly.
-
-
Generating content for one or more IGpuBuffer objects, by dispatching compute work via IWorkDispatcher.Dispatch.
RenderPrepareSkipped
This method is called instead of IRenderPreparable.RenderPrepare in order to notify the entity view that rendering is skipped in this frame.
Please note that the ISceneObject.UpdateState method is not called automatically when this callback is performed, as it is done with the other callbacks.
- See also
SceneViewAttach
This entity view has been attached to the given scene view.
This entity view must be compatible with the given sceneView in. Use SceneViewCheck to check for compatibility, if necessary.
- RenderException
-
If a graphics subsystem error has occurred.
- See also
Public / Attributes
Owner
The scene entity that owns this view.
The owning scene entity is usually (but not necessarily) the one that has created this scene entity view in its ISceneEntity.CreateView method. If the owning scene entity is disabled (see ISceneObject.Enabled), the owned scene entity view is also treated as if it had been disabled. When the owning scene entity is removed from the scene, all its scene entity views are also removed from their respective scene views.
By returning an owning ISceneEntity, the ISceneView.ViewOf method will be able to find and return this ISceneEntityView object.
Visible
Manually shows resp. hides this scene entity view.
Scene entity views are visible by default. Hidden scene entity views are processed as usual, except that they are excluded from rendering and spatial queries. If a scene entity view is disabled, it is treated as if it had been hidden.
- See also