To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.dev.org.ldrawOpen lugnet.cad.dev.org.ldraw in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / Organizations / LDraw / 1929
1928  |  1930
Subject: 
Re: Parts as volumes (instead of surfaces)
Newsgroups: 
lugnet.cad.dev.org.ldraw
Date: 
Tue, 9 Apr 2002 04:09:25 GMT
Viewed: 
412 times
  
If you're interested, take a look at my old Rayshade
libraries that made the bricks from scratch using CSG.
I'm especially fond of the L3G0 40-tooth technic gear.

I've thought it would be nice to have "bounding boxes" for
the bricks, for collision detection.  Some tools for rendering
dat files compute a bounding box on-the-fly as the brick is
loaded, but this is not accurate enough to do collision detection,
although could help to limit the number of bricks that need
searched for potential collisions.  I once did a rendering of
a snow scene consisting of a pile of 1x1 and 1x2 white plates
leaning on each other.  I used bounding boxes and a physics
modelling program to determine the shape.

The BFC stuff can be useful for other things.  The nVidia developer
CD has a rendering program that highlights a spaceship by creating
a halo effect.  The halo is formed by taking each triangle in the
model, making it a fuzzy transparent yellow color, and displacing
it by a fixed amount in the direction of the normal (which we can
find out easily if the part is BFC-certified).


-gyug

In lugnet.cad.dev.org.ldraw, Damien Guichard writes:
It has been said that, with ldraw parts, we have the geometry of TLG bricks.
This is rather optimistic. Because geometry would be CSG descriptions that
allow much more (although slower) than quads and triangles. CSG descriptions
allow part collision detection.

Thinking about BFC statements I realised they also allow collision detection.
The prerequisite is having convex parts. Each polygon defines a tangent
plane, an "exterior" half-space and an "interior" half-space. A part is
defined by the intersection of these interior halve-spaces that are
organized in a BSP tree. I guess collision detection is then a standard
procedure on BSP trees. Or may be I am wrong and this is actually a much
more complex problem.

Anyway, the remaining problem is that most (if not all, including Brick 2 x
4) ldraw parts are not convex but concave. Is there any simply mean to
extend BFC with metacommands that split ldraw parts in convex subpart? Does
the topic deserve the effort? Any interest at all? Just an idea to see what
reply.

Damien



Message has 1 Reply:
  Re: Parts as volumes (instead of surfaces)
 
(...) I like the idea of CSG. Unfortunately I can not invest time in Rayshade and alternate ray-tracers. I know they can have attractive features but I am more a POV user. I must impose some limit to my (already too high) diversification. Of course, (...) (23 years ago, 9-Apr-02, to lugnet.cad.dev.org.ldraw)

Message is in Reply To:
  Parts as volumes (instead of surfaces)
 
It has been said that, with ldraw parts, we have the geometry of TLG bricks. This is rather optimistic. Because geometry would be CSG descriptions that allow much more (although slower) than quads and triangles. CSG descriptions allow part collision (...) (23 years ago, 6-Apr-02, to lugnet.cad.dev.org.ldraw)

11 Messages in This Thread:




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

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

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