void persistVoxelsWhenDirty() { uint64_t now = usecTimestampNow(); if (::lastPersistVoxels == 0) { ::lastPersistVoxels = now; } int sinceLastTime = (now - ::lastPersistVoxels) / 1000; // check the dirty bit and persist here... if (::wantVoxelPersist && ::serverTree.isDirty() && sinceLastTime > VOXEL_PERSIST_INTERVAL) { { PerformanceWarning warn(::shouldShowAnimationDebug, "persistVoxelsWhenDirty() - writeToSVOFile()", ::shouldShowAnimationDebug); printf("saving voxels to file...\n"); serverTree.writeToSVOFile(::wantLocalDomain ? LOCAL_VOXELS_PERSIST_FILE : VOXELS_PERSIST_FILE); serverTree.clearDirtyBit(); // tree is clean after saving printf("DONE saving voxels to file...\n"); } ::lastPersistVoxels = usecTimestampNow(); } }