The Cartographers’ Guild is a forum created by and for map makers and aficionados, a place where every aspect of cartography can be admired, examined, learned, and discussed. Our membership consists of professional designers and artists, hobbyists, and amateurs—all are welcome to join and participate in the quest for cartographic skill and knowledge.

Although we specialize in maps of fictional realms, as commonly used in both novels and games (both tabletop and role-playing), many Guild members are also proficient in historical and contemporary maps. Likewise, we specialize in computer-assisted cartography (such as with GIMP, Adobe apps, Campaign Cartographer, Dundjinni, etc.), although many members here also have interest in maps drafted by hand.

If this is your first visit, be sure to check out the FAQ. You will have to register before you can post or view full size images in the forums.

TreeThing

TreeThing is a simple program that is used to automatically generate forests which can then be exported in to your favourite paint program to use in your mapping.

It is written in Java and requires you to have JVM (Java Virtual Machine) installed to run it.

Here's an image to show a typical workflow...

And here is a PDF tutorial of how to use it...

TreeThing is free to use but I would ask that you credit me if you use it and if possible link to this thread so that others might find it.

Enjoy.

Edit: Latest version - 0.9

1) UI update. Tried to make it a little more user-friendly by making most of the common functions more apparent. Most of the important features should be tooltipped - detailed tooltips are on by default but once you know the functions you can turn them to basic tooltips or off altogether in the options menu.
2) Added an option to randomly add some light shades of grey to the mask layer. This can be useful in post imagine by using the masks as a multiply layer to add variation. On by default.
3) Added a Link Brushes option in the options menu (or CTRL+L) to hold the current ratio between Brush 1 and Brush 2. Can save valuable seconds when resizing.
4) Added a Viewport Padding variable in the bottom menu (in Advanced) to adjust the free space surrounding a forest. This has no effect when a template is loaded.
5) Added the option to view your loaded template. Located in the View menu.
6) Various bug fixes and improvements.

Previous version - 0.81

1) It is now possible to save and load settings through an option in the File menu. Also, the current settings can be saved whenever the program is exited and these will be automatically loaded up the next time the program is run.
2) Added an option to utilise the greyscale of a template for brush positioning. This option is availble through the "Brush Weight" section of the parameter menu when a template is loaded. Obviously this needs a template tailored to greyscale.
3) Lost all memory of what was in previous versions so cannot say exactly what else is new.

Previous version - 0.75 - fixed

1) Changed the way the program handles shadows.
2) Added an option to adjust the positioning of shadows due to the way shadows are now handled.
3) UI updates.
4) Uploaded a fixed version that include the missing directory. :$

I need to totally rewrite this to handle the change to how shadows are handled. I've edited some of the lines but there may be references still in there.

Tutorial One - Creating Brushes

1.) Open a new document in your favourite raster paint program.Doesn't really matter what size - the program will shrink your brushes to a usable size - but obviously be aware that the larger you make your brushes the greater the filesize and also the more detail will be lost when they are shrunk right down.

2.) On a new layer, draw the outline of a tree in a dark colour. You don't have to use the pencil tool but don't make the edges too soft at this point. Make this the largest brush you intend to have.The program will work better if all brushes are roughly the same width and height, but a small amount of variation won't kill it - the program works from the largest brush so any that are smaller mmay have more space around it when placed.
If you are pressed for time or just a rebel and don't intend to make a mask to go with the tree, make sure you colour in the foliage of the tree so the program knows where to clip. It doesn't have to be opaque but needs to be above a cerain opacity (which is quite low... maybe 10% or something) so the program doesn't just ignore it.
Any other tree brush that you make for the same set, position the base of the trunk in the same position.

3.) With the largest tree being displayed, crop down your image so that any excess space is removed from the brushes.My image size for the Vaniyan shaded brushes after cropping is 100 x 119 px.

