|
![](/i/fill.gif) |
Chris Cason wrote:
> what is known as the 'document/view' model
Also, in the early days commonly known as model-view-controller concept
(whereas the controller is not directly mentioned in modern paradigms, it is
assumed to be part of the view). The model really is the "model" aka scene
in POV-Ray, the view is the frontend, actually two views, the rendered image
and the scene source. Ideally the text editor would also allow direct
control over the image view (a WYSIWYG paradigm), but of course in POV-Ray
that isn't possible (Moray gets close to that though afaics) as the parser
is in between :-)
As Chris mentions, the complexities in the code POV-Ray are now mostly
hammered out, but the real topic is to get it in a nice, still easy to use
GUI. Hiding the complexities of distributed computers is not trivial, in
particular to do it right, and if possible the first time is really difficult.
Another benefit Chris did not mention explicitly is that finally we can have
the GUIs evolve at a different rate than the rendering core. Previously
extending the GUI always required rather complicated render core changes if
the GUI needed new data. Now we can just say that if a message passes data
from the backend and a particular piece of information is not there, well,
we don't display it, while before it meant a different internal call
structure with different parameters and a whole mess.
In fact, this design process did start with POV-Ray 3.5 already, and it has
been making smaller steps with every release of POV-Ray since then. Now
with POV-ray 3.7 all these internal changes for the message-driven control
that have been going on for five years now finally show results and
*improvements* for users. Especially for POV-Ray 3.6 a lot was done already
in cleaning up the early 3.5 implementation of this. So anybody who had a
look at the 3.6 or 3.5 source code and thought "Why do they do all this
complicated message passing abstraction just to turn it into text again ten
calls down the call chain ?" has their answer - it was of tremendous help to
get clean SMP support working to some extend within less than one month!
Nevertheless, as you can see, doing proper and clean SMP support is a
massive task and nothing a simple patch could ever have established (the
existing patches for distributed rendering just run multiple copies of
POV-Ray and duplicate *all* scene data). In the end, we will probably have
"invested" two full-time developer years into getting the POV-Ray 3.7 core
to do SMP, and that doesn't even include any new features or the GUI frontends!
Thorsten
Post a reply to this message
|
![](/i/fill.gif) |