Przejdź do zawartości

Programowanie w systemie UNIX/OpenGL

Z Wikibooks, biblioteki wolnych podręczników.

wersje

[edytuj]
  • legacy
  • modern[1]

Języki

[edytuj]

Programowanie OpenGL z użyciem:

testy

[edytuj]
ubuntu-drivers devices

Przykładowy wynik:

== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001184sv00001458sd00003603bc03sc00i00
vendor   : NVIDIA Corporation
model    : GK104 [GeForce GTX 770]
driver   : nvidia-driver-470 - distro non-free recommended
driver   : nvidia-driver-390 - distro non-free
driver   : nvidia-driver-450-server - distro non-free
driver   : nvidia-driver-470-server - distro non-free
driver   : nvidia-driver-418-server - distro non-free
driver   : xserver-xorg-video-nouveau - distro free builtin

Biblioteki

[edytuj]
  • glm = OpenGL Mathematics (GLM)
  • glfw = is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.

GUI

[edytuj]

OpenGL Mathematics

[edytuj]
  • glm [2] OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications.
  • imath is a C++ and python library of 2D and 3D vector, matrix, and math operations for computer graphics

Programy

[edytuj]

Dokumentacja

[edytuj]
 OpenGL is right handed in object space and world space. But in window space (aka screen space) we are suddenly left handed.[5]


Formaty pixeli

[edytuj]

Wyliczeniowe typy pixeli w OpenGL:[6]

  • GL_(UNSIGNED_)BYTE: 1 byte
  • GL_(UNSIGNED_)SHORT: 2 bytes
  • GL_(UNSIGNED_)INT: 4 bytes
  • GL_HALF_FLOAT: 2 bytes
  • GL_FLOAT: 4 bytes


przykłady

[edytuj]

Zobacz również

[edytuj]
  • apitrace śledzenie wywołań API OpenGL, Direct3D i DirectDraw do pliku

Źródła

[edytuj]
  1. vispy : modern-gl
  2. Mathematics library = GLM
  3. Red book
  4. Blue book
  5. stackoverflow question: is-opengl-coordinate-system-left-handed-or-right-handed
  6. khronos : Pixel Transfer