4.) Copy the tree outline to a new layer and colour in the foliage to make your mask. Use a sharpen filter to remove some of any softness around the edge.I colour my masks white but it isn't essential - the colour is unimportant. The sharper edge on the mask makes for more precise clipping when one tree is overlaid over another. The mask layer of a forest is also useful if you want to layer a colour beneath the forest on your map or put a stroke around the edges for a bold statement.

5.) If you took my "don't make the edges too soft" instruction when drawing the tree outline too literally, then feel free to soften it a little now with a small blur.

6.) On a new layer, shade the same side of the tree as your shadow will fall.

7.) On another new layer, shade the other side of the tree.

8.) Open a new document and draw a shadow for your tree. Crop it so that there is no unneeded space around the shadow. You don't need a shadow brush if you don't want but if you do you can draw as many different ones as you like.

9.) Save all your layers individually to .png files:

Shadow brush filenames need to begin with "shadow". E.g. "Shadow1.png" (you can ignore capitalisation on all the filename instructions)

Tree brush filenames need to begin with "tree". E.g. "Tree1.png"

Mask brushes need to begin with "mask". E.g. "Mask.png" Make sure you name any mask files correctly though if your forest has more than one tree. An incorrectly named mask could assign it to the wrong tree and create odd clipping in the forest.

Shade brushes are the most awkward to name:

First shade brush - same side as your shadow) If your forest only has only one tree brush (like the TreeThing defult brush set) or your shade brush can be used for all trees you can simply make sure your shade brush file begins with "shade" E.g. "Shade1.png"

If your forest has multiple trees of varying shapes then each shade needs to be assigned to the right tree brush. Do this by including the name of the tree in the filename and following it with an underscore character "_" E.g. "Shade1Tree1_.png" (The underscore is a bit of a speed method to save me having to put more filename parsing in. You can safely miss this off if you have less than 10 tree brushes. Any more and placement errors will occur without it.)

Second brush - opposite side to shadow) The second shade brush needs to be named in the same way as the first but have either "_r", "rev", "reverse", "reversed" at the end of the filename. Note the underscore if you simply use the letter "r" (in case someone uses some odd file naming system and the program mistakes the end of a word and thinks it is reversed) E.g. "shade1_r.png" or "shade1_tree1_rev.png" or even "shade10Tree10_thisnamestillcountsalthoughitisoddre verse.png"

And that's it. You can add as many shade brushes as you like to a single tree. Same with shadows. You don't have to shade both sides of the tree if you don't want (although that will stop you shifting the light source effectively) You don't need to actually have anything other than a single tree brush to use the program. No shading needed. No shadow. No mask. But the forests generated will be much more effective with them.

Example Image to follow...

Last edited by Ramah; 09-11-2010 at 05:12 AM.
Reason: Changed the way shadows are handled.

Good addition Ramah!
I use quite a lot this program and i'm happy to see you adding more personal stuff. I had a look on what you improved and it's great. I particularly like the random variation in the size of the trees, controlled with some settings though. It brings definitely something good.

So far, i've found that the standard brush fits the best and has the better final render. Coniferous trees miss something and the lack of shadow effects (not available at all in fact) for the other trees don't give them the capacity to be on the same level of achievement.
I don't know how hard it is to make new brushes but the thing I thought about, when I was doing ma map, was to try to make more brushes, especially new coniferous trees, palms (for jungle) and even swamps. Then the range of trees available would be even better.
But at this stage, it is just some ideas

Glad you like it, Dain. I agree with you that some of the brushes are lacking but it is made with the hope that people will create their own brushes for it. It's not hard to do. Although having shadows could be made easier, which is something I want to address in a later version of it. The Vaniya Redone brushes also have shadows btw, although the brushes themselves appear very crisp and pixellated for some reason. I need to redo them again it would seem.

If you'd like to make some bruses to use in it then I could include them in future zips.

Looks good - this is Photoshop only, yes? Or do we have one for Gimp as well?

“When it’s over and you look in the mirror, did you do the best that you were capable of? If so, the score does not matter. But if you find that you did your best you were capable of, you will find it to your liking.” -John Wooden