Quote from: duff on March 11, 2007, 05:09:33 AM
The only real gripe I have with the current UI is the fact that a slider may go between 0 and 1 and you really want to enter 1000. Also some values using unconstrained input boxes where certain parameters create issues.
In most cases the slider limits (0-1 or similar) are intentional and are meant to provide "reasonable defaults" to guide the user. In regards to this as well as the latter issue TG2 is designed to be extremely flexible and naturally some possible settings are going to cause issues. If something is actually going to cause a crash with say negative values, then we'll certainly be limiting this in the final version, but generally speaking "outlandish" settings are going to be possible because they will at least in some cases produce interesting, useful results. The setting ranges on the sliders are, as I mentioned, intended to establish the reasonable range of values, beyond which experimentation is possible but not necessarily recommended. Do note of course that not all sliders have "reasonable defaults" setup yet.
As for the rest of this thread, I honestly don't think comparison to computer game UI's is very useful. The purpose and interaction methods are largely disparate. There are of course some similiarities - you could say the 3D preview could act a bit like a First Person Shooter for example - but the needs of that interaction system, let alone the rest of the UI, are very different and only the baseline "spirit" of game UI design may be applicable; i.e. simplicity and ease of use. But that is theoretically the design goal for any application.
While I agree that some programs, particularly certain categories of application like CAD programs, may hve historically required the user to adapt to their methods rather than "change with the times" or work toward easier interaction methods, not only is this changing now, but in many cases there was solid reasoning behind this approach as well (e.g. a large base of previously trained workers for whom the new interface would have been an impediment and a significant cost for retraining).
When you have a new application that is creating its user interface largely from scratch you have a unique opportunity to do things differently, and hopefully better than before. At the same time the application itself and its user base are in flux so it can be difficult to hit this moving target. Inevitably the next revision of any such "new" application will improve on the previous attempt, and this is usually the case for the first few versions of a new application. MojoWorld is a pretty good example of this. MojoWorld 1.0 had a fairly unique UI approach and it worked rather well in some cases, poorly in others. In 2.0 and 3.0 they greatly improved on that original system, increasing usability, speed, stability, and flexibility. TG2 and beyond will evolve in the same way.
I think one key point missed in all the discussion here, that I touched on just now, is that "good" user interface design is not necessarily universal, and this becomes more so with increasing complexity of the application or device. The more complex something is, the harder it is to design an interface that will "work" for *everyone*. The best you can do is hope to reach the majority of people with an accessible UI, but compromises will always have to be made, and ironically what you do to cater to one group of users will often alienate another.
This is one of the biggest challenges of UI design - not knowing how to make it "better", because better is a somewhat fluid concept - but rather knowing which compromises to make to satisfy the majority of people, and most of all being willing to deal with the response when inevitably not everyone will like it: knowing that you did the best you could given the needs of the application and the diverse user base.
This is particularly true now of TG2 with the legacy of TG 0.9, an application with great notoriety for being easy to use - and consequently having a large hobbyist userbase - yet not necessarily hugely powerful. TG2 is trying to expand that power significantly, but there is a clear cost in ease of use. We could have removed much of the power and flexibillity and just increased render quality and capabilities over 0.9, making for a sort of "Terragen 0.9+", but that would only have kept the market we had. We want to expand the market, reaching high-end users in the effects industry and other professional graphic arts industries for example. There were some good (and many not so good) reasons these people often did not take TG 0.9 seriously for use in their professional work, and one of those was the lack of flexibility. Putting the TG2 rendering engine into a TG 0.9 UI would not have given those people much to be interested in.
Ultimately we are working to serve both markets and more, and the UI of TG2 will evolve, as I said. And while I think it's good to take lessons from other industries and applications (particularly other applications), TG2 is also fairly unique in many ways and the solutions to our issues will likely be somewhat unique as well. Looking at the actual problems, perhaps finding parallels in other applications or systems, and then devising *specific* solutions will be the most productive way of improving the program. Largely academic philosophical debates about what *could* be learned from entirely different design paradigms are interesting but will not usually yield anything that can be applied practically.
- Oshyan