instantreality 1.0

Component:
Texturing
Status:
fully implemented
Structure type:
concrete
Standard:
Avalon

RenderedTexture

This extension provides the ability to dynamically render a partial scenegraph to an offscreen texture that can then be used on the geometry of a node. This can be used in many different ways such as creating mirror effects, inputs to shaders etc. The purpose of this component is to provide for extended visual effects, but not the complete form of offscreen rendering and buffers that would be available to lower-level rendering APIs.

Inheritance

Code

XML encoding
<RenderedTexture logFeature=''
triggerName='Render'
frameBufferMode='auto'
update='NONE'
readBuffer='FALSE'
description=''
zOffset=''
dimensions='128 128 4 1 1'
depthMap=''
 />
Classic encoding
RenderedTexture {
	logFeature [""]
	triggerName "Render"
	frameBufferMode "auto"
	update "NONE"
	readBuffer FALSE
	description ""
	zOffset []
	dimensions [128 128 4 1 1]
	depthMap []
}

Interface

Filter: X3D only | Avalon only | All
id Name DataType PartType Default ValueType Description
MFBool depthMap MFBool inputOutput Determines if textures shall be treated as depth map.
MFInt32 dimensions MFInt32 inputOutput 128 128 4 1 1 Size in pixels, color components, depth (5th parameter determines number MRTs, NYI)
MFInt32 zOffset MFInt32 inputOutput The zOffset specifies the z-offset of one or more 2-dimensional images within a 3-dimensional texture.
MFNode excludeNodes MFNode initializeOnly Node By default, the siblings should be excluded; here you can list them.
MFNode targets MFNode inputOutput SingleTexture The targets field contains a list of texture nodes (for most effects, this field isn't needed).
MFString logFeature MFString inputOutput state, child, parent, route, eventIn, eventOut controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything
SFBool readBuffer SFBool inputOutput FALSE If true, the framebuffer content is read back into the image (be carefull: extremly slow).
SFImage image_changed SFImage outputOnly sends a singe image on change
SFMatrix4f projection SFMatrix4f outputOnly Projection Matrix of RT Camera (useful for shadows).
SFMatrix4f viewing SFMatrix4f outputOnly Modelview Matrix of RT Camera (needed for converting in RT system).
SFNode background SFNode inputOutput NULL BackgroundBindable Base background texture.
SFNode environment SFNode inputOutput NULL EnvironmentBindable Environment for shadows (not fully implemented yet).
SFNode fog SFNode inputOutput NULL FogBindable Fog (NYI).
SFNode foreground SFNode inputOutput NULL ForegroundBindable Contains a list of Overlays.
SFNode metadata SFNode inputOutput MetadataObject container for payload metadata inside MetadataSet element
SFNode scene SFNode inputOutput NULL Node Separate, potentially independent, subscene (same if unset).
SFNode textureProperties SFNode initializeOnly TextureProperties Definition of a texture property set. When set, the corresponding fields like repeat etc of the texture itself are ignored.
SFNode viewpoint SFNode inputOutput NULL ViewBindable Position from which to render.
SFString description SFString inputOutput Textual description.
SFString frameBufferMode SFString inputOutput auto auto, fbo, copy, pbuffer Controls the frame buffer mode (e.g. use standard GL or FBOs).
SFString triggerName SFString initializeOnly Render name of the dynamic context-slot which is used by the run-time environment (e.g. Jobs) to trigger the node. Life-Nodes will automatically connect the context-eventOutut to the triggerSlot-eventInput Slot.
SFString update SFString inputOutput NONE [NONE, NEXT_FRAME_ONLY, ALWAYS] One of "NONE", "NEXT_FRAME_ONLY" (only once), "ALWAYS" (for fully dynamic settings).
SFTime triggerSlot SFTime inputOnly slot which is used internally to connect a dynamic context-slot which name is set by the triggerName value. Its used automatically to install run-time environment trigger.