Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Ich wollte ein Menu mit einem Wasserhintergrund machen. Eine simple Wassertextur war mir aber zu simpel, also hab ich mir gedacht, probierste mal dieses Bumpmapping-Tutorial aus. Nachdem ich mit dem NormalMapGen.exe-Teil gekämpft habe (nach 3 Minuten nicht fertig ?!?) hatte ich dann diese tolle Map.
Dann hab ich den Sourcecode bei mir eingebaut:
Code:
if CanUseBumpMapping then
begin
glActiveTextureARB(GL_TEXTURE1_ARB);
glEnable(GL_TEXTURE_2D);
Water.Bind;
glActiveTextureARB(GL_TEXTURE0_ARB);
glEnable(GL_TEXTURE_2D);
WaterBump.Bind;
glEnable(GL_REGISTER_COMBINERS_NV);
glCombinerInputNV(
GL_COMBINER0_NV,//Combiner, der benutzt wird
GL_RGB,
GL_VARIABLE_A_NV,//Variable beim Combiner
GL_TEXTURE0_ARB,//Wert: Bumpmap Textur
GL_EXPAND_NORMAL_NV,
GL_RGB
);
glCombinerInputNV(
GL_COMBINER0_NV,//Combiner, der benutzt wird, wie oben
GL_RGB,
GL_VARIABLE_B_NV,// Variable beim Combiner
GL_PRIMARY_COLOR_NV,//Wert: RGB Wert der Oberfläche
Das rendering ergebnis liegt im Anhang.
Wenn ich die beiden glColor3f-Anweisungen entauskommentiere, dann wird die ebene komplett schwarz...
Kann mir wer sagen woran das liegen könnte? Wenn noch mehr Source nötig ist... Ich kann noch ein paar hundert zeilen dazutun
Gruß Lord Horazont
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Aber die Texturen sind doch oben gesetzt... Wie muss ich das denn machen? Water ist doch die passende Textur zur Bumpmap (WaterBump).
Und was die Reflektion betrifft: Wie bekomme ich das hin? StencilBuffer eignet sich doch nicht so gut für Wasser, oder?
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Also ich muss zu meiner Schande gestehen, dass ich noch nicht geshadert habe. Aber für mich sieht dein Ergebnis so aus, als ob da die Bumpmap als Textur verwendet worden wäre.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Die RegisterCombiner können nur die Texturefarben anders mixen. Bei einer Reflektion möchte man aber abhängig von der Bumpmap den Reflektionsvektor berechnen und den Wert dann aus einer Cubemap lesen.
Das geht mit der NV_texture_shader Extension. Dies ist aber genauso wie die RegisterCombiner nicht mehr zu empfehlen, da es mittlerweile ja bessere und einfacher zu benutzendere Alternativen wie ARB_fragment_program oder GLSL gibt.
Falls die Karte diese neue Extension nicht unterstützt sollte man anstelle von den Register Combinern ARB_texture_env_dot3 benutzen. Auch damit kann man Bumpmapping realisieren und vor allem läuft das dann auf allen Karten.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
?!
Okay. Und wie komme ich jetzt bei meinem Problem weiter? (Falls da jetzt schon die Lösung drin war, ich hab sie übersehen)
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Eigentlich wollte ich erstmal Bumpmapping machen, weil mir das einfacher erschien. Leider geht das ja nicht...
Gegen Reflextionen hab ich nix einzuwenden, wenn ich nur wüsste wie.
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Dann sollte das Wiki vielleicht korrigiert werden...
Und wie kann ich das jetzt korrigieren?
(Ich weiss, ich bin ein noob was opengl betrifft)
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Ich habe den glFinalCombinerInputNV aus dem Wiki abgeschrieben:
Tutorial BumpMap
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Okay... Das Bumpmapping workt soweit bis auf:
1. Das wasser ist schwarz weis (also Graustufen)
2. Und der scheint irgendwie alles Bumpmappen zu wollen :-/
P.S.
Sorry für Doppelpost, hab meinen alten übersehen
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Mitglieder in diesem Forum: 0 Mitglieder und 5 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.