Releases: jalmasi/vrspace
v0.7.8 - minimap
New client features: mini map, position indicators, upload/share video file.
Misc UI fixes and improvements
Server: improved test coverage of the server core, that resulted in minor fixes. WebSocket buffer limit increased, estimated to be enough for 1000 online users.
Release video: https://youtu.be/Q9yBKILDw-Y
v0.7.7 - Reliability
In this year's first release, focus is on reliability.
The server can now forward all events to ElasticSearch, including errors.
New StressTestClient can open any number of connection to the server, and send it any number of requests per second.
Together, that allowed for identifying and fixing a number bugs that occur only under heavy load.
And, design goals are confirmed - up to 100 people can all see and communicate with each other in the same space, safely. (As far as the server is concerned, that is. The browser may not be capable to render it, but that depends on world geometry, and their avatars.)
The server can handle more, tests were conducted with 256 and 1000 user with 5 and 25 events per second, but soon after 100 we go over 1Gbps, and start lagging.
Stress-testing the server also provided the opportunity to find and fix client issues that occur in high-concurrency situations.
Also on the client side, some hopefully useful help screens were added.
Video taken while load testing: https://youtu.be/Gx3h9TthIDs
v0.7.6 - UI
Features
Sound mixer
All sounds are collected and shown in three groups: avatars, spatial and other. Volume of each sound can be controlled individually, e.g. you can mute someone at any time.
Also allows to change hearing range for avatars, that's 50m by default.
Mobile camera control
Button under settings to control camera rotation with device orientation. Safe default is off, and camera is rotated by tap and drag, as cheap smartphones often have rather bad orientation sensors.
Skybox
New Skybox object encapsulates both skybox and babylon Environment, to the purpose of reflections. This makes sense only if models do reflect anything, at the moment that's visible only in spaceport space, and in main avatar selection, but barely.
Also, in world editor (vrcraft world), background is now shared and persisted.
UI Components
FormArea
Like TextArea and ImageArea, new UI component allows forms to be embedded in a 'window' that's bound to either camera or HUD, or can be put in the space.
CameraHelper
Breaking change: firstPersonCamera, thirdPersonCamera, universalCamera functions moved from World to CameraHelper.
Also allows for changing the mobile orientation mode.
GamepadHelper
Contains functions that were scattered elsewhere, mostly in VRHelper. Apparently the ability to navigate HUD buttons with gamepad was broken.
v0.7.5 - games
Two new super-original multiplayer games: hide and seek, and tag.
Proof of concept that goes against conventional game design:
- game rules are independent of geometry (level design)
- player that starts the game owns the game, and game rules run in their browser
So that's doable, and is even playable. Just drop a game anywhere, and play with friends.
In other news, camera behavior on mobiles has changed, and uses device orientation for rotation control, if available.
Release video: https://youtu.be/JErkep9R7Cg
v0.7.4 - sceneshot
In the new release, exactly one new feature - the ability to save the scene, implemented by Sceneshot class, all client-side.
There's a new button on the HUD to do that, under settings (currently), saves a HTML file that shows all that you currently see in the world.
You can send it as attachment to your friends by mail or whatever, and they will see the exact same scene.
So like a screenshot but 3D, hence the name.
v0.7.3 - screencast sound
Only one new feature, in this release - sound of a shared screen.
Works in chrome/edge, when sharing a tab or full screen, and also share tab/screen audio option is selected.
Shared sound is spatial, originates from the screen. User keeps sharing their mic audio, and that one is bound to the avatar.
So now a client can have two WebRTC connections, and there's been minor protocol changes to make that happen.
Shared sound is mono though, unclear why, may be (intentional?) limitations of OpenVidu or Chrome.
But overall, allows for virtual parties.
VRSpace server executable java archive
Full Changelog: 0.6.1...0.7.2