Releases: jalmasi/vrspace
v0.8.7 - Ollama
Ollama is the big new feature in this release.
LLM-powered chatbots can be placed in spaces, they can talk with users and other bots, move around, and last but not least, they can stop talking.
Scene agent is supposed to assist with virtual environments, and search agent with searching through over 1,000,000 free 3D models on sketchfab.
More in the release video: https://www.youtube.com/watch?v=qg5NCsW35NQ
Improvements:
Saving and loading the world now includes all world objects, but also the background and terrain.
Chat log was significantly improved, and now allows for scrolling if text is too big to fit the plane.
Server-side representation of worlds was extended, and now includes description and thumbnail.
Fixes:
VR/AR functional again
Event recorder persistence fixed
In other news, Netflix bought Ready Player Me, and killed it.
Existing RPM avatars still work, but we can not make custom avatars any longer, so this option is disabled.
v0.8.6 - java 21
New features:
- Ability to make objects active or inactive. Only active objects distribute events.
- New tool - grid displayed on y=0 level.
Fixes: swagger, test and example worlds.
Technical upgrades:
- Java 21 support for both development and deployment (minimum required version is still 17)
- OpenVidu upgraded to v2.32.1
v0.8.5 - XR Hands
Major client upgrade of babylon.js to v7, and XR hands support.
Event recorder improvements and UI, as new tools button.
Minor server upgrade of spring boot to the latest version.
Bug fixes: sharing private worlds, screencast, emoji positions.
Release video: https://www.youtube.com/watch?v=Q3T_SGSwZCE
v0.8.4 - scalability
Major thing in 0.8.4 is Neo4j is upgrade to 5.26.10, and node ID is now UUID string, rather than long integer.
Meaning,
- backwards compatibility is broken, big time, nothing from before 0.8.4 will work with 0.8.4
- that opens a way to horizontal scalability
Other than that,
- users can now exchange private messages, that's just a special case of group messages
- simple message attachments are now supported
Of course, that only works for logged in users. Anonymous users don't get to see chat button.
v0.8.3 - editing worlds
World editor
World editor is now under tools menu, available in every space.
Terrain editor and background selector are available in spaces with terrain and background.
Basic functions of world editor are now available as REST API.
Video avatars
Users can now switch between 3D and video avatar at any time. Just go to settings, and turn camera on and off.
Someone may not have a 3D avatar at all; in that case, avatar image will show. If you've logged in with your google or github account, that image will be used. Doesn't work with facebook login though, since facebook doesn't allow public access to profile image.
Of course, this only works with the permission to access the camera.
Reconnect/disconnect
The client will now attempt to reconnect if the connection is lost. Progress indicator shows up, and everything pops up back as it was.
Idle clients disconnect automatically after configured timeout, and do not reconnect automatically.
There's some limitations though, like, server restart - users that were logged in will have to log in again.
Other than that, users just pop back where they were.
Fixes and improvements
Elasticsearch connector fixed
Smoother animations and better avatar positioning
HUD improvements
Release video
v0.8.2 - client lib/API improvements
Focus of this release is javascript client library, with a few API changes to make it easier to use.
-
User object optionally contains picture, that can be displayed instead of 3D/video avatar. The picture URL is automatically populated on Oauth2 login with google and github (facebook doesn't allow anonymous picture access). Video avatar displays this picture, if available, when video is off.
-
connect() call returns a Promise
-
async Enter world call that returns a Promise, and there's also new REST API endpoint that can be used for the purpose
-
function to unsubscribe from web push messages
-
show group info API endpoint
-
resource leak fixed (game/screencast objects of registered users)
...and many other minor fixes and improvements.
v0.8.1 - typescript
VRSpace.org client library is now includes typescript type definitions.
That includes generated REST client model classes, that now follow ES6 syntax.
Other than that, this release includes various minor and security fixes.
v0.8.0 - web share and web push
New stuff:
Chat groups now can deliver Web Push notifications to offline users. Requires valid VAPID keys, not easy to generate, but easy enough to configure - three parameters to application.properties.
Creating a private world now utilizes Web Share API, makes it easy to share the world URL and invite friends.
World URL is also shared in the active chat log, whatever is active at the moment.
New REST API endpoint to attach persistent custom user data to user object.
And long time coming, server capabilities endpoint.
Release video: https://youtu.be/kHUOjqwS0ns
v0.7.9 - chat groups
VRSpace server comes with spatial chat out of the box, but that only works for online users in the same space.
V0.7.9 features chat groups: messages that are persisted, accessible in any virtual space.
However, the most important changes are around REST API client: the code is generated from the OpenAPI spec, and the spec is generated from the server code.
So essentially, the REST client code is generated from the server code. Type safe, and asynchronous.
Release video: https://www.youtube.com/watch?v=C_leTdBJut0
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