E-book details

MonoGame. Podstawowe koncepcje grafiki 3D

MonoGame. Podstawowe koncepcje grafiki 3D

Damian Kaniewski, Tomasz Dziubak, Jacek Matulewski

Ebook

Poznaj tajniki programowania grafiki 3D we frameworku MonoGame, dzięki któremu powstały takie hity jak Stardew Valley czy Carrion. Monogame jako kontynuator XNA oferuje twórcom gier ogromne perspektywy, swobodę i możliwość dostarczania gier na wszystkie najpopularniejsze systemy operacyjne, łącznie z mobilnymi, pozostając przy tym całkowicie darmowym. Książka adresowana jest do wszystkich zainteresowanych tworzeniem gier i mających przynajmniej podstawową wiedzę o wykorzystywanym w Monogame języku programowania C#.

MonoGame. Podstawowe koncepcje grafiki 3D dotyczy programowania grafiki 3D, co oznacza, że do jej tworzenia wykorzystuje się kod, a nie edytor sceny obsługiwany myszką. Autorzy wyczerpująco omówili kluczowe zagadnienia, jak rozdzielenie definiowanie figur i brył, poruszanie nimi na scenie, oświetlenie i cienie, mieszanie kolorów czy odwzorowanie tekstur. Wyjaśnione są także kwestie wykraczające poza podstawy grafiki 3D i dotykające tworzenia gier, jak komponentyzacja produkcji gier czy kwestie projektowania systemów sterowania. W rezultacie Czytelnik otrzymuje książkę na temat grafiki 3D w MonoGame łączącą teorię z wykorzystaniem praktycznych przykładów.

Dzięki książce:

  • zgłębisz programowanie grafiki 3D
  • zaczniesz tworzyć trójwymiarowe gry wideo
  • poznasz tajniki frameworka MonoGame
  • dowiesz się o wykorzystaniu C# w gamedevie

Wstęp

CZĘŚĆ I. Programowanie grafiki 3D z użyciem MonoGame

  • Rozdział 1. Tworzenie gry MonoGame
    • Narzędzia i środowisko pracy
    • Instalacja i konfiguracja środowiska
    • Pierwszy projekt
    • Klasa gry
  • Rozdział 2. Tworzymy pierwszy obiekt
    • Werteksy, efekt i rysowanie trójkąta
    • Nawijanie
    • Prymitywy
    • Kolory jako własności werteksów
  • Rozdział 3. Macierze i kamera
    • Podstawowe przekształcenia
    • Rzutowanie sceny na ekran
    • Ustawienie kamery
    • Prosta animacja
    • Bufor werteksów
  • Rozdział 4. Komponenty gry
    • Komponenty - wprowadzenie
    • Pierwszy komponent
    • Kontrola ułożenia prostopadłościanu
  • Rozdział 5. Oświetlenie wirtualnej sceny. Model Phonga
    • Model oświetlenia Phonga
    • Wektory normalne
    • Definiowanie własnego formatu werteksów
    • Definiowanie wektorów normalnych modelu
    • Oświetlenie domyślne
    • Składowe światła w modelu oświetlenia Phonga
    • Eksperymenty z własnościami materiału i źródłami światła
    • Różnice w cieniowaniu dla werteksów i dla pikseli
    • Uśrednienie i interpolacja normalnych
  • Rozdział 6. Cienie rzucane
  • Rozdział 7. Mieszanie kolorów
    • Alpha blending
    • Przezroczystość
    • Mgła
  • Rozdział 8. Odwzorowanie tekstur
    • Teksturowanie
    • Adaptacja aktora
    • Dodawanie tekstur do projektu
    • Zawijanie tekstur
    • Wiele obrazów w jednej teksturze
    • Przezroczystość
  • Rozdział 9. Kontrolery gier
    • Sterowanie
    • Klawiatura
    • Wykrywanie zmian w stanie kontrolerów
    • Gamepad
    • Mysz
  • Rozdział 10. Sfera, bufor indeksów i cieniowanie Phonga
    • Komponent
    • Bufor indeksów
    • Konstrukcja sfery
    • Oświetlenie - uśrednianie normalnych
    • Teksturowanie
    • Ostatnie szlify
  • ROZDZIAŁ 11. Skybox i odwzorowywanie otoczenia
    • Skybox
    • Alternatywne rozwiązanie
    • Odwzorowanie otoczenia

CZĘŚĆ II. Breakout 3D

  • Rozdział 12. Projekt gry
    • Tworzenie projektu gry
    • Ustawienie kamery
    • Wczytywanie i przygotowanie modelu
  • Rozdział 13. Plansza, paletka oraz cegły
    • Plansza
    • Paletka
    • Cegły
  • Rozdział 14. Piłka
  • Rozdział 15. Ostatnie szlify
    • Zmiana pozycji kamery
    • Interfejs 2D
    • Optymalizacja obiektów gry
    • Różne kolory cegieł

CZĘŚĆ III. HLSL

  • Rozdział 16. Język HLSL
    • Shadery
    • Środowisko programistyczne FX Composer
    • Typy zmiennych w HLSL
    • Semantyki
    • Funkcje, struktury, pętle i instrukcje warunkowe
    • Pliki efektu i techniki
  • Rozdział 17. Tworzenie własnego efektu HLSL
    • Pierwszy własny efekt
    • Definiowanie zmiennych globalnych
    • Prezentacja pozycji za pomocą koloru
    • Wykorzystanie efektów w projekcie gry MonoGame
  • Rozdział 18. Implementacja oświetlenia Phonga w shaderach
    • Model Phonga
    • Wprowadzenie do optyki
    • Implementacja modelu Phonga w efekcie HLSL
    • Światło emisji i otoczenia
    • Światło rozproszone
    • Połysk
    • Oświetlenie per pixel
    • Użycie efektu w MonoGame
  • Rozdział 19. Podstawy teksturowania z wykorzystaniem HLSL
    • Wprowadzenie
    • Implementacja
    • Użycie efektu w MonoGame

Skorowidz

  • Title: MonoGame. Podstawowe koncepcje grafiki 3D
  • Author: Damian Kaniewski, Tomasz Dziubak, Jacek Matulewski
  • ISBN: 978-83-289-0959-5, 9788328909595
  • Date of issue: 2023-10-10
  • Format: Ebook
  • Item ID: twoapl
  • Publisher: Helion