[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [K3d-development] Re: [K-3D dev] K-3D future
From: |
P. Christeas |
Subject: |
Re: [K3d-development] Re: [K-3D dev] K-3D future |
Date: |
Thu, 26 Sep 2002 19:05:22 +0300 |
User-agent: |
KMail/1.4.3 |
Peter Balon wrote:
> bondpaper wrote:
> > Romain Behar wrote:
> >> ...
> >> Another matter is splitting completely the 3D engine
> >> from the GUI (P. Christeas), to have a commandline
> >> application creating or modifying 3D scenes using
> >> scripts. This might be useful to make automatically
> >> generated animations, but I wonder how many people
> >> would need such product or whether this already
> >> exists. Some changes went toward separating tool
> >> algorithms from the tools themselves, since the same
> >> modifiers works for the tool and its animated
> >> counterpart. A stand-alone engine might be a good
> >> thing.
> >
> > It is my feeling that the more you separate the engine is from the
> > actual interface, the more options you have in terms of being able to
> > interact with it.
>
> I can only agree with that. The more code you can put to a separate, gui
> independend, business layer the more flexible you can build your gui on top
> of that. With that in mind you could code easily more than one client in
> your favourite language/toolkit like Qt or gnome, or have no gui at all,
> e.g. only a perl package to manipulate the k3d objects.
> Moreover cutting the code in even smaller functional chunks would improve
> maintainability. It would be easier to track down bugs and eliminate them.
> The code of this modules could be improved over time without affecting the
> rest of the entire application.
>
That's really the point. With a separated eng, you may write more than one
GUI. I will answer your next question: why would you want to do that?
My experiance shows that there are different kinds of users. You may have
novices, intermediate users and experts; even more you may have people that
have been trained to other (commercial) products.
The novice will need a full-featured gui, with many menus and buttons etc.
The intermediate and experts will need a bare UI, where no widgets obstruct
the 3d-space view and most tools are selected by the kbd.
The "other program's" users will only try our prog if the UI fully resembles
to that other program.