primitive-types

___ tag123opengl ___ OpenGL (Open Graphics Library) ist ein Grafikstandard und eine API, die plattformunabhängig und für Desktops, Workstations und mobile Geräte verfügbar ist. Es wurde entwickelt, um hardwarebeschleunigtes Rendering bereitzustellen und bietet daher eine erheblich verbesserte Leistung gegenüber dem herkömmlichen Software-Rendering. OpenGL wird für Anwendungen wie CAD-Software und Computerspiele verwendet. Der OpenGL-Standard sowie OpenGL ES werden von der Khronos-Gruppe gesteuert. ___ qstnhdr ___ Warum gibt es GLint und GLfloat? [Duplikat] ___ tag123floatingpoint ___ Fließkommazahlen sind Näherungen reeller Zahlen, die größere Bereiche als Ganzzahlen darstellen können, aber die gleiche Menge an Speicher verwenden, auf Kosten niedrigerer Genauigkeit. Wenn es sich bei Ihrer Frage um kleine arithmetische Fehler (z. B. warum 0,2 + 0,1 ist gleich 0,300000001?) Oder um Dezimalwandlungsfehler handelt, lesen Sie bitte die unten verlinkte Seite "info" vor dem Posten. ___ tag123int ___ Ein Datentyp, der eine ganze Zahl darstellt. Eine ganze Zahl ist eine ganze Zahl, die negativ, positiv oder null sein kann. (d. h. ...- 2, -1, 0, 1, 2 ...) Verwenden Sie dieses Tag für Fragen zum Verwenden, Speichern oder Bearbeiten von Ganzzahlen. ___ answer12326419 ___

Weil ein int (hier zu stark vereinfachend) 32 Bit auf einem 32 Bit System und 64 Bit auf einem 64 Bit System ist - also ist gerade "ein int" kein universelles Konzept. Denken Sie daran, dass die Hardware, auf der der Grafikcode ausgeführt wird, ein anderes Hardwareteil als Ihre CPU ist, und dass neue Typen erforderlich sind. Durch die Verwendung eines eigenen Typedefs kann OpenGL sicherstellen, dass beim Senden der Daten an die Grafikkarte die richtige Anzahl an Bits richtig verpackt wird.

Es wäre möglich, dies mit Konvertierungsfunktionen zu tun, die die Unordnung von "verschiedenen Ints" abstrahieren, aber das würde eine Leistungseinbuße bedeuten, die im Allgemeinen nicht akzeptabel ist, wenn Sie über jede einzelne Zahl sprechen, die zu und von der Grafikkarte.

tl; dr Wenn Sie ein "int" verwenden, schreiben Sie mit der Hardware Ihres Prozessors. Bei Verwendung eines "GLInt" schreiben Sie mit der Hardware Ihrer Grafikkarte.

EDIT: Wie in den Kommentaren auf einem 64-Bit-Prozessor erwähnt, kann %code% aus Kompatibilitätsgründen 32 Bits haben (und wahrscheinlich auch werden). Historisch gesehen war es durch die 8-, 16- und 32-Bit-Hardware die native Größe des Prozessors, aber technisch gesehen ist es das, was der Compiler bei der Erstellung des Maschinencodes verwendet. Stützen auf @ Nicol Bolas und @ Mark Dickinson

    
___ tag123primitivetipes ___ Eingebettete Typen in einer beliebigen Programmiersprache, die axiomatisch definiert sind und nicht in andere Typen in der Sprache unterteilt werden können. ___ tag123class ___ Eine Vorlage zum Erstellen neuer Objekte, die die allgemeinen Zustände und Verhaltensweisen beschreibt. NICHT MIT CSS-KLASSEN VERWECHSELN. Verwenden Sie stattdessen [css]. ___ qstntxt ___

Ich verstehe, dass Open GL Zahlen verwenden muss, aber warum nicht einfach reguläre Ints und Floats oder die bereits vorhandenen Wrapper-Klassen verwenden (was immer nötig ist, damit die ganze Welt von Open GL gut zusammenpasst)? Gibt es einen Unterschied neben dem Namen und einem Namen, der ausschließlich in Open GL verwendet wird, oder sind sie bei einem anderen Namen so ähnlich?

    
___
6
Antworten

Programmieren von Datentypen

Ich versuche C zu lernen und habe das folgende kleine Programm entwickelt. %Vor% Das Programm kompiliert perfekt, aber die Antwort, die vom Programm zurückgegeben wird, macht keinen Sinn. Wenn ich 1.8 für die Höhe und 80 für das Gewicht ei...
26.07.2012, 14:40
9
Antworten

Kann ich einen primitiven Typ als Referenz in Java übergeben? [Duplikat]

Ich möchte eine Methode aufrufen, die möglicherweise verschiedene Versionen annehmen kann, d. h. die gleiche Methode für Eingabeparameter vom Typ: boolean Byte kurz int lang Das würde ich gerne tun, indem ich die Methode "überla...
07.09.2010, 20:09
1
Antwort

Warum gibt es GLint und GLfloat? [Duplikat]

Ich verstehe, dass Open GL Zahlen verwenden muss, aber warum nicht einfach reguläre Ints und Floats oder die bereits vorhandenen Wrapper-Klassen verwenden (was immer nötig ist, damit die ganze Welt von Open GL gut zusammenpasst)? Gibt es einen...
07.09.2012, 22:52