Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 18.11.2003, 16:13 Titel: |
|
|
The Lord of Programming hat Folgendes geschrieben: | Na dann ziehst du eben noch von den Mauskoordinaten die Koordinaten, an denen das Surface auf den Bildschirm geblittet wird, ab und kannst dann mit der "neuen" Mausposition und dem Surface berechnen, auf welchem Pixel des Surfaces die Maus liegt  |
Da hätt ich auch drauf kommen können^^
Aber wie prüfe ich ob dieser Pixel beispielsweise die Farbe RGB(50,50,50) hat?
DANKE IM VORRAUS, Rodney |
|
Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 18.11.2003, 21:06 Titel: |
|
|
kann mir keiner die funktion sage mit der ich die farbe eines pixels abfragen kann???
IST ECHT WICHTIG! |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
|
Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 18.11.2003, 21:58 Titel: |
|
|
also so:
if (lpSurface[x*pitch+y] == RGB(100,100,100)
so??? |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 19.11.2003, 15:53 Titel: |
|
|
Kommt drauf an in welchem Farbmodus du arbeitest. Im 1. Buch steht drin, wie man ein RGB-Tripel in die richtige Farbauflösung umrechnet... ich hab das Buch z.Z. nicht hier, vielleicht kann dich jemand anders auf die entsprechende Seite verweisen. Nach der Umrechnung überprüfst du den Wert, wie du es selber angegeben hast. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
Hasenfuß Senior JLI'ler

Alter: 37 Anmeldedatum: 20.08.2002 Beiträge: 291
Medaillen: Keine
|
Verfasst am: 19.11.2003, 17:51 Titel: |
|
|
Das steht auf den Seiten 302 ff.  |
|
Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 19.11.2003, 21:11 Titel: |
|
|
das guck ich mir jetzt mal an...
DANKE ERSTMAL |
|
Nach oben |
|
 |
Rodney Junior JLI'ler
Anmeldedatum: 24.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 19.11.2003, 21:13 Titel: |
|
|
wenn ich in 32 BIT arbeite muss ich doch nichts extra berechnen oder?
Da würde doch mein Codeausschnitt von oben funzen oder? |
|
Nach oben |
|
 |
Erni Junior JLI'ler
Anmeldedatum: 29.10.2003 Beiträge: 54
Medaillen: Keine
|
Verfasst am: 19.11.2003, 21:54 Titel: |
|
|
ich bin ja keine gute hilfe und schreib dir mal den code hier rein . Ich weiss nur jetzt nich mehr genau welche umstände waren, wenn mausxy nicht auf der Farbe der transparenten pixel, dann objekt zerstört, richtig?Falls ja dann müsste es so gehen
Code: |
D3DLOCKED_RECT rect;
int nPitch;
surface->LockRect(&rect, 0,D3DLOCK_READONLY);
nPitch = rect.Pitch / 4;
D3DCOLOR *Pixels = (D3DCOLOR*)rect.pBits;
if(Pixels[y * nPitch + x]!=FARBE_DEINER_TRANS_PIXS)
{
// BUMM!!!
}
else
//hast mich nicht gekriegt, weiterballern
}
surface->UnlockRect();
|
das solltest du natürlich am besten nicht frameabhängig in deiner game while prüfen lassen, dann sollte es klappen.
Ernie |
|
Nach oben |
|
 |
|