POV-Ray : Newsgroups : povray.programming : Feature request - round : Re: Feature request - round Server Time
28 Jun 2024 02:22:18 EDT (-0400)
  Re: Feature request - round  
From: Warp
Date: 29 Nov 2004 19:16:42
Message: <41abbbea@news.povray.org>
Thomas A. Fine <fin### [at] head-cfaharvardedu> wrote:
> So, those who know the code inside and out, is this doable?  Fairly
> simple change?  Nightmarish change, due to the order things are
> processed?  I'm willing to work on the implementation myself, but I'm
> not going to waste my time if the experts tell me that the code would
> have to be completely restructured to support such a feature.

  You seem to think that it's just a question of syntax and automatically
generating the proper geometry from it. Well, it's not. What you are
trying to achieve is, in general, impossible.

  You might be confusing raytracing with scanline-rendering of triangle
meshes. In a mesh renderer this feature would certainly be possible
because you can always automatically subdivide triangles which form
sharp edges.

  Raytracing does not work this way. In raytracing each primitive type
is a mathematical surface, and the ray-surface intersection is calculated
with a specific mathematical formula.
  There's no generic way of smoothing sharp edges formed by these surface
formulas. The formula itself would have to be modified in a primitive by
primitive basis, and with many primitives this would not be very efficient,
if it's even possible.

  In a way this is a similar problem to not being able to apply non-linear
transformations to objects: Since this would require calculating the
intersection of a curve (instead of a line) and the surface, it starts
becoming prohibitively difficult and inefficient.

  You are free to make a suggestion on how this could be achieved in
raytracing.

-- 
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}//  - Warp -


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.