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

Aktuelle Zeit: Mo Jul 14, 2025 17:11

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 11:51 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 26, 2003 10:35
Beiträge: 16
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.

Woran kann das liegen? :(

Chris


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 12:07 
Offline
DGL Member
Benutzeravatar

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!

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 12:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 26, 2003 10:35
Beiträge: 16
Danke Son of Satan!!

Jetzt sind alle Objekte wieder normal. Leider hat die Textur nen ziemlichen Blaustich (auch vorhin schon) <_<

Sobald die Textur eine etwas größere Fläche einnimmt (15*15 Einheiten) gehen die FPS auf 3 :-) ich glaub mal das liegt an der Grafikkarte. :ph34r:

Zitat:
Stell ausserdem sicher, dass der von dir angeforderte Renderkontext auch von der Hardware zur Verfügung gestellt wird!


Wie mache ich das?

Thx, Chris


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 12:33 
Offline
DGL Member
Benutzeravatar

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.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 12:48 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 26, 2003 10:35
Beiträge: 16
Renderer: GDI Generic
Vendor: MS
Vers.1.1.0

Grafikkarte: Elsa Gloria Synergy.

Kann ich da irgendwas machen in Bezug auf das Pixelformat?

Christian


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 12:54 
Offline
DGL Member
Benutzeravatar

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...

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 13:02 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 26, 2003 10:35
Beiträge: 16
*LOL* :lol:


Danke, ich werde den Vorschlag mal meinem Chef unterbreiten. Das ist ein gutes Lösungs-Geheimnis *g*

:rolleyes:

Chris


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 13:22 
Offline
DGL Member
Benutzeravatar

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-->


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 13:48 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Ist ja interessant O_o Wieder was dazu gelernt ;)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Mai 28, 2003 14:13 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Dadurch wird die komplette Struktur zum gewählten Pixelformat gefüllt. Inklusive der tatsächlich ausgewählten Farbtiefe, der Bitverteilung etc...


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 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.009s | 15 Queries | GZIP : On ]