User:Fim
From OpenSimulator
Line 23: | Line 23: | ||
* Please participate! | * Please participate! | ||
− | =====This is how the web-based viewer | + | =====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 ''"Where do you want to walk today?"'' - no, just kidding. The button shows "Start Now!". By clicking the button, the translucent layer disappears and the back of an avatar inside the 3D Snapshot is shown. Simultaneously - an npc avatar 'spawned' inside the dependend simulator at the regions teleport hub. The user can now operate the in-simulator avatar. | ||
+ | |||
+ | 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 ([http://opensimulator.org/wiki/OpenSim_Archives .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 [http://opensimulator.org/wiki/Communication_Protocols 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. | Every X (24) hours a snapshot ([http://opensimulator.org/wiki/OpenSim_Archives .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 [http://opensimulator.org/wiki/Communication_Protocols 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 in-simulator avatars can be transmitted into the '3D Snapshot' and they would be represented by a prim or by a textured mesh. The location of a 3D Snapshot avatar can be represented inside the simulator via prim or 'npc' which contains the chat relay script. | 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. The location of a 3D Snapshot avatar can be represented inside the simulator via prim or 'npc' which contains the chat relay script. | ||
− | |||
− | |||
=====Communication===== | =====Communication===== | ||
Line 36: | Line 38: | ||
#[http://www.webrtc.org/ WebRTC] | #[http://www.webrtc.org/ WebRTC] | ||
− | =====Step Two | + | =====Step Two will be===== |
Writing a parser/converter for '.oar' files using [https://www.python.org/ python] to extract data - which then is used utilizing three.js. | Writing a parser/converter for '.oar' files using [https://www.python.org/ python] to extract data - which then is used utilizing three.js. | ||
#[https://github.com/mrdoob/three.js/tree/master/utils/converters Existing converters] | #[https://github.com/mrdoob/three.js/tree/master/utils/converters Existing converters] |
Revision as of 10:17, 13 June 2015
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 "Where do you want to walk today?" - no, just kidding. The button shows "Start Now!". By clicking the button, the translucent layer disappears and the back of an avatar inside the 3D Snapshot is shown. Simultaneously - an npc avatar 'spawned' inside the dependend simulator at the regions teleport hub. The user can now operate the in-simulator avatar.
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 in-simulator avatars can be transmitted into the '3D Snapshot' and they would be represented by a prim or by a textured mesh. 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