Hi all,
Some screenies first off:
Ok, so here's what I got done since my last update.
* Finished the viewport handling.
* Started script handling - (finished function handling, variable handling, script loading, global handling, function passing (both internal and standard maths), and formula evaluation is done except for conditions. - see later...
* Finished vertice selection (now you can add and remove verts with a selection box).
* Started script dialog support - see later...
* Added a status console and status tracking.
* Added vertice hiding.
* Added vertice linking - see later...
* Added normals calculating (Thanks Kevil).
* Added bumpmap, detail map, blend map, and shader support - see later...
Script handling is quite well on it's way - most of the tools will be controlled by scripts, like instead of coding a cube creation routine, I'll be making a script subroutine to handle all that stuff. You'll be able to make your own scripts and tools, for instance it'd be perfectly reasonable to make your own normal calculating or UV mapping tools - the script syntax is not exactly basic, but the maths format is fairly close to DB.
A neat dialogue system has been added, for example the little message box there is really 5 seperate functions, one for each control - and they'll be called through simple string scripts. Typically you'll right click on a tool or menu option and it'll open it's options dialog - of course you'll be able to make your own dialogs for your own script plugins. I've added labels, text boxes, any-width command buttons, RGB selector controls, as well as the standard dialog control. I'm adding file selector controls, toggle buttons, etc etc.
I've added vertice linking to help avoid normals calculation errors among other things. Basically, when you optimise a mesh, you can't optimise a vert that has a unique UV coordinate, so linking verts is a bit like welding verts, except the verts are only linked together. A good example is a sphere, usually a sphere will have an obvious seam where the UV data won't fold over - linked verts can still calculate their normals etc properly.
I added shader support (doh) - not sure how useful it'll be to most folk, but if your making a mesh for a shader, you'll be able to run the shader while modelling - it is great fun modelling in chrome. I was pleasantly surprised at how nicely you can run shaders while editing verts.
My next hurdle is condition parsing for scripts, once I get that done and add more functionality to the whole script system I can script out the tools and dialogs - that'll all take a while though because it is a huge chunk of the coding work.
Van-B
The nature of Monkey was irrepressible!.