Is it possible to do this?
I want to mix the texture between lets say a beach model and a grass model… where the grass meets the sand a distinct sharp edge occurs. Are there any way to mix these textures (blend them nicely together), at the point where the grass meets the sand? Without using extensions! And without applying special faces in the model itself nore using those nifty lame special made textures of “sand blends over to grass in one texture”. Because it’s plain impossible to get the other textures to fit (tile) exactly into those special made textures. And don’t tell me it’s ONLY to render the scene one more time and expanding the grass mesh over the sand and blend it at the borders… because I’v allready tried that… it sucked bull.
Is it possible to do this?
Dear Uzu Manga from Africa (am i correct?).
You MUST do it with extensions. You hate extensions? Thats Your problem. You want to create fancy effects without moving Your smallest finger? Thats Your problem.
Normally if people have problem that they have to force, they simply solve it. You know?
No I’m not from Africa… uzu_manga is honestly not my name. Uzu comes from me misspelling the liquor Ouzo. Manga comes from the Japanese word manga.
Now I’m not totally against extensions, it’s just that I don’t like things that has no standard… sure the ARB extensions are standard… but hey! When both nvidia and ati develop there own NVIDIA ATI extensions it could get kind of frustrating. “Wow this thing could be solves with this splendid nvidia extension…” but then does the ATI cards has the same or similar extension… noooo… So then you have to solve the problem based on graphic card, instead of solving it in the API itself or using math. Software is the thing it all comes down to in the end. You should use extensions if the problem is unsolvable. Or if the use of extensions increases performance enormous. For the software developer the “quest” of solving a problem is the whole thing. And as I said, if it takes to much time to solve the problem, then it’s alright to use extensions.
And don’t tell me it’s impossible to solve without extensions… I’ve seen a similar thing to what I want in ut2003. On the first level in the demo. The grass texture for the ground is based on two separate textures. Nicely blended together. And they didn’t use any extensions, cause I did try it on one of my old computers with a onboard lame graphic card. And the blending between the ground textures were still there.
Well, first of all, UT2003 is a D3D game. Well, there is a OpenGL renderer too, but it’s heavily dependent on extensions, so it wont on low-end hardware.
Anyway, it sounds like multitexturing is what you need + GL_ARB_texture_env_combine. These extensions are both part of the core API nowadays.
Originally posted by uzu_manga:
…(blend them nicely together)…
mmmm… how about blending the textures with the blend function. Use standard transparency.
I dont think we can help you much if you simply say “it doesn’t look good, what should I do?”. That’s an issue with creating textures.
using tex_env_combine with interpolate will do what u want (part of opengl1.3 so technically an extension but then again everything after opengl1.0 is an extension included texture objects/vertex arrays etc so this shouldnt be a limit )