Removed the cached matrices from osg::Camera, so that

osg::Camrea::getModelViewMatrix() and osg::Camera::getProjectionMatrix() are
calculated on the fly.  Removed various redudent methods, including the
project and unproject methods which are better supported within osgUtil::SceneView.

Added a computeWindowMatrix() method to Viewport, to make it easier to construct
a MV*P*W matrix for converting local coords into screen coords and visa versa.
Converted SceneView and CullVisitor to use this new method.
This commit is contained in:
Robert Osfield
2002-04-16 11:41:32 +00:00
parent 43fa577566
commit f8340f9ef5
8 changed files with 174 additions and 399 deletions

View File

@@ -203,10 +203,19 @@ static unsigned int reservoirBufferSize = 0;
// ---------------------------------------------------------------------------------------------------------------------------------
static void dumpLeakReport();
static void doCleanupLogOnFirstRun();
static void activateStressTest();
#ifdef OSG_USE_MEMORY_MANAGER
static void activateStressTest()
{
randomWipe = true;
alwaysValidateAll = true;
alwaysLogAll = true;
alwaysWipeAll = true;
cleanupLogOnFirstRun = true;
}
class MemStaticTimeTracker
{
public:
@@ -247,15 +256,6 @@ static MemStaticTimeTracker mstt;
// Local functions only
// ---------------------------------------------------------------------------------------------------------------------------------
static void activateStressTest()
{
randomWipe = true;
alwaysValidateAll = true;
alwaysLogAll = true;
alwaysWipeAll = true;
cleanupLogOnFirstRun = true;
}
static void doCleanupLogOnFirstRun()
{