• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Quick Question (Terrain Flickering?)

Status
Not open for further replies.
Level 2
Joined
Jan 27, 2013
Messages
15
I'm using the wooden floor model, from... uhhh I forgot who... but it flickers when I move my unit. Is there a way to stop this? Or is the wc3 engine screwed up that way?
 
Level 5
Joined
Nov 30, 2012
Messages
200
Yes, it is screwed up that way :p. You can try moving floors up and down by using CTRL page-up and CTRL page-down. Also, making the wooden floors not touch at all is the best way to counter this. If the floors are not on top of each other, they can't flicker.
 
Level 2
Joined
Jan 27, 2013
Messages
15
Yes, it is screwed up that way :p. You can try moving floors up and down by using CTRL page-up and CTRL page-down. Also, making the wooden floors not touch at all is the best way to counter this. If the floors are not on top of each other, they can't flicker.

Ok Thanks.
 

Dr Super Good

Spell Reviewer
Level 63
Joined
Jan 18, 2005
Messages
27,197
... but it flickers when I move my unit.
It is called "Z fighting" and occurs because the order of distance is not clear for the geometry. The flickering is caused by floating point error in the Z buffer resulting in artifacts where some pixels think the one piece of geometry is infront of the other while other near pixels think the opposite (in reality neither geometry is infront or behind mathematicly). If floating points had unlimited precision then one piece of geometry would always appear on top of the other and no Z fighting would occur (order dependant on when they are processed).

It is important to note that Z fighting is due to the inherit error of floating points used by the Z buffer. Due to the logarithmic nature of floating points this means it is possible to have 2 pieces of geometry that do have clear ordering (one physicly infront of other) to suffer from Z fighting if they are far away enough from the view point and the distance between them small enough to fit inside the floating point error.

Changing the view point will usually result in annoying flickering effects when Z fighting occurs. It is advisable to avoid Z fighting if possible by giving all geometry a clear order. Avoid intersecting geometry unless the angle is steep since you can get Z fighting around the intersaction.

Older GPUs and games suffered more from Z fighting due to lower precision Z buffers.
 
Status
Not open for further replies.
Top