POV-Ray : Newsgroups : povray.programming : POV-Ray modification question : Re: POV-Ray modification question Server Time
28 Jul 2024 22:26:31 EDT (-0400)
  Re: POV-Ray modification question  
From: Ronald L  Parker
Date: 6 Apr 1999 00:44:56
Message: <37097b28.41518499@news.povray.org>
On Mon, 05 Apr 1999 19:32:38 -0700, Ken <tyl### [at] pacbellnet> wrote:

> I'm not sure what the exact wording is for the proceedure but the super patch
>maintained by Ron Parker has a slope dependent texture routine that I have
>seen used with HF's ( ISO surfaces ?). It is very promising. The couple of
>images I have seen where it was used with HF's shows the limitations with the
>official build and the power it adds to texturing uneven surfaces like terrain.
>Ron can tell you more about it's capabilities than I can. 

I can't tell you that much more, as it's not my patch either.  The
original authors are lurking about here somewhere, no doubt.  But the
documentation is fairly complete.  Also in the superpatch and
concerning textures are the function-based textures from the
isosurface patch, so you can make the color (pigment, texture,
anything mappable) at a particular point be an arbitrary function of
x, y, and z.  Currently, that's as close to a programmable texture as
you're likely to get.  The new superpatch will include some new warps
that might help as well, plus the ability to calculate isosurfaces of
procedural pigments.  That's just on hold until I get the docs from my
doc guy. :)

The main problem with a patch utilizing DLLs is that if it's based on
3.1x code, it may not be distributed due to the new terms in POVLegal.
The isosurface patch was sorta grandfathered on that clause, but it is
my understanding that when it's part of the official 3.5 it will no
longer support DLLs, either.  Quoting Chris Young's "State of the
Renderer"[1] address from late December:

    For example cross-platform portability is a major design priority
    and the iso-surface patch makes use of DLLs that are not portable.

    We will likely eliminate that part of the patch.

As a part of the superpatch, the DLL support is on shaky ground (but
legal, because I have written permission of a sort to distribute it
for the time being) and it could be axed at any time.

I have also been toying with the idea of "plugins" for POV, for both
textures and primitives, for almost a year now, and you can even find
some serious posts from me about it in cgrr if you go back far enough.
but that provision in POVLegal has kept me from doing anything
serious.  My current fantasy involves using JNI to make POV talk to
plugins written in Java, now that I've managed to locate JVMs that run
on all platforms officially supported by POV.  The idea is, if you
have a plugin that works on your Windows machine, you just put it
online and if I download it to my Linux machine it'll just work.
Since the plugins are just math and other boring stuff, they wouldn't
run afoul of any of the usual "write once debug everywhere" problems
Java has.  And since the JVM already handles dynamic linking, it's
taken care of on systems that don't directly support it (like DOS.)
You also benefit from whatever JIT compiler might be available for
your system.  Again, though, any work of this sort couldn't be
distributed under the terms of the current POVLegal, unless you
succeeded in getting it into an official version, and the POV-Team has
already weighed in fairly negatively on the subject of plugins, as
well as on the subject of Java.  Quoting the same post[1]
again:

    As I mentioned earlier, we originally planned that our next
    release would be a major rewrite in C++ however we had lots of
    input from users and team members that a compiled Java rewrite
    might be a good alternative.  In the 18 months since that debate,
    Java has not fulfilled its promise to unite the world in the
    peaceful harmony of a single, portable language.  The whole
    industry (not just Microsoft) is doing things to ruin Java. 
    Enough politics... Java is out. 
   
And later in the same post:

    We've had many requests for the ability to make plug-ins or
    DLL type capability.  Although the vast majority of our users run
    Windows, we will not be doing anything to hurt the cross-platform
    portability of the program.  Not all operating systems have DLL
    capability and even if they did, you'd have to re-compile the DLL
    for every platform.

[1] http://www.dejanews.com/getdoc.xp?AN=427272205


Post a reply to this message

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