Commit graph

253 commits

Author SHA1 Message Date
ZappoMan
dc4a5ea276 added some timing debugging, and bail early if voxel server is slow
(cherry picked from commit 485c603d4f)
2013-07-03 12:53:14 -07:00
ZappoMan
485c603d4f added some timing debugging, and bail early if voxel server is slow 2013-07-03 12:42:34 -07:00
Stephen Birarda
36c6912de8 your agents are now nodes 2013-07-03 10:35:09 -07:00
Mark Peng
c5fe8b078e ping reporter added to interface 2013-06-28 11:07:01 -07:00
ZappoMan
58c4010185 added CoverageMap and occlusion culling to server 2013-06-18 09:36:43 -07:00
Andrzej Kapolka
dc3029b5a9 Merge pull request #540 from ZappoMan/encode_params
Change encodeTreeBitstream() to use params class
2013-06-14 17:25:57 -07:00
ZappoMan
08e8455c95 migrate encodeTreeBitstream() to use params class 2013-06-14 16:45:27 -07:00
Andrzej Kapolka
db729a04aa Converted double timestamps to long long (64 bit integers), fixed bug with
updating agent timestamps.
2013-06-13 11:11:59 -07:00
Stephen Birarda
a8075e44ca Merge remote-tracking branch 'upstream/master' into conditional-ds 2013-06-10 14:01:54 -07:00
Stephen Birarda
ae0ef412a3 hook up voxel-server to domain-server interest list 2013-06-10 13:54:18 -07:00
Philip Rosedale
769383582b Adding density to nodes 2013-06-08 14:24:29 -07:00
ZappoMan
e65c0a25fa Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-06-07 11:31:32 -07:00
ZappoMan
065e85e328 rename server's VoxelTree and make it a color reaveragging tree 2013-06-07 10:29:56 -07:00
ZappoMan
8f58f9f424 merge cleanup 2013-06-04 10:48:45 -07:00
ZappoMan
0b8537775e Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-06-04 10:40:09 -07:00
ZappoMan
026fb5b344 Merge branch 'master' of https://github.com/worklist/hifi into avatardata_optimization 2013-06-04 09:34:37 -07:00
ZappoMan
4f3872c18f CR feedback 2013-06-04 01:13:58 -07:00
ZappoMan
0a9b3bf5ce changed file name and exention to Sparse Voxel Octree and svo 2013-06-04 01:07:18 -07:00
ZappoMan
b250289749 removed debug 2013-06-03 21:41:23 -07:00
ZappoMan
d1d2e75143 first cut at export and import of voxels 2013-05-28 19:00:02 -07:00
ZappoMan
5d1ba857c5 Optimize View Frustum wire format.
- Changed View frstum orientaton to be a quaternion
- Implemented packing formats for Orientation Quats, Ratios, and Clipping values
- Changed wire format for View Frustum details to be more efficient 28 bytes vs 64 bytes
2013-05-27 14:17:34 -07:00
ZappoMan
12dc11fbfa Optimize View Frustum wire format.
- Changed View frstum orientaton to be a quaternion
- Implemented packing formats for Orientation Quats, Ratios, and Clipping values
- Changed wire format for View Frustum details to be more efficient 28 bytes vs 64 bytes
2013-05-27 09:56:35 -07:00
ZappoMan
538fc89739 first cut at dirty bit sending support 2013-05-26 13:11:54 -07:00
ZappoMan
1a2921e3e8 Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-05-25 15:32:12 -07:00
ZappoMan
1f8842c6af tweak recording of lastKnownViewFrustum as part of delta sending fix 2013-05-25 15:28:09 -07:00
Andrzej Kapolka
5ca01842be Made the atmospheres twice as thick, made the large planet one's red. 2013-05-24 14:24:47 -07:00
Stephen Birarda
eb25fd3b46 pass the owning agent for VoxelAgentData constructor 2013-05-24 12:18:19 -07:00
Stephen Birarda
36892da488 keep a pointer to owning agent in AgentData 2013-05-24 12:17:34 -07:00
ZappoMan
c767babba5 lower voxel send rate 2013-05-24 10:47:57 -07:00
ZappoMan
473665fb4a Merge branch 'master' of https://github.com/worklist/hifi into voxel_animation 2013-05-23 12:16:29 -07:00
ZappoMan
29f84ebbb5 code cleanup 2013-05-23 12:11:38 -07:00
ZappoMan
bf9c867611 make voxel server tree NOT a reaveraging tree, also, don't rebroadcast some Z commands to clients 2013-05-23 12:09:55 -07:00
Andrzej Kapolka
34b526f15c Restore the original floor behavior. 2013-05-23 10:32:12 -07:00
Andrzej Kapolka
629c7b0146 Send all environment data in the same packet and only send it about once a
second.
2013-05-22 17:09:35 -07:00
birarda
9ec04855f8 Merge pull request #386 from ZappoMan/voxel_animation
Fix some crashing issues on delete
2013-05-22 14:27:29 -07:00
ZappoMan
ccd4f5e002 CR feedback 2013-05-22 14:25:25 -07:00
ZappoMan
c2ebd6fc95 CR feedback 2013-05-22 14:23:27 -07:00
ZappoMan
59609b37a0 fix coding standard issues 2013-05-22 14:03:41 -07:00
ZappoMan
ce30f1612b fix coding standard issues 2013-05-22 14:02:49 -07:00
ZappoMan
d1776cc5da fix coding standard issues 2013-05-22 14:02:13 -07:00
ZappoMan
3e37c956c6 fix coding standard issues 2013-05-22 13:57:33 -07:00
ZappoMan
cd1f07231f fix CR issues 2013-05-22 13:40:59 -07:00
ZappoMan
fe62ed9844 fix CS issues 2013-05-22 13:38:09 -07:00
ZappoMan
ee0ceb8516 fix CS issues 2013-05-22 13:36:06 -07:00
ZappoMan
eb7df9b499 fix whitespace 2013-05-22 13:32:40 -07:00
ZappoMan
06f2528d6a fix crashing on deleting voxels in server and client 2013-05-22 13:23:01 -07:00
Andrzej Kapolka
a864a6f8c6 Merge branch 'master' of https://github.com/worklist/hifi 2013-05-21 21:34:09 -07:00
Andrzej Kapolka
fd98982fa6 Support for multiple environments, collisions with notional planet surfaces. 2013-05-21 21:33:08 -07:00
ZappoMan
c316899f27 CR feedback 2013-05-21 17:42:55 -07:00
ZappoMan
fb4424e975 don't rebroadcase PACKET_HEADER_ERASE_VOXEL messages 2013-05-21 14:07:03 -07:00
ZappoMan
6c309d2ece made wantSearchForColoredNodes a command line option defautl to false 2013-05-21 12:40:03 -07:00
ZappoMan
d637ef4078 cleanup code 2013-05-21 12:02:26 -07:00
ZappoMan
7c9be4b9f5 cleanup code 2013-05-21 11:42:13 -07:00
ZappoMan
4f9c7fed59 removed UI for want exists bits, defaults to true 2013-05-21 11:25:50 -07:00
ZappoMan
ef2d27aba6 getting closer to working delete 2013-05-21 10:43:31 -07:00
ZappoMan
a53f84fcb9 latest hacking 2013-05-20 15:51:47 -07:00
ZappoMan
321d1952d6 first cut at exists bits 2013-05-20 12:56:59 -07:00
birarda
438191f436 Merge pull request #348 from ZappoMan/voxel_animation
Improved Animation Server
2013-05-17 16:15:49 -07:00
ZappoMan
81fd3bbc6a CR feedback 2013-05-17 16:15:05 -07:00
ZappoMan
d0b1d49b5d reduce packets per second by packing multiple voxel edits into single packet and removed debugging 2013-05-17 15:53:55 -07:00
birarda
67bab7e73d Merge pull request #342 from birarda/voxel-noise
use stream identifier to match injected audio across packets
2013-05-17 15:07:29 -07:00
Stephen Birarda
b7b39c2a6e have addOrUpdateAgent return a pointer to the agent instead of a bool 2013-05-17 14:03:15 -07:00
Philip Rosedale
a08745a9e8 Merge pull request #340 from ZappoMan/voxel_animation
New Animation Server
2013-05-17 13:57:11 -07:00
ZappoMan
316da59da3 first cut at animation server 2013-05-17 12:44:39 -07:00
Stephen Birarda
c26a05ff97 disallow copying of VoxelAgentData objects 2013-05-17 12:31:00 -07:00
Stephen Birarda
fc5e42cf8b add threaded injection of audio via audio injector class 2013-05-15 16:10:59 -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
b3f6d40935 hide debug messages unless requested 2013-05-14 12:22:26 -07:00
ZappoMan
4e92f5d3d8 tweaks to delta sending 2013-05-14 12:11:32 -07:00
ZappoMan
1e0a575d90 tweaks to view frustum delta code 2013-05-14 11:11:34 -07:00
ZappoMan
062c1b4c64 tweaks to view frustum delta code 2013-05-14 11:10:40 -07:00
ZappoMan
294367a417 first cut at delata view frustum encoding 2013-05-14 09:04:35 -07:00
ZappoMan
2ff8da2b46 move view frustum calculation into VoxelAgentData, added last known and current 2013-05-14 09:03:38 -07:00
ZappoMan
02d0dbbfba move view frustum management to VoxelAgentData class 2013-05-13 15:40:27 -07:00
ZappoMan
12a5ab6ea2 fixed comment 2013-05-13 15:06:39 -07:00
ZappoMan
b196227385 Added wantResIn and wantColor feature between client and server
- Updated Voxel Server to support non-res-in version of voxel distribution
- Updated agent data to allow client to send desired res-in and color state
- added menu items to client debug menu to toggle wantResIn and wantColor
2013-05-13 15:02:46 -07:00
Andrzej Kapolka
1c8b835bb8 Merge branch 'master' of https://github.com/worklist/hifi 2013-05-08 13:15:21 -07:00
ZappoMan
ed9a7ae900 Merge pull request #247 from ZappoMan/render_voxels_optimization
Use different voxel persist files for local or server mode
2013-05-08 12:22:03 -07:00
ZappoMan
2f3a7f8ea8 use different voxel persist files for local or server mode 2013-05-08 12:19:27 -07:00
Andrzej Kapolka
4defeb9feb Merge branch 'master' of https://github.com/worklist/hifi 2013-05-08 11:56:27 -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
ZappoMan
66bf71f8d9 debug file loading 2013-05-08 11:55:00 -07:00
ZappoMan
e55661bb0f temporarily disable add scene in voxel server 2013-05-08 11:05:43 -07:00
ZappoMan
2bae64ad87 moved voxels file to resources directory 2013-05-08 10:11:56 -07:00
ZappoMan
91438b029d moved voxels file to resources directory 2013-05-08 10:11:42 -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
93a5f662f7 dead code cleanup 2013-05-08 01:06:43 -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
Stephen Birarda
5ccc6d6d20 prefer sizeOf to hardcoded byte 2013-05-07 12:42:10 -07:00
Stephen Birarda
4eeb1ed5b1 have interface clients tell the avatar-mixer and voxel-server what their ID is 2013-05-07 12:05:19 -07:00
ZappoMan
4b0cde0b0d bump up voxel send rate, since client can now handle it 2013-05-06 16:09:04 -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
0a488e3585 whitespace fixes 2013-05-04 09:48:11 -07:00
ZappoMan
17fbc2347b removed signal handlers, since we weren't using them and they were segfaulting 2013-05-04 09:46:03 -07:00
ZappoMan
eb56810ef2 make default server behavior be voxel persistance 2013-05-04 09:41:45 -07:00
ZappoMan
89eefe461d persist voxels in main loop 2013-05-04 09:20:22 -07:00
ZappoMan
286c6e0e39 fixed local domain 2013-05-03 19:36:30 -07:00
ZappoMan
48a597a9b9 added --wantVoxelPersist command line to server 2013-05-03 19:29:25 -07:00
ZappoMan
2c128fd813 added voxel-edit tool, as well as made voxel file read/write work, disabled voxel persist on server shutdown 2013-05-03 19:19:48 -07:00
ZappoMan
2fde890dc2 added save/load persistant file on server startup 2013-05-03 18:27:40 -07:00
ZappoMan
0656b5b14f fixed acidental local mode 2013-05-03 17:12:37 -07:00
ZappoMan
e3164b3976 added read/write voxel files 2013-05-03 17:09:43 -07:00
ZappoMan
1366794bdc added some tree methods for primitive voxel editing 2013-05-03 15:00:03 -07:00
ZappoMan
a4f2dc283d various changes to help debug render pipeline
- fixing some cases where TREE_SCALE was not using constant in prep for making TREE_SCALE larger
- added createLine() to VoxelTree
- added axis lines made of voxels to scene
- added corner points made of voxels to scene
2013-05-03 09:58:52 -07:00
ZappoMan
d7e34d25bf small tweak to corner boxes 2013-05-02 22:38:58 -07:00
ZappoMan
ac879f5809 added corner voxels to scene 2013-05-02 22:27:33 -07:00
ZappoMan
c353c1d2bf added command line options for packets per second and debug packet sending 2013-05-02 13:18:12 -07:00
ZappoMan
7625c9a621 add command line option to debug voxel sending time 2013-05-02 12:54:26 -07:00
ZappoMan
0f48ac67b8 added timing details to voxel sending behavior 2013-05-02 12:27:16 -07:00
ZappoMan
4f86b5570f first cut at improved render pipeline 2013-05-01 18:21:13 -07:00
ZappoMan
08c7c486d9 cr cleanup 2013-04-30 11:40:12 -07:00
ZappoMan
7fddd63a61 cr cleanup 2013-04-30 11:29:13 -07:00
ZappoMan
747cfc04be cr cleanup 2013-04-30 11:21:50 -07:00
ZappoMan
dae3881821 removed MarkerNode 2013-04-30 11:13:41 -07:00
ZappoMan
447de68fb5 cr cleanup, remove loadBitstreamBuffer() 2013-04-30 11:06:30 -07:00
ZappoMan
33f86513ab make new voxel distribution default behavior 2013-04-29 17:45:36 -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
ZappoMan
a638542aa0 added support for LOD scanned sendding order of voxel scene 2013-04-29 14:34:17 -07:00
ZappoMan
e7296e1851 made tempOutputBuffer static, added some comments 2013-04-29 08:00:31 -07:00
ZappoMan
781721b79c clean up constants for voxels 2013-04-29 06:49:57 -07:00
ZappoMan
78e8751a79 use constant for 'V' header 2013-04-29 06:31:06 -07:00
ZappoMan
0ebf339562 removed some dead code 2013-04-27 15:25:44 -07:00
ZappoMan
2fb172f3db added support for command line option to use OLD or NEW voxel distribution schemes
- moved new voxel distribution strategy to helper function
- added back old technique
- added "--newVoxelDistributor" command line option
- fixed crashing bug for derefrencing NULL pointer in case where server is started
  which interface agents already in the domain. Basically agentData may not yet
  be setup properly
