WEB FX 3D
Robert Richards tries out the latest from DanSoft
Many computer users build their own web site, maybe to give information about something, distribute some piece of software they've written, or just for the sake of it. Nowadays, no web site is complete without some pretty pictures to make things more interesting. Well, we can easily knock up some quick drawfiles (even put some fancy effects such as shading in with DrawWorks) and then convert to GIF, PNG or whatever format we wish with one of the shareware utilities. Such images can be very effective, but what about when you want something different? Maybe you want a sphere to use as bullet points, or maybe you want some shape or text to stand out of the page. You need to create a 3 dimensional image.
There are really only two choices when it comes to creating 3D images easily on RISC OS. TopModel, and WebFX3D. Topmodel is probably a bit overkill and expensive for someone who just want to knock up a few eye catching images for a web site, newsletter or poster. This is the market at which WebFX3D is aimed.
WebFX3D is developed by one man company Dansoft Developments, run by Daniel Jonson of Christchurch New Zealand. Dan says that he has always "had a calling to develop software which I consider to be great". So is this great software?
WEB FX 3D main screen
BasicsThe use of WFX can be split into 3 main phases - entry of text or drawfile; setting lighting, camera angles and other options and finally rendering. WFX is a very large program and there are many options at each stage. Let's go through the process and see how everything works.
The first thing that strikes you about WFX is the loading panel - it's smart and different. Now click on the iconbar icon and as expected a window appears. A window that is unlike any window you've ever seen before. There's a box to enter the text or drop a drawfile into, another box to choose your font, and some controls. Looking at the screenshot, we can see that the controls don't have labels. This isn't a problem, as the black area in the lower left corner displays the name and current setting of each control as you move the mouse over it. You'll have looked at the screenshot and thought "I love it!" or "I hate it!". More about user interfaces and window designs later.
WEB FX 3D loading screen
The controls are used to set Join segments and curve segments (basically how smooth object edges are), text ratio (make the letters fatter or thinner) and bevel type height and width. There is also a button that controls "angular optimisation" - we don't need to worry about this for now.
Overall, despite the unconventional design and lack of permanent labels, all this is quite easy to do. Although the user interface grates at first, it's obviously been thought about long and hard - the pop-up text works particularly well.
I've entered the word "Test" and made the letters slightly fatter than normal. I've also selected a rounded bevel and turned curve and line segments up to maximum. Let's click on "Generate" and go onto the next stage.
Clicking on Generate switches the machine to single tasking whilst WFX triangulates all the points needed to define our object in space. The program shows you this process as it happens. It takes a few seconds for short words, longer if more letters are involved. At the end of this process, you are told if there are any errors, and the initial 3D scene appears. The object is shown in wireframe, those with faster machines will want to switch on surface modelling and shading to get a better idea of what the finished scene will look like.
You can set the colour of the object here, using a colour picker that is again different to RISC OS convention. It works rather like an artist would mix paints (to my mind at least). You can also set options such as shininess, rotate the object on X or Y axes, move the camera and zoom in and out. You can experiment and see on the screen a good approximation of what your creation is going to turn out like. There isn't an undo feature, or even a 'restore to default'. This is actually quite a serious omission as it can be quite difficult to achieve what you want once you've rotated on both axes and got it wrong.
WEB FX 3D colour picker
You can also set a fog effect here, to give the impression of an atmosphere. This is particularly when the object is rotated to run diagonally 'into' the screen.
Clicking on the multicolored sphere to the right hand side takes you to the lighting windows. This consists of four views, one each from the front, side and top of the object, and finally a smaller version of the main screen, showing the effect of your lighting. This part works quite intuitively. To add a light, drag one from the icon at the bottom of the screen. To get rid of a light you simply drag it to the bin at the bottom. The currently selected light is shown lit up and using the icons at the top of the screen you can set its colour and intensity. It's quite easy to position lights by dragging them around the three views and seeing the preview updated after every drag. You can zoom in, and also scale the view to fit every light and the object into the closest possible view with one click. Finally, the background colour can also be changed from this window.
WEB FX 3D Lighting window
Again, none of the window designs are what one expects from a RISC OS application. There is a hint of stonework, it feels almost like you're in a studio. All the buttons are designed to complement this style rather than comply to a standard.
If you're feeling lazy, you can apply lighting, atmosphere backgrounds and surface properties from a gallery. Likewise, if you are particularly pleased with some combination, you can save it as your own gallery entry for future use.
You can use some or all of the gallery attributes by clicking on the relevant radio buttons. In this way you can combine different elements from different galleries.
Now it's time to click on the "Render" button on the right hand side of the screen. But first let me explain what I've done with the word "Test". I've coloured the surface yellow, set the shininess quite high and rotated it slightly away from us on the X axis. I've then put a red light above and to the right, with attenuation so we get a variation in intensity across the surface. There is also a plain white light with no attenuation below and very slightly to the left of the word. The red circle on the lighting view shows where the attenuation starts - another red circle shows where it ends (the light has no effect), but I've zoomed in so it's out of view.
When you click on Render, you are presented with a dialogue box to set the image size, choose a background colour, switch on antialiasing and it's quality and choose the output format. Tabs allow you to set animation options and filters. Filters allow you to add a drop shadow, with user defined blurring and colour. you can also specify an image map to be used. So you can make the object look like it's made of wood, metal or some other texture by using an appropriate image. Some image maps that can be used are supplied with WebFX3D. It's a pity that you can't preview these effects, so it can be a bit of a shot in the dark at first.
WEB FX 3D Rendering Options
Images can be output as:
Supplied with the application are four plugins. Each of these loads a scene directly into the main WebFX3D window ready for manipulating and rendering. Briefly, there is:
There are also separate plugins which manipulate an image that has already been created. They are:
You can't write about this application without considering the user interface. It's so radically different to anything else on RISC OS. Dan says he wanted to do something that "impresses others as much as Kais Power Tools [on the PC] impressed me". Dan also looked at a number of the PC packages when designing the interface for WebFX. If I'm honest, I am impressed by the look and feel of WebFX3D. It isn't to everyones taste by any means, and Dan says he's learnt from both WebFX3D and SiteWriter to focus more on what users want and expect. As it stands, the interface is well thought out, intuitive and easy to use. If you can get over the fact that it doesn't implement some things in a manner compatible with the Style Guide you'll almost certainly like it.
I like clear instructions and I'm also a strong believer in printed manuals. I really don't like disc based manuals, mainly because they usually so badly implemented. How are you supposed to take yourself through a tutorial whilst the whole screen is covered by an Impression document? The documentation for WebFX3D is disc based, and once again Dansoft have ignored convention and produced something slightly different. The documentation works rather like an HTML document, in that it has active links. However, it covers only a narrow portion of the screen, so you don't have to constantly shift windows around whilst reading and trying things out at the same time.
WEB FX 3D Online manual
All the instructions are well illustrated and concisely written. I had no problems learning how to use the package. I actually like the way this has been done and frankly it puts some other publishers attempts at documentation (both printed and 'online') to shame.
Dan never expected to get rich from WebFX3D - "I thought I could make some pocket money out of it", it's more of a hobby. When a hobby stops being rewarding, or when work demands more time it's difficult to commit to the future. Dan is entirely honest when it comes to the question of future development "unlikely to be significantly improved" are what he says.
What about selling it to another developer? Apparently Dansoft was approached some time ago but for various reasons Dan decided he was unable to accept the offer. "Nowadays, yes they could take over [the] software I think".
However, none of this means that Dan has lost enthusiasm for WebFX. He talks of making an effort to improve the software before too long - it's just a question of finding the time to do so.
"To be fair, I wouldn't suggest anyone purchase this software if they expect a subsequent version to be released." He makes the point that software should only ever be purchased on what it can do, not what it may do in the future.
I like WebFX3D. It does exactly what it says on the tin in a fun and easy to use manner. It isn't perfect, and there are some features that could be improved. There really ought to be a mechanism to undo all actions carried out. The current method of accessing the plugins makes the package feel slightly unfinished. This is a shame as the presentation is otherwise very slick.
Other minor improvements I'd like to see would be more control over the animation options - particularly the orientation and position of rotation axes. As mentioned it would be nice to see the effect of drop shadows and image maps before committing to rendering.
Another omission is that the centre of rotation in the main window is fixed - being able to shift it would make it much easier to achieve certain orientations.
There are some other very minor improvements that could be made to dialogue boxes and suchlike but nothing to get excited about. As for the output, WebFX3D does it's job very well. Using the tools provided in the main application and the plugins as required, it is possible to create almost anything that you wish. Of course it's never going to be able to render a 3D model of a car, but then you really should be using something else for that. For text and simple shapes you'd be hard pushed to find a better application than WebFX3D.
Putting things into perspective many of the faults are relatively minor and I wonder if Dan couldn't find the time to make some small changes. It's clear that WebFX3D is the product of a very skilled programmer who can design an application as well as he can hack code. The product exudes quality and style and I suppose this is a reflection of Dans own enthusiasm for his software.
For £25 WebFX3D represents excellent value for money and I'd have no hesitation recommending it to anyone who wants some snazzy 3D graphics. Have a look at the examples I've included and have a look at the examples at www.dansoft.co.nz for an idea of what this package can do.
I've really only scratched the surface here. I haven't described the operation of the plugins at all, but they work in much the same way as the rest of the program. If you want more details about anything I have (or haven't!) said then feel free to e-mail me. Alternatively, ask Dansoft if you have questions about specific features or capabilities.
For some examples of what WEB FX 3D can do click here to look at the WEB FX 3D gallery.