[prev in list] [next in list] [prev in thread] [next in thread] 

List:       opensim-dev
Subject:    [Opensim-dev] The state of content tools
From:       impalah () gmail ! com (Impalah)
Date:       2009-07-25 1:40:45
Message-ID: c5851bcf0907241840l2fba6113n208c1665b699f623 () mail ! gmail ! com
[Download RAW message or body]

You're looking for an automatic converter from X to Opensim... Some light
about this, at least for Autocad.

Almost all the "standard and well designed" Acad dwgs(for architecture for
example) should be made with lines or polylines to draw the "plant" of the
buildings. Then these lines are extruded to get the 3rd dimension. In
theory, we could access to this "extruded lines", get their properties and
made some kind of operation to convert those objects into opensim
primitives.

But we are humans and imperfect...

In the real world the designs are more than extruded lines; they are a bunch
of lines, extruded lines, arcs, circles, 3D autocad objects, plains, points
and the work of making something usable automatically is *almost*
impossible. The better solutions is to "fill" the "2.5D" spaces with well
known primitives (SL or opensim primitives); this can be scripted (vba or
.NET) but will always require manual adjustments, for defininig limits for a
wall, for example.

Another problem, when using Autocad and its 3D primitives, is that they
haven't "modifiers". To make a cut to an Acad primitive you have to make a
boolean operation with another primitive, and the damn program changes the
"basic shape" to a generic 3D object, without type (sphere, cylinder...) and
their only properties are position and Z axis rotation.

If I remember well to do the 3D renderings of Acad designs you need to
define faces and some other things (I will ask my partner, she's architect
and uses some kind of program to do the presentations).

The only solution I can think right now for this is to script some kind of
"3d fillers", but it will be manual.

If you want some literature I recommend you the book "VB.NET programming for
Autocad customization" (Jerry Winters, published by VBCad Inc). and the Kean
Walmsley's blog http://through-the-interface.typepad.com.


"3D programs" (3dsmax, maya, sketchup, blender...) use primitives, their own
primitives, and with a little (or not so little) work, and losing some
precission should be possible to reuse the original designs. Spheres, cubes
and some othe basic shapes can be detected, but if sl primitives have 7-8
modifiers maximum, any 3D object can have dozens minimum. With some dirty
program that compare relation tables 3Dwhatever-opensim maybe you'll have an
oportunity. I'm sure that Shack know more about this than me.


Importing into opensim is the easy part, with a region plugin. If you want
the Henshin's opensim builder code as a basis just tell me. You will have
50% of job almost done. It uses a xml data file quite easy to understand.

Greetings





2009/7/25 <diva at metaverseink.com>

> Shack,
>
> Thank you so much for your comprehensive reply. I could re-reply in
> private, but since I believe this topic is important to lots of people,
> I'll keep this conversation on the mailing list, even though I'm
> expressing my own requirements.
>
> Shack Dougall wrote:
> > It would be helpful to hear more details about the requirements of your
> > project.  For example:
> >
> > 1) Which platforms do you need to support: OpenSim, Second Life, both?
>
> OpenSim only, I don't use the Linden's grid anymore. So constraints on
> prim size are irrelevant. And all work out there related to the final
> step of importing things into the virtual world is irrelevant too. All I
> need is an external representation of 3D objects that OpenSim can import
> in one of N different ways; and, of course, data structures that the
> client can render.
>
> All hacks of using libsl  to actually place things in world are
> irrelevant, I don't need that. All assets can go straight to the asset
> server; all prims can go straight to the region server; all via http. I
> just need files that I can read into the OpenSim servers. The tool I'm
> looking for should not do that import step; it should only do the
> conversion and produce, say, and OAR, or some other representation like
> that.
>
>
> > 2) has the project already identified 3D assets that it wants to use or
> > is it planning to create those assets?
>
> Yes and yes. For one of the projects we have right now, the 3D objects
> (buildings) are already identified, and their 3D representations are
> already out there -- in this case, some were made in Sketchup, some were
> made in AutoCAD. The company I'm involved with will have a lot more
> projects. In all of these projects, we expect to see a fair amount of
> content that already exists (created with AutoCAD and Sketchup, mostly).
> It is unreasonable to expect that such content will be redone to account
> for all constraints imposed by the SL viewer.
>
> > 3) What environment were the assets created in and/or what format is the
> > data in?
>
> Sketchup and AutoCAD, mostly.
>
> > 4) Do the assets have UV maps and textures/materials already applied
> > that the project would like to transfer into Second Life?
>
> No Second Life. All OpenSim. I can take care of importing things into
> the necessary servers, that's a piece of cake.
>
> 5) What is the
> > time frame in which the project needs to move these assets into Second
> > Life?
>
> For the project I have in hand, I need it right now. The alternative we
> are considering is to remodel the buildings from scratch using, say,
> Blender, and honoring the constraints to produce sculpties. This can
> work for this project, but this will not scale for our future plans. We
> need to produce usable representations from unconstrained AutoCAD and
> Sketchup models, automatically.
>
> > 6) Could you provide examples of the kinds of models that the project
> > would like to use?   6a) Are we talking about buildings or organic
> > structures?   6b) Do the models have many extruded surfaces like the
> > branches of a tree or are they more box-like such as a car or building?
> >   6c) Do the models have many holes in them, like windows, doors, etc.
> > or are they composed mostly of unbroken surfaces?
>
> Here's an example:
>
> http://sketchup.google.com/3dwarehouse/details?mid=5e356502c0699d87d29617bab9562551&hl=en&ctyp=3dbl
> This particular building is fairly square, others aren't so square.
> I'm talking mostly about buildings, but there are other kinds of objects
> -- professionally designed vehicles, for example. Basically, I would
> like to be able to use everything that can be modeled with AutoCAD /
> Sketchup.
>
>
> > To my knowledge, there is no current tool that does a good job of
> > converting arbitrary 3D meshes to OpenSim/Second Life sculpties.  It is
> > a hard problem to solve in the general case, but probably not impossible.
>
> Yesssss!
> That's exactly what I was hoping to hear :-)
> Unfortunately, I'm not a graphics expert, so it would take me a while to
> learn everything there is to learn in that area, and do this myself; but
> I was hoping that someone with enough experience and knowledge would be
> able to do this, given clear requirements.
>
> It doesn't need to be perfect. In fact, there's some value to it not
> being a perfect conversion: you do your valuable professional models in
> the expressive meshes of professional tools, and then you export a
> poor-man's version of those models into a shared virtual world, where
> content is not protected. Essentially, that's what I'm looking for...
>
> Your message gives me hope that you or someone like you might be able to
> do this!
>
> Crista / Diva
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.berlios.de/pipermail/opensim-dev/attachments/20090725/3ab8a821/attachment.html>

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic