From 99d35c37db29163013c93c058798703d80150a7f Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Fri, 6 May 2016 10:42:07 -0700 Subject: [PATCH 1/3] switch OctreeSendThread to use std::this_thread::sleep_for() instead of usleep() --- .../src/octree/OctreeSendThread.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/assignment-client/src/octree/OctreeSendThread.cpp b/assignment-client/src/octree/OctreeSendThread.cpp index ec812db8e8..94349bd3bc 100644 --- a/assignment-client/src/octree/OctreeSendThread.cpp +++ b/assignment-client/src/octree/OctreeSendThread.cpp @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +#include +#include + #include #include #include @@ -101,13 +104,16 @@ bool OctreeSendThread::process() { int elapsed = (usecTimestampNow() - start); int usecToSleep = OCTREE_SEND_INTERVAL_USECS - elapsed; - if (usecToSleep > 0) { - PerformanceWarning warn(false,"OctreeSendThread... usleep()",false,&_usleepTime,&_usleepCalls); - usleep(usecToSleep); - } else { + if (usecToSleep <= 0) { const int MIN_USEC_TO_SLEEP = 1; - usleep(MIN_USEC_TO_SLEEP); + usecToSleep = MIN_USEC_TO_SLEEP; } + + { + PerformanceWarning warn(false,"OctreeSendThread... usleep()",false,&_usleepTime,&_usleepCalls); + std::this_thread::sleep_for(std::chrono::microseconds(usecToSleep)); + } + } return isStillRunning(); // keep running till they terminate us From fe14bc8e52cc0823bb4e475467fbaedc67758251 Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Fri, 6 May 2016 11:19:27 -0700 Subject: [PATCH 2/3] also switch OctreePersistThread to use std::this_thread::sleep_for() --- libraries/octree/src/OctreePersistThread.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/octree/src/OctreePersistThread.cpp b/libraries/octree/src/OctreePersistThread.cpp index 8169654b0c..d48c35d542 100644 --- a/libraries/octree/src/OctreePersistThread.cpp +++ b/libraries/octree/src/OctreePersistThread.cpp @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +#include +#include + #include #include #include @@ -201,7 +204,7 @@ bool OctreePersistThread::process() { if (isStillRunning()) { quint64 MSECS_TO_USECS = 1000; quint64 USECS_TO_SLEEP = 10 * MSECS_TO_USECS; // every 10ms - usleep(USECS_TO_SLEEP); + std::this_thread::sleep_for(std::chrono::microseconds(USECS_TO_SLEEP)); // do our updates then check to save... _tree->update(); From da75c271881a1b1d742b8357fa28094efe356e1e Mon Sep 17 00:00:00 2001 From: samcake Date: Fri, 6 May 2016 18:57:19 -0700 Subject: [PATCH 3/3] fixing bad color format assignment code and bad color format for the cubemaps --- libraries/model/src/model/TextureMap.cpp | 36 ++++++++++++------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/libraries/model/src/model/TextureMap.cpp b/libraries/model/src/model/TextureMap.cpp index 349980b702..a8428233a3 100755 --- a/libraries/model/src/model/TextureMap.cpp +++ b/libraries/model/src/model/TextureMap.cpp @@ -105,19 +105,19 @@ const QImage& image, bool isLinear, bool doCompress) { gpu::Semantic gpuSemantic; gpu::Semantic mipSemantic; if (isLinear) { - mipSemantic = gpu::SBGRA; - if (doCompress) { - gpuSemantic = gpu::COMPRESSED_SRGBA; - } else { - gpuSemantic = gpu::SRGBA; - } - } else { mipSemantic = gpu::BGRA; if (doCompress) { gpuSemantic = gpu::COMPRESSED_RGBA; } else { gpuSemantic = gpu::RGBA; } + } else { + mipSemantic = gpu::SBGRA; + if (doCompress) { + gpuSemantic = gpu::COMPRESSED_SRGBA; + } else { + gpuSemantic = gpu::SRGBA; + } } formatGPU = gpu::Element(gpu::VEC4, gpu::NUINT8, gpuSemantic); formatMip = gpu::Element(gpu::VEC4, gpu::NUINT8, mipSemantic); @@ -125,19 +125,19 @@ const QImage& image, bool isLinear, bool doCompress) { gpu::Semantic gpuSemantic; gpu::Semantic mipSemantic; if (isLinear) { - mipSemantic = gpu::SRGB; - if (doCompress) { - gpuSemantic = gpu::COMPRESSED_SRGB; - } else { - gpuSemantic = gpu::SRGB; - } - } else { mipSemantic = gpu::RGB; if (doCompress) { gpuSemantic = gpu::COMPRESSED_RGB; } else { gpuSemantic = gpu::RGB; } + } else { + mipSemantic = gpu::SRGB; + if (doCompress) { + gpuSemantic = gpu::COMPRESSED_SRGB; + } else { + gpuSemantic = gpu::SRGB; + } } formatGPU = gpu::Element(gpu::VEC3, gpu::NUINT8, gpuSemantic); formatMip = gpu::Element(gpu::VEC3, gpu::NUINT8, mipSemantic); @@ -186,20 +186,20 @@ gpu::Texture* TextureUsage::process2DTextureColorFromImage(const QImage& srcImag } gpu::Texture* TextureUsage::create2DTextureFromImage(const QImage& srcImage, const std::string& srcImageName) { - return process2DTextureColorFromImage(srcImage, true, false, true); + return process2DTextureColorFromImage(srcImage, false, false, true); } gpu::Texture* TextureUsage::createAlbedoTextureFromImage(const QImage& srcImage, const std::string& srcImageName) { - return process2DTextureColorFromImage(srcImage, true, true, true); + return process2DTextureColorFromImage(srcImage, false, true, true); } gpu::Texture* TextureUsage::createEmissiveTextureFromImage(const QImage& srcImage, const std::string& srcImageName) { - return process2DTextureColorFromImage(srcImage, true, true, true); + return process2DTextureColorFromImage(srcImage, false, true, true); } gpu::Texture* TextureUsage::createLightmapTextureFromImage(const QImage& srcImage, const std::string& srcImageName) { - return process2DTextureColorFromImage(srcImage, true, true, true); + return process2DTextureColorFromImage(srcImage, false, true, true); }