Commit graph

190 commits

Author SHA1 Message Date
Andrzej Kapolka
3ed99f40a6 Working on support for off-axis projection. 2013-05-17 10:17:21 -07:00
Andrzej Kapolka
8e04c17cc2 Merge branch 'master' of https://github.com/worklist/hifi
Conflicts:
	interface/src/Application.cpp
2013-05-14 14:44:22 -07:00
Andrzej Kapolka
ebc612f87a Start out with gray, fix coloring smaller portions by (similar to deleting)
breaking up leaf nodes into their components.
2013-05-14 14:23:08 -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
ZappoMan
4e92f5d3d8 tweaks to delta sending 2013-05-14 12:11:32 -07:00
ZappoMan
fa37b88fa8 first cut at delta view frustum encoding 2013-05-14 09:02:01 -07:00
ZappoMan
f63407aea5 added printDebugDetails() 2013-05-14 08:57:49 -07:00
ZappoMan
dd4303800d Merge branch 'master' of https://github.com/worklist/hifi into render_voxels_optimization 2013-05-13 13:15:02 -07:00
ZappoMan
777dd6dc53 Added PointerStack class, and implemented support for monochrome in VoxelTree 2013-05-13 09:57:36 -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
Andrzej Kapolka
4289921b7e Merge branch 'master' of https://github.com/worklist/hifi 2013-05-11 15:39:18 -07:00
Andrzej Kapolka
750843e867 More editing progress. Now there are threading issues. Joy! 2013-05-10 21:02:08 -07:00
ZappoMan
930353e658 optimized distanceToCamera() added distanceToPoint() and distanceSquaredToPoint() 2013-05-10 18:13:08 -07:00
Andrzej Kapolka
f0573e6ee5 When we add (or recolor) a voxel, make sure it has no children. When we
attempt to remove a voxel that would be a child of a larger solid one, carve
up the parent.
2013-05-10 17:31:55 -07:00
ZappoMan
ef20b3e4b3 optimized performance of VoxelNode::isLeaf() 2013-05-10 14:32:44 -07:00
Andrzej Kapolka
501aac39da Use isColored, not getShouldRender. 2013-05-10 10:46:04 -07:00
Andrzej Kapolka
e6e5b20dee Merge branch 'master' of https://github.com/worklist/hifi 2013-05-10 10:20:04 -07:00
ZappoMan
3af8a1b8f4 code review fixes 2013-05-10 10:03:28 -07:00
Andrzej Kapolka
beadb6a93d Merge branch 'master' of https://github.com/worklist/hifi
Conflicts:
	interface/src/main.cpp
2013-05-10 10:03:05 -07:00
Andrzej Kapolka
f6fcdd78b2 Adding/removing voxels at different sizes. 2013-05-10 09:53:53 -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
c73d4ddfa4 Merge branch 'master' of https://github.com/worklist/hifi into render_voxels_optimization 2013-05-09 14:06:42 -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
ZappoMan
244b4a17f7 lowered voxel count so Ryan can run, and handle too many voxels case slightly more gracefully than crashing 2013-05-08 18:06:13 -07:00
ZappoMan
5f55d511c5 Merge branch 'master' of https://github.com/worklist/hifi into render_voxels_optimization 2013-05-08 15:01:50 -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
24501e5c68 added contains() and remove() methods 2013-05-08 14:22:03 -07:00
Andrzej Kapolka
1c8b835bb8 Merge branch 'master' of https://github.com/worklist/hifi 2013-05-08 13:15:21 -07:00
ZappoMan
2f3a7f8ea8 use different voxel persist files for local or server mode 2013-05-08 12:19:27 -07:00
Andrzej Kapolka
4ed7176ff6 Move the sun back up again to match the lighting. 2013-05-08 12:07:21 -07:00
Andrzej Kapolka
c34b6df2f4 Merge branch 'master' of https://github.com/worklist/hifi
Conflicts:
	voxel-server/src/main.cpp
2013-05-08 11:56:03 -07:00
Andrzej Kapolka
310c0288c7 Changed atmosphere radius to 1000 meters. 2013-05-08 10:31:13 -07:00
ZappoMan
e508c9fedc removed a redundant comment 2013-05-08 10:04:06 -07:00
ZappoMan
bc55c09ed7 Added more SceneUtils support cleaned up voxel-edit to use scene utils
- Added addCornersAndAxisLines() scene
- Added addSurfaceScene() scene
- moved improved addSphereScene() from voxel-edit to SceneUtils.cpp
- added command line options to voxel-edit to create different scenes
2013-05-08 02:15:39 -07:00
ZappoMan
cdf72711b5 cleaned up compiler warning 2013-05-08 02:15:10 -07:00
ZappoMan
de969891d8 Merge branch 'master' of https://github.com/worklist/hifi into render_voxels_optimization 2013-05-08 01:19:35 -07:00
ZappoMan
6f05403c0d added SceneUtils.h/.cpp which moves addSphereScene() to a common location 2013-05-08 01:06:10 -07:00
ZappoMan
7d6b28dd4d Tweaks to createSphere() plus some new helper functions
- changed createSphere() to support new NATURAL mode which uses perlin
  noise to create natural color and shape
- added getVoxelCount()
- coding standard cleanup
2013-05-08 01:02:55 -07:00
ZappoMan
146334e4d7 dead code cleanup 2013-05-08 00:49:37 -07:00
ZappoMan
2cee643e7c update TREE_SCALE to 128 so it's power of 2, and MAX_VOXELS_PER_SYSTEM to 500k 2013-05-08 00:47:42 -07:00
Andrzej Kapolka
7c8a06ed4d Added wrapper classes for shaders/shader programs to ease the process of
compiling, linking, assigning uniforms, etc.  They're modeled after the ones
included in QtOpenGL, which we can't use at the moment because they require
a Qt OpenGL context.
2013-05-07 17:40:55 -07:00
Andrzej Kapolka
7c9b0d8f58 Have the voxel server push out an environment packet with its regular updates. 2013-05-07 15:10:02 -07:00
Andrzej Kapolka
c7e31ec414 Merge branch 'master' of https://github.com/worklist/hifi
Conflicts:
	libraries/shared/src/PacketHeaders.h
2013-05-07 14:44:17 -07:00
Andrzej Kapolka
47f3566929 Wavelengths, switch for environment rendering, far plane adjustment. 2013-05-07 14:40:30 -07:00
Andrzej Kapolka
7faa9e4318 More work on atmosphere rendering; rendering now working. 2013-05-07 12:40:15 -07:00
Philip Rosedale
3afb1dc7a8 Merge branch 'master' of https://github.com/worklist/hifi 2013-05-07 08:40:43 -07:00
ZappoMan
d11e490b62 cleaned up code in createSphere() 2013-05-06 21:07:42 -07:00