# Mapmaking Discussion & Philosophy (WIP/Critique) > Software Discussion >  GIMP and layers/pattern fill

## Chgowiz

Hello. 

Having moved from Windows to Linux and finding that Dundjinni has been 'blocked' from running natively in Linux via the Java JAR executer, I turned to GIMP to start creating maps and the like for my RPG maps.

I will first off admit that I'm about as artistic as a demolition car (although after a night at short track racing, I might be able to wax poetically about the thrill of racing wheel to wheel, but I digress...) so if I'm not understanding something, I apologize. I'm one of those who will jump in and then figure out what I need to learn. 

I'm currently trying to work through the Zombie Fantasy Cartography tutorials - which are awesome and kudoes to the author - he directed me here to ask GIMP related questions.

My first question is very basic - I'm trying to replicate the Photoshop technique he uses for creating a Layer that has a pattern fill that scales.

I have a map 'paper' that I've created at 600x800x72dpi. I've created a 1"x1" 'forest' pattern at 600dpi. I've discovered that my version of GIMP (2.2) doesn't have a layer of type 'pattern fill' (in fact, it seems that there aren't really any 'type' of layers in GIMP like what is shown in the tutorial for Photoshop) and that although I can 'bucket fill' the layer with my pattern, I have to create a new pattern that is much smaller (about 128px by 128px) and then I get pixellation. The effect works, but isn't quite what I had hoped for.

Is that the way it has to be done in GIMP or am I missing something about how to scale up/down large patterns like is shown in the tutorial?

Thanks in advance.
Neurowiz

----------


## Torq

I use Gimp a lot for mapping although I wouldn't call myself an expert, and I must say that if there is a way to emulate that Photoshop functionality I've never seen it. RobA may know if I'm right or not, and I await his his response to this question with joyful ...................anticipation.

Oh, and welcome to the guild by the way.

Torq

----------


## RobA

> My first question is very basic - I'm trying to replicate the Photoshop technique he uses for creating a Layer that has a pattern fill that scales.
> 
> I have a map 'paper' that I've created at 600x800x72dpi. I've created a 1"x1" 'forest' pattern at 600dpi. I've discovered that my version of GIMP (2.2) doesn't have a layer of type 'pattern fill' (in fact, it seems that there aren't really any 'type' of layers in GIMP like what is shown in the tutorial for Photoshop) and that although I can 'bucket fill' the layer with my pattern, I have to create a new pattern that is much smaller (about 128px by 128px) and then I get pixellation. The effect works, but isn't quite what I had hoped for.
> 
> Is that the way it has to be done in GIMP or am I missing something about how to scale up/down large patterns like is shown in the tutorial?
> 
> Thanks in advance.
> Neurowiz


Hi Neurowiz.

First off, upgrade to 2.4.x as there are a lot of big improvements. :Smile: 

Gimp doesn't have specialized layer types/layer effects like photoshop, and no way to dynamically scale the fill  :Frown: 

One of the 2.4 features is that the current clipboard contents are available as both a brush and a pattern.  So open your 600x600 pattern file (don't bother to save it as a pattern) and select all, copy (ctrl-a, ctrl-c in windows, I don't know the linux shortcut).  Now it shows up in the pattern palette as the first entry and you can drag it onto an image (or use the paintbucket tool).

If you want a smaller scaled pattern, just rescale the 600x600 image and select all, copy again, then paintbucket the layer.  (Then undo the rescale on the 600x600 image).  Not too convenient, I'll admit, but workable.  (I'm thinking a plugin might be necessary here.... "Scale pattern to clipboard"...)

Then just use a layer mask to restrict where the fill shows up (like in photoshop).  You can change the fill by re-flood-filling (just make sure you select the layer icon, not the mask icon!)

-Rob A>

----------


## Chgowiz

> Hi Neurowiz.
> 
> First off, upgrade to 2.4.x as there are a lot of big improvements.
> 
> Gimp doesn't have specialized layer types/layer effects like photoshop, and no way to dynamically scale the fill 
> 
> One of the 2.4 features is that the current clipboard contents are available as both a brush and a pattern.  So open your 600x600 pattern file (don't bother to save it as a pattern) and select all, copy (ctrl-a, ctrl-c in windows, I don't know the linux shortcut).  Now it shows up in the pattern palette as the first entry and you can drag it onto an image (or use the paintbucket tool).
> 
> If you want a smaller scaled pattern, just rescale the 600x600 image and select all, copy again, then paintbucket the layer.  (Then undo the rescale on the 600x600 image).  Not too convenient, I'll admit, but workable.  (I'm thinking a plugin might be necessary here.... "Scale pattern to clipboard"...)
> ...


Rob - Thank you for the hints and tips, and for confirming my suspicions about layer pattern fill (lackthereof in Gimp). Unfortunately, upgrading to 2.4 on my ancient Ubuntu installation might be a bit of a chore, so I might have to stick with my 2.2 for awhile.

I'm OK with manually scaling my patterns, but I don't like the pixellation that occurs when I 'paint' the pattern onto the image. Does that happen because the 'target' image is 72dpi, or because I'm taking something that was 600x600 pixels and going down to 128x128 pixels?

