Español
Foro

ogl y xpse

 

Andreas
Koch
¡Hola zusammen,

una kurze Cuestión para Thema opengl y xpse: hay una Möglichkeit, una ogl("xyz",...) Befehl en un nproc einzubauen?
Konkret es en el Befehl oGL("TestMouse", X, Y, Z), o @oGL("TestXY", X, Y, Z, SX, SY).
Der Testmodus de opengl funktioniert no siempre así dolle y yo versuche en el Weg, ihn a umgehen.

Schönen Saludo

Andreas Koch
 
14.01.2013  
 



Grüße!

Nein, específicamente dies va desafortunadamente todavía no -

lo war me en ersten Tests no gelungen, de el Ensamblador-DLL heraus a el
XProfan-OGL-Context anzubinden y glaube, dass OGL como algo dagegen ha.

Yo weiß pero no genau woran el liegt aber en media ersten Tests con reinem
nativen Profano, dass sin la Runtime auskommt, puede ser auch OpenGL nativ
nutzen. Diese spezielle XPSE-Versión es aber todavía no öffentlich.

Was Yo no getestet hatte war el ganzen OGL-Context de uno nProc heraus
a erzeugen, dies podría imho trabajo.
 
14.01.2013  
 




Andreas
Koch
Erst una vez danke para el Antwort. Sorry, Tengo el Thema ahora 2veces eingestellt. (Yo hatte el no mehr gefunden.)
Nächste Cuestión: Verstehe Yo deinen letzten Absatz correcto, dass Yo el sistema API-Befehle, para el el ogl-Befehl es, versuchen kann a nutzen?
Wenn sí, wo finde Yo porque el API-Befehle para oGL("TestMouse", X, Y, Z), o @oGL("TestXY", X, Y, Z, SX, SY))?
 
14.01.2013  
 




RGH
Für el OpenGL-Api hay zahlreich (meist englische) Dokumentationen en el Netz, auch direkt en Microsoft. (Google hilft.)
Viele el XProfan-OpenGL-Características vereinen aber mehrere API-Aufrufe, teilweise auch con komplexer Logik, a Open-GL-Programación a vereinfachen.Wenn uno en XProfan z.B. una Würfel con un Aufruf hecho, costumbre lo en nativer API una todo Reihe de Aufrufen.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.01.2013  
 




Andreas
Koch
Mein erster Intento fue, una OpenGL-API Ersatz para el beiden obigen Características para encontrar, qué no tan completamente erfolgreich war.
Deswegen vermutete Yo auch, dass una todo Reihe de Befehlen detrás de él steckt, el en XProfan a uno Función zusammengefügt fueron. Um el sistema API-Befehle nachschlagen y direkt anwenden a puede, debería Yo aber wissen, como heißen. Deswegen mi Cuestión, qué hinter oGL("TestMouse", X, Y, Z), o @oGL("TestXY", X, Y, Z, SX, SY)) steckt.

PS: wiki.delphigl.com ha mich bisher en opengl siempre weitergebracht.
 
14.01.2013  
 




RGH
Bitte muy: Der Original-Code en Delphi:
procedure fnOGLTestMouse; {-----------------------} var x, y, z: double; ix, iy: longint; fx, fy, fz: double; modelview: array[1 .. 16] of double; projection: array[1 .. 16] of double; viewport: array[1 .. 4] of longint; R: TRect; Begin if oGLWnd = 0 Then FehlerNr(400,''); GetClientRect(oGLWnd,R); LesePara(ParStack,',',0); x := RPar.Dbl; LesePara(ParStack,',',0); y := RPar.Dbl; LesePara(ParStack,')',0); z := RPar.Dbl; glGetDoublev(GL_MODELVIEW_MATRIX, @modelView); glGetDoublev(GL_PROJECTION_MATRIX, @projection); glGetIntegerv(GL_VIEWPORT, @viewPort); gluProject(x, y, z, @modelView, @projection, @viewPort, fx, fy, fz); ix := sqr(round(fx) - Mausx); iy := sqr((R.Bottom - round(fy)) - Mausy); If (ix + iy) > 0 then RPar.Lng := round(sqrt(ix + iy)) más RPar.Lng := 0; RPar.Typ := 2; Found := True; End; procedure fnOGLTestXY; {--------------------} var x, y, z: double; ix, iy: longint; dx, dy: longint; fx, fy, fz: double; modelview: array[1 .. 16] of double; projection: array[1 .. 16] of double; viewport: array[1 .. 4] of longint; R: TRect; Begin if oGLWnd = 0 Then FehlerNr(400,''); GetClientRect(oGLWnd,R); LesePara(ParStack,',',0); x := RPar.Dbl; LesePara(ParStack,',',0); y := RPar.Dbl; LesePara(ParStack,',',0); z := RPar.Dbl; LesePara(ParStack,',',0); dx := RPar.Lng; LesePara(ParStack,')',0); dy := RPar.Lng; glGetDoublev(GL_MODELVIEW_MATRIX, @modelView); glGetDoublev(GL_PROJECTION_MATRIX, @projection); glGetIntegerv(GL_VIEWPORT, @viewPort); gluProject(x, y, z, @modelView, @projection, @viewPort, fx, fy, fz); ix := sqr(round(fx) - dx); iy := sqr((R.Bottom - round(fy)) - dy); If (ix + iy) > 0 then RPar.Lng := round(sqrt(ix + iy)) más RPar.Lng := 0; RPar.Typ := 2; Found := True; End;
(Como el Foro sólo XProfan-Code correcto formatieren kann, sieht hay algo seltsam de. Mit wäre lo más bien, lo gäbe una Tga, el el Formatierung así lässt, Yo ellos mühevoll eingerichtet habe.)

Einige Anmerkungen:
LesePara list el nächsten Parámetro el Programmzeile. Das Ergebnis se en beiden Características en RPar.Lng (Largo-Integer) zurückgeliefert.Fehler 400 besagt, dass OGL no initialisiert wurde y lo somit kein OGL-Ventana son.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.01.2013  
 




Andreas
Koch
Gracias para el Ayuda, Yo denke, daran kann Yo mich langhangeln.

Schönen Saludo

Andreas
 
14.01.2013  
 




RGH
Hilfreich tal vez auch todavía OGLStartTest y OGLEndTest:
procedure oGLStartTest(mx, my, dx, dy: integer); {---------------------------------------------} var viewport: array[1 .. 4] of longint; wh: double; R: TRect; width, height: integer; begin // Store our Viewport glGetIntegerv(GL_VIEWPORT, @viewport); // Tell OpenGL the size of our seleccionar buffer glSelectBuffer(512, @SelectBuffer); // Change our render mode to GL_SELECT glRenderMode(GL_SELECT); // Init the namestack glInitNames; glPushName(0); glMatrixMode(GL_PROJECTION); glPushMatrix; glLoadIdentity; // Zoom the view to dx/dy pixel around the mouse position gluPickMatrix(mx, viewport[4]-my, dx, dy, @viewport); GetClientRect(oGLWnd,R); Height := R.Bottom; Width := R.Right; if (Height = 0) then Height := 1; if OGLwh <= 0 then wh := Width/Height else wh := OGLwh; gluPerspective(45.0, wh, 0.1, oGLDepth); End; function oGLEndTest:longint; {--------------------------} var Hits, Hit, i : Integer; HitZValue : GLUInt; begin glMatrixMode(GL_PROJECTION); glPopMatrix; // Now store the number of hits en Hits Hits := glRenderMode(GL_RENDER); // Now we look which hit has the lowest Z-Value i.e. qu&eacute; en front Hit := -1; HitZValue := High(GLUInt); for i := 0 to Hits-1 do if SelectBuffer[(i*4)+1] < HitZValue then begin Hit := SelectBuffer[(i*4)+3]; HitZValue := SelectBuffer[(i*4)+1]; end; Result := Hit; end;
 
XProfan X2
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.01.2013  
 



[offtopic]
RGH (14.01.13)
(Como el Foro sólo XProfan-Code correcto formatieren kann, sieht hay algo seltsam de. Mit wäre lo más bien, lo gäbe una Tga, el el Formatierung así lässt, Yo ellos mühevoll eingerichtet habe.)



Posesiones Su Postings dahingehend fix bearbeitet.

Werde simplemente una 2. Code-Tag para einführen.
[/offtopic]
 
14.01.2013  
 



Andreas Koch (14.01.13)
Erst una vez danke para el Antwort. Sorry, Tengo el Thema ahora 2veces eingestellt. (Yo hatte el no mehr gefunden.)


Jojo, kein Streß.

Gibt auch una Forenübergreifende Información general aktueller Temas:  [...] 
¿Puede Su Thema simplemente auch incluso löschen, simplemente unten rechte en Tema opciones.
 
14.01.2013  
 




Andreas
Koch
Noch una corto Apéndice,

en el Página de Uwe Pascal Niemeyer [...]  hay una zip-Expediente (opengl2004.zip), worin se muy viele Beispiele a Programación con opengl befinden. Soweit Yo el überblicken kann, se esta en ogl("xyz",...) Befehle gänzlich verzichtet. Yo vermute, el Codes stammen de uno Tiempo bevor openGl en XProfan eingebunden war. Sie trabajo aber todavía tadellos. Como fue una Ejemplo esta, el el Original-Delphi Codes de RGH en el Wesentlichen abbildet. Allen, el con opengl a tun haben, kann Yo esta Beispiele sólo empfehlen.

Schönen Saludo

Andreas Koch
 
20.01.2013  
 



Stimmt, el son super. Tuve damals así una 3D-Snake programmiert y weiß el uno así correcto komplexe Umgebungen herzaubern kann.
 
20.01.2013  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

20.875 Views

Untitledvor 0 min.
Sven Bader14.10.2021
p.specht08.03.2017
funkheld22.05.2016
Georg Teles13.01.2016
Más...

Themeninformationen

Dieses Thema ha 3 subscriber:

iF (7x)
Andreas Koch (5x)
RGH (4x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie