|
|
"Bald Eagle" <cre### [at] netscapenet> wrote:
> Also, in the above referenced book, they discuss how most commercial /
> production raytracers convert everything to triangles before rendering.
The ability to mesh-ify a scene, objects etc. is extremely useful. It would
explicitly break POV-Ray into two parts, a SDL and a raytracer. The SDL side can
be used for other rendering back ends, OpenGL previews or complete renderings,
3d printing etc. One can use a kind of hybrid style of SDL coding, start solid,
go to mesh and do subdivisions and other mesh wizardry.
For writing, syntax and usability testing, of a new SDL language one could write
a small language, parser and SDL1 transpiler. With a subset of SDL a lot can be
testet. The output can be the simplest form of current POV-Ray SDL with loops
enrolled etc.
ingo
Post a reply to this message
|
|
|
|
hi,
pushed for time currently, sorry for omission(s).
"ingo" <nomail@nomail> wrote:
thx for the Nim ref.
> ...
> For writing, syntax and usability testing, of a new SDL language one could write
> a small language, parser and SDL1 transpiler. With a subset of SDL a lot can be
> testet. The output can be the simplest form of current POV-Ray SDL with loops
> enrolled etc.
and Bald Eagle wrote:
> At this juncture, we really need a functional flowchart showing exactly HOW
> POV-Ray goes from the SDL in .pov file to the final rendered image.
diagrams and charts, _yes_. to add.
I do think the "new POV-Ray" should ship with built-in "schizophrenia" ;-). if
a version number of less than n.n is given, or the version is missing, the job
goes to the old parser/POV-Ray as of 3.8 (?), else it'll be a version indicating
"SDL2" and the new code takes over.
we need to start with the outline of the "backend", the render engine. aiui, a
(LL)Virtual Machine is (was?) supposed to be "platform". as the design of the
LLVM firms up we'll get the (first cut at the) "API".
once there's a specialised rendering "API", we can start thinking about language
features for, I hope, a SDL which compiles[*] to the LLVM low-level
instructions.
[*] many scripting languages, including PHP and Tcl, compile "just-in-time".
with a bit of luck almost all of this can (and should) be "transparent" to us
"end-users".
regards, jr.
Post a reply to this message
|
|