• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Image Handle

Status
Not open for further replies.
Level 19
Joined
Mar 18, 2012
Messages
1,716
It's nowhere documentated so I'll share it here:

Concerning native call SetImageConstantHeight(image, boolean, z)
What we already know:
  • Only works at all if the boolean is set to true.
  • Is the only function which can modify an image z offset.

I was working on TextSplat2 and imported a normal meele map.
Unlike in the previous empty demo map not a single text was shown.
It took hours to locate the problem.

Glitch with cliffs:

1. If you create a new image and set render to true, you will see the image ingame
independant from the terrain z value.

2. If you use call SetImageConstantHeight and the terrain level is equal or lower the passed in z you will see the image.

3. If you use call SetImageConstantHeight and the terrain level is bigger than the z you passed in, you will not see the image.

What you always have to use is call SetImageConstantHeight(img, true, z + GetLocationZ(loc))

Grrrrrr 2 hours of despair. I nearly graveyarded the system I'm working on since a week...

Edit: I can make a full documentation about images, when I have the time.
 
Last edited:
Level 19
Joined
Mar 18, 2012
Messages
1,716
Yes. Actually it makes perfect sense, but also can be irritating, which function uses terrain level and which not

For example:
CreateDestructable - places object on terrain level
CreateDestructableZ - uses absolute world z.

CreateImage - paints image on terrain level.
SetImageConstantHeight - uses absolute world z.
 
Level 26
Joined
Aug 18, 2009
Messages
4,099
I do not find it weird that without stating height, it clips to the terrain. CreateDestructableZ even has the Z in the name and iirc, CreateDestructable even means that it keeps being glued to the terrain z, whereas CreateDestructableZ creates one with static z.

More confusing is if it's absolute z or offset to the terrain. Then again, I currently do not know an example that would fit the latter. SetUnitFlyHeight is explicitely named differently.
 
Status
Not open for further replies.
Top