New streaming algorithm in progress
--HG-- branch : nfb
This commit is contained in:
@@ -55,7 +55,7 @@ void KRLODSet::updateLODVisibility(const KRViewport &viewport)
|
|||||||
} else if(m_activeLODGroup == NULL) {
|
} else if(m_activeLODGroup == NULL) {
|
||||||
m_activeLODGroup = new_active_lod_group;
|
m_activeLODGroup = new_active_lod_group;
|
||||||
} else if(new_active_lod_group != m_activeLODGroup) {
|
} else if(new_active_lod_group != m_activeLODGroup) {
|
||||||
if(true || new_active_lod_group->getStreamLevel(true, viewport) >= kraken_stream_level::STREAM_LEVEL_IN_LQ) { // FINDME, HACK! Disabled due to performance issues.
|
if(/*true || */new_active_lod_group->getStreamLevel(true, viewport) >= kraken_stream_level::STREAM_LEVEL_IN_LQ) { // FINDME, HACK! Disabled due to performance issues.
|
||||||
// fprintf(stderr, "LOD %s -> %s\n", m_activeLODGroup->getName().c_str(), new_active_lod_group->getName().c_str());
|
// fprintf(stderr, "LOD %s -> %s\n", m_activeLODGroup->getName().c_str(), new_active_lod_group->getName().c_str());
|
||||||
m_activeLODGroup = new_active_lod_group;
|
m_activeLODGroup = new_active_lod_group;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ long KRTexture::getReferencedMemSize() {
|
|||||||
|
|
||||||
void KRTexture::resize(int max_dim)
|
void KRTexture::resize(int max_dim)
|
||||||
{
|
{
|
||||||
if(!m_handle_lock.test_and_set())
|
while(m_handle_lock.test_and_set()); // Spin lock
|
||||||
{
|
{
|
||||||
if(m_iHandle == m_iNewHandle) {
|
if(m_iHandle == m_iNewHandle) {
|
||||||
if(max_dim == 0) {
|
if(max_dim == 0) {
|
||||||
@@ -197,6 +197,7 @@ bool KRTexture::canStreamOut() const {
|
|||||||
|
|
||||||
void KRTexture::_swapHandles()
|
void KRTexture::_swapHandles()
|
||||||
{
|
{
|
||||||
|
//while(m_handle_lock.test_and_set()); // Spin lock
|
||||||
if(!m_handle_lock.test_and_set()) {
|
if(!m_handle_lock.test_and_set()) {
|
||||||
if(m_iHandle != m_iNewHandle) {
|
if(m_iHandle != m_iNewHandle) {
|
||||||
if(m_iHandle != 0) {
|
if(m_iHandle != 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user