Commit graph

96 commits

Author SHA1 Message Date
ZappoMan
9faef65ccc first cut at splitting out octree base classes 2013-12-03 17:32:02 -08:00
ZappoMan
e959be82f8 Merge branch 'master' of https://github.com/worklist/hifi into keep_local_voxels 2013-11-21 11:18:47 -08:00
ZappoMan
4da70cf3c8 fix to crash on deleteNotify 2013-11-15 16:45:03 -08:00
ZappoMan
3c17c70541 Merge branch 'master' of https://github.com/worklist/hifi into keep_local_voxels 2013-11-13 17:15:41 -08:00
ZappoMan
fbc3a4d2c1 first cut at user adjustable LOD 2013-10-29 16:16:58 -07:00
ZappoMan
97070607ea added SIMPLE_EXTERNAL_CHILDREN mode, which saves on most of our child VoxelNode children storage without being too complicated 2013-10-28 14:43:27 -07:00
ZappoMan
03b2ace488 moved blended _children union into BLENDED_UNION_CHILDREN 2013-10-28 12:54:37 -07:00
ZappoMan
87a44bafc9 added population data back for SIMPLE_CHILD_ARRAY implementation 2013-10-28 12:37:47 -07:00
ZappoMan
e3c64429b9 added SIMPLE_CHILD_ARRAY implementation to temporarily work around memory corruption 2013-10-28 12:10:30 -07:00
ZappoMan
b8a87294e6 added guard to protect against external child access 2013-10-25 14:22:56 -07:00
ZappoMan
dcccfb7ef0 temporarily force external child storage 2013-10-25 14:03:49 -07:00
ZappoMan
9492c3de18 various memory leaks and compiler warning fixes 2013-10-25 00:05:52 -07:00
ZappoMan
b4c88a85f8 improvements to subtle moves for view frustum and voxel serving 2013-10-23 17:49:58 -07:00
ZappoMan
aa5e2b6a19 memset to 0 in VoxelNode to address potential memory corruption 2013-10-23 10:54:02 -07:00
ZappoMan
303f4a8ce4 improved VoxelNode delete of children 2013-10-21 14:44:46 -07:00
ZappoMan
ca7225e525 fix reset of VoxelSystem on eraseAllVoxels() 2013-10-17 18:45:52 -07:00
ZappoMan
370defdc4a fixed comment 2013-10-17 16:16:20 -07:00
ZappoMan
9b0cc14552 fix voxel nodes to work with new UUID format 2013-10-17 16:14:06 -07:00
Stephen Birarda
42de553e32 Merge branch 'master' of github.com:worklist/hifi into assignment 2013-10-17 14:51:20 -07:00
ZappoMan
a11b6858d3 fix small stats bug 2013-10-17 14:43:19 -07:00
Stephen Birarda
73d3ecccf3 resolve conflicts on merge with upstream master 2013-10-17 14:37:58 -07:00
ZappoMan
8d7874b01b add guards to prevent runaway reaverageVoxels(), added stats to see if 4 children could be packed internally 2013-10-17 13:47:18 -07:00
ZappoMan
6688b450c5 cleaned up some printf's to qDebug's 2013-10-17 12:31:18 -07:00
ZappoMan
c5deed36b0 added ifdefs for HAS_AUDIT_CHILDREN and added more memory tracking stats 2013-10-17 11:56:18 -07:00
Stephen Birarda
fa146e302d remove 16-bit node IDs and replace with UUIDs 2013-10-17 11:49:41 -07:00
ZappoMan
296f18a844 make offset bounds match 20 bit storage 2013-10-17 09:58:28 -07:00
ZappoMan
d2bab77c88 implement support for three children encoding 2013-10-16 21:42:47 -07:00
ZappoMan
1e5ce8a7e5 first cut at really getting _children UNION to work 2013-10-16 12:54:37 -07:00
ZappoMan
6fff53a2dc next round of voxelnode size improvements 2013-10-15 14:43:51 -07:00
ZappoMan
9d0ff1595a make voxelnode population statistics static members instead of per node 2013-10-15 13:33:38 -07:00
ZappoMan
9ba39c3a84 removed center from AABox to further save memory 2013-10-15 12:05:54 -07:00
ZappoMan
c9b0edf345 first cut at reducing memory footprint of AABox 2013-10-15 11:29:04 -07:00
ZappoMan
924053f2ec added additional debugging of VoxelNode memory usage, shrunk size of VoxelNode by better alignment 2013-10-14 15:10:56 -07:00
ZappoMan
3425685119 first cut at added voxel node memory usage debugging to client and server 2013-10-14 12:09:44 -07:00
ZappoMan
df4b64447b cleanup calls to markWithChangedTime() to happen after all changes made 2013-10-01 13:02:32 -07:00
ZappoMan
793a14e25a first cut at new faster voxel pipeline 2013-10-01 10:37:14 -07:00
ZappoMan
0f74d4bda9 change nodeDeleted() to voxelDeleted() to improve readability 2013-09-30 15:50:31 -07:00
LionTurtle
62b29d26d2 Nudge function added. Testing nudge. 2013-08-29 18:17:06 -07:00
Stephen Birarda
d3b2ba1070 fix QtCore includes in voxels library 2013-08-05 17:40:01 -07:00
ZappoMan
c7e3fe5ef6 Added false colorization by voxel server source
- switched readBitstreamToTree() to take params struct for future expansion
- switched readNodeData() to take params for future expansion
- added sourceID to VoxelNode
- fixed false colorize routines to correctly redraw by marking tree as dirty
2013-07-30 11:08:48 -07:00
ZappoMan
1a73485e36 Improved VoxelNode delete callback based on CR feedback
- changed hooks to use a virtual base class approach
- switched account of hooks to use a vector instead of home grown solution
- added support for VoxelNode to know what VoxelSystem it belongs to
2013-07-29 15:30:30 -07:00
ZappoMan
0c95dc4adf Fixed voxel trails from animations
- removed stageForDeletion behavior of VoxelNode
- replaced with VoxelNodeDeletionHook strategy
- VoxelSystem now cleans up previously used VBO index slots via hook
2013-07-26 11:12:48 -07:00
ZappoMan
de7cd4db03 added total voxel count to stats 2013-07-20 15:49:04 -07:00
ZappoMan
9e9b379d66 Fix crashing bug in voxel-server related to animation
- added VoxelNodeDeleteHook mechanism that allows users of VoxelNode to register for delete
  notification call backs
- added call back to VoxelNodeBag to remove and nodes from bags when the nodes get deleted.
2013-07-17 11:49:42 -07:00
Stephen Birarda
1b48d4f0fc revert removal of extraneous newlines 2013-07-16 12:46:32 -07:00
Stephen Birarda
89d3cfdb6f remove now extraneous newlines after switch to QDebug 2013-07-16 11:16:51 -07:00
Stephen Birarda
afe49bc756 switch calls to printLog to QDebug 2013-07-16 11:07:22 -07:00
ZappoMan
8d4f7f8a2a CR feedback 2013-07-15 09:26:19 -07:00
ZappoMan
f415f4081a Fixed a bug in LOD boundaries
- changed the way we calculate whether or not to render a parent "average" voxel so
  that if any of it's most distant child would not be visible, then it's used instead
  of it's children
- added precalculated value for topFarLeft corner of AABox (optimization)
- changed VoxelSystem::newTreeToArrays() and VoxelTree::encodeTreeBitstreamRecursion()
  to use the same help function for determining this LOD boundary behavior
- deleted old dead code in voxel-server and VoxelTree for picking which node to start
  sending with, since it wasn't being used
- added VoxelNode::furthestDistanceToCamera() which tells you not the distance to the
  center of the voxel, but the distance from the camera to the furthest corner relative
  to the camera.
- added ViewFrustum::getFurthestPointFromCamera() which given an axis-aligned box will
  tell you which vertex of the box is furthest from the camera
2013-07-15 01:32:14 -07:00
Philip Rosedale
3ec16695f4 Finished adding concept of density to the voxel server, objects now appear more visible at a distance in an appealing way. 2013-06-09 12:48:22 -07:00