Español
Online-Documentación

ogl.xpgl Erklärung: OpenGL

 
Was es XPGL? XPGL es para XProfanGraphicsLanguage. Inspiriert wurde Yo dazu de el Textdatei, el el "Welt" en Lektion 10 de NeHe's OpenGL-Tutorial beschreibt: <a href='https://nehe.gamedev.net/'>Neon Helium OpenGL Tutorial</a>

In diesem Tutorial wurde el Textdatei allerdings lediglich benutzt, esta Welt a beschreiben. Im Programa wurde ellos entonces Dreieck para Dreieck ausgelesen y dargestellt. Das war me entschieden a langsam. La idea a XPGL kam me entonces, como Yo mich con el Vektor-Características de OpenGL befaßte, el lo ermöglichen para Vertex (Koordinaten), Farbe, Texturabschnitt y Normalwerte je una Datenarray (= Vektor) anzugeben y el Ganze entonces con un einzigen OpenGL-Befehl en el Bildschirm a bringen.

La idea war, esta Textdatei así umzugestalten, daß ellos möglichst universell es (also no sólo para Dreiecke con Textur funktioniert) y derart en el Speicher gelesen se, daß ellos con un OpenGL-Befehl adecuado voluntad kann. Damit war XPGL geboren.

[head]XPGL besteht also de folgenden Komponenten[/head]
Como es primero el XPGL-Expediente, el el Daten el darzustellenden "Welt" enthält.

