Commit graph

74 commits

Author SHA1 Message Date
Andrzej Kapolka
d09700adde Merge branch 'master' of https://github.com/worklist/hifi into voxeltars
Conflicts:
	interface/src/Avatar.cpp
	interface/src/Avatar.h
	interface/src/Skeleton.h
	interface/src/VoxelSystem.h
2013-06-04 11:00:59 -07:00
Andrzej Kapolka
bc8eadd526 More work on voxeltars; separated default pose from bind pose. 2013-06-04 10:22:58 -07:00
ZappoMan
4f3872c18f CR feedback 2013-06-04 01:13:58 -07:00
Andrzej Kapolka
8d757e148f More work on voxeltars; basic skinning works. 2013-06-02 19:55:51 -07:00
Andrzej Kapolka
6c975f9c6f More work on avatar voxels. 2013-06-01 15:06:29 -07:00
Andrzej Kapolka
7425b39237 Working on avatar voxel system. 2013-05-31 17:55:30 -07:00
Andrzej Kapolka
e4bc7af6b4 Working on avatar voxels. 2013-05-31 14:52:29 -07:00
ZappoMan
46c6f2f9b5 latest copy paste 2013-05-29 15:02:28 -07:00
ZappoMan
d1d2e75143 first cut at export and import of voxels 2013-05-28 19:00:02 -07:00
ZappoMan
f6863081f9 Fix Delta Sending mode by not culling out of view voxels until we STOP moving
- added isViewChanging() which determines if the view is currently changing
- made hasViewChanged() report false UNTIL we've stopped moving
- changed setupNewVoxelsForDrawing() to only call removeOutOfView() if we're not moving
2013-05-25 15:29:23 -07: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
597769a861 Added basic capsule/sphere collisions between avatar and voxels. 2013-05-21 12:58:02 -07:00
ZappoMan
4f9c7fed59 removed UI for want exists bits, defaults to true 2013-05-21 11:25:50 -07:00
ZappoMan
e1c89aac87 Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-05-20 15:52:04 -07:00
Andrzej Kapolka
06c78c2f12 Tweak: let the reader know when it needs to load the full VBO. 2013-05-20 15:41:19 -07:00
Andrzej Kapolka
8d522cd3ed I believe the problem with voxel rendering is caused by the update thread's
writing the data while the render thread is attempting to read it.  This
should fix the issue.
2013-05-20 15:15:44 -07:00
ZappoMan
321d1952d6 first cut at exists bits 2013-05-20 12:56:59 -07:00
Andrzej Kapolka
3f0fd2f976 Added toggle for voxel textures; they may be slowing some machines down. 2013-05-20 12:13:23 -07:00
Stephen Birarda
fc0448a148 disallow copying of VoxelSystem objects 2013-05-17 12:32:42 -07:00
Andrzej Kapolka
86ddcea87f Better names for the shaders. 2013-05-16 13:08:21 -07:00
Andrzej Kapolka
0a6b4702c6 Experimenting with simple Perlin noise shader for voxels. 2013-05-15 22:18:56 -07:00
ZappoMan
8dc61d89fc Added support for "destructive" vs "non-destructive" voxel create
- changed VoxelTree to support destructive and non-destructive mode
- added protocol packet headers to differentiate
- added new UI to switch modes
- default mode now, non-destructive.
2013-05-14 14:19:31 -07:00
Andrzej Kapolka
9802403749 Let's do some locking to prevent simultaneous access from different threads. 2013-05-11 15:38:49 -07:00
ZappoMan
322cb2ff23 implemented partial VBOs support in copyWrittenDataToReadArrays() 2013-05-10 13:18:51 -07:00
ZappoMan
bd3ea6ef65 create and delete voxels locally 2013-05-09 22:20:13 -07:00
ZappoMan
2128cb8bff get rid of dead code 2013-05-09 17:10:25 -07:00
ZappoMan
33fc9f5389 fixed partial VBO updates 2013-05-09 17:01:20 -07:00
ZappoMan
c73d4ddfa4 Merge branch 'master' of https://github.com/worklist/hifi into render_voxels_optimization 2013-05-09 14:06:42 -07:00
ZappoMan
f490f3ed53 More work on partial VBO updates still not working 100% correctly 2013-05-09 14:04:08 -07:00
Andrzej Kapolka
7ff8b84f4c Return the box face, as well as the distance, from the ray intersection test.
Use it to determine which voxel neighbor we create when adding.
2013-05-09 10:46:52 -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
Andrzej Kapolka
0cff127082 Merge branch 'master' of https://github.com/worklist/hifi 2013-05-09 09:56:58 -07:00
Andrzej Kapolka
785e55e06f Working on voxel editing. 2013-05-09 09:56:35 -07:00
ZappoMan
bb65137b7e Optimized performance of newTreeToArrays() by implementing blended VBO strategy
- Introduced concept of sometimes only updating the new/changed part of the VBO
  while other times updating the full VBO. This allows us to get the speed
  advantage of only partial VBO updates when nodes haven't been removed
- Some debugging output related to _alwaysRenderFullVBO
- added cleanupRemovedVoxels() which actually deletes the nodes that were
  previously removed (fixes a memory leak!!)
2013-05-08 20:33:41 -07:00
ZappoMan
70557cd51c Optimized removeOutOfView()
- don't recurse down trees that are fully INSIDE of the view frustum, because those nodes
  are guaranteed to also be INSIDE
- changes to extraData of the recurse operation to make this possible
- adding debug stats to track how many nodes are inside, outside, intersect
- change call to removeOutOfView() to not call if last elapsed time has not
  yet passed since last call (similar to treeToArrays() logic)
2013-05-08 14:24:08 -07:00
ZappoMan
f1425216ba removed VoxelSystem::createSphere() which was dead code 2013-05-08 00:45:27 -07:00
ZappoMan
84da976383 removed _voxelCleanupLock 2013-05-06 16:38:24 -07:00
ZappoMan
b69c1a3474 some cleanup pre CR 2013-05-06 16:14:10 -07:00
ZappoMan
09923d1c97 second cut at view culling voxels 2013-05-06 15:51:56 -07:00
ZappoMan
7ba9d4aa86 First cut are removing out of view voxels and switch to using PerformanceWarnings 2013-05-06 13:32:09 -07:00
ZappoMan
34a059db9a more optimizations of render pipeline 2013-05-02 22:26:56 -07:00
ZappoMan
fcce4753c9 more optimizations on render pipeline 2013-05-02 16:37:31 -07:00
ZappoMan
8f0dd1ffa1 added render pipeline warnings menu item 2013-05-02 13:17:06 -07:00
ZappoMan
275772bb3d debugging voxel sending behavior 2013-05-02 12:26:51 -07:00
ZappoMan
015fd05e62 code cleanup 2013-05-01 18:37:14 -07:00
ZappoMan
4f86b5570f first cut at improved render pipeline 2013-05-01 18:21:13 -07:00
ZappoMan
accda966d5 Add LOD culling to the server protocol.
- Add LOD/distance culling to VoxelTree:encodeTreeBitstreamRecursion()
  and VoxelTree::searchForColoredNodesRecursion()
- added new levels to boundaryDistanceForRenderLevel()
- added more spheres to the scene to get a better sense of LOD behavior
2013-04-29 17:38:52 -07:00
Jeffrey Ventrella
e54fd0dd7d renamed "Head" to "Avatar" and did a bunch a cleanups, including removing the three-lined comments 2013-04-24 16:54:07 -07:00
Andrzej Kapolka
63a581dae4 Added normals to voxel geometry, enabling lighting. 2013-04-24 11:47:44 -07:00
Stephen Birarda
4956370d52 have parseData return the number of bytes consumed 2013-04-22 18:05:27 -07:00