Side by side rendering

- Side by side rendering implemented throughout the graphics pipeline.
- New GuiTSCtrl renderStyle property is set to "stereo side by side" to
activate.
- You set an IDisplayDevice on the GameConnection to define any vertical
FOV, projection offset, and stereo eye offset properties required for
the stereo rendering (no display device included with this commit).
- Full and Empty templates updated with correct scripts and shaders.
This commit is contained in:
DavidWyand-GG 2013-04-09 15:19:18 -04:00
parent b1feed56fd
commit b32e7688c2
28 changed files with 465 additions and 41 deletions

View file

@ -69,6 +69,12 @@ class SceneRenderState
/// The type of scene render pass we're doing.
ScenePassType mScenePassType;
/// The render style being performed
SceneRenderStyle mSceneRenderStyle;
/// When doing stereo rendering, the current field that is being rendered
S32 mRenderField;
/// The render pass which we are setting up with this scene state.
RenderPassManager* mRenderPass;
@ -219,6 +225,23 @@ class SceneRenderState
/// @}
/// @name Render Style
/// @{
/// Get the rendering style used for the scene
SceneRenderStyle getSceneRenderStyle() const { return mSceneRenderStyle; }
/// Set the rendering style used for the scene
void setSceneRenderStyle(SceneRenderStyle style) { mSceneRenderStyle = style; }
/// Get the stereo field being rendered
S32 getSceneRenderField() const { return mRenderField; }
/// Set the stereo field being rendered
void setSceneRenderField(S32 field) { mRenderField = field; }
/// @}
/// @name Transforms, projections, and viewports.
/// @{