Szczegóły ebooka

OpenGL. Księga eksperta. Wydanie VII

OpenGL. Księga eksperta. Wydanie VII

Nicholas Haemel, Graham Sellers

Ebook
Biblioteka OpenGL jest potężnym systemem graficznym, doskonałym API do generowania grafiki trójwymiarowej w czasie rzeczywistym. System ten nadaje się znakomicie do wizualizacji wszelkiego rodzaju odwzorowań zjawisk fizycznych czy obiektów technicznych, a także do przedstawiania symulacji ze zmieniającymi się parametrami. Często jest wykorzystywany do pisania gier komputerowych. Daje możliwość tworzenia świetnej grafiki na wiele różnych platform z wykorzystaniem tych samych zestawów instrukcji. Co ważne, OpenGL jest całkowicie darmową biblioteką, a dostępność licznych rozszerzeń znakomicie zwiększa wachlarz jej zastosowań.

Niniejsza książka stanowi doskonałe wprowadzenie w tematykę OpenGL dla każdego programisty, nawet dla osób niezbyt biegłych w zagadnieniach grafiki komputerowej. Zawiera opis całego głównego API, kluczowych rozszerzeń i wszystkich typów shaderów z uwzględnieniem najnowszych elementów biblioteki. Wyjaśniono tu zasady działania OpenGL i opisano zagadnienia potoków graficznych. Stopniowo czytelnik jest zaznajamiany z coraz bardziej złożonymi technikami. W książce znalazły się liczne przykłady kodu działającego na kilku popularnych platformach. Warto podkreślić, że autorzy poza API przedstawili również najlepsze praktyki programistyczne.

W tej książce opisano między innymi:
  • podstawy (w tym matematyczne) grafiki 3D czasu rzeczywistego
  • najważniejsze techniki renderowania, przekształcania i teksturowania obiektów
  • shadery i język GLSL (OpenGL Shading Language)
  • kwestie zarządzania danymi i kontroli dostępu do tych danych
  • techniki budowania większych aplikacji i wdrażania ich na wielu platformach
  • rendering zaawansowany: symulację oświetlenia i efekty artystyczne
  • sposoby poprawiania wydajności, redukcji narzutu CPU i analizy zachowania GPU
  • nowości w OpenGL, takie jak kompresja tekstur, rysowanie tekstu, rendering czcionek za pomocą pól odległości, wysokiej jakości filtrowanie tekstur i użycie OpenMP

OpenGL? Kreatywnych ogranicza tylko wyobraźnia!

Spis rysunków (11)

Spis tabel (17)

Spis listingów (19)

O autorze (27)

Przedmowa (29)

Wstęp (31)

CZĘŚĆ I. PODSTAWY

Rozdział 1. Wprowadzenie (39)

  • OpenGL i potok graficzny (39)
  • Początki i ewolucja OpenGL (41)
  • Prymitywy, potoki i piksele (44)
  • Podsumowanie (45)

Rozdział 2. Pierwszy program OpenGL (47)

  • Tworzenie prostej aplikacji (47)
  • Korzystanie z shaderów (49)
  • Rysowanie pierwszego trójkąta (55)
  • Podsumowanie (57)

Rozdział 3. Wzdłuż potoku graficznego (59)

  • Przekazywanie danych do shadera wierzchołków (59)
  • Przekazywanie danych z jednego etapu do drugiego (61)
  • Teselacja (64)
  • Shadery geometrii (66)
  • Składanie prymitywów, przycinanie i rasteryzacja (68)
  • Shadery fragmentów (71)
  • Operacje dotyczące bufora ramki (74)
  • Shadery obliczeniowe (75)
  • Korzystanie z rozszerzeń OpenGL (76)
  • Podsumowanie (80)

