Textureprobs

Übersicht BlitzBasic Blitz3D

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

Ornos

Betreff: Textureprobs

BeitragDo, Jun 09, 2005 12:20
Antworten mit Zitat
Benutzer-Profile anzeigen
hi
ich habe 3 texturen
1. sand
2. schwarz/weiß -texture als abgrenzungstextúre
3. gras

und setzte sie übereinader
entitytexture sand,0,1
entitytexture sw,0,2
entitytexture gras,0,3
textureblend gras,3 ;damit gras angezeigt wird

alles was bei sw-texture weiß ist, ist sand und alles was schwarz ist ist
gras, das geht auch, doch der sand wird mit dem weiß gemischt und sieht
sehr hell und gelblich dadurch aus.
wie bekomme ich diesen effect weg, dass sich sw und sand nicht mischen?
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

E. Urbach

ehemals "Basicprogger"

BeitragSa, Jun 11, 2005 21:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Das mit EntityTexture versteh ich nicht.
Ich dachte immer die Syntax wäre:

entityTexture entity, tex, frame, index

So wie du es gemacht hast hab ich's noch nie ausprobiert.
Gibt das einen zusätzlichen Effekt?
Funzt das wirklich?

Edit nach dem 3.Beitrag: Deshalb hab ich mich auch so gewundert, wieso das funktioniert (allgemein)
The box said, "Requires Windows XP or better", so I installed Ubuntu | Linux is NOT Windows
Flua :: Profiler für BB und BMax :: Partikel-Engine für BMax :: Lyphia-Projekt Quellcode (BMax) :: Automatische Parallelisierung :: Meine Musik
  • Zuletzt bearbeitet von E. Urbach am Sa, Jun 11, 2005 21:27, insgesamt einmal bearbeitet
 

Dreamora

BeitragSa, Jun 11, 2005 21:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Was du möchtest, funktioniert nicht.
Die Texturen funktionieren leider nicht wie Photoshop Layer, so dass man selektiv nur as eine oder andere anzeigen kann.

Das heisst die Farbe deiner Auswahltextur wird in jedem Falle mit den anderen beiden gemischt, je nach Blendmode halt nach einer anderen Mischungsformel.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragMo, Jun 13, 2005 8:32
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie machen ich es nun richtig?
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Klaas

BeitragMo, Jun 13, 2005 12:39
Antworten mit Zitat
Benutzer-Profile anzeigen
ich denke dafür mußt du mit multiplen Renderpasses arbeiten. Also einen für jeden Layer.

Ornos

BeitragMo, Jun 13, 2005 13:09
Antworten mit Zitat
Benutzer-Profile anzeigen
aha multiple renderpasses Confused
und wo,wie,wann,warum,mit was stelle ich das ein?
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMo, Jun 13, 2005 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Das musst du selbst programmieren.
Dazu musst du die selbe Situation mehrere Male rendern lassen und bei allen ausser der ersten Kamera den ClsMode ändern.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragMo, Jun 13, 2005 14:00
Antworten mit Zitat
Benutzer-Profile anzeigen
ich glaube wenn man schon weiß wie das geht, dann versteht man das auch, was ihr hier schreibt.
1. selbe situation???
2. erste kamera??? hab doch nur eine
3. den clsmode ändern... und wie?
habt ihr nicht ein codebeispiel, oder was muss ich an meinem jetztigen code ändern?
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMo, Jun 13, 2005 16:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Du kannst dafür eine Kamera nehmen.

Multipass arbeitet normalerweise so (Pseudocode, sollte nicht schwer umzusetzen sein)

Die Modelle für den ersten Pass anzeigen
Rendern
CameraClsMode umstellen so das der Farbbuffer nimmer geleert wird
Loop
Die Modelle für den letzten Pass verstecken
Die Modelle für den nächsten Pass anzeigen
Rendern
End Loop
Die Modelle des letzten Passes verstecken
CameraClsMode wieder auf normal zurücksetzen
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragDo, Jun 16, 2005 8:12
Antworten mit Zitat
Benutzer-Profile anzeigen
@dreamora
also ich habe deine methode mal versuch und nicht hinbekommen.
zb was meinst du mit loop?..ne schleife..ne zählschleife, do while oder was?
gib es nicht noch eine andere methode?
oder ein beispielcode an dem ich das nachvollziehen kann
ich habe ewig mit cameraclsmode rumprobiert und der effekt was immer der gleiche ... grafikfehler ohne ende
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragDo, Jun 16, 2005 9:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Loop ist eine For schleife die die Anzahl renderpasses durchführt die du haben möchtest.

Was meinst du mit Grafikfehlern?
Du darfst beim rendern der anderen Passes natürlich nur die Objekte verstecken, die überhaupt noch einen weiteren Pass haben zum rendern, nicht alle, sonst kanns zu ziemlichen Probleme kommen mit den Objekten die nur 1 pass haben
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragDo, Jun 16, 2005 10:42
Antworten mit Zitat
Benutzer-Profile anzeigen
so ich habe mal das wichtigste geposteted, vielleicht kannst du das ja mal kurz ergänzen.
thx

BlitzBasic: [AUSKLAPPEN]

Graphics3D 640,480

Global cam=CreateCamera()

LoadUmgebung()

...jetzt werden die ganzen objekte geladen wie player, baum usw


CameraClsColor cam,0,200,240
CameraFogRange cam,200,1400
CameraFogMode cam,1
CameraRange cam,1,1400
CameraFogColor cam,180,223,214


While Not KeyDown(1)

....balh balh....


UpdateWorld
RenderWorld
Flip
Wend
End

Function LoadUmgebung()
;TextureFilter \"data\models\map\over1.png\",2
terr=LoadTerrain( \"data\map\heightmap.bmp\" )
terr2=LoadTerrain( \"data\map\heightmapglobal.jpg\" )
ScaleEntity terr,1500/TerrainSize(terr),70,1500/TerrainSize(terr)
ScaleEntity terr2,1500/TerrainSize(terr2)*5,70,1500/TerrainSize(terr2)*5
TerrainDetail terr,1000,True
TerrainDetail terr2,1000,True
TerrainShading terr,1
;TerrainShading terr2,1
PositionEntity terr,1000,0,1000
PositionEntity terr2,10,-0.1,10
;---Texturen---
tex=LoadTexture( \"data\map\sand.jpg\" )
tex2=LoadTexture( \"data\map\over1.png\" ) ;schwarzweiß-textur
tex3=LoadTexture( \"data\map\green.jpg\" )
;BrushColor tex,1,1,1
ScaleTexture tex,5,5
ScaleTexture tex2,270,270
ScaleTexture tex3,32,32
EntityTexture terr,tex,0,1
EntityTexture terr,tex2,0,2
EntityTexture terr,tex3,0,3
;TextureBlend tex,1
;TextureBlend tex2,0
TextureBlend tex3,3
EntityTexture terr2,tex
EntityType terr,SCENE
EntityType terr2,SCENE
End Function


ich komm echt nicht weiter Sad
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu

Ornos

BeitragMi, Jun 22, 2005 8:23
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab schon hin und her probiert und es nicht richtig geschafft, ich weiß echt nicht wie ich das mit den renderpasses machen soll.
es haben doch schon einige von euch hinbekommen, könnt ihr nicht einfach mal einen beispielcode posten, dass mein problem löst, bevor ich hier weiter dumm rumprobiere, langsam ist das ganz schön frustrierend?
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMi, Jun 22, 2005 8:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habs dir oben in Pseudocode ja bereits hingeschrieben.
Mehr ist dahinter nicht. Jetzt kommt es draufan, dass du dein Objekthandling etc entsprechend anpasst, da es mit einem normalen Objekthandling nicht mehr geht.

Wenn du etwas funktionierendes hast, können wir dir gerne dabei helfen zu zeigen was daran nicht geht.

PS: Die Löcher wo es durchscheinen soll MÜSSEN transparent sein. nicht schwarz oder sonst etwas
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragMi, Jun 22, 2005 9:07
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab doch oben geposted, was ich funktionnierendes(oder auch nicht) habe.
und das mit dem schwarz/weißem bild habe ich mir von einem anderen spiel
abeschaut, und da gehts.
hier mal ein screenshot wies es momentan aussieht und die einzelnen texturen oben

user posted image

wie man sieht mischt er alle texturen, aber man bekommt einen rand zwischen sand und gras hin
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMi, Jun 22, 2005 11:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Das mag schon sein dass das in anderen Spielen geht. Aber nicht in Blitz3D weil du dazu eine andere Technik brauchst.

Was du erreichen möchtest, geht nur über VertexAlpha wo man die "Mischtextur" nimmt um die Alphawerte zu bestimmen.
Dazu musst du dein Terrain aber aus einem Mesh erzeugen und dann entsprechend texturieren ... das geht mit dem internen Terrain nicht.

Du versuchst hier einen relativ fortgeschrittenen Effekt zu nutzen ... eventuell wärs von Vorteil erst die nötigen Grundlagen wie eigene Meshkonstruktion etc zu erlernen.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragMi, Jun 22, 2005 11:26
Antworten mit Zitat
Benutzer-Profile anzeigen
also

1. geht das nicht nur auf einem mesh, sondern auch auf einem terrain da....
2. es genauso bei einem bb-spiel gemacht wurde und daraus folgt, dass es auch bei blitzbasic funzt

@dreamora
da du ja jetzt weißt was ich machen möchte, kannst du mir dann vielleicht auch sagen was genau ich falsch mache

ps: fortgeschritten hin oder her, wenn man erst mal weiß wies geht, ist das nun auch nicht schwer Wink
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMi, Jun 22, 2005 11:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Doch es ist relativ schwer:

1. Du kannst kein Blitzbasic Terrain nutzen
2. Du musst lernen wie man ein eigenes Terrain erzeugt oder es in einem Modeller erzeugen und laden
3. Du musst bei den übergängen die Alpha des "sandmeshes" sukzessive reduzieren während du die alpha des "grassmeshes" langsam erhöhst.

Es gibt Terraineditioren die direkt solche meshes erzeugen

http://www.blitzbasic.com/tool...p?tool=104
http://www.blitzbasic.com/tool...hp?tool=77
http://www.blitzbasic.com/tool...p?tool=107
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Ornos

BeitragMi, Jun 22, 2005 11:51
Antworten mit Zitat
Benutzer-Profile anzeigen
gut wenn du meinst das das nur bei meshs geht glaub ich dir das auch, aber dann frage ich mich bloß, wieso der ne heightmap braucht?
das spiel heißt "In the Shadow of Evil" kannst dir da mal die dateien anschauen.

edit: das erste ist ein schickes tool thx
edit: klapt super und sieht gut aus, leider etwas speedfressender als terains
Projekt: Dash Off & DO - Times
Status: a0.6 & b0.7
http://www.dashoff.de.vu
 

Dreamora

BeitragMi, Jun 22, 2005 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
nicht wirklich speedfressender eigentlich.
Ausser du hattest vorher ein Terrain mit 2000 Polygonen Wink
ein 50'000 polygone statisch Terrain ist auf alle fälle schneller als ein dynamisches mit 6000 polygonen Wink
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group