Page 1 of 2 12 LastLast
Results 1 to 10 of 33

Thread: [Award Winner] Building a ridge heightmap in PS

Hybrid View

  1. #1
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Tutorial [Award Winner] Building a ridge heightmap in PS

    Well, I'm going to start with a teaser, because I'm short on time.
    This image was rendered in Bryce, but everything involved in the creation of the heightmap was done in Photoshop. No Bryce erosion, nothing.

    It all started with a somewhat sperm-shaped stroke....
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	Ridge.jpg 
Views:	913 
Size:	765.9 KB 
ID:	2313  

  2. #2
    Software Dev/Rep Redrobes's Avatar
    Join Date
    Dec 2007
    Location
    England
    Posts
    4,807
    Blog Entries
    4

    Post

    Ahh right !, your 'spread effect' makes more sense now. I'll be watching this one with interest. Monks and I have been hard at work on mountains for ages now. We have both taken different paths to them with the intention of merging. It would be fascinating to see your approach. They could do with a bit of erosion applied now but I bet you created that in just a few seconds. Being able to paint these ridges would indeed be a great step to better mountain ranges. My hand is reaching for the rep button already...
    Last edited by Redrobes; 02-08-2008 at 09:24 PM.

  3. #3
    Community Leader NeonKnight's Avatar
    Join Date
    Aug 2007
    Location
    Surrey, Canada, EH!
    Posts
    5,025

    Post

    Actually, with the colors already on them, they look and remind me of the Alberta Badlands and the Montana Badlands.
    Daniel the Neon Knight: Campaign Cartographer User

    Never use a big word when a diminutive one will suffice!

    Any questions on CC3? Post them with CC3 in the Subject Line!
    MY 'FAMOUS' CC3 MAPS: Thunderspire; Pyramid of Shadows; King of the Trollhaunt Warrens; Demon Queen's Enclave

  4. #4
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Post

    @Neon Knight: Actually, the colors are existing materials presets in Bryce. The grey stony background was one I had slightly modified to make up for deficiencies I saw in the original.

    @Redrobes: I wish it was seconds, but it was still not too slow by my standards. Adding erosion would be good, even with the somewhat limited tools I have. I did see some interesting erosion-like features that showed up in the original. That makes me think a little bit of subtle smoothed erosion with bryce would look pretty nice.

    On with the show!

    Here goes.
    I'm going to start with a new document. This time, as an experiment, I'm going to forgo my typical sperm, and try something a little different. Say Hello to our next mountain range. Now lets rasterize that. Then we Select All(Cmd-A on Mac, I think ctrl-A on PC) and then we Copy Merged(shift-cmd-C on Mac, presumably shift-ctrl-C on PC) and Paste(cmd/ctrl-V) into a new layer where we can play with it like a cat with a rodent.

    1) Begin with Gaussian Blur. I'm going to use a 12.4 pixel radius. I just want to get a bit of gradation to get the ball rolling.

    2) Now I'll use Filter>Brush Strokes>Spatter... with a Spray Radius of 12 and a Smoothness of 1. I could use my Spread method, but I still haven't created the Action so it's time consuming, and I'm not sure it has any advantage for Radii below 25.

    Here, I have a couple options
    a>
    a3) Gaussian Blur at 1.3 pixels.
    a4) Spatter at a radius of 12 and a Smoothness of 5. Note: All these settings will vary with the image. What we want here is to ramp up the clumpiness. If this thing was rendered now it would probably look like hammered metal rods.
    a5) Gaussian Blur 1.3 pixels.
    or
    b>
    b3) Spatter at a radius of 12 and a Smoothness of 5.
    b4) Gaussian Blur at 1.3 pixels.
    b5) On inspection, I like the results of the B branch better. It looks a little mungier. I'm going to follow this track.

    6) Select All and Copy(just cmd/ctrl-C) now move over to your Channels palette, create a new channel and paste into that.

    7) Here's where that morphological Dilate tutorial comes in. A recap: Load the new channel as a selection, go to Select>Modify>Contract... I'll contract by 3 pixels, and iterate three times.

    Save you selection as a channel and take a look. For the purposes of this I'm pretty satisfied. I'm going to munge it up using steps b3 and b4 and call it good for my current purposes.

    9) Well, not quite. I'll want to add a little fractal noise. So let's Paste this abused, dilated, brutally munged text onto a new layer at full opacity and normal mode.

    10) Create a new layer on top of that. For simplicity, and to keep up the all-photoshop thing, I use Filter>Render>Clouds_ in black and white. Now, I'll iterate Difference Clouds several times on top of this.

    11) Set the mode on this top layer to Multiply. Play around with the opacity.

    12) Just for giggles, I'll leave the opacity at 100% and bring up Filter>Other>High Pass... on my cloud layer. I really like the look at a Radius of 15.7 pixels on that High Pass. The high pass damps out the big low frequency variations that aren't related to our desired ridges, but are big enough to overwhelm them. This leaves us with the little variations that add interest, but are small enough both in spatial scale and amplitude to fit into our ridges.

    13) I like this look, but it's getting a little dark. So I'll add a Levels adjustment layer.
    I hold down the alt/option button while I drag the white point arrow(the one on the under the left side of the mini histogram this will show me when I'm driving non-white pixels to white. The image will go to black and I will drag until I see some white pixels. At that point, I pull back a bit so the screen is all black. In my case, this will put the white point at 145, 57% grey. Things were a bit dark.

    14) Finally, to make my ridges pop, I add a Curves adjustment layer. I create a curve that's concave to make the tops pointier. I notice on the histogram that my highest level is now 251. Meh, I'll live with it.

    Optional Step) Take this into Bryce or whatever app you have that includes tolerably good erosion tools, and add a bit of erosion.

    This took me a couple of hours including false steps and the process of documentation. If, unlike me, you have the good sense to create Actions, and you're not flopping about like a fish trying to figure out how you did this last time, I'm sure this could be done in less than an hour.

    If you have access to good, specialized heightfield manipulation tools, this might not be worth the effort, but if your tools are limited to photoshop and the terrain editor, this is pretty darn attractive. I think so anyway.
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	hiThere.jpg 
Views:	120 
Size:	16.8 KB 
ID:	2315   Click image for larger version. 

Name:	firstBlur.jpg 
Views:	96 
Size:	14.3 KB 
ID:	2316   Click image for larger version. 

Name:	firstSpatter(afterBlur).jpg 
Views:	122 
Size:	83.0 KB 
ID:	2317   Click image for larger version. 

Name:	metalRods.jpg 
Views:	141 
Size:	34.9 KB 
ID:	2318   Click image for larger version. 

Name:	B-Branch-Result.jpg 
Views:	637 
Size:	21.1 KB 
ID:	2320  


  5. #5
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Post

    Here's more of my images. Dealing with the five image limit.

    Oh! I intend to add a Bryce rendering of this whenever the computer is finished playing wih it.
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	firstContraction.jpg 
Views:	104 
Size:	16.1 KB 
ID:	2321   Click image for larger version. 

Name:	finalMunge.jpg 
Views:	114 
Size:	17.6 KB 
ID:	2322   Click image for larger version. 

Name:	FinalHeightmap.jpg 
Views:	145 
Size:	14.4 KB 
ID:	2323   Click image for larger version. 

Name:	FinalLightEffects.jpg 
Views:	194 
Size:	28.6 KB 
ID:	2324  
    Last edited by su_liam; 02-09-2008 at 03:44 AM.

  6. #6
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Post

    Okay, here's my rendered image. I like it generally, but the tall peaks look a little too zauberland for my taste. I think my curves adjustment might have been a bit much. I'll try fixing that and then maybe applying a little bryce erosion 'magic'.
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	helloRender.jpg 
Views:	416 
Size:	119.3 KB 
ID:	2325  

  7. #7

    Post

    Nice tutorial, thanks. I recently discovered this site and I've been excitedly playing with the tutorials here. I was following this one, trying to create a mountain range for a map I had planned, and ran into a problem.

    I had several ridges close to each other in my height map sketch I started with:

    Click image for larger version. 

Name:	ridge-sketch.jpg 
Views:	401 
Size:	14.9 KB 
ID:	2356

    Applying this method directly yielded an alienistic landscape with very smooth crater-like valleys between the ridges. This was generated using Photoshop's lighting effects rather than Bryce.

    Click image for larger version. 

