POV-Ray : Newsgroups : povray.general : New mesh type : Re: New mesh type Server Time
5 Aug 2024 10:24:21 EDT (-0400)
  Re: New mesh type  
From: Christopher James Huff
Date: 11 Oct 2002 12:57:29
Message: <chrishuff-C38579.12540911102002@netplex.aussie.org>
In article <web.3da4f198f1acbd18ccf4f70@news.povray.org>,
 "Rohan Bernett" <rox### [at] yahoocom> wrote:

> This looks like it would be more understandable when writing meshes by hand.
> It would probably take longer to parse though.

It really looks like you've misunderstood the entire texture syntax. 
Your "pigment {blah1, blah2, blah3}" syntax would break consistency with 
every other use of pigments, and would take a lot of work to implement. 
And I don't know why you want some kind of "image{}" block that is 
nothing like any other texture syntax in POV.

Your "smooth_vect" should say what it is: "normals", and the braces are 
unnecessary clutter there. Your "tesselate" is really subdivision, and 
would need a lot more parameters than just on/off. Similar for 
smoothing: there are several possible algorithms to choose from.

Aside from all that, your proposed syntax really looks more cumbersome 
to me, and it doesn't add anything that couldn't be added to the current 
syntaxes and retain backwards compatibility.

Here is my proposal:
mesh {MESH_IDENT //add ability to deep-copy existing mesh.
    
    //these are supported just like they are now, with a few
    //restrictions loosened...no need for declared textures, for example.
    //The syntax would be exactly the same as for triangles outside a
    //mesh.
    smooth_triangle ...
    triangle ...
    
    //new syntax for smooth triangles:
    //If 6 vectors are specified, it is smooth
    triangle {p1, n1, p2, n2, p3, n3 ...}
    
    //Any shape can be tesselated into the mesh. The new triangles are
    //simply added to the mesh. Each shape can have its own specialized
    //tesselation methods...no need to re-tesselate height fields or
    //triangle primitives.
    tesselate {SHAPE TESSELATION_PARAMETERS}
    
    auto_smooth {SMOOTH_PARAMS}
    displace {DISPLACEMENT_ITEMS}
    subdivide {SUBDIVISION_PARAMS}
}

-- 
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: chr### [at] tagpovrayorg
http://tag.povray.org/


Post a reply to this message

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