Gamestudio Links
Zorro Links
Newest Posts
AlpacaZorroPlugin v1.3.0 Released
by kzhao. 05/22/24 13:41
Free Live Data for Zorro with Paper Trading?
by AbrahamR. 05/18/24 13:28
Change chart colours
by 7th_zorro. 05/11/24 09:25
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
0 registered members (), 1,397 guests, and 7 spiders.
Key: Admin, Global Mod, Mod
Newest Members
AemStones, LucasJoshua, Baklazhan, Hanky27, firatv
19055 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 3 of 5 1 2 3 4 5
Re: Searching HLSL Terrain Multitexturing... [Re: wdlmaster] #322958
05/10/10 17:42
05/10/10 17:42
Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
Espér Offline OP
Expert
Espér  Offline OP
Expert

Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
dmap2 wird nicht verwendet..

wenn ich dmap1 schwarz mache.. hab ich statt fels überall schwarze stellen...
dmap2 hat keine sinn.. es wird einfach nix angezeigt...


Selling my Acknex Engine Editions (A7 Com & A8 Pro):
>> click here if you are interested <<
Re: Searching HLSL Terrain Multitexturing... [Re: Espér] #322961
05/10/10 17:49
05/10/10 17:49
Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
Espér Offline OP
Expert
Espér  Offline OP
Expert

Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
ok.. habs.. irgendwie....

allerdings brauch ich noch 2 weitere texturen...

wie funzt das???


Selling my Acknex Engine Editions (A7 Com & A8 Pro):
>> click here if you are interested <<
Re: Searching HLSL Terrain Multitexturing... [Re: Espér] #322963
05/10/10 17:56
05/10/10 17:56
Joined: Apr 2010
Posts: 172
W
wdlmaster Offline
Member
wdlmaster  Offline
Member
W

Joined: Apr 2010
Posts: 172
entweder eine 2. Blendmap (skin2 im Model/Terrain) oder die Variante, die ich anfangs erwähnt hab (mit den Einschränkungen, dass man die "Sekundärtexturen" nicht direkt überblenden kann, ohne erst über die Primärtexturen zu gehen.

Allerdings - wenn die zusätzlichen Texturen ähnlich sind, dürfte das kein großes problem sein.

Re: Searching HLSL Terrain Multitexturing... [Re: wdlmaster] #322965
05/10/10 18:06
05/10/10 18:06
Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
Espér Offline OP
Expert
Espér  Offline OP
Expert

Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
nich unbedingt ähnlich..
ich brauch halt sehr viele versch. Grundtexturen...

Gibt´s nen wegd as ich die Texturen der Ebene als Skin mache ( ganz normales model skinnen ).. und mittels shader dann berge, hänge..etc.. texturiere??? ( Der shader müsste dann halt den boden frei lassen)..


Selling my Acknex Engine Editions (A7 Com & A8 Pro):
>> click here if you are interested <<
Re: Searching HLSL Terrain Multitexturing... [Re: Espér] #322968
05/10/10 18:16
05/10/10 18:16
Joined: Apr 2010
Posts: 172
W
wdlmaster Offline
Member
wdlmaster  Offline
Member
W

Joined: Apr 2010
Posts: 172
ja. Mehrere Möglichkeiten:

1) du musst den Alphakanal der Blendmap "opfern" um damit festzulegen, an welchen Stellen der Shader eingreifen soll
ODER
2) du teilst das Terrain in 2 Teile auf (aber dann ist der Übergang nicht mehr weich)
ODER
3) der Shader wird abhängig von der Oberflächennormalen ausgeblendet, so dass überall, wo es ebenerdig is, kein Shader gerendert wird (allerdings ist das nicht sicher genug, denn auch auf der Ebene können kleine Hügel auftreten, auf denen dann wieder der Shader dargestellt werden würde)

Punkt 1 und 3 haben den Nachteil, dass das Terrain dann 2 mal komplett gerendert werden muss.

Re: Searching HLSL Terrain Multitexturing... [Re: wdlmaster] #322971
05/10/10 18:24
05/10/10 18:24
Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
Espér Offline OP
Expert
Espér  Offline OP
Expert

Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
arg viel anders als in punkt 1 wird´s ned gehn..

ich rbauch (beispielsweise ) für eine graslandschaft..
3-4 Grasarten.. einen weg oder straße... erdlöcher...etc

und das alls auf der erde...
so benötige ich eigentlich nur 3 skins für den shader..
der mir halt felsen..etc.. skinnt...

Fraglich ist.. wie langsam wird er mit variante 1...?


Selling my Acknex Engine Editions (A7 Com & A8 Pro):
>> click here if you are interested <<
Re: Searching HLSL Terrain Multitexturing... [Re: Espér] #322973
05/10/10 18:30
05/10/10 18:30
Joined: Oct 2009
Posts: 149
Germany
M
muffel Offline
Member
muffel  Offline
Member
M

