|
![](/i/fill.gif) |
On 18 Jan 1999 03:58:23 -0500, Nieminen Mika <war### [at] cc tut fi> wrote:
>Spider <spi### [at] bahnhof se> wrote:
>: Difference is slowwwww...
>
> This isn't always true either.
And even when it is true, it's no slower than intersection or merge.
In fact, difference and merge may both be expressed in terms of
intersections, and within the program differences are indeed expressed
as intersections.
For the curious:
difference {object {A} object {B}}
is equivalent to
intersection {object {A} object {B inverse}}
and
merge {object {A} object {B}}
is equivalent to
intersection {object {A inverse} object {B inverse} inverse}
(An aside: would making this substitution in the parser simplify the
CSG evaluation code sufficiently to gain any significant performance
on rendering? I doubt it. Currently, in fact, the intersection
version renders just a tiny bit slower than the merge version for the
same scene. I don't know why that is.)
Post a reply to this message
|
![](/i/fill.gif) |