Post news Report RSS Dreamscape introduces Steep Parallax Mapping

The polygon has had a good and long history. When it was first introduced, computers were slow and as such, a single colour was applied to the polygon. As the polygon grew up, computers became faster. The polygon was now receiving all sorts of colours from a revolutionary technique called texture mapping.

Posted by on

The polygon has had a good and long history. When it was first introduced, computers were slow and as such, a single colour was applied to the polygon. As the polygon grew up, computers became faster. The polygon was now receiving all sorts of colours from a revolutionary technique called texture mapping. Texture mapping was applied to the polygon for many years until a very smart person came up with a neat idea to calculate lighting colour on every pixel of a texture based on a user-supplied normal map. This was the start of bump mapping ( or normal mapping ).

Now, we would like to introduce you to Steep Parallax Mapping, a new parallax mapping technique that simulate depths on plane surfaces. This technique is more precise than the regular parallax mapping approach. It is also capable of self-shadowing. ( Dreamscape has not implemented self-shadowing, yet. We have implemented it into Rendermonkey, but transitioning it to HL2 has been tougher than expected. )

As the polls suggest, parallax mapping is the most anticipated feature among our fans. Before Steep Parallax Mapping, we had regular parallax mapping. Since interest in this feature is high, we have decided to go one step further and implement Steep Parallax Mapping. Steep parallax mapping has been applied to many areas such as lush grass, deep looking tiles, and more. The following is a screenshot of our revolutionary HL2 feature:

User Posted Image User Posted Image

Amazing depth on flat surfaces is now achievable:
Tile 1
Tile 2

DreamscapeMod

Post comment Comments
Canuck Author
Canuck - - 110 comments

Wraiyth, I did it in SM3.0. Steep Parallax didn't even work properly in SM3.0. I had to modify it because I was getting an error about too many iterations in a loop.

Reply Good karma+1 vote
nzMM
nzMM - - 6 comments

yea nice as !

Reply Good karma Bad karma+1 vote
Canuck Author
Canuck - - 110 comments

This is a little old.

We've introduced Relief Mapping with Self-shadowing to the Source engine now.

Reply Good karma+1 vote
Termin-X-man
Termin-X-man - - 148 comments

Doesn't Paralax mapping actually use a lot less polygons than say, normal mapping?

Reply Good karma Bad karma+1 vote
Makkon
Makkon - - 2,028 comments

I love it when mods actually do some innovative stuff, such as new tecnollogy. It's fantastic stuff.

Reply Good karma Bad karma+1 vote
zdfgsfgsdegfs
zdfgsfgsdegfs - - 136 comments

Awesome work!

Reply Good karma Bad karma+1 vote
Canuck Author
Canuck - - 110 comments

Termin-X-man, all of these mapping techniques use the same number of polygons. Relief mapping is currently the best of all known techniques. After that you have Steep Parallax, then Parallax, then Normal Mapping, and then regular Texture Mapping.

Reply Good karma+1 vote
methy
methy - - 1,221 comments

No, bump mapping is known as normal mapping, although it can also be done with a height map. It affects the normals to give a more advanced lighting model. Paralax mapping and steep paralax mapping actually offset the polygons. They are slower techniques than normal mapping but can produce much nicer effects.

Reply Good karma Bad karma+1 vote
Wraiyth
Wraiyth - - 483 comments

Parallax is actually a rather cheap effect (performance wise). Parallax mapping basically offsets the texture co-ordinates. It pretty much approximates the parallax that can be observed on an uneven surface. Normal Parallax ignores self-occlusion, self-shadowing and silouhettes, but Steep Parallax has all of these.
The tecnique subdivides the surface into x numbers of small tris. Each tri's vertice is displaced perpendicularly to the surface normal according to the position on the heightmap. The height maps function is to correlate the surfaces regular texture map and store it as one height per texel (range 0-1)

To put it simply :P

Personally, I don't like relief mapping because it is a rather expensive tecnique with artifacts. Most of the artifacts can be cleaned up by perspective bias enabled, but that still doesn't fix the problems that suck with the tecnique.

Reply Good karma Bad karma+1 vote
Turpajuuri
Turpajuuri - - 16 comments

Impressive

Reply Good karma Bad karma+1 vote
Canuck Author
Canuck - - 110 comments

Heh, so did you manage to implement Steep Parallax Mapping, Wraiyth?

Reply Good karma+1 vote
Wraiyth
Wraiyth - - 483 comments

Nope, and I don't know wether I'm going to try it. Personally I don't like Parallax anyway, I only coded it because everyone else on the team seemed to want it. I don't think its refined enough to be a good looking, useful tecnique, considering how imprecise it actually is.
Relief mapping is a good tecnique... in concept, because it can parallax non-planar surfaces. But thats still not refined enough to make it worthy for implementation.
I'm also curious - did you pull this off for SM2.0? The only samples (except for one) that I've seen of self-shadowed Relief were for SM3.0, and the shaders were ******* massive without the paths for SM2.0

Reply Good karma Bad karma+1 vote
TryAgain
TryAgain - - 24 comments

Nice work !

Reply Good karma Bad karma+1 vote
Raider451
Raider451 - - 165 comments

wait, if you were to make a bump with this method, would it block things behind it?

Reply Good karma Bad karma+1 vote
Raider451
Raider451 - - 165 comments

And, the big question is:
Is this method actually more efficient than using polygons?

Reply Good karma Bad karma+1 vote
Kashoki
Kashoki - - 1 comments

This is just like diplacement mapping...useless ingame since it takes too many polys to make those textures actually pop.

Reply Good karma Bad karma+1 vote
Canuck Author
Canuck - - 110 comments

Kashoki, you really know your stuff.

Reply Good karma+1 vote
drunkill
drunkill - - 570 comments

Wow, looks great, love the grass.

Any specs? does it run on all hardware? or only later cards?

Reply Good karma Bad karma+1 vote
Wraiyth
Wraiyth - - 483 comments

Nope, its Shader Model 3 only. Meaning, off the top of my head GeForce 6600 or better.

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: