put back the missing voxels

This commit is contained in:
Stephen Birarda 2013-07-11 10:04:27 -07:00
parent a16c5a9a4a
commit 4ed231670f
3 changed files with 9 additions and 9 deletions

View file

@ -170,16 +170,16 @@ int VoxelSystem::parseData(unsigned char* sourceBuffer, int numBytes) {
void VoxelSystem::setupNewVoxelsForDrawing() { void VoxelSystem::setupNewVoxelsForDrawing() {
PerformanceWarning warn(_renderWarningsOn, "setupNewVoxelsForDrawing()"); // would like to include _voxelsInArrays, _voxelsUpdated PerformanceWarning warn(_renderWarningsOn, "setupNewVoxelsForDrawing()"); // would like to include _voxelsInArrays, _voxelsUpdated
uint64_t start = usecTimestampNow(); uint64_t start = usecTimestampNow();
int sinceLastTime = (start - _setupNewVoxelsForDrawingLastFinished) / 1000; uint64_t sinceLastTime = (start - _setupNewVoxelsForDrawingLastFinished) / 1000;
bool iAmDebugging = false; // if you're debugging set this to true, so you won't get skipped for slow debugging bool iAmDebugging = false; // if you're debugging set this to true, so you won't get skipped for slow debugging
if (!iAmDebugging && sinceLastTime <= std::max(_setupNewVoxelsForDrawingLastElapsed, SIXTY_FPS_IN_MILLISECONDS)) { if (!iAmDebugging && sinceLastTime <= std::max((float) _setupNewVoxelsForDrawingLastElapsed, SIXTY_FPS_IN_MILLISECONDS)) {
return; // bail early, it hasn't been long enough since the last time we ran return; // bail early, it hasn't been long enough since the last time we ran
} }
int sinceLastViewCulling = (start - _lastViewCulling) / 1000; int sinceLastViewCulling = (start - _lastViewCulling) / 1000;
// If the view frustum is no longer changing, but has changed, since last time, then remove nodes that are out of view // If the view frustum is no longer changing, but has changed, since last time, then remove nodes that are out of view
if ((sinceLastViewCulling >= std::max(_lastViewCullingElapsed, VIEW_CULLING_RATE_IN_MILLISECONDS)) if ((sinceLastViewCulling >= std::max((float) _lastViewCullingElapsed, VIEW_CULLING_RATE_IN_MILLISECONDS))
&& !isViewChanging() && hasViewChanged()) { && !isViewChanging() && hasViewChanged()) {
_lastViewCulling = start; _lastViewCulling = start;

View file

@ -160,10 +160,10 @@ private:
bool _writeRenderFullVBO; bool _writeRenderFullVBO;
bool _readRenderFullVBO; bool _readRenderFullVBO;
double _setupNewVoxelsForDrawingLastElapsed; int _setupNewVoxelsForDrawingLastElapsed;
double _setupNewVoxelsForDrawingLastFinished; uint64_t _setupNewVoxelsForDrawingLastFinished;
double _lastViewCulling; uint64_t _lastViewCulling;
double _lastViewCullingElapsed; int _lastViewCullingElapsed;
GLuint _vboVerticesID; GLuint _vboVerticesID;
GLuint _vboNormalsID; GLuint _vboNormalsID;

View file

@ -34,7 +34,7 @@ const int COLOR_VALUES_PER_VOXEL = NUMBER_OF_COLORS * VERTICES_PER_VOXEL;
typedef unsigned long int glBufferIndex; typedef unsigned long int glBufferIndex;
const glBufferIndex GLBUFFER_INDEX_UNKNOWN = ULONG_MAX; const glBufferIndex GLBUFFER_INDEX_UNKNOWN = ULONG_MAX;
const double SIXTY_FPS_IN_MILLISECONDS = 1000.0/60; const float SIXTY_FPS_IN_MILLISECONDS = 1000.0f / 60.0f;
const double VIEW_CULLING_RATE_IN_MILLISECONDS = 1000.0; // once a second is fine const float VIEW_CULLING_RATE_IN_MILLISECONDS = 1000.0f; // once a second is fine
#endif #endif