[Opensim-dev] scene import/export to another app: oar? dotscene? collada?
Toni Alatalo
antont at kyperjokki.fi
Tue Sep 15 06:10:25 UTC 2009
Hi,
I started looking into implementing scene exchange between Opensim and
Blender yesterday, and am planning to continue later today. Was reading
OARs and the code in OpenSim.Region.Framework.Scenes.Serialization ..
where SceneObjectPart #region XML Schema seems to be the fields that are
autoserialized by some .net writer, right?
It seems well possible to read and write OAR elsewhere, but I'm not sure
if it makes sense, or whether it's more the internal representation in
Opensim. Are there any alternatives? With Ogre we've sometimes used the
simple DotScene (.scene) made for it, and basically that would cover the
info I'm interested in now (positions of meshes in a scene, not prim
geom 'cause am not having prims in Blender at least right now anyway).
There is an existing DotScene exporter for Blender, would it make sense
to write an importer to OpenSim? Or a Collada scene importer perhaps? I
haven't looked (yet) what the scene format there looks like. For the
Ogre format there is a 15 line complete scene example at
http://www.ogre3d.org/wiki/index.php/DotScene
In one way the question is: does OAR loading work with 'partial' data,
or would I have to make the exporter write all the fields? Am now
looking into exchanging this data first:
<GroupPosition><X>123</X><Y>129.55</Y><Z>29.340004</Z></GroupPosition>
<OffsetPosition><X>0</X><Y>0</Y><Z>0</Z></OffsetPosition>
<RotationOffset><X>0</X><Y>0</Y><Z>0</Z><W>1</W></RotationOffset>
<Scale><X>17.7774</X><Y>22.8028</Y><Z>69.2987</Z></Scale>
and things like velocity would not apply .. also, are valid region
handles, creator-id etc. required, and should I generate GUIDs at export?
I'll experiment what happens at loads of partial data etc., and of
course can just make the exporter write all those fields, but hints are
welcome so would not be banging my head against the most irrelevant walls.
~Toni
More information about the Opensim-dev
mailing list