Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jul 19, 2025 21:23

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Farbwerte einer Textur bearbeiten
BeitragVerfasst: Mi Aug 24, 2005 21:09 
Offline
DGL Member
Benutzeravatar

Registriert: So Jun 05, 2005 15:08
Beiträge: 39
Wohnort: Bei Bayreuth
Hallo.

Ich schreibe grad eine Art Worms/Clonk-Clone (Worms werden wohl die meisten kennen, Clonk eher wenige :) )

Nun habe ich folgendes Problem:

Die Landschaft ist 2D, nur eine einzige, an manchen Stellen transparente Textur (PNG im Moment).

Die Kollisionsabfrage soll über die ALPHAwerte der Textur laufen.

1. Frage :
Wie kann ich sowohl die Canvas-Werte eines Bildes auslesen als es auch als Textur auf eine Fläche zu kleben ?

2. Frage :
Wie kann ich diese Textur inklusive der Alphawerte zur Laufzeit bearbeiten, d.h. wenn ein Stück Wand weg gesprengt wurde, wie kann ich a.) die Farbwerte für den gesprengten Bereich auf Schwarz setzen und b.) die Alphawerte auf 1 stellen, damit der Hintergrund sichtbar, und die Kollisionskontrolle in dem Bereich möglich wird und schließlich c.) diese Canvas wieder zu einer Textur machen und per BIND auf die Fläche kleben?


Ich hoffe ich hab nicht zu viel auf einmal gefragt :oops:

Danke im Voraus,
MFG gmgler

_________________
Geniale Menschen sind selten ordentlich, ordentliche selten genial (Albert Einstein)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 24, 2005 21:26 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 16, 2003 15:20
Beiträge: 198
@1. Dafür wirst du wohl am sinnvollsten eine 2. Version des Bildes im Arbeitspeicher lassen müssen und aus dieser die Werte
nehmen müssen.
@2.Geht, du renderst deine Textur regelmäßig in den PBuffer, wobei du deine Änderungen einfach durch weitere Faces einfügst, d.h. wenn du z.b. einen Stein einfügen willst, renderst du zuerst die Ursprungstextur im Orthogonalmodus, so dass sie den ganzen PBuffer ausfüllt und renderst dann den Stein (ein weiteres Quad) eben so, nur eben nicht den gesamten PBuffer bedeckend, sondern nur die stelle wo der Stein eben hin soll. Wie das mit dem wechsel der Alphawerte aussieht weiß ich nicht, denke aber dass das irgendwie möglich sein müsste, ansonsten schreibst du dir einen Shader, der per Colorkey bestimmte Pixel einfach nicht zeichnet (Ok, mit Kanonen auf Spatzen schießen ...).
mfG
Tomok

_________________
Bevor du definierst, was etwas ist, versichere dich seiner Existenz.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 24, 2005 22:23 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 13, 2004 11:00
Beiträge: 229
Wohnort: Steinhude
bei dem alphawert wird der farbwert an der stelle ja egal, insofern kann man dass dann auch einfach überzeichnen.
alternativ kann man glau ich auch über glblend es so hinkriegen dass nur der alphawert geändert wird


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 25, 2005 08:46 
Offline
DGL Member
Benutzeravatar

Registriert: So Jun 05, 2005 15:08
Beiträge: 39
Wohnort: Bei Bayreuth
Ich weiss nicht a.) wie man Transparente Pixel in die Canvas zeichnet
und b.) wie man aus der Canvas wieder eine Textur macht.

_________________
Geniale Menschen sind selten ordentlich, ordentliche selten genial (Albert Einstein)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 25, 2005 14:04 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 13, 2004 11:00
Beiträge: 229
Wohnort: Steinhude
wieso auf nen canvas? soweit ich das verstanden habe, brauchst du die doch nur zu kollisionsabfrage, da würde sich imo eher ne einfache matrix mit booleans iim arbeitsspeicher besser machen. Und die Texturen würde ich nicht umbedingt zu Laufzeitimmer neu hochladen, da das doch ordentlich bandbreite und allgemein geschwindigkeit zieht. eher die textur über nen pbuffer oder rendertotexture updaten.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Aug 25, 2005 14:15 
Offline
DGL Member
Benutzeravatar

Registriert: So Jun 05, 2005 15:08
Beiträge: 39
Wohnort: Bei Bayreuth
Könntest du mir da mal code senden?

_________________
Geniale Menschen sind selten ordentlich, ordentliche selten genial (Albert Einstein)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 6 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.007s | 15 Queries | GZIP : On ]