Meshmoon Rocket 2.5 release and launch of browser based Web Rocket

82 views
Skip to first unread message

Jonne Nauha

unread,
Mar 27, 2013, 1:09:44 PM3/27/13
to realxt...@googlegroups.com, realXtend
Here is a short update whats going on at Meshmoon for every lurker here on the realXtend mailing lists!

Meshmoon Web Rocket - Browser based client for Meshmoon hosting

As you might have noticed here on the mailing lists there is a lot of buzz around Tundra web clients. We started to implement our own from scratch implementation for both C++ server side and javascript for the browser side. This work has reached a point that we feel confident to call it alpha and make it publicly available. Everyone can login to www.meshmoon.com and navigate to the top bar link "Web Rocket" to try it out.

To make it perfectly clear. This is not a standalone web client or just loading a static scene. We are actually connecting to a live hosted Meshmoon server that serves the same scene/protocol messages as it would for desktop clients. Web and Desktop clients can see each others avatars, see their live movement and chat with each other etc.

Here is the feature rundown:
  • No plugins needed, standard WebGL (rendering) + WebSocket (networking).
  • Connects to the same servers that desktop clients do: Meshmoon hosting accepts WebSocket based connections.
  • Works great with latest Google Chrome and Mozilla Firefox, these will be supported officially at the beginning. We might add Mac OS X Safari support later.
  • Full scene synchronization from server and other clients (native or web).
  • JavaScript implementations for a bunch of Tundra entity components: EC_Placeable, EC_Name, EC_Mesh, EC_Light, EC_Avatar, EC_DynamicComponent, EC_AnimationController and EC_Script
  • Runtime dynamic loading of web client JavaScript application logic. Just like our native client does with EC_Script we can also load scene specific JavaScript applications to the browser context.
    • I provide default Avatar and Chat Meshmoon applications, just like we do for desktop clients. These are detected during runtime from the scene content and the apps are started.
    • API documentation will be released once we get there :) Then anyone can write apps for the browser as well as the desktop client!
  • Asset system
    • One key feature in our Meshmoon web client support is that the scene authors/artists do not have to do anything for the web client to work correctly.
    • OgreMeshAsset: Implements parsing .mesh.xml based Ogre meshes to the web client rendering engine. Support submeshes with unique materials in each.
    • OgreMaterialAsset: Supports a wide range of Ogre material properties. Multitexture support: diffuse texture, lightmap texture and specular texture. Detection of Ogre blending modes and some shaders and ports them to the web rendering engine materials.
    • OgreSkeletonAsset: Implements parsing of .skeleton.xml based Ogre skeletons. Bone and animation mapping to skinned meshes and loading them correctly to the web rendering engine. Playback via EC_AnimationController.
    • ScriptAsset: Implements loading JavaScript and running it. Used with EC_Script.
    • AvatarDescAsset: Implements parsing legacy realXtend avatar descriptions and forming mesh, skeleton and materials out of them for EC_Avatar.
      We will be changing avatars to the Meshmoon Avatar system once its done. This is a collada based avatar description that will be supported both on the web and desktop client.

Desktop Rocket client

We just released Meshmoon Rocket 2.5 that has all the latest code from realXtend Tundra that all sorts of people have contributed + our Meshmoon bugfixes pull request code. And of course all the new features in Meshmoon functionality as well.
  • Meshmoon Build Mode: We got a new long time realXtend developer to the Adminotech dev roster, many of you might know him as Stinkfist here on the mailing lists and working on the core repo. This is great news for our users as we can crank out features even faster.
    • Easy scene manipulation and building with objects has been a long time just laying there and now we wanted to do something about it. As most of you know just using the core Tundra EC editors, having to know what component does what and how they should be configured etc. is not very user friendly. This is why we started creating a Rocket core feature that gives you nice, rich UI to build in your scene. This tool is only available on the taskbar and menus if you are a admin in the scene you logged in.
    • To start with we have a couple of modes: Environment Easy setup of your scenes sky, water and fog. Lights to manipulate the ambient light, light directions and add custom lights to your scene. Physics currently this only toggles between visualizing all the objects that have physics in them. We will be adding selecting objects and editing the physics properties later.
    • Coming up Simple Building: Tundra is great when you have 3D content in a modelling software and just want to import that. The problem is that most people don't have the know how to use these 3rd party software or they want something simpler. As its familiar to most in second life and opensim they have "prims". Set of primitive shapes that anyone can build anything out of inside the client. We will be adding something similar that gets adjusted into our Ogre 3D engine. Back in the day when Tundra connected to OpenSim we already had primitive components so we know somewhat how to start working on this. This feature will come later to the curret build editor, once its ready enough for mainstream testing.
  • Meshmoon Scene Storage
    • Added a filter widget so you can easily find existing files in your storage.
    • Added support for .txml drag and drop content import to storage subfolders. This makes it a lot easier to manage chunks of your scene if you have splitted it up to multiple export from blender etc. Also conflicting file names wont anymore be a problem. To use this navigate to a existing subfolder or create a new one, then drag your txml into the storage file list area and follow the import dialogs like usual.
  • Meshmoon Cave and 3D support: The realXtend Tundra core plugin for cave and 3D rendering has been unmaintained for a long long time. It has severe crash bugs and the usability of the user interface was horrible :) We decided to rewrite the logic as a Rocket feature.
    • Our completely rewritten CAVE functionality is meant for real "professional" setups that have enabled Nvidia Surround Desktop or AMD Eyefinity. This makes the operating system see a single big resolution display. Having multiple monitors in normal mode won't work with our CAVE technique.
    • 3D stereo has been tested with Nvidia 3D vision. You can use the default nvidia shortcuts to enabled/disable 3D stereo rendering. This is a bit trickier to enable, you'll have to add startup parameters "--fullscreen" and "--ogrecapturetopwindow" for it to work. We will fix this in the next release by making a new Rocket shortcut that will start it with the proper parameters.
    • We are planning to add body gesture controls to the CAVE funtionality in the near future.
  • EC_MeshmoonTeleport
    • Teleport component that support click and proximity teleporting with optional UI confirmation from the user. Supports teleports in your own scene or a teleport to other Meshmoon hosted scenes. Permission validations when teleport destination is a private scene.
    • We will be adding functionality to the Build Mode tools to add teleports later. But for now you can add the component by hand with EC editor. If attribute "Destination Scene" is empty it will use the current scene, if it is a URL to another meshmoon world it will teleport there. You can get the full scene url from the top of meshmoon.com admin panels -> space settings.
  • Tundra core editors undo/redo capabilities
    • This was a feature made with the realXtend assosiation sponsored development money. All editors now support a undo/redo history stack. The widgets can be found from the top of the editor widgets.

P.S. Out latest newsletter has more information about 2.5 and Web Rocket.

Best regards,
Jonne Nauha
Meshmoon developer at 
Adminotech Ltd.
Reply all
Reply to author
Forward
0 new messages