Dann hay una Datenstruktur en XProfan, el esta Werte aufnimmt. Mit @oGL("LoadXPGL " kann una XPGL-datei en el Speicher geladen voluntad. Lo puede a a 1999 XPGL-Archivos gleichzeitig en el Speicher ser, si la Ausstattung des Rechners con RAM lo hergibt.

Mit el @oGL("UseXPGL " voluntad el Daten uno XPGL-Datenstruktur blitzschnell a el OpenGL-Sistema übetragen. Ab hier übernimmt el Grafik-Karte, sofern ellos OpenGL-fähig es. (En älteren Karten käme hier el OpenGL-Treiber y RAM des Rechners para Einsatz, qué no muy effizient es.)

Das letzte Glied en el Kette Es el Función @oGL("DrawXPGL ", con el el komplette "Welt" (oder una beliebiger Teil derselben) en el OpenGL-Bildschirm gebracht se.

Als zusätzliche Möglichkeit es todavía vorgesehen, el geladenen XPGL-Daten con o@GL("SaveXPGLData " como binäres Datenfile abzuspeichern y oGL("LoadXPGLData " otra vez a invitar. Mit @oGL("CreateXPGL " puede ser XPGL-Daten auch direkt en el Programa erzeugen. @oGL("XPGLCount " ermittel el número el Punkte en el XPGL-Daten, @oGL("XPGLObjType " ermittelt el Objekttyp y @oGL("XPGLType " el Art el Werte.

[head]Das Formato uno XPGL-Expediente[/head]
Un XPGL-Expediente es una Textdatei. Zeilen el con un "/" beginnen, voluntad como Kommentarzeilen interpretiert y überlesen. Leerzeilen dienen el Gliederung y voluntad auch überlesen.

Wichtig Es el 1. Daten-Línea: Sie ha el Struktur Objekttyp; Art el Werte; Anzahl[; Autonormal] (4 Werte, por Komma getrennt). Autonormal kann weggelassen voluntad. El otro Werte necesario disponible ser.

Objekttyp:

·P = Punkt
·L = Line
·T = Triangle
·Q = Quad
·LS = Line-Strip
·LL = Line-Loop
·TS = Triangle-Strip
·TF = Triangle-Fan
·QS = Quad-Strip
·PY = Polygon

Art el Werte:

·V = Vertex (Koordinaten des Punktes: 3 Werte/Punkt)
·C = Color (4 Werte/Punkt)
·T = Textur (2 Werte/Punkt)
·N = Normal(3 Werte/Punkt)

Ejemplo: VT (Vertex + Textur)

Das V para Vertex muß siempre disponible ser.

Anzahl:

Anzahl los objetos (en Q, T y L) o. Anzahl el Punkte (en allen otro).Ein Quad ha 4, una Triangle ha 3 y una Line ha 2 Punkte

4 Werte para "Autonormal":

x, y y z para el Mittelpunkt des Objektes y Normalwert (0.5 si la Beleuchtung de außen kommt, -0.5 si ellos de innen kommt). Werden esta Werte trotz des Kennzeichens "N" weggelassen, voluntad esta el Defaultwerte de 0, 0, 0, 0.5 angenommen.

Beispiele para una 1. Línea:

T;VT;36 (36 Triangles con Vertex y Textur)

T;VTN;36;0,-0.5,-2,0.5 (zusätzlich automatisches Erstellen des Normal-Vektors, si no Normal-Werte disponible son

El más Zeilen enthalten el Wertegruppen: Gruppen getrennt por ";", Werte getrennt por ",". Das Dezimaltrennzeichen en el Werten es el Punkt. El Wertegruppen necesario en el gleichen Reihenfolge posición, como Kennzeichen para el Art el Werte. Im Falle de "VT" posición also en cada Línea primero el drei por Komma getrennten Koordinaten, entonces folgen una Semikolon el beiden por una Komma getrennten Textur-Koordinaten.

Wird en Werteart N con angegeben, mentira pero no N-Werte antes, voluntad esta automáticamente generiert.

Un ausführlichere Descripción con Beispielen findet se en el ogl->xpgl 

[head]Beispielinhalt uno XPGL-Expediente:[/head]
T;VT;36
// Normale son no angegeben, por lo tanto se 1, 1, 1 genommen
// Floor 1
-13.0, 0, -13.0; 0.0, 130.0
-13.0, 0,  13.0; 0.0, 0.0
13.0, 0,  13.0; 130.0, 0.0
-13.0, 0, -13.0; 0.0, 130.0
13.0, 0, -13.0; 130.0, 130.0
13.0, 0,  13.0; 130.0, 0.0
// Ceiling 1
-3.0, 1.0, -3.0; 0.0, 1.0
-3.0, 1.0,  3.0; 0.0, 0.0
3.0, 1.0,  3.0; 1.0, 0.0
-3.0, 1.0, -3.0; 0.0, 1.0
3.0, 1.0, -3.0; 1.0, 1.0
3.0, 1.0,  3.0; 1.0, 0.0
// A1
-2.0, 1.0, -2.0; 0.0, 1.0
-2.0, 0.0, -2.0; 0.0, 0.0
-0.5, 0.0, -2.0; 1.5, 0.0
-2.0, 1.0, -2.0; 0.0, 1.0
-0.5, 1.0, -2.0; 1.5, 1.0
-0.5, 0.0, -2.0; 1.5, 0.0
// A2
2.0, 1.0, -2.0; 2.0, 1.0
2.0, 0.0, -2.0; 2.0, 0.0
0.5, 0.0, -2.0; 0.5, 0.0
2.0, 1.0, -2.0; 2.0, 1.0
0.5, 1.0, -2.0; 0.5, 1.0
0.5, 0.0, -2.0; 0.5, 0.0
// B1
-2.0, 1.0, 2.0; 2.0, 1.0
-2.0, 0.0, 2.0; 2.0, 0.0
-0.5, 0.0, 2.0; 0.5, 0.0
-2.0, 1.0, 2.0; 2.0, 1.0
-0.5, 1.0, 2.0; 0.5, 1.0
-0.5, 0.0, 2.0; 0.5, 0.0
// B2
2.0, 1.0, 2.0; 2.0, 1.0
2.0, 0.0, 2.0; 2.0, 0.0
0.5, 0.0, 2.0; 0.5, 0.0
2.0, 1.0, 2.0; 2.0, 1.0
0.5, 1.0, 2.0; 0.5, 1.0
0.5, 0.0, 2.0; 0.5, 0.0
// C1
-2.0, 1.0, -2.0; 0.0, 1.0
-2.0, 0.0, -2.0; 0.0, 0.0
-2.0, 0.0, -0.5; 1.5, 0.0
-2.0, 1.0, -2.0; 0.0, 1.0
-2.0, 1.0, -0.5; 1.5, 1.0
-2.0, 0.0, -0.5; 1.5, 0.0
// C2
-2.0, 1.0, 2.0; 2.0, 1.0
-2.0, 0.0, 2.0; 2.0, 0.0
-2.0, 0.0, 0.5; 0.5, 0.0
-2.0, 1.0, 2.0; 2.0, 1.0
-2.0, 1.0, 0.5; 0.5, 1.0
-2.0, 0.0, 0.5; 0.5, 0.0
// D1
2.0, 1.0, -2.0; 0.0, 1.0
2.0, 0.0, -2.0; 0.0, 0.0
2.0, 0.0, -0.5; 1.5, 0.0
2.0, 1.0, -2.0; 0.0, 1.0
2.0, 1.0, -0.5; 1.5, 1.0
2.0, 0.0, -0.5; 1.5, 0.0
// D2
2.0, 1.0, 2.0; 2.0, 1.0
2.0, 0.0, 2.0; 2.0, 0.0
2.0, 0.0, 0.5; 0.5, 0.0
2.0, 1.0, 2.0; 2.0, 1.0
2.0, 1.0, 0.5; 0.5, 1.0
2.0, 0.0, 0.5; 0.5, 0.0
// Upper hallway - L
-0.5, 1.0, -3.0; 0.0, 1.0
-0.5, 0.0, -3.0; 0.0, 0.0
-0.5, 0.0, -2.0; 1.0, 0.0
-0.5, 1.0, -3.0; 0.0, 1.0
-0.5, 1.0, -2.0; 1.0, 1.0
-0.5, 0.0, -2.0; 1.0, 0.0
// Upper hallway - R
0.5, 1.0, -3.0; 0.0, 1.0
0.5, 0.0, -3.0; 0.0, 0.0
0.5, 0.0, -2.0; 1.0, 0.0
0.5, 1.0, -3.0; 0.0, 1.0
0.5, 1.0, -2.0; 1.0, 1.0
0.5, 0.0, -2.0; 1.0, 0.0
// Lower hallway - L
-0.5, 1.0, 3.0; 0.0, 1.0
-0.5, 0.0, 3.0; 0.0, 0.0
-0.5, 0.0, 2.0; 1.0, 0.0
-0.5, 1.0, 3.0; 0.0, 1.0
-0.5, 1.0, 2.0; 1.0, 1.0
-0.5, 0.0, 2.0; 1.0, 0.0
// Lower hallway - R
0.5, 1.0, 3.0; 0.0, 1.0
0.5, 0.0, 3.0; 0.0, 0.0
0.5, 0.0, 2.0; 1.0, 0.0
0.5, 1.0, 3.0; 0.0, 1.0
0.5, 1.0, 2.0; 1.0, 1.0
0.5, 0.0, 2.0; 1.0, 0.0
// Left hallway - Lw
-3.0, 1.0, 0.5; 1.0, 1.0
-3.0, 0.0, 0.5; 1.0, 0.0
-2.0, 0.0, 0.5; 0.0, 0.0
-3.0, 1.0, 0.5; 1.0, 1.0
-2.0, 1.0, 0.5; 0.0, 1.0
-2.0, 0.0, 0.5; 0.0, 0.0
// Left hallway - Hi
-3.0, 1.0, -0.5; 1.0, 1.0
-3.0, 0.0, -0.5; 1.0, 0.0
-2.0, 0.0, -0.5; 0.0, 0.0
-3.0, 1.0, -0.5; 1.0, 1.0
-2.0, 1.0, -0.5; 0.0, 1.0
-2.0, 0.0, -0.5; 0.0, 0.0
// Right hallway - Lw
3.0, 1.0, 0.5; 1.0, 1.0
3.0, 0.0, 0.5; 1.0, 0.0
2.0, 0.0, 0.5; 0.0, 0.0
3.0, 1.0, 0.5; 1.0, 1.0
2.0, 1.0, 0.5; 0.0, 1.0
2.0, 0.0, 0.5; 0.0, 0.0
// Right hallway - Hi
3.0, 1.0, -0.5; 1.0, 1.0
3.0, 0.0, -0.5; 1.0, 0.0
2.0, 0.0, -0.5; 0.0, 0.0
3.0, 1.0, -0.5; 1.0, 1.0
2.0, 1.0, -0.5; 0.0, 1.0
2.0, 0.0, -0.5; 0.0, 0.0

 
22.12.2006  
 



Note / Question or Comment to the Help--Topic


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

637 Views

Untitledvor 0 min.
H.Brill31.05.2024
Sven Bader03.08.2021
ByteAttack04.02.2016
maxilars26.11.2015
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

iF (1x)


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