Name:	ridge-alien.jpg 
Views:	911 
Size:	44.8 KB 
ID:	2357

    I think this is due to the dilate process used with the selection contract tool. Realistic earthlike mountains have valleys that are actually surprisingly sharp (check google maps satellite images).

    The method I discovered after much button pressing was to alter the following steps:

    Quote Originally Posted by su_liam View Post
    7) Here's where that morphological Dilate tutorial comes in. A recap: Load the new channel as a selection, go to Select>Modify>Contract... I'll contract by 3 pixels, and iterate three times.

    Save you selection as a channel and take a look. For the purposes of this I'm pretty satisfied. I'm going to munge it up using steps b3 and b4 and call it good for my current purposes.
    Modify these so:

    1) After you have the contracted selection, save it as a channel.

    2) Load the channel you started the contract from. Invert selection (Ctrl-shift-I) and repeat the contract operation. Save this as a channel as well.

    3) Create a new channel, fill with 50% gray. Load the selection from the channel created in 1) above, and fill with white. Load the selection from the channel created in 2) above, and fill with black.

    4) Continue with the process, using this latest channel as the one you use for further steps.

    With this, I came up with something that had way better valleys. A sample is below. I hacked this up very quickly for this post to keep it clear. To get nice ridges for high mountains, you need to pay more attention to getting a better initial sketch or do some magic with curves and such.

    Click image for larger version. 

Name:	ridge-valleys.jpg 
Views:	209 
Size:	61.2 KB 
ID:	2358

  8. #8
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Default

    That's a problem I've been having with integration between mountains. It's a major reason I haven't been posting much on this lately(a little bit of my trial and ERROR process goes a long way...). I like the valleys in your modified version, but I think the mountains suffer. Although, those are terrific as hills or lower mountains.

    Curves is good for small adjustments, in my opinion, but really significant curves force too much regularity on the landscape. My opinion.

    I've been adding fractal noise with Clouds and Difference Clouds to try to disguise some of the problems, but, as I think Redrobes has noticed, this produces a lot of sinkholes, which just ruins the drainage. This is important if your trying to simulate decent erosion in less than a lifetime. And, at best, you still end up with something that looks vaguely like glacial u-shaped valleys.

    One experiment I'd like to try would be to take the heightfields resulting from both of our methods, scale them in Levels and add them together. That could either(hopefully) integrate the best aspects of both methods or (unfortunately) amplify the worst aspects of each.

    I'll try that when I get a chance. Tell you how it works out...

  9. #9

  10. #10
    Guild Artisan su_liam's Avatar
    Join Date
    Aug 2007
    Location
    Port Alberta, Regina(IRL: Eugene, OR)
    Posts
    717

    Post

    Quote Originally Posted by Gecko View Post
    Nice tutorial, thanks. I recently discovered this site and I've been excitedly playing with the tutorials here. I was following this one, trying to create a mountain range for a map I had planned, and ran into a problem.

    I had several ridges close to each other in my height map sketch I started with:

    Click image for larger version. 

Name:	ridge-sketch.jpg 
Views:	401 
Size:	14.9 KB 
ID:	2356

    Applying this method directly yielded an alienistic landscape with very smooth crater-like valleys between the ridges. This was generated using Photoshop's lighting effects rather than Bryce.

    Click image for larger version. 

Name:	ridge-alien.jpg 
Views:	911 
Size:	44.8 KB 
ID:	2357
    Here's a real life shaded relief by Tom Patterson of shadedrelief.com



    Of course, this is from the Grand Tetons, so it doesn't do much to refute the "alienistic" statement.

    I finally managed to get a "16-bit" version of my heightfield into Bryce. B6 doesn't seem to like 16-bit tiffs or pngs from PS CS. It seemed to do pgms okay, but I couldn't figure out how to convert photoshop output into pgm. The method outlined in shadedrelief required an app called bsmooth. I refuse to pay as much for a Classic app that hasn't seen any changes since 2001 as I paid for Bryce 6, and the trial version is limited to 196x196(?)! Then I found the CartoPGM PS plugin on reliefshading.com. So here's the result...
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	trilayerPGM16.jpg 
Views:	254 
Size:	91.2 KB 
ID:	2451  
    Last edited by su_liam; 02-22-2008 at 04:23 PM. Reason: Missed a letter...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •