- Timestamp:
- 11/27/06 15:52:07 (6 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/examples/osgprerendercubemap/osgprerendercubemap.cpp
r5381 r5757 19 19 #include <osg/PositionAttitudeTransform> 20 20 21 #include <osg/Camera Node>21 #include <osg/Camera> 22 22 #include <osg/TexGenNode> 23 23 … … 112 112 public: 113 113 114 typedef std::vector< osg::ref_ptr<osg::Camera Node> > CameraList;115 116 UpdateCameraAndTexGenCallback(osg::NodePath& reflectorNodePath, CameraList& cameraNodes):114 typedef std::vector< osg::ref_ptr<osg::Camera> > CameraList; 115 116 UpdateCameraAndTexGenCallback(osg::NodePath& reflectorNodePath, CameraList& Cameras): 117 117 _reflectorNodePath(reflectorNodePath), 118 _ cameraNodes(cameraNodes)118 _Cameras(Cameras) 119 119 { 120 120 } … … 142 142 143 143 for(unsigned int i=0; 144 i<6 && i<_ cameraNodes.size();144 i<6 && i<_Cameras.size(); 145 145 ++i) 146 146 { … … 150 150 osg::Matrix viewMatrix = worldToLocal*localOffset; 151 151 152 _ cameraNodes[i]->setReferenceFrame(osg::CameraNode::ABSOLUTE_RF);153 _ cameraNodes[i]->setProjectionMatrixAsFrustum(-1.0,1.0,-1.0,1.0,1.0,10000.0);154 _ cameraNodes[i]->setViewMatrix(viewMatrix);152 _Cameras[i]->setReferenceFrame(osg::Camera::ABSOLUTE_RF); 153 _Cameras[i]->setProjectionMatrixAsFrustum(-1.0,1.0,-1.0,1.0,1.0,10000.0); 154 _Cameras[i]->setViewMatrix(viewMatrix); 155 155 } 156 156 } … … 161 161 162 162 osg::NodePath _reflectorNodePath; 163 CameraList _ cameraNodes;163 CameraList _Cameras; 164 164 }; 165 165 … … 192 192 193 193 194 osg::Group* createShadowedScene(osg::Node* reflectedSubgraph, osg::NodePath reflectorNodePath, unsigned int unit, const osg::Vec4& clearColor, unsigned tex_width, unsigned tex_height, osg::Camera Node::RenderTargetImplementation renderImplementation)194 osg::Group* createShadowedScene(osg::Node* reflectedSubgraph, osg::NodePath reflectorNodePath, unsigned int unit, const osg::Vec4& clearColor, unsigned tex_width, unsigned tex_height, osg::Camera::RenderTargetImplementation renderImplementation) 195 195 { 196 196 … … 208 208 209 209 // set up the render to texture cameras. 210 UpdateCameraAndTexGenCallback::CameraList cameraNodes;210 UpdateCameraAndTexGenCallback::CameraList Cameras; 211 211 for(unsigned int i=0; i<6; ++i) 212 212 { 213 213 // create the camera 214 osg::Camera Node* camera = new osg::CameraNode;214 osg::Camera* camera = new osg::Camera; 215 215 216 216 camera->setClearMask(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); … … 221 221 222 222 // set the camera to render before the main camera. 223 camera->setRenderOrder(osg::Camera Node::PRE_RENDER);223 camera->setRenderOrder(osg::Camera::PRE_RENDER); 224 224 225 225 // tell the camera to use OpenGL frame buffer object where supported. … … 227 227 228 228 // attach the texture and use it as the color buffer. 229 camera->attach(osg::Camera Node::COLOR_BUFFER, texture, 0, i);229 camera->attach(osg::Camera::COLOR_BUFFER, texture, 0, i); 230 230 231 231 // add subgraph to render … … 234 234 group->addChild(camera); 235 235 236 cameraNodes.push_back(camera);236 Cameras.push_back(camera); 237 237 } 238 238 … … 265 265 266 266 // set an update callback to keep moving the camera and tex gen in the right direction. 267 group->setUpdateCallback(new UpdateCameraAndTexGenCallback(reflectorNodePath, cameraNodes));267 group->setUpdateCallback(new UpdateCameraAndTexGenCallback(reflectorNodePath, Cameras)); 268 268 269 269 return group; … … 308 308 while (arguments.read("--height", tex_height)) {} 309 309 310 osg::Camera Node::RenderTargetImplementation renderImplementation = osg::CameraNode::FRAME_BUFFER_OBJECT;311 312 while (arguments.read("--fbo")) { renderImplementation = osg::Camera Node::FRAME_BUFFER_OBJECT; }313 while (arguments.read("--pbuffer")) { renderImplementation = osg::Camera Node::PIXEL_BUFFER; }314 while (arguments.read("--fb")) { renderImplementation = osg::Camera Node::FRAME_BUFFER; }315 while (arguments.read("--window")) { renderImplementation = osg::Camera Node::SEPERATE_WINDOW; }310 osg::Camera::RenderTargetImplementation renderImplementation = osg::Camera::FRAME_BUFFER_OBJECT; 311 312 while (arguments.read("--fbo")) { renderImplementation = osg::Camera::FRAME_BUFFER_OBJECT; } 313 while (arguments.read("--pbuffer")) { renderImplementation = osg::Camera::PIXEL_BUFFER; } 314 while (arguments.read("--fb")) { renderImplementation = osg::Camera::FRAME_BUFFER; } 315 while (arguments.read("--window")) { renderImplementation = osg::Camera::SEPERATE_WINDOW; } 316 316 317 317
