Changeset 13041 for OpenSceneGraph/trunk/include/osg/FrameBufferObject
- Timestamp:
- 03/21/12 18:36:20 (14 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/include/osg/FrameBufferObject
r12298 r13041 1 /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield 1 /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield 2 2 * 3 * This library is open source and may be redistributed and/or modified under 4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 3 * This library is open source and may be redistributed and/or modified under 4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 5 5 * (at your option) any later version. The full license is in LICENSE file 6 6 * included with this distribution, and on the openscenegraph.org website. 7 * 7 * 8 8 * This library is distributed in the hope that it will be useful, 9 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 11 * OpenSceneGraph Public License for more details. 12 12 */ … … 167 167 TglBindRenderbuffer* glBindRenderbuffer; 168 168 TglGenRenderbuffers* glGenRenderbuffers; 169 TglDeleteRenderbuffers* glDeleteRenderbuffers; 169 TglDeleteRenderbuffers* glDeleteRenderbuffers; 170 170 TglRenderbufferStorage* glRenderbufferStorage; 171 171 TglRenderbufferStorageMultisample* glRenderbufferStorageMultisample; … … 377 377 explicit FrameBufferAttachment(TextureRectangle* target); 378 378 explicit FrameBufferAttachment(Camera::Attachment& attachment); 379 379 380 380 ~FrameBufferAttachment(); 381 381 382 FrameBufferAttachment&operator = (const FrameBufferAttachment& copy); 382 FrameBufferAttachment&operator = (const FrameBufferAttachment& copy); 383 383 384 384 bool isMultisample() const; … … 413 413 typedef std::map<Camera::BufferComponent, FrameBufferAttachment> AttachmentMap; 414 414 typedef std::vector<GLenum> MultipleRenderingTargets; 415 415 416 416 typedef Camera::BufferComponent BufferComponent; 417 417 … … 422 422 423 423 inline const AttachmentMap& getAttachmentMap() const; 424 424 425 425 426 426 void setAttachment(BufferComponent attachment_point, const FrameBufferAttachment &attachment); 427 427 inline const FrameBufferAttachment& getAttachment(BufferComponent attachment_point) const; 428 428 inline bool hasAttachment(BufferComponent attachment_point) const; 429 429 430 430 inline bool hasMultipleRenderingTargets() const { return !_drawBuffers.empty(); } 431 431 inline const MultipleRenderingTargets& getMultipleRenderingTargets() const { return _drawBuffers; } … … 434 434 435 435 int compare(const StateAttribute &sa) const; 436 436 437 437 void apply(State &state) const; 438 438 … … 473 473 474 474 void updateDrawBuffers(); 475 475 476 476 inline void dirtyAll(); 477 477 478 478 GLenum convertBufferComponentToGLenum(BufferComponent attachment_point) const; 479 479 480 private: 480 private: 481 481 AttachmentMap _attachments; 482 482 … … 487 487 mutable buffered_value<int> _unsupported; 488 488 mutable buffered_value<GLuint> _fboID; 489 489 490 490 }; 491 491
