With the welcome post out the way...
by, 02-08-2012 at 07:24 AM (2559 Views)
I thought I'd set out my stall as far as TreeThing is concerned.
So... what's the plan?
Well, first, a little history. As many old-timers here might know, TreeThing started out as the "Automatic Forest Generator" and was programmed by Fluesopp. It was a very simple program that took a png image and covered the non-transparent areas with trees. He very kindly made it open source and I used this as a springboard to start developing the idea in greater detail and also reverse-engineering his code to learn how to program in Java. I had quite strong ideas about how I would like it to work and rather than pester Fluesopp to keep adding features I thought I'd have a crack at it myself.
Since then I've worked on it off-and-on as mapping committments and interest allows. It's now almost at the stage where I would consider it to be good enough for what I want from it personally but by no means complete.
The overall aim for the program, and this may be a pipe dream, is to expand it into MapThing and be able to use it to take out all the grunt work of making a hand-drawn style map. I want it to be that I can tap a few buttons, set up a few parameters and have the program spit out all the necessary images that I can then import into Photoshop and use to create a good looking map in a relatively short amount of time. To this end I have ideas for (and these are all very imaginitively titled) BorderThing, CoastThing, HillThing and TextThing. Together all these things will combine to make the MapThing framework.
In a little more detail...
BorderThing - just a basic module to simplify adding strokes and graticules etc. around the map edge. This is standalone.
CoastThing - a little more nebulous as ideas go. This would probably be the hardest to realise and also, possibly, save the least amount of time so it is furthest down my list. Anyway, I imagine some kind of shapes to represent tectonic plates and dragging them around, over one another and using the edges to suggest coastlines and areas where the mountain ranges will be. So this module would provide two images, one of which would be the coastline to be imported into PS and the second would be a rough template to be used by...
HillThing - A module that would work very similar to TreeThing in that it will take a png template and use it to place hills and mountains on the specified areas. Hopefully CoastThing will provide this template when used but it would obviously be usable as a standalone app also such as TreeThing. I already have some groundwork laid in place for this module but it holds many problems for me that differ from TreeThing. Placement is a lot more awkward for one thing - you cannot have mountains laid out in a line - and as there will be a lot less mountains than trees and they are bigger then there needs to be more variation in the brushes. Rather than having to manually create 100's of brushes I'm working on an idea to combine smaller brushes to make larger ones. It looks good on paper but the proof will be in the testing.
Using HillThing will create the images need for importing into Photoshop - outlines, shading, shadows - and will also create a detailed obstruction template that can be imported into TreeThing. This will be used to occlude trees that peek out from behind mountains and hills.
TextThing - This is a module to aid the labelling of maps. Actually, as a standalone, this will probably actually slow down labelling as compared to dedicated graphics programs it cannot begin to achieve the same results. What it can do though is add defined jitters to each character in a label to give it a more hand-written feel. Like the other modules it is standalone but it can also be used in conjunction with TreeThing as it generates an obstruction template on use which can be used to affect the placement of trees in a forest. TextThing is already working, albeit a cut down version that needs the jitters refining and ease of use needs addressing.
I do have plans to expand this though. I want to include place markers so that I can click on a point of the map, it will place a marker and position the text in a relevant place. Also, there is the possibility of including a very basic placename creation app so that one click is really all it needs.
You might notice that there is no mention of rivers there. Well... that would a bridge to cross at some stage but I'll be honest - the thought of trying to tackle that problem makes me shudder. If I ignore it it might just go away.
So, together with TreeThing all those modules would/will make up MapThing. I imagine/daydream that with all those modules up and working and with some actions created and recorded in Photoshop/Gimp then it would be possible to create a very nice looking map within an hour or so.
That's the plan.