Joined: Oct 2009
Posts: 149
Germany
kann man nicht versuchen auf einen Farbkanal 2 Texturen, die sich nie überblenden, zu packen
würde dann irgendwie sowas bedeuten:
bei 255 die zweite Textur voll da
bei 128 keine der beiden Texturen
bei 0 die erste TExtur voll da


weiß nicht ob das funktionieren könnte(kenn mich nicht mit shadern aus)

muffel

Re: Searching HLSL Terrain Multitexturing... [Re: Espér] #322974
05/10/10 18:33
05/10/10 18:33
Joined: Apr 2010
Posts: 172
W
wdlmaster Offline
Member
wdlmaster  Offline
Member
W

Joined: Apr 2010
Posts: 172
Wenn du viele Texturvariationen brauchst (3-4 Grasarten, wie du sagst), dann wäre ja fast die Methode, die ich am Anfang irgendwo erwähnt hab, das Mittel der Wahl. Damit kannst du pro kanal 4 Texturen verwenden. Das wären dann 17 Texturen. Aber diese müssen nach variation Gruppiert werden, denn man kann (wie schon mehrfach erwähnt) nicht von z.B. "rot 4" direkt auf "grün 4" überblenden. Dazwischen befindet sich IMMER ein schmaler bereich, in dem alle dazwischenliegenden Texturen zu sehen sind (oder besser gesagt: ein Mix aus allen dazwischenliegenden Texturen)... Aber ich hab mit meinen Tests festgestellt, dass diese Methode die beste ist, solange die Texturen in ähnlichen Gruppen zusammengefasst werden.

Der Vorteil is, dass das alles in einen einzigen Renderdurchgang passt.

@muffel: exakt das, was ich Eingangs erwähnt hab. Rein theoretisch kann man pro farbkanal 255 Texturen verwenden. Das wären dann 1024 Texturen. Allerdings unterstützt das weder eine Grafikkarte noch irgendein Shader-Model in einem Renderdurchgang smile !

Last edited by wdlmaster; 05/10/10 18:37.
Re: Searching HLSL Terrain Multitexturing... [Re: wdlmaster] #322990
05/10/10 19:54
05/10/10 19:54
Joined: Aug 2007
Posts: 1,922
Schweiz
Widi Offline
Serious User
Widi  Offline
Serious User

Joined: Aug 2007
Posts: 1,922
Schweiz
Sorry das ich mich hier einmische. Habe eine Frage an wdlmaster. Ich habe einen Terrainshader mit 7 texturen. Wie berechnest du die zusätzlichen texturen beim splitten des alphakanals? (alpha 0 - 127 = textur1, 128 - 255 = textur2)
Code:
float4 color = tex2D(sTex8, In.Tex7);
	color = lerp(color,tex2D(sTex5, In.Tex4),BlendColor.r);
	color = lerp(color,tex2D(sTex6, In.Tex5),BlendColor.g);
	color = lerp(color,tex2D(sTex7, In.Tex5),BlendColor.b);
	
	color = lerp(color,tex2D(sTex9, In.Tex4),saturate(BlendColor.r - BlendColor.a));
	color = lerp(color,tex2D(sTex10,In.Tex5),saturate(BlendColor.g - BlendColor.a));
	color = lerp(color,tex2D(sTex11,In.Tex7),saturate(BlendColor.b - BlendColor.a));



@Esper: So wie wdlmaster erklärt hat funktioniert das was du willst...

Re: Searching HLSL Terrain Multitexturing... [Re: Widi] #322993
05/10/10 20:00
05/10/10 20:00
Joined: Apr 2010
Posts: 172
W
wdlmaster Offline
Member
wdlmaster  Offline
Member
W

Joined: Apr 2010
Posts: 172
das kommt auf die Anzahl der Texturen an, die du in einem Kanal unterbringen willst (maximal 4, denn es werden nur 16 Texturzugriffe unterstützt!)

bei 2 Farben:
color = lerp(color,tex2D(skin1,tex),saturate(BlendColor.r*2));
color = lerp(color,tex2D(skin2,tex),saturate(BlendColor.r*2-1));

bei 4 Farben:
color = lerp(color,tex2D(skin1,tex),saturate(BlendColor.r*4 ));
color = lerp(color,tex2D(skin2,tex),saturate(BlendColor.r*4-1));
color = lerp(color,tex2D(skin3,tex),saturate(BlendColor.r*4-2));
color = lerp(color,tex2D(skin4,tex),saturate(BlendColor.r*4-3));

aber: es gelten die (ganz) oben genannten Einschränkungen!


Page 3 of 5 1 2 3 4 5

Moderated by  Blink, Hummel, Superku 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1