Re: Lines

jon klein <[email protected]> Mon, 3 Jan 2005 18:06:06 -0500
Newsgroups gmane.comp.breve
Message-ID <[email protected]>
On Jan 3, 2005, at 4:47 PM, Naiqi Weng wrote:

> Hi, jon
>
> I am not sure whether you still remember my project.
> :) Just give you some warm up:  I am drawing some
> breve animation on a special device. I drew a "string"
> which consists of several spheres connecting to each
> other by the "add-line" method. The problem now is I
> don't want to display the sphere whereas I want to
> keep the lines. (You may suggest to make the sphere as
> small as possible, but that's not the key point. The
> problem lies when there are too many spheres displayed
> on the device, no matter how small they are, the
> animation will slow down tremendously due to the
> limitation of the device). I found that when  you make
> an object invisible by "make-invisible" method, the
> lines between this object and other objects are not
> drawn. Is that possible for me to revise some source
> code to make the lines still be drawn no matter the
> object is invisible or not?

This is an issue I've addressed in breve 2.1 -- even
if the object is invisible, it should still be possible
to display the object line.

A very quick fix for 2.0: make the object a small sphere,
but instead of displaying it as a sphere (which draws
several polygons and can indeed be quite slow when many
are displayed), set it to a bitmap, which is drawn with
a single polygon.  You can just use the number
0, which is the built-in "floor" tile bitmap:
	myAgent set-bitmap to 0.

If you want a real fix, the 2.1 source is pretty stable
at this point, so you might want to grab the latest
snapshot and work from there.  In addition to huge numbers
of bug fixes and new features, the 2.1 source is a lot
cleaner than the 2.0 source and so should be a lot easier
to work with otherwise.

> Another question is:I am  confused by the collision
> detection in Breve, since in my animation,sometimes
> the different parts of an object just penetrate each
> other. Is it up to the user to handle the collision or
> Breve can automatically handle this problem?

Are you running a physical simulation, or a non-physical
simulation?  In a physical simulation, the objects should

If you're using physical simulation with MultiBodies
(as it sounds like perhaps you are...) then collision
detection between the different link objects must be
specially enabled, using the MultiBody method
enable-self-collisions.

- jon klein

_______________________________________________
breve mailing list
[email protected]
http://lists.spiderland.org/mailman/listinfo/breve