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

Aktuelle Zeit: Di Apr 23, 2024 09:58

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 23 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: Do Jan 01, 2015 22:16 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Aug 14, 2013 21:17
Beiträge: 588
Programmiersprache: C++
end hat geschrieben:
SDL macht das z.B. so.
Ähm... nö? Bei SDL legt man selbst die Kontext-Version fest:
Code:
  1. SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3);
  2. SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3);
  3. SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE);
  4. context = SDL_GL_CreateContext(window);

Oder wie meinst du das?

_________________
So aktivierst du Syntaxhighlighting im Forum: [code=pascal ][/code], [code=cpp ][/code], [code=java ][/code] oder [code=glsl ][/code] (ohne die Leerzeichen)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: Do Jan 01, 2015 22:19 
Offline
DGL Member

Registriert: Do Dez 29, 2011 19:40
Beiträge: 421
Wohnort: Deutschland, Bayern
Programmiersprache: C++, C, D, C# VB.Net
Ich sehe im Moment genauso wie glAwesome nicht ganz, warum das so machen sollte.
Wenn man einzelne höhere Features optional nutzen möchte, sollte man diese doch auch einfach über die entsprechenden äquivalenten "ARB_*"-Extensions zugreifen können. Ich wüsste keinen Grund, warum es Sinn machen könnte einfach den höchst möglichen Context einzurichten.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: Fr Jan 02, 2015 11:31 
Offline
Compliance Officer
Benutzeravatar

Registriert: So Aug 08, 2010 08:37
Beiträge: 460
Programmiersprache: C / C++ / Lua
SDL selbst erstellt einen Kontext, um zu überprüfen, ob die entspr. Kontextversion vorhanden ist und verwirft ihn dann wieder. Zumindest sagt das der Debugger ;)

_________________
offizieller DGL Compliance Beauftragter
Never run a changing system! (oder so)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: Fr Jan 02, 2015 18:16 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1278
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Ich habe den Quelltext von OpenGLContext genauer angeguckt.

Unter Windows sind die beiden propertys wirkungslos.

Somit kann ich unter Windows den Context nicht erzwingen.

Code:
  1.   OpenGLControl1.OpenGLMajorVersion := 3;
  2.   OpenGLControl1.OpenGLMinorVersion := 3;
  3.  
  4.  
  5.     Result:=LOpenGLCreateContext(OpenGlControl,WSPrivate,
  6.                                  OpenGlControl.SharedControl,
  7.                                  AttrControl.DoubleBuffered,AttrControl.RGBA,
  8.                                  {$IFDEF HasRGBBits}
  9.                                  AttrControl.RedBits,
  10.                                  AttrControl.GreenBits,
  11.                                  AttrControl.BlueBits,
  12.                                  {$ENDIF}
  13.                                  {$IFDEF UsesModernGL}  // Bei Windows deaktiviert.
  14.                                  AttrControl.OpenGLMajorVersion,
  15.                                  AttrControl.OpenGLMinorVersion,
  16.                                  {$ENDIF}
  17.                                  AttrControl.MultiSampling,
  18.                                  AttrControl.AlphaBits,
  19.                                  AttrControl.DepthBits,
  20.                                  AttrControl.StencilBits,
  21.                                  AttrControl.AUXBuffers,
  22.                                  AParams);      

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: So Jan 04, 2015 14:45 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
K.a. wie das die Lib macht, aber da das über ein Define geht (UsesModernGL) musst du das evtl. manuell setzen. Ich gehe davon aus dass über dieses Define gesteuert wird ob ein core Kontext erstellt wird oder nicht.

Aber ansonsten kann man das auch ganz einfach selbst machen.

Attribute :
- WGL_CONTEXT_MAJOR_VERSION_ARB
- WGL_CONTEXT_MINOR_VERSION_ARB
- WGL_CONTEXT_PROFILE_MASK_ARB = WGL_CONTEXT_CORE_PROFILE_BIT_ARB
- (wenn gewollt) WGL_CONTEXT_FLAGS_ARB = WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB

Und dann den Kontext via wglCreateContextAttribsARB mit obigen Attributen erstellen.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: So Jan 04, 2015 16:36 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1278
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Zitat:
K.a. wie das die Lib macht, aber da das über ein Define geht (UsesModernGL)

Eher weniger, sonst müsste die function LOpenGLCreateContext overload sein, aber ich finde nur eine in der unit GLWin32WGLContext.

Zitat:
Aber ansonsten kann man das auch ganz einfach selbst machen.

Habe ich irgendwelche Nachteile, wen ich darauf verzichte ?

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: So Jan 04, 2015 17:15 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nachteile nicht, halt etwas mehr Programmieraufwand, weil du dich selbst um die Erstellung des Kontexts kümmern musst.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Linux mit Intel 4000, Treiber
BeitragVerfasst: Mo Jan 05, 2015 16:47 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1278
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Ich werde momentan bei den OpenGLContext-Funktionen bleiben, vielleicht wird dies vom Lazarus-Team weiterentwicklet.
Da ich die dglOpenGL einbinden kann, ist dies mir schon recht viel wert,

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 23 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 75 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.217s | 17 Queries | GZIP : On ]