ďťż

Ładny brzuch

Witam, problem polega na tym:
mam swiat 3d w opengl z okraglymi przedmiotami do zbierania (cos jak monety)
monety te maja swoje tekstury z kanalem alpha (czarny kolor R:0 G:0 B:0 w photoshopie)
ktory znika w opengl tworzac ladna okragla monete
wszystko jest ok, dziala, ladnie wyglada, do momentu wlaczenia mgły
[B]oto screen przedstawiajacy co sie dzieje gdy jest mgła:[/B
http://www.lebit.prv.pl/mgla.jpg
jak widac dotychczasowy niewidzialny alpha pojawia sie jako bialy psujac efekt :blink:
glBlendFunc(GL_SRC_ALPHA, GL_ONE); GLfloat kolorMgly[4] = { 0.5f, 0.5f, 0.5f, 1.0f }; glFogfv( GL_FOG_COLOR, kolorMgly ); glFogf( GL_FOG_MODE, GL_EXP2 ); glFogf( GL_FOG_START, 2.0f ); glFogf( GL_FOG_END, 10.0f ); glFogf( GL_FOG_DENSITY, 0.012 ); glEnable( GL_FOG ); juz obnizylem gestosc mgły (j.w.) dla zmniejszenia tego efektu
ale wtedy nie ma "klimatu" poza tym dalej widac to biale dookola "monet"
nawet najdalej oddalone przedmioty wyraznie swieca bialoscia :(
nie mowiac o zageszczeniu mgły, wtedy masakra :o
zalezy mi na mgle bo dodaje fajny klimat na mapie :rolleyes:
pytanie: co zrobic aby zachowac mgłe i jednoczesnie niewidoczny byl kanal alpha?
dzieki i pozdrawiam :rolleyes:



Nie wiem, jak realizujesz funkcję rysującą, ale:
1. Sprawdź, czy czasem nie wyłączasz mgły przed rysowaniem monet.
2. Wpisz przed każdym włączeniem Blend'u ustawienie funkcji wyliczającej alpha (glBlendFunc).

Poza tym, za mało informacji, by coś więcej wydedukować :(

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •