User:Fim

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m
 
(31 intermediate revisions by one user not shown)
Line 1: Line 1:
I am a Virtual World Developer living in Frankfurt/Main,<br />
+
I am a Virtual World Enthusiast - developing an [http://www.manupool.de/en/the-geo 'Education Currency / Education Economy'] project.<br />
playing with OpenSimulator on a [http://www.s-config.com/opensimraspberry-pi-rasbian-hard-float-works/ Raspberry Pi2]<br />
+
and do some [http://campus.auge.de DIY Hardware] stuff.<br />
+
=== 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 [http://list.opensim-edu.org/listinfo.cgi/education-opensim-edu.org Educator's Mailinglist]
+
  
=====Development Philosophy=====
+
=== OpenSimulator ===
Information Technology is one of the fastest moving, evolving areas in 'tech'. In the past decade, peer to peer (P2P), 'Blockchain' technology was changing the approach to many B2C solutions, towards a more decentralized system - which 'the internet' once was. [https://en.wikipedia.org/wiki/Diaspora_%28software%29 Diaspora], [https://en.wikipedia.org/wiki/YaCy YaCy], [https://en.wikipedia.org/wiki/Freifunk Freifunk] - to name some - are representing the 'reclamation' of user data ownership, privacy control and actually - power. While it is efficent to re-use existing code (snippets) and building upon existing developments - it gives constraints. On the other hand it can be inspiring and timesaving. The development philosophy for "A walkable 3D map" worded in one sentence: ''"Empower individuals while using 'free resources efficiently' and utilize decentralized approaches."''
+
<blockquote><div style="text-align:justify;">'''The Platform of Choice'''<br />
 +
OpenSimulator is a framework to create, host and distribute Virtual 3D Environments of all sizes. The 3D Simulator can run on local machines as well as being hosted on server infrastructure to provide broader access to the environment. It comes with an extendable module concept, to provide a large variety of applicability. [https://en.wikipedia.org/wiki/Serious_game Serious Games], Architecture, Landscaping, City Planning and various educational use cases are utilizing the platform - especially for visualization and simulation, fostering creativity and providing educational experiences. It provides a large set of group management tools. Text chat, voice chat, topic votings are some useful features for instance. The finegrained ownership and permission control for Data, 3D Areas and Virtual Objects is unique at the time. An outstanding feature is the so called [[Hypergrid|Hypergrid]]. Distributed simulations can be connected and become a continuous virtual 3D Environment or Simulation. Many Universities and other educational institutions do link their simulations to facilitate a seamless experience for their students. Designing in 3D and scripting interactive experiences demand a variety of skills, spatial visualization ability, mathematical and programming wise - which can be achieved within the learning environment by 'Trial and error', 'Learning by doing', structured lessons or interactive classes. OpenSimulator is therefore an extraordinary versatile environment to develop and provide [https://en.wikipedia.org/wiki/STEM_fields STEM] learning experiences - preferably self-paced and self-driven, to all types of students/learner.</div></blockquote>
  
=====Step One=====
+
<blockquote><div style="text-align:justify;">'''OpenSimulator is available for free -'''<br />
Wording a [http://en.wikipedia.org/wiki/Functional_specification Functional Specifications Document (FSD)]
+
under consideration of mentioning the original copyright holder and the copyright notice is retained. The utilized licence [https://en.wikipedia.org/wiki/BSD_licenses (BSD)] allows OpenSimulator to be integrated into proprietary products and developments. This type of licence empowers students to build upon the existing functionalety of the framework, to integrate it into their own developments, come up with individual solutions or jump start their own business venture. It is the largest OpenSource project of its kind - written in [https://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29 C#] - which is activly developed and maintained. Volunteers, independent developers, Universities, non profit institutions and corporations are contributing to the projects source code regularly.</div></blockquote>
*Utilizing a "3D Snapshot" of an OpenSimulator Region ([http://opensimulator.org/wiki/OpenSim_Archives .oar archive] file)
+
**Walk through via web browser -> [http://en.wikipedia.org/wiki/WebGL WebGL] / [http://threejs.org/ three.js]
+
** Ability to display 3D content (static, No [http://opensimulator.org/wiki/LSL_Status LSL])
+
** Movement control and camera control panels.
+
** HUD functionality using JavaScript
+
** 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 will work=====
+
<blockquote><div style="text-align:justify;">'''Accessing OpenSimulator: 3D Environment Clients'''<br />
<div style="text-align:justify;">''Visiting the regions web-based viewer page'' is showing a window into the '3D Snapshot' region, the size of the window is determined by the performance of the users client. The window is overlayed by a translucent layer showing an opaque button labelled "Start Now!". By clicking the button, a 'CAPTCHA' field appears. Passing the [https://en.wikipedia.org/wiki/Turing_test 'Turing test'], the translucent layer disappears and the back of an avatar inside the 3D Snapshot is shown. Simultaneously - a [http://opensimulator.org/wiki/NPC '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', they are represented by a prim or by a textured mesh. The location of a 3D Snapshot avatar can be represented inside the simulator via NPC. 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 is 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 can be relayed to the corresponding simulator region, in-world chat can be forwarded to the chat client on the website too.</div>
+
There is a variety of clients available for any platform - providing access for all imaginable use cases. VR headsets, gamepads, 3D navigators, mouses, joysticks and keyboards do support a wide range of interaction possibilities - even devices using electro-encephalogram (EEG) data can be utilized.</div></blockquote>
  
'''Collision detection (3D Collision Map)'''<br />
+
<hr>
If (since) the user is operating the in-simulator avatar, the position would be transmitted 'to the 3D Snapshot'. This approach would require that newly rezzed in-simulator objects 'become physical' by the creation of the 3D Snapshot and in-simulator objects are not changing their position. 
+
[mailto:support@threedservices.com Contact me.]<br />
*3D Snapshot
+
#[https://stemkoski.github.io/Three.js/Collision-Detection.html three.js Collision detection]
+
 
+
=====Communication=====
+
*User
+
#IRC Front end » [https://github.com/francisbrito/webchat A minimalist Web IRC client]
+
#IRC Back end » [http://opensimulator.org/wiki/IRCBridgeModule IRCBridgeModule]
+
#[http://www.webrtc.org/ WebRTC]
+
 
+
=====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.
+
#[https://github.com/mrdoob/three.js/tree/master/utils/converters Existing converters]
+
 
+
=====Resources=====
+
[https://docs.google.com/document/d/1O1oDf8tlM0987exT-OaYSBuN4TzHcW59kHClsgi4Sb4/edit?usp=sharing Blake's 'Viewer Functional Requirement Document' based on AjaxLife]<br />
+
[http://opensimulator.org/wiki/Developer_Documentation OpenSimulator Developer Documentation]<br />
+
[http://mozvr.github.io/webvr-spec/webvr.html WebVR - Editor’s Draft] (via CJ)<br />
+
[http://g.co/webrtc WebRTC and Web Audio resources]<br />
+
[http://en.wikipedia.org/wiki/WebGL WebGL]<br />
+
[http://threejs.org/ three.js]<br />
+
*[http://chandlerprall.github.io/Physijs/ Physijs - Physics plugin for three.js]
+
*[https://github.com/kripken/ammo.js ammo.js - Port of the Bullet physics engine using Emscripten] (via Peter)
+
*[http://learningthreejs.com/blog/2012/06/05/3d-physics-with-three-js-and-physijs/ Learning three.js - Physics with three.js and Physijs]
+
*[http://www.threejsgames.com/extensions/ THREEx - Games Extensions for three.js]
+
[http://opensimulator.org/wiki/User_talk:Fim - feed back here! -]
+

Latest revision as of 02:03, 1 June 2020

I am a Virtual World Enthusiast - developing an 'Education Currency / Education Economy' project.

[edit] OpenSimulator

The Platform of Choice
OpenSimulator is a framework to create, host and distribute Virtual 3D Environments of all sizes. The 3D Simulator can run on local machines as well as being hosted on server infrastructure to provide broader access to the environment. It comes with an extendable module concept, to provide a large variety of applicability. Serious Games, Architecture, Landscaping, City Planning and various educational use cases are utilizing the platform - especially for visualization and simulation, fostering creativity and providing educational experiences. It provides a large set of group management tools. Text chat, voice chat, topic votings are some useful features for instance. The finegrained ownership and permission control for Data, 3D Areas and Virtual Objects is unique at the time. An outstanding feature is the so called Hypergrid. Distributed simulations can be connected and become a continuous virtual 3D Environment or Simulation. Many Universities and other educational institutions do link their simulations to facilitate a seamless experience for their students. Designing in 3D and scripting interactive experiences demand a variety of skills, spatial visualization ability, mathematical and programming wise - which can be achieved within the learning environment by 'Trial and error', 'Learning by doing', structured lessons or interactive classes. OpenSimulator is therefore an extraordinary versatile environment to develop and provide STEM learning experiences - preferably self-paced and self-driven, to all types of students/learner.
OpenSimulator is available for free -
under consideration of mentioning the original copyright holder and the copyright notice is retained. The utilized licence (BSD) allows OpenSimulator to be integrated into proprietary products and developments. This type of licence empowers students to build upon the existing functionalety of the framework, to integrate it into their own developments, come up with individual solutions or jump start their own business venture. It is the largest OpenSource project of its kind - written in C# - which is activly developed and maintained. Volunteers, independent developers, Universities, non profit institutions and corporations are contributing to the projects source code regularly.
Accessing OpenSimulator: 3D Environment Clients
There is a variety of clients available for any platform - providing access for all imaginable use cases. VR headsets, gamepads, 3D navigators, mouses, joysticks and keyboards do support a wide range of interaction possibilities - even devices using electro-encephalogram (EEG) data can be utilized.

Contact me.

Personal tools
General
About This Wiki