Falagard
20-03-2006 22:57:39
I'm looking at Splatting2Edit and Splatting7Edit trying to figure out what's going on in the splatting code.
Splatting2Edit looks like this:
It splats 4 textures and does a render pass per texture.
Each pass also has its own alpha texture.
Splatting7Edit splats 4 textures in a single pass but requires support for 7 texture units. Three alpha textures are required.
The rest of the splatting techniques I'm not sure of, but they don't have edit modes yet.
My questions are as follows:
I was under the impression that splatting2edit was being done in a single pass, but I was wrong, at least as far as I can tell. I also thought that the editing was modifying channels in a single alpha texture, but in fact it's modifying 4 different alpha textures, right?
Do we have a technique that can be used with only 4 texture units in a single pass for 3 texture splats, where 3 textures are used + a 4th texture that has the alpha textures in two of its channels, and a pixel shader that can render this?
If so, to have an "edit" mode that worked I'd need to be able to modify individual channels of a single alpha texture.
Assuming I allow the user to paint the splatting textures, do we have a way of creating a single merged texture that can be used on older cards? I know that MapSplitter has some code for creating a base texture, but this is slightly different because I'm taking a bunch of textures that are already split and wanting to create a merged base texture. Also, I would hope that this merged texture code be used for distant pages instead of using a pixel shader on those distant pages, so it has to look the same as the pixel shaded version of the terrain.
I think I mentioned this before, but I believe the best way to do this would be to render to texture the pixel shaded version and then just save that out as a merged texture.
This kinda brings up another question - let's say I've already split up my terrain into pages, then I do things like modify the terrain using morphing. Now I want to generate a normal map for the terrain, or do something else that the map splitter does on a single large map. Can I do this using the map splitter on already split textures? I assume the answer is yes - I would just pass it each page individually and set it up not to split, just to generate a normal map, or whatever.
Thoughts on all of this?
To recap - here are my questions:
1. Is there a splatting technique that can work with 4 texture units in a single pass.
2. Am I right about my investigations regarding the splatting techniques currently using multiple alpha textures?
3. A merged texture that can be used both on low end machines and on distant pages.
4. Map splitter used on already split pages.
Clay
Splatting2Edit looks like this:
It splats 4 textures and does a render pass per texture.
Each pass also has its own alpha texture.
Splatting7Edit splats 4 textures in a single pass but requires support for 7 texture units. Three alpha textures are required.
The rest of the splatting techniques I'm not sure of, but they don't have edit modes yet.
My questions are as follows:
I was under the impression that splatting2edit was being done in a single pass, but I was wrong, at least as far as I can tell. I also thought that the editing was modifying channels in a single alpha texture, but in fact it's modifying 4 different alpha textures, right?
Do we have a technique that can be used with only 4 texture units in a single pass for 3 texture splats, where 3 textures are used + a 4th texture that has the alpha textures in two of its channels, and a pixel shader that can render this?
If so, to have an "edit" mode that worked I'd need to be able to modify individual channels of a single alpha texture.
Assuming I allow the user to paint the splatting textures, do we have a way of creating a single merged texture that can be used on older cards? I know that MapSplitter has some code for creating a base texture, but this is slightly different because I'm taking a bunch of textures that are already split and wanting to create a merged base texture. Also, I would hope that this merged texture code be used for distant pages instead of using a pixel shader on those distant pages, so it has to look the same as the pixel shaded version of the terrain.
I think I mentioned this before, but I believe the best way to do this would be to render to texture the pixel shaded version and then just save that out as a merged texture.
This kinda brings up another question - let's say I've already split up my terrain into pages, then I do things like modify the terrain using morphing. Now I want to generate a normal map for the terrain, or do something else that the map splitter does on a single large map. Can I do this using the map splitter on already split textures? I assume the answer is yes - I would just pass it each page individually and set it up not to split, just to generate a normal map, or whatever.
Thoughts on all of this?
To recap - here are my questions:
1. Is there a splatting technique that can work with 4 texture units in a single pass.
2. Am I right about my investigations regarding the splatting techniques currently using multiple alpha textures?
3. A merged texture that can be used both on low end machines and on distant pages.
4. Map splitter used on already split pages.
Clay