Argh...
I think I just lost my wish of working with Wz, but I think this project is at the hands of some fine people.
But I'll just stop whining, lol
Great work, and good luck for you guys from the dev team!
don't say that!Olrox wrote:It's a pity that I'm not going to release my structures as a mod anymore (with the release of elio's new structures mod, further efforts seem pointless)!


My, my, the subtlety of texture detail achieved in those new structs is quite impressive ("acid-rain corrosion / pealing of paint" is beauteous - course, I'm interpreting what I see). So much so that the base-mattes look in desperate need of being re-done to match the quality. I seem to recall someone doing hi-res versions of them not that long ago - I believe Black Project was involved with the artist who worked on em too. I'll have to forum search..i-NoD wrote:Don't remember if i mentioned it but the mask can use some gray colors too, so the team colors are not so bright: here is a small variation of the TCMask mod.
thats so coooool O_OZarel wrote:By the way, here's the reference for how Wesnoth does it:
http://www.wesnoth.org/wiki/Team_Color_Shifting
Code: Select all
result[B] = ((CHANNEL_MAX - mask[A]) * texture[B] + teamcolor[B] * mask[A]) / CHANNEL_MAX
result[A] = min(CHANNEL_MAX, texture[A]+mask[A])
Erm, [R], [G], , and [A] refer to Red, Green, Blue, and Alpha.i-NoD wrote:I guess we could use both tcmask generation method and artist could choose whichever is most appropriate for him. The more important for now is to solve the issue with the blending modes.
Zarel, have you seen the link i gave earlier for glBlendFunc modes? Any blending equations should be convertible to those modes, or they wont work for us.
I have some questions for your pseudocode:we have a destination and a source in glBlendFunc: for a simplicity src is a mask, dst is a texture, what is a teamcolor then?Code: Select all
result[B] = ((CHANNEL_MAX - mask[A]) * texture[B] + teamcolor[B] * mask[A]) / CHANNEL_MAX result[A] = min(CHANNEL_MAX, texture[A]+mask[A])
in my code it's now smth like that (if i understand all those functions correctly):
mask[X] = mask[X] * teamcolor[X]
result[X] = min(CHANNEL_MAX, (1 * mask[X]) + (1 * texture[X]) )
where 1 is caused by the GL_ONE modes
EvilGuru wrote:Dot3-bump mapping (aka, normal mapping) can be added without increasing the requirements significantly; http://www.paulsprojects.net/tutorials/ ... ebump.html achieves it with the following extensions:
- ARB_multitexture
- ARB_texture_cube_map
- ARB_texture_env_combine
- ARB_texture_env_dot3
it's so funny sometimes to re-read the old threads.Per wrote:Event-driven animation is on my TODO-list for WZM already.
Bump mapping should not be so hard to add. We need a good test case to work on when implementing it, though. Preferably some existing texture where you can see the difference quite clearly. This could be added as an extension to the existing PIE format, even.