- added proper cleanup support to node bag in case where voxel tree is erased
- first cut at new version of sphere scene, we will make it richer in case of
  new distribution
- bumped packets per interval to 5
2013-04-27 12:12:43 -07:00
ZappoMan
d49607b4cd fix typo 2013-04-27 12:05:38 -07:00
ZappoMan
3cb41a6fa6 re-apply agentlist changes to voxel server that somehow got smashed 2013-04-26 12:36:25 -07:00
ZappoMan
bcdc4d6654 new version of voxel encoding and sending 2013-04-26 12:16:41 -07:00
ZappoMan
8445790183 added new voxel sending support to VoxelAgentData
- added VoxelNodeBag member to keep track of which nodes this agent needs to
  have sent to it
- added _voxelPacket and other members to keep track of the next packet to
  be sent to this client. This is because as we fill in packets to send we
  may run out of room in the current packet, but not want to have to reencode
  that data
- cleaned up constructors to use common init() method
2013-04-26 12:13:37 -07:00
Stephen Birarda
edc908b1cd AgentList type squishes across project 2013-04-25 16:25:49 -07:00
Stephen Birarda
625a963918 prefer -> notation to (*TYPE) for AgentList iterator 2013-04-25 15:49:25 -07:00
Stephen Birarda
89da132bf2 update voxel-server to use new AgentList iterator 2013-04-25 15:26:21 -07:00
Stephen Birarda
836d286b75 initial transition from vector to multi-dimensional array in AgentList 2013-04-25 13:11:13 -07:00
Jeffrey Ventrella
61a17060c3 one more glitch... 2013-04-23 21:17:39 -07:00
Jeffrey Ventrella
48da3f726e fixed bug - didn't change bodyPosition in eve or voxel 2013-04-23 21:07:40 -07:00
ZappoMan
9d17dc0387 make view frustum culling default behavior, removed soem debug printf()s for now 2013-04-22 17:43:28 -07:00
ZappoMan
a79659a5d4 change VoxelAgentData to not include position, use AvatarData _bodyPosition instead 2013-04-22 15:22:41 -07:00
ZappoMan
cea4170270 code review cleanup 2013-04-22 15:14:35 -07:00
ZappoMan
2f6d2469f4 code review cleanup 2013-04-22 15:13:17 -07:00
ZappoMan
436b43ea85 code review cleanup 2013-04-22 15:11:40 -07:00
ZappoMan
7d93f07152 code review cleanup 2013-04-22 15:10:18 -07:00
ZappoMan
1b52bb4e20 Merge branch 'master' of https://github.com/worklist/hifi into view_frustum_work
Conflicts:
	voxel-server/CMakeLists.txt
2013-04-22 14:48:24 -07:00
ZappoMan
030f5328f5 First cut at View Frustum Culling between client and server 2013-04-22 14:46:25 -07:00
ZappoMan
893996675a Derive VoxelAgentData from AvatarData to get access to camera details
- Changed base class for VoxelAgentData
- changed parseData() method to call base class implementation
- added avatars library to cmake scripts
2013-04-22 14:15:47 -07:00
Stephen Birarda
a558597b6a complete an initial version of eve that sits at 0,0,0 2013-04-22 13:10:21 -07:00
Stephen Birarda
c68ec079eb rename AGENT_TYPE_INTERFACE to AGENT_TYPE_AVATAR, more stubbing for eve 2013-04-22 11:54:24 -07:00
ZappoMan
b8692d8f46 add glm to voxel-server build scripts 2013-04-19 18:07:03 -07:00
Stephen Birarda
0768785cfd fix mutex movement when resizing AgentList vector 2013-04-17 11:01:08 -07:00
Stephen Birarda
8129c2477a fix broken voxel server build, change some char* to unsigned char* 2013-04-16 12:35:49 -07:00
Stephen Birarda
e71f21b7bf fix broken builds from last commit, pull new avatar data in VoxelAgentData 2013-04-16 11:59:03 -07:00
Stephen Birarda
5c091a51a6 change signature of parseData to use unsigned char*, include packet header always 2013-04-16 11:51:36 -07:00
Stephen Birarda
4702e6ade0 remove the unecessary trailing slash when setting root dir 2013-04-15 14:59:48 -07:00