On Dec 16, 2011, at 2:06 AM, glenalec wrote: > had a bit of a play with Open Wonderland yesterday - just to see what > it was like over on that side.
Cool - has been in my agenda to test again, was testing jMonkeyEngine (again) for other reasons earlier this week. > Quite nice environment, good security model and nice clean web- > interface to the server. Yep. The architectures of Tundra and Open Wonderland are quite similar actually, I wrote a little comparison in spring after looking into a bit - the note is at: https://github.com/realXtend/doc/blob/master/arch_article/wonderland.rst We are on-line friends with some of the devs and like to talk etc., and there was even an interoperability test of asset servers >year ago (organized by immersive edu, IIRC Mikko Pallari from the reX side tested that Naali could use assets from Wonderland asset servers ok - they are also just normal web (http) servers which host e.g. mesh and texture files). > stuff, but even accounting for that, it seemed a VERY heavy (and > consequently slugish to the point of being annoying to use) system > compared to what I am used to with both the OpenSim and Tundra > environments. Apparently that comparison note also guesses this: "OWL is fully written in Java, including the core and the rendering engine used (jMonkeyEngine, similar to Ogre3d but written in Java). realXtend core is C++ and the main libraries used (Ogre3d, Qt) are c++ as well. This may result in performance differences" .. I haven't tested Wonderland with complex worlds nor on poor computers, but yes it is sometimes the case that Java based things are on the heavy side. Would be interesting to know actually where the bottlenecks / weight are in the case of Open Wonderland -- simple jMonkeyEngine demos are not so heavy? Also e.g. most android apps are java and run fine on puny hardware but that's a bit different story, just to note that Java is not always so heavy. But indeed it is an upside in Tundra that we have efficient native stuff. I've been now testing Ogre stuff on iOS, and at least the first test blend runs fine on my 2 year old iPhone 3GS -- we'll test soon with more heavy scenes that have with desktop Ogre and reX earlier. And we have efficient UDP networking with kNet which is suitable for realtime action games even -- Wonderland uses the ex-Sun Darkstar stuff which to my surprise seemed to be limited to TCP? -- at least Wonderland itself had TCP only if I recall correctly. Sure TCP is often fine, for meetings and slower action (e.g. World of Warcraft uses TCP only -- is sometimes used as a warning example of it, but I guess is usually ok). > In the end, while security and administrative concepts present in the > system were certainly very well thought out, the implimentation was > just unusable. :-( As mentioned in that comparison, the architectures are so similar that at least designs can be reused. Tundra is made with the Entity-Component model. In Wonderland those are called 'capabilities'. For example Wonderland has a 'security' capability, which implements permissions. And e.g. having a mesh renderable, or an object being defined as a sittarget, are other capabilities. Similarily we have EC_Mesh and custom sittarget components etc. with Tundra. And permissions can be added with for example a custom component, where you put e.g. the id of the owner of the object, and permission options, as the data. Logic can be in custom C++, Py or Javascript module that you enable on your server. There is a note in the issue tracker that we could provide a basic implementation that works out of the box, and which can be used as an example for implementing other security schema: Implement support for creating user rights management scripts, and provide users with script examples. https://github.com/realXtend/naali/issues/105 (the first step towards this in code, an example which now just denies all remote editing, is https://github.com/realXtend/naali/blob/tundra2/bin/jsmodules/apitest/permissioncheck.js) > Still, I'd recomend having a look at it if you have a spare hour-or- > two to get JavaDE-6 installed and behaving itself - getting Wonderland > to run was a snap, it was getting the JDE in first that was wrecking > my day! (It needs the JDE, the JSE won't work it). Oh, I didn't really notice that *DE requirement then, but indeed had apt-get doing downloads for a while on the Ubuntu laptop where tested it. But yep then it was nice to get running, the whole own local server biz with the web login etc. The jMonkeyEngine demos, which should be simple to run and require only the normal Java Runtime (JVM?) which many computers already have, are at http://jmonkeyengine.com/demo/webstart/ . It is an old engine that has always seemed nice, and Wonderland also switched to using it recently (for graphics). We (at Playsign for a possible project) have done a little research on the browser based / easy web start reX client technologies and jME would certainly work, but we don't know if Java is a way to go there, so far have been enthusiastic with the WebGL + Javascript based WebNaali thing. Were you able to test Wonderland's voice BTW? I wasn't yet but heard it's ok - might be interesting to use that in WebNaali (browsers can't do VOIP yet without plugins). Thanks for sharing the experience! ~Toni -- http://groups.google.com/group/realxtend http://www.realxtend.org
