BMP greyscale for distribution in Surface Layer?

Started by cajomi, December 23, 2006, 05:58:03 AM

Previous topic - Next topic

cajomi

I am not able to set the distribution of a surface layer with a bmp mask. Am I stupid, or is it yet not implemented?
Developer of GeoControl

manleystanley

Same here. I was big on using masks in the origenal TG, and most every other program I use. I had been trying to use a mask on the obj pop but nothing, same with regular shaders. The only thing I can figure is I was putting them in the wrong place or wrong node.
"So you think you can tell, heaven from hell, blue skys from pain.
can you tell a green field, from a cold steel rail? a smile from a veil?
do you think you can tell?" P.F.

Ricowan

It works, but the default values of an Image map shader don't work well as an distribution mask.  Here's how I've got it to work (with lots of help from Oyshan!)


  • In the settings of your population node, check Use density shader, click the elipses and add a new Image map shader with the image you're using for the distribution map.
  • Click the elipses again and this time choose "Go to Image map shader"
  • Rename this shader for clarity, then make some changes to the default settings:

    • Change the projection type to "Plan Y"
    • Check Position Center and set the Position to match the position of your population.
    • Change the size values to match the dimensions of your population (default population is 1000 meters to a side, so make these two values 1000 for a default population).
Make sure your camera can see the whole population, set camera, and render a quickie.  :)

Rich Allen


cajomi

You are speaking of population. I meant for colours, as it was in Terragen in 0.9, with the SO plugin. For example to use a flowmap to give the flows another look/colour.
Developer of GeoControl

Oshyan

Just add an Image Map shader and use it as the Breakup Shader for a Surface Layer, or as the Blend Shader on most other types of nodes, for example a Power Fractal.

- Oshyan

cajomi

tried this, without any success!!
The second layer, I added a surface layer, always totally covers the terrain.
Developer of GeoControl

manleystanley

I've run into this too. It appears that TG2 dosen't follow the child parent rules of TG. 
"So you think you can tell, heaven from hell, blue skys from pain.
can you tell a green field, from a cold steel rail? a smile from a veil?
do you think you can tell?" P.F.

Oshyan

It does follow the child/parent rules as far as I've seen. Can you provide an example scene where it's not working?

For the Image Map shader to work as it did in TG 0.9 with SOPack you would put the projection to Plan Y and then set the size to something like 100 or 1000 for x and z. Then you'll see your mask or image overlay on the terrain and you can move it around, tile it, resize it, etc. to taste. It starts out only 1x1 meter and non-tiled so that's why you probably haven't seen it.

- Oshyan

MooseDog

#8
i'm afraid i'll have to confirm a lack of expected functionality.  either that or user error :D.

note that in the image map shader, the projection and size work properly if used only as an image map shader on its own (so it fits properly;D) and works as expected.

also, in the effects tab of the image map shader, it doesn't matter what combination of alpha as opacity or alpha as color i check or don't check, or checking create transparency or not, there's no masking going on.  also tried with a .tga 24bit file as well:  no luck.

???

(on a very positive side note, i figured out how to integrate an older .ter into a new planet.  see the network below.)

network screen grab and render result:

cajomi

here the same: resizing, y plane etc. does not help, no masking at all. It is always interpreted as full coverage.
This is esspacially bad, because GeoControl 2 will come with some really new selection algortihms.
Developer of GeoControl

moodflow

Quote from: cajomi on December 24, 2006, 07:04:56 AM
tried this, without any success!!
The second layer, I added a surface layer, always totally covers the terrain.

One thing you can try is to uncheck the "apply color" on that surface layer, so the layers below still show through (if that is what you are referring to).
http://www.moodflow.com
mood-inspiring images and music

Oshyan

That seems like an odd setup. You're feeding the Image Map into a Surface Layer which then goes into your Base Colours node. What result are you expecting? I would think you'd put the Surface Layer below Base Colours as normal and then use the Image Map as the Breakup Shader as you already have it. That ought to work.

The Fractal Breakup settings like in your Surface Layer will also matter though. The behavior of the Surface Layers is definitely an area that needs some further explanation, and I'll be doing that in the docs shortly. But basically if your Coverage is at 1, the Fractal Breakup won't generally have much effect. Put your Coverage to 0.5 and Fractal Breakup at 1 and you should see something more like what you're expecting. I will agree this is not particularly intuitive. :D

- Oshyan

cajomi

How about trying it yourself? Show us a working setting with render, where the mask parts are shaded full red, and the rest is grey. It should have sharp edges and clearly follow the terrain. So generate a mask in WM or GC, export the terrain, and then use the mask for shading.
Would be better than just thinking, how it may work.

By the way: The feature scale has also influence.
Developer of GeoControl

JimB

Here's my network, the settings, and a lo-res render, with the mask small at the bottom. Very unintuitive, and had to invert the Breakup to get the mask used (the GREEN is being overlayed in the final render, the BASE layer is WHITE, so black is opaque in the mask - white gave no result).

Some bits and bobs
The Galileo Fallacy, 'Argumentum ad Galileus':
"They laughed at Galileo. They're laughing at me. Therefore I am the next Galileo."

Nope. Galileo was right for the simpler reason that he was right.

JimB

Here's the .tgd, but the .ter and .bmp are too large to include.

Some bits and bobs
The Galileo Fallacy, 'Argumentum ad Galileus':
"They laughed at Galileo. They're laughing at me. Therefore I am the next Galileo."

Nope. Galileo was right for the simpler reason that he was right.