Added DisplaySettings to osg::Camera, and support into osg::View for initializing

the Camera to the DisplaySettings ScreenWidth/Height/Distance.  Added support
for dual screen horizontal split stereo.
This commit is contained in:
Robert Osfield
2007-06-09 10:06:38 +00:00
parent e3d7e6e173
commit 90ae3f385b
6 changed files with 73 additions and 29 deletions

View File

@@ -71,6 +71,16 @@ class OSG_EXPORT Camera : public Transform, public CullSettings
bool getAllowEventFocus() const { return _allowEventFocus; }
/** Set the DsplaySettings object associated with this view.*/
void setDisplaySettings(osg::DisplaySettings* ds) { _displaySettings = ds; }
/** Set the DsplaySettings object associated with this view.*/
osg::DisplaySettings* getDisplaySettings() { return _displaySettings.get(); }
/** Set the DsplaySettings object associated with this view.*/
const osg::DisplaySettings* getDisplaySettings() const { return _displaySettings.get(); }
/** Sets the clear color. */
inline void setClearColor(const Vec4& color) { _clearColor = color; }
@@ -425,35 +435,37 @@ class OSG_EXPORT Camera : public Transform, public CullSettings
virtual ~Camera();
mutable OpenThreads::Mutex _dataChangeMutex;
mutable OpenThreads::Mutex _dataChangeMutex;
View* _view;
View* _view;
osg::ref_ptr<osg::Stats> _stats;
osg::ref_ptr<osg::Stats> _stats;
bool _allowEventFocus;
bool _allowEventFocus;
Vec4 _clearColor;
GLbitfield _clearMask;
ref_ptr<ColorMask> _colorMask;
ref_ptr<Viewport> _viewport;
osg::ref_ptr<osg::DisplaySettings> _displaySettings;
TransformOrder _transformOrder;
ProjectionResizePolicy _projectionResizePolicy;
Vec4 _clearColor;
GLbitfield _clearMask;
ref_ptr<ColorMask> _colorMask;
ref_ptr<Viewport> _viewport;
Matrixd _projectionMatrix;
Matrixd _viewMatrix;
TransformOrder _transformOrder;
ProjectionResizePolicy _projectionResizePolicy;
Matrixd _projectionMatrix;
Matrixd _viewMatrix;
RenderOrder _renderOrder;
int _renderOrderNum;
RenderOrder _renderOrder;
int _renderOrderNum;
GLenum _drawBuffer;
GLenum _readBuffer;
GLenum _drawBuffer;
GLenum _readBuffer;
RenderTargetImplementation _renderTargetImplementation;
RenderTargetImplementation _renderTargetFallback;
BufferAttachmentMap _bufferAttachmentMap;
RenderTargetImplementation _renderTargetImplementation;
RenderTargetImplementation _renderTargetFallback;
BufferAttachmentMap _bufferAttachmentMap;
ref_ptr<OperationsThread> _cameraThread;