Version 0.8.6

This commit is contained in:
Magne Sjaastad
2012-08-31 19:12:47 +02:00
parent 651d908709
commit 27d8808c5c
42 changed files with 622 additions and 175 deletions

View File

@@ -116,7 +116,8 @@ void caf::Viewer::setupMainRendering()
m_mainRendering->setCamera(m_mainCamera.p());
m_mainRendering->setRenderQueueSorter(new cvf::RenderQueueSorterBasic(cvf::RenderQueueSorterBasic::EFFECT_ONLY));
if (!Viewer::isShadersSupported())
// Set fixed function rendering if QGLFormat does not support directRendering
if (!this->format().directRendering())
{
m_mainRendering->renderEngine()->enableForcedImmediateMode(true);
}
@@ -530,6 +531,7 @@ void caf::Viewer::slotSetCurrentFrame(int frameIndex)
m_renderingSequence->firstRendering()->setScene(m_frameScenes.at(frameIndex));
update();
}
@@ -543,7 +545,15 @@ void caf::Viewer::releaseOGlResourcesForCurrentFrame()
size_t i;
for (i = 0; i < modelCount; ++i)
{
currentScene->model(i)->deleteOrReleaseOpenGLResources(cvfOpenGLContext());
cvf::Collection<cvf::Part> partCollection;
currentScene->model(i)->allParts(&partCollection);
for (size_t pIdx = 0; pIdx < partCollection.size(); ++pIdx)
{
if (partCollection[pIdx].notNull() && partCollection[pIdx]->drawable())
{
partCollection[pIdx]->drawable()->releaseBufferObjectsGPU();
}
}
}
}
}
@@ -649,3 +659,8 @@ void caf::Viewer::debugShowRenderingSequencePartNames()
}
}
void caf::Viewer::enableForcedImmediateMode(bool enable)
{
m_mainRendering->renderEngine()->enableForcedImmediateMode(enable);
}