To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 10177
10176  |  10178
Subject: 
Comments wanted: Plans for easier parts authoring
Newsgroups: 
lugnet.cad.dev
Date: 
Sat, 5 Mar 2005 20:42:02 GMT
Viewed: 
2236 times
  
As some of you might have seen, I have been doing some programming lately to
convert various 3D file formats to DAT format. This resulted in the MAX2DAT
converter, which is useful but does not handle primitives, and is limited to the
file formats ASE and 3DS exported by 3D Studio Max (3DSMax).

The tool I just made, MAX2DAT, supports 3DSMax input, but will not behave
properly when presented with 3DS or ASE files converted from many other formats,
because they do not contain proper surface smoothing data. This can be fixed. It
is not difficult to add an automatic smoothing option that behaves in the same
way as the auto smoothing in STL2DAT or similar tools. I will do this.

My problem is: where do I go after that?

After hearing some comments, reading up on the internals of the LDraw parts
database and taking a step back and looking at the problem from a wider
perspective, I have come to the conclusion that I could actually make a better
tool to make parts authoring reasonably convenient, but that I need other
people's input on a few design considerations first. Hence this post.


My main point here is that 3D editing is best done graphically, but that a good
polygon mesh editor is hard to write. No free and open source 3D software I have
tried so far does it well. You don't need high end tools like AutoCAD, 3DSMax,
Maya or Lightwave, you can get by with a lot simpler tools like AC3D ($60) or
Milkshape3D ($25), either will do the job. Writing a designated 3D modeler from
scratch to design LDraw parts seems to me like a too complicated project, so we
should look into using existing software and making it work for our purposes.


Any comments are welcome. If you do not understand the questions put forth
below, please tell me what is unclear and I'll try clarify. If you are at all
interested in having a reasonably simple way of doing structured parts authoring
with an interactive graphical 3D modeling program, I really want your input.
This is aimed beyond the small group of people who have the skills to create a
good LDraw part with the limited tools we have available today.


There is a need to support subparts and primitives in a resonably
straightforward manner. We also need to support more modelers than 3DSMax,
preferably some low cost ones.

The common problem with documented export file formats from most modelers (like
the popular OBJ and LWO formats from Maya and LightWave, or even 3DS output from
other programs than 3DSMax) is that they do not contain structured object
hierarchies and local pivot points, so subparts will be impossible to implement
without some trick.

The trick I have come up with is this. Please tell me if you think it's
reasonable in terms of the demands placed on the person doing the modeling. It
borrows some ideas from the export method employed a few years ago to get user
created content into the game Quake III Arena, but takes it a bit further.

1) I create a set of DAT-to-X converters to read the parts database of DAT files
and convert them to a few file formats understood by the modeling programs we
decide to support. The conversion process names the object in the file after the
DAT file, like "3002" if it was read from "3002.DAT", and in addition a small
reference object is created that is named similarly plus a suffix, like
"3002_P". This is a small and inconspicuous object placed at the local origin of
the part, from which the position, orientation and scale of the subpart can be
recovered (i.e. the matrix part of the type 1 line in the DAT file). I will
refer to this small reference object as the "pivot dummy".

2) When editing or assembling a part with sub-parts, the part author is required
to perform all positioning, rotation and scaling of sub-parts on both the object
and the pivot dummy. Keeping that constraint in mind, all regular file import
and model assembly tools of the 3D modeling program can be used for authoring a
part. New objects can be created easily, and if needed they can also be
organised into subparts by giving new subparts a designated new pivot dummy. It
will take some extra thinking to do the modeling work correctly, but the process
will be clearly documented and described in a tutorial, and it will be easy to
learn.

3) The file is saved to a suitable export format supported by the program, like
3DS, OBJ or LWO. The file format needs to support multiple objects in the same
file and should preserve the names of named objects, but it does not have to
contain any hierarchy or other special information.

4) I create a set of Y-to-DAT converters that reads the formats we decide to
support. During conversion, the converter writes named objects to separate DAT
files and recovers the transformations using the pivot dummy. The DAT files that
already exist in the LDraw parts database are not needed, only the new objects
are actually going to be included. A simple way of handling this is to export to
an existing /P directory, and not overwrite any existing DAT files.


The steps 1-4 above would be a method for parts authoring that I would much
prefer over the current text file oriented approach. Any person with basic
skills in graphical 3D modeling, or anyone willing to spend a day or two to
learn the basics of polygon mesh editing, could then create a part, it wouldn't
require an LDraw wizard to do it. It would also make the process a lot more
interactive, and therefore faster and less frustrating.

Does anyone else agree with me that this kind of procedure would be useful?
Is it too complicated and won't improve the situation? Do you have any ideas on
how it could be made simpler? Do you think this would probably not be used, and
that I should drop the project? Please tell me what you think.

  Stefan G



Message has 2 Replies:
  Re: Comments wanted: Plans for easier parts authoring
 
(...) A while back i played around with blender, it's gone opensource in the meantime. (URL) don't know the current version but with the old blender i managed to get plaint text exports whom where very usable for post processing. I was playing (...) (19 years ago, 5-Mar-05, to lugnet.cad.dev)
  Re: Comments wanted: Plans for easier parts authoring
 
(...) Hi Stefan, While I think my opinion on this is well known, I'll answer your call for responses here.. I agree that AFOL don't "need" high-end tools for parts-authoring.. Any way to incorporate a graphical interface into the process would be a (...) (19 years ago, 6-Mar-05, to lugnet.cad.dev, FTX)

12 Messages in This Thread:



Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR