Commit graph

54 commits

Author SHA1 Message Date
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
Philip Rosedale
769383582b Adding density to nodes 2013-06-08 14:24:29 -07:00
ZappoMan
ae3db89f63 added method for general subtree change bookkeeping 2013-06-06 10:55:11 -07:00
ZappoMan
66ebb7d01c Made readCodeColorBufferToTree() use self contained recursion so we can
implement color averaging properly
2013-06-06 01:39:40 -07:00
ZappoMan
4f1131fc97 add markWithChangedTime() method as public method
Conflicts:
	libraries/voxels/src/VoxelNode.cpp
	libraries/voxels/src/VoxelNode.h
2013-06-05 16:05:32 -07:00
ZappoMan
2130572034 fixed color initialization on VoxelNode construction 2013-05-23 12:07:56 -07:00
Philip Rosedale
8b65fcae75 Merge pull request #352 from tschw/master
refactors logging, adds comments, and revises names & formatting in all submitted code
2013-05-21 22:10:10 -07:00
ZappoMan
166ad4f73d CR feedback 2013-05-21 17:37:21 -07:00
tosh
ba4f4b9809 Merge branch 'master' of git://github.com/worklist/hifi 2013-05-21 22:49:39 +02:00
ZappoMan
0bcd629c8a Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-05-21 13:46:04 -07:00
Andrzej Kapolka
0377ca1adb Compute nodes' enclosing radius in the same place. 2013-05-21 13:32:41 -07:00
ZappoMan
7c9be4b9f5 cleanup code 2013-05-21 11:42:13 -07:00
ZappoMan
ef2d27aba6 getting closer to working delete 2013-05-21 10:43:31 -07:00
tosh
a86b8a1d93 refactors logging 2013-05-21 01:00:10 +02:00
ZappoMan
321d1952d6 first cut at exists bits 2013-05-20 12:56:59 -07:00
Andrzej Kapolka
eb77f5ff83 Removed debug code, more tests for staged-for-deletion. 2013-05-12 20:36:10 -07:00
Andrzej Kapolka
be88fec7d3 Fixed the major bug, which is that non-leaves were being collapsed. Update
full VBO on deletion, since otherwise we don't see the update.
2013-05-12 20:08:01 -07:00
ZappoMan
930353e658 optimized distanceToCamera() added distanceToPoint() and distanceSquaredToPoint() 2013-05-10 18:13:08 -07:00
ZappoMan
ef20b3e4b3 optimized performance of VoxelNode::isLeaf() 2013-05-10 14:32:44 -07:00
ZappoMan
3af8a1b8f4 code review fixes 2013-05-10 10:03:28 -07:00
ZappoMan
9dc09de75e make VoxelSystem::deleteVoxelAt() work properly 2013-05-10 09:32:56 -07:00
ZappoMan
33fc9f5389 fixed partial VBO updates 2013-05-09 17:01:20 -07:00
ZappoMan
655f14121d Voxel Render Optimization - using blended VBO update strategy
- Fixed a bug in updateNodeInArraysAsFullVBO() that caused blended strategy
  to not work properly.
- Implement strategy to usually update only the portion of the VBOs that
  have changed, unless nodes have been removed, and then update the full
  VBO. This siginificantly improves treeToArrays() performance
- Still to do implement partial strategy for copy buffers and update GPU
2013-05-09 10:25:12 -07:00
ZappoMan
66e416d4dd added VoxelNode::inFrustum() which returns OUTSIDE, INTERSECT, INSIDE to allow more optimal frustum analysis 2013-05-08 14:23:36 -07:00
ZappoMan
146334e4d7 dead code cleanup 2013-05-08 00:49:37 -07:00
ZappoMan
f5808f43b5 some cleanup pre CR 2013-05-06 16:24:09 -07:00
ZappoMan
9fb57feb3b some cleanup pre CR 2013-05-06 16:21:58 -07:00
ZappoMan
e0d040a73b added removeChildAtIndex() which removes a node, but doesn't delete it 2013-05-06 11:02:28 -07:00
ZappoMan
2c8c6a2600 Coding standard cleanup and VoxelNode optimization
- make octalCode and children members private
- add public getters for accessing these private members
- change constructor to require an OctalCode for all non-roots
- default constructor constructs a rootNode
- make primary access for deleting, adding, and accessing children through public methods that do bookkeeping
- calculate AABox on voxel creation so that we don't need to do all the math when we deal with voxels
- added methods on VoxelNode for common items like getCorner(), getCenter(), getLevel(), etc
2013-05-05 10:17:02 -07:00
ZappoMan
771c604121 more render pipeline optimizations 2013-05-02 18:12:55 -07:00
ZappoMan
fcce4753c9 more optimizations on render pipeline 2013-05-02 16:37:31 -07:00
ZappoMan
5a14c71225 added dirty bit support to VoxelTree, use it to determine when to call treeToArrays 2013-05-02 15:57:31 -07:00
ZappoMan
6a7ebb3a55 fixed LOD issue in client 2013-05-01 22:57:19 -07:00
ZappoMan
4f86b5570f first cut at improved render pipeline 2013-05-01 18:21:13 -07:00
ZappoMan
37b139621a cr cleanup 2013-04-30 10:27:32 -07:00
ZappoMan
3673ee36ad cr cleanup and optimization of isLeaf() 2013-04-30 10:23:35 -07:00
ZappoMan
781721b79c clean up constants for voxels 2013-04-29 06:49:57 -07:00
ZappoMan
7c180c800f printf/pringLog cleanup 2013-04-29 06:28:19 -07:00
ZappoMan
667fe11694 added VoxelNode::printDebugDetails() 2013-04-25 17:29:56 -07:00
ZappoMan
0c692ca0c0 added isLeaf(), isInView(), and distanceToCamera() helper methods 2013-04-24 22:54:55 -07:00
ZappoMan
b291b5d1f6 fixed bug in initialization of false color (actually true color) 2013-04-22 18:07:58 -07:00
ZappoMan
358efb472d Clean up AABox to coding standard, made several methods const
- Cleaned up AABox to be consistent with the coding standard
- converted some methods to const and fixed up callers
2013-04-21 22:46:13 -07:00
ZappoMan
e93ece0f52 Added support for NO_FALSE_COLOR define.
- changed VoxelNode to have implementation option for NO_FALSE_COLOR
Need some help from Stephen and/or Leo on how to make cmake support
building the voxels library in NO_FALSE_COLOR mode for the server
but keep false color support in the client
2013-04-21 19:45:54 -07:00