Diese kleine Bibliothek definiert den Half Typ, bei dem es sich um einen 16-Bit-Gleitkommawert mit halber Genauigkeit handelt.
Der Half -Typ verwendet überladene Operatoren, sodass Sie ihn wie einen Single oder Double -Typ verwenden können (allerdings mit geringerer Genauigkeit).
Die Neslib.Half -Einheit definiert außerdem einen Datensatzhelfer für den Half -Typ, um Zugriff auf die Interna des Half -Typs zu ermöglichen (ähnlich wie es Datensatzhelfer für die Typen Single und Double gibt).
Der Half -Typ wird von einigen Bildformaten verwendet, um einen höheren Dynamikbereich als 8 Bit pro Kanal bereitzustellen, ohne auf den Overhead der Verwendung von 32 Bit pro Kanal zurückgreifen zu müssen. Sie können es auch für eine effizientere Speicherung von Gleitkommawerten verwenden, falls der Wert ohne Präzisionsverlust in eine Hälfte eingepasst werden kann. Sie können GetSmallestFloatType verwenden, um zu bestimmen, ob ein Double Wert ohne Präzisionsverlust in einen Single oder Half passt.
Diese Bibliothek verwendet schnelle Konvertierungsalgorithmen, die von Jeroen van der Zijp entwickelt wurden, um schnell, aber genau von Half in Single und umgekehrt zu konvertieren (siehe seinen Artikel „Fast Half Float Conversions“).
Neslib.Half ist unter der Simplified BSD License lizenziert.
Weitere Informationen finden Sie in License.txt.