User:Fim
From OpenSimulator
I am a Virtual World Developer living in Frankfurt/Main,
playing with OpenSimulator on a Raspberry Pi2
and do some DIY Hardware stuff.
Contents |
My Current Projects Related To OpenSimulator
"A walkable 3D map"
The idea for this approach, to develop some kind of OpenSimulator Web-based viewer, emerged by a conversation on the OpenSimulator Educator's Mailinglist
Step One
Wording a Functional Specifications Document (FSD)
- Utilizing a "3D Snapshot" of an OpenSimulator Region (.oar archive file)
- Walk through via web browser -> WebGL / three.js
- Ability to display 3D content (static, No LSL)
- Movement control and camera control panels.
- HUD functionality
- No inventory access
- No login required
- Ability to load different teleport locations into a fixed teleport HUD
- Region map with teleport capability
- Runs from local install/USB key
- Settings menu / autodetection draw distance
- Chat (Text) functionality
- Open Source licence
- Please participate!
This is how the web-based viewer would work
Visiting the regions web-based viewer page will show a window into the '3D Snapshot' region, the size of the window is determined by the performance of the users client. The window will be overlayed by a translucent layer showing an opaque button labelled "Start Now!". By clicking the button, a 'CAPTCHA' field appears. Passing the 'Turing test', the translucent layer disappears and the back of an avatar inside the 3D Snapshot is shown. Simultaneously - a 'NPC' avatar 'spawned' inside the dependend simulator - at the regions Landing Point. The user can now operate the avatar. The location of in-simulator avatars can be transmitted into the '3D Snapshot' and they would be represented by a prim or by a textured mesh. Also shown is a 2D Region map utilizing JavaScript to 'teleport' to another spot. Movement control, camera control panels, the Region map and a settings menu icon are overlaying the scene - but can be folded up, The draw distance can be set manually too. Every X (24) hours a snapshot (.oar) of the current region state will be created, which is then converted to a format WebGL/three.js can render. The data of avatar locations can be provided via xml-rpc/UDP. A possibility for text chat on the webpage is given - which could be relayed to the corresponding simulator region, in-world chat could be forwarded to the chat client on the website too. The location of a 3D Snapshot avatar can be represented inside the simulator via prim or NPC which contains the chat relay script.
Communication
- User
- IRC Front end » A minimalist Web IRC client
- IRC Back end » IRCBridgeModule
- WebRTC
Step Two will be
Writing a parser/converter for '.oar' files using python to extract data - which then is used utilizing three.js.
Resources
OpenSimulator Developer Documentation
AjaxLife (via Blake)
WebRTC and Web Audio resources
WebGL
three.js