Thanks again!
Neurowiz

----------


## RobA

You shouldn't see pixelation on a downscale... What was the resampling option you used?  (Cubic is the best available in 2.2 IIR)

-Rob A>

----------


## Chgowiz

> You shouldn't see pixelation on a downscale... What was the resampling option you used?  (Cubic is the best available in 2.2 IIR)
> 
> -Rob A>


Uh, this is where I fumble my GIMP Knowledge roll that was apparently DC10 and I just did a 1.  :Smile: 

Oh, you mean quality on the scaling dialog! Let me try that...

Well, that didn't help so much. When I use either pattern as a fill for my forest layer , after I "burn" it on top of my 'paper' layer, it still looks pixelly. It doesn't look as smooth as what I had hoped.

Now please forgive a beginner, but if I'm going from a 600px by 600 px (600dpi) picture to a 128px by 128px, I'm assuming I'm going to get some pixellation? Is this just something I have to live with?

Thanks for being patient...
Neurowiz

----------


## Midgardsormr

If you reduce the size of an image, you should not get any significant pixellation or reduction in quality.  If you go the other direction (128 x 128 -> 600 X 600), you _will_ lose quality.  Generally speaking.

I don't use Gimp, so I can't really say what might be happening, but if you can show us your elements and how they're interacting, it may help us to help you.

----------


## RobA

I don't know why either... can you post an example?

-Rob A>

----------


## Chgowiz

> I don't know why either... can you post an example?
> 
> -Rob A>


OK, I hope this works...

This is what my scaled pattern looks like when I've put it on a layer and burned it in with the 'antique paper' layer underneath.


This the same layer, but multiplied instead of burned.


Edited: OK, this is odd. The pattern file is at 128x128 by 72dpi? That would definitely cause some pixellation.

Thanks.
Neurowiz

----------


## Midgardsormr

If you're not printing the image, ignore dpi.  It has zero effect on what you see on the screen.  Can you also show us what it looks like at 600 X 600, so we have something to compare it to?

----------


## Midgardsormr

Actually, I should step back a little from that statement.  It might make a difference, but I don't know how the Gimp handles dpi.  If the software behaves properly, it shouldn't make a difference.  If it doesn't, then that might, indeed, be the problem.  

I'll leave it to Rob to say yea or nay on that one.

----------


## Chgowiz

> If you're not printing the image, ignore dpi.  It has zero effect on what you see on the screen.  Can you also show us what it looks like at 600 X 600, so we have something to compare it to?



Sure, here is the pattern at 600, and then scaled down.





You can't see the pixellation in the above, so when I zoom in on the scaled down image, this is what I see:

----------


## Midgardsormr

Heh.  Well, don't zoom in on it.  That'll cause pixellation every time!  Now that I know what I'm looking at, in terms of the workspace, I know exactly where the problem is, and that's the magnification.  Don't try and judge the quality of your image at anything other than 100%; that's what your audience is going to be seeing it at, after all.

It looks terrific at actual size--better than the 600 px version, in fact--so there's really no need to worry about what it looks like zoomed in.  If you want to make images that scale upward nicely without ever seeing that pixellation, take a look at Inkscape, a vector drawing program.

----------


## Chgowiz

> Heh.  Well, don't zoom in on it.  That'll cause pixellation every time!  Now that I know what I'm looking at, in terms of the workspace, I know exactly where the problem is, and that's the magnification.  Don't try and judge the quality of your image at anything other than 100%; that's what your audience is going to be seeing it at, after all.
> 
> It looks terrific at actual size--better than the 600 px version, in fact--so there's really no need to worry about what it looks like zoomed in.  If you want to make images that scale upward nicely without ever seeing that pixellation, take a look at Inkscape, a vector drawing program.


I'm sorry, I should have posted the full unzoomed version as well. Here is the full map, with no zoom, with the forest layer burned in. See the pixelation? Or is it supposed to look jagged like that with a burn? Should I blur it?



It looks a little better with multiply (see below), and I guess I could make it less opaque to get a similar effect to burn, but the pixelation was just bugging me.

----------


## RobA

It is your choice of burn as an overlay mode.

Here are 4 useful ones for this kind of work:


Burn is done by inverting the back later, dividing by the front layer then invert back again.  It effectively boosts the contrast and saturation:

255-((255-B)*255)/(F+1) (formula from Beginning GIMP, from Novice to Professional)

So because your pattern fill is highly contrasted you get colour blow-outs of the back layer (that look like pixelation).

Here is that paper bg with a gradient using burn (top is normal blend, bottom is burn):


I personally use overlay, and duplicate the overlay layer if the effect isn't dark enough.

-Rob A>

----------


## Chgowiz

Quick reply:

Thanks Rob - I ended up using a double burn layer with playing around with the opacity. That solved a lot of my problems, as did making my pattern a smaller one. I guess it's a matter of trying a bunch of things and seeing how they work. One thing's for sure, I'm learning a lot more about Gimp than I knew before and that's all good.

Thanks again - when I'm done with the Zombie tutorials, I'll post the results.  :Smile:

----------