Rozdział 4. Matematyka w grafice 3D (81)

  • Czy to ten okrutny rozdział o matematyce? (81)
  • Krótki kurs matematyki dotyczącej grafiki 3D (82)
  • Zasady działania przekształceń (91)
  • Interpolacja, linie, krzywe i powierzchnie parametryczne (106)
  • Podsumowanie (112)

Rozdział 5. Dane (115)

  • Bufory (115)
  • Zmienne typu uniform (129)
  • Bloki magazynowe shadera (147)
  • Liczniki niepodzielne (152)
  • Tekstury (156)
  • Podsumowanie (196)

Rozdział 6. Shadery i programy (197)

  • Opis języka (197)
  • Kompilacja, łączenie i sprawdzanie programów (207)
  • Podsumowanie (222)

CZĘŚĆ II. ZGŁĘBIANIE TEMATU

Rozdział 7. Przetwarzanie wierzchołków i polecenia rysowania (225)

  • Przetwarzanie wierzchołków (225)
  • Polecenia rysowania (231)
  • Przechowywanie przekształconych wierzchołków (254)
  • Przycinanie (267)
  • Podsumowanie (273)

Rozdział 8. Przetwarzanie prymitywów (275)

  • Teselacja (275)
  • Shadery geometrii (297)
  • Podsumowanie (322)

Rozdział 9. Przetwarzanie fragmentów i bufor ramki (323)

  • Shadery fragmentów (323)
  • Testy dla poszczególnych fragmentów (326)
  • Wyjście koloru (336)
  • Rendering pozaekranowy (342)
  • Antyaliasing (360)
  • Zaawansowane formaty bufora ramki (373)
  • Sprite'y punktów (390)
  • Pobieranie utworzonego obrazu (398)
  • Podsumowanie (404)

Rozdział 10. Shadery obliczeniowe (405)

  • Korzystanie z shaderów obliczeniowych (405)
  • Przykłady (414)
  • Podsumowanie (433)

Rozdział 11. Zaawansowane zarządzanie danymi (435)

  • Eliminacja dowiązań (435)
  • Rzadko wypełnione tekstury (440)
  • Kompresja tekstur (445)
  • Upakowane formaty danych (454)
  • Wysokiej jakości filtrowanie tekstur (455)
  • Podsumowanie (458)

Rozdział 12. Sterowanie potokiem graficznym i monitorowanie go (459)

  • Kolejki (459)
  • Synchronizacja w OpenGL (477)
  • Podsumowanie (481)

CZĘŚĆ III. W PRAKTYCE

Rozdział 13. Techniki renderowania (485)

  • Modele oświetlenia (485)
  • Rendering niefotorealistyczny (520)
  • Alternatywne metody renderowania (524)
  • Grafika dwuwymiarowa (551)
  • Podsumowanie (561)

Rozdział 14. OpenGL o wysokiej wydajności (563)

  • Optymalizacja wydajności CPU (563)
  • OpenGL o niskim narzucie (576)
  • Narzędzia do analizy wydajności (595)
  • Podsumowanie (615)

Rozdział 15. Debugowanie i stabilność (617)

  • Debugowanie własnych aplikacji (617)
  • Bezpieczeństwo i szybkość (623)
  • Podsumowanie (626)

Dodatek A. Narzędzia związane z przykładami (627)

Dodatek B. Format pliku SBM (633)

Dodatek C. Funkcje i wersje OpenGL (641)

Dodatek D. Słowniczek (663)

Skorowidz (669)

  • Tytuł: OpenGL. Księga eksperta. Wydanie VII
  • Autor: Graham Sellers, Richard S. Wright Jr., Nicholas Haemel
  • Tytuł oryginału: OpenGL Superbible: Comprehensive Tutorial and Reference (7th Edition)
  • Tłumaczenie: Rafał Jońca
  • ISBN: 978-83-283-2110-6, 9788328321106
  • Data wydania: 2016-05-23
  • Format: Ebook
  • Identyfikator pozycji: opglk7
  • Wydawca: Helion