Home Technical Talk

horizon mapping

Jarrod1937
polycounter lvl 15
Offline / Send Message
Jarrod1937 polycounter lvl 15
horizon mapping just got implemented into our engine and i am wondering if any of you have ever used horizon mapping on characters? what were the results? was it worth it?
thanks, picture would be great too.

Replies

  • Joao Sapiro
    Offline / Send Message
    Joao Sapiro sublime tool
    isnt that like huge memory consumer ? i dont think it is suitable to characters if you get close to it there is hover geometry dysplaying and not to mention the huge consume of memory.

    I have never used thou , but im just based on fabio polycarpo :P ( i think it was him who implemented horizon mapping ) i might be making confusion thou.
  • Jarrod1937
    Offline / Send Message
    Jarrod1937 polycounter lvl 15
    ok, i have to wait untill me programmer implements the new build into our game and i have never used horizon mapping either so i thought i would ask.
    it requires two other seperate files aside from the diffuse and normal map so i could see how it could be a large memory consumer.
    well, perhaps i'll use it sparingly for environment props.
  • Joao Sapiro
    Offline / Send Message
    Joao Sapiro sublime tool
    yeah , its best suited for static textures , still for characters i cant imagine horrible issues with it eheh,,,good luck !
  • malcolm
    Offline / Send Message
    malcolm polycount sponsor
    Hello, what the f is a horizon map? Since I am too lazy to google it.
  • adam
    Offline / Send Message
    adam polycounter lvl 19
    It's basically a self-shadowing bump map. From what I remember reading they eat up entirely too much texture memory to be practical for games and are costly computed. I'd be surprised if any game came out with it successfully implemented - now or in the next year or so.

    I Googled it to find a technical explaination. Here's a quote:
    [ QUOTE ]
    Bump mapping affects lighting by perturbing the surface normal, but the perturbed normal will not affect shadowing in any way. Hence, one "bump" will not cast a shadow onto the next. However, techniques do exist that allow bump maps to self-shadow. One of them is "horizon mapping". A horizon map is a texture that encodes the elevation of the visible horizon in all directions from a particular sample point. If another point is determined to be below this horizon, you know the point is invisible to the current sample point. Likewise, if a light source is below the horizon, you know that it does not illuminate the current sample point.

    bumpmap_07.jpg

    You can perform this visibility check on the tangent space light vector, which gives you self-shadowing bump maps. The main drawback, however, is that the horizon maps tend to take up too much texture memory to be really practical. They're also fairly expensive to compute. The figure above shows horizon mapping in action -- only a single quad is rendered, and the green line indicates the direction of the incoming light.

    [/ QUOTE ]

    And the link:
    http://www.delphi3d.net/articles/viewarticle.php?article=bumpmapping.htm
  • StrangeFate
    Offline / Send Message
    StrangeFate polycounter lvl 18
    heh, we had that in our engine 3 years ago and dumped it because it wasn't worth it.
  • Jarrod1937
    Offline / Send Message
    Jarrod1937 polycounter lvl 15
    well apparently the implementation of horizon mapping in my engine only increases the memory usage by 3 times, where as in most implementations it can go up to 8-16.
    so i'll still use it sparingly but i don't need to worry too much about memory issues.
  • EarthQuake
    3 times the memory for small normal detail that would most likely have pretty ambient shadows? Seems silly. Methinks for most situations just adding in a bit more detail to your models and letting self-shadoing handle it would be the better solution.
  • killingpeople
    Offline / Send Message
    killingpeople polycounter lvl 18
    awesome! never heard about horizon mapping before. i would love to see it in action.
  • Jarrod1937
    Offline / Send Message
    Jarrod1937 polycounter lvl 15
    [ QUOTE ]
    awesome! never heard about horizon mapping before. i would love to see it in action.

    [/ QUOTE ]
    here is a demo of it.
  • killingpeople
    Offline / Send Message
    killingpeople polycounter lvl 18
    thanks Jarrod1937, i'll check it out! smile.gif
  • _Shimmer
    Offline / Send Message
    _Shimmer polycounter lvl 18
    interesting...
  • Jarrod1937
    Offline / Send Message
    Jarrod1937 polycounter lvl 15
    here is another demo, its the one pictured above but you can play around with the lighting in realtime.
  • malcolm
    Offline / Send Message
    malcolm polycount sponsor
    Hmmm, that is the most useless tech ever, just another way to try and make a flat surface look 3d. I'm sticking with modeling as it looks better and costs less.
  • Jarrod1937
    Offline / Send Message
    Jarrod1937 polycounter lvl 15
    [ QUOTE ]
    Hmmm, that is the most useless tech ever, just another way to try and make a flat surface look 3d. I'm sticking with modeling as it looks better and costs less.

    [/ QUOTE ]
    it isn't really useles, moreso it just depends on your current needs. it is more cheap than using actual polys but it more memory intensive, so if you have memory to spare but don't want to add in the amount of polys it would require to get the same effect then use it.
    but as i said before, very rarely would this comeup, so i'll be using it sparingly just to have some fun it it but not kill my performnce of my level.
Sign In or Register to comment.