Hi ... ich schon wieder.. wenn ich euch nerve müsst ihr es sagen :unsure:
Folgendes: Wenn ich eine Textur auf einen Quad lege, dann wird bei mir die komplette Scenerie total dunkel und die Frames/seconds gehen auf 16 in den Keller.
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Wenn du nur ein Objekt texturieren willst (hört sich in deinem Posting zumindest so an), dann solltest du nachdem du das zu texturierende Objekt gezeichnet hast, das Texturemapping via glDisable(GL_TEXTURE_2D) deaktivieren.
Aber im Normalfall sollte deine Rendergeschwindigkeit durch die Verwendung von Texturemapping nicht so stark in die Knie gehen.Stell mal sicher, das du die neusten Grafikkartentreiber installiert hast und nicht die von z.B. WinXP mitgebrachten Treiber nutzt, da diese um den OpenGL-Teil kastriert sind und so dein Rendering im Softwaremodus abläuft.
Stell ausserdem sicher, dass der von dir angeforderte Renderkontext auch von der Hardware zur Verfügung gestellt wird!
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Zitat:
Jetzt sind alle Objekte wieder normal. Leider hat die Textur nen ziemlichen Blaustich (auch vorhin schon)
Dann hast du garantiert irgendwo glColor3f() mit ner bläulichen Farbe gesetzt und vergessen die Farbe wieder mittels des selben Befehls (glColor3f(1,1,1)) auf ihren Standardwert zurückzusetzen.Denn glColor3f beeinflusst natürlich auch texturierte Flächen!
Zitat:
Zitat:
Stell ausserdem sicher, dass der von dir angeforderte Renderkontext auch von der Hardware zur Verfügung gestellt wird!
Wie mache ich das?
Lass dir mal nach dem Erstellen deines Renderkontextes mittels glGetString(GL_RENDERER) (Ergebnis ist wie zu vermuten ein String) den Namen des aktuellen Renderers ausgeben.Wenn hier irgendwas von Software oder etwas das sich stark vom Hersteller bzw. deiner Graka unterscheidet rauskommt, dann läuft das Rendering per Software. Das liegt dann entweder an nem falschen Pixelformat oder an einem falschen Grafikkartentreiber.
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Oje...die Karte ist ja schon fast museumsreif.
Da werden bei dir wohl auch keine OpenGL-Treiber installiert sein, weshalb bei dir alles im Softwaremodus gerendert wird, der recht langsam ist.Ich glaub auch kaum das es für die Karte ne brauchbare OpenGL-Implementation gibt.
Besorg dir am besten ne neue Grafikkarte.Ne Radeon9000 oder ne GeForce4-Ti4200 gibts bereits für stellenweise weit unter 100€.Mit diesen Karten kannste dann auch ernsthaft OpenGL proggen.Mit deiner uralt-Else wirste da leider nicht viel machen können.
Ich hab zwar mittels <a href='http://www.google.de' target='_blank'>http://www.google.de</a> OpenGl-Treiber für deine Graka gefunden, allerdings empfehl ich dir nicht das Teil weiter zu nutzen...
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Son of Satan hat geschrieben:
Lass dir mal nach dem Erstellen deines Renderkontextes mittels glGetString(GL_RENDERER) (Ergebnis ist wie zu vermuten ein String) den Namen des aktuellen Renderers ausgeben.Wenn hier irgendwas von Software oder etwas das sich stark vom Hersteller bzw. deiner Graka unterscheidet rauskommt, dann läuft das Rendering per Software.
Es gibt da noch eine "saubere" Methode um dieses Abzufragen. Das geht auch schon bevor du ein OpenGLFenster erstellst. <!--pas--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Delphi-Source </td></tr><tr><td id='CODE'><!--pas1--><pre> PixelFormat := ChoosePixelFormat(FDC, @pfd); ... DescribePixelFormat(FDC, PixelFormat, SizeOf(pfd), pfd);
// Testen ob wir eine Hardwarebeschleunigung haben <span class='reserved'>if</span> (pfd.dwFlags <span class='reserved'>and</span> PFD_GENERIC_FORMAT = <span class='integer'>0</span>) <span class='reserved'>then</span> FAcceleration := acHardware <span class='reserved'>else</span> FAcceleration := acSoftware;</pre><!--pas2--></td></tr></table><span class='postcolor'><!--pas3-->
Mitglieder in diesem Forum: 0 Mitglieder und 7 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.