|
|
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
|
|