Metal by Tutorials (3rd Edition) Год издания: 2022 Автор: Caroline Begbie, Marius Horga Издательство: Razeware LLC ISBN: 978-1950325641 Язык: Английский Формат: PDF/EPUB Качество: Издательский макет или текст (eBook) Количество страниц: 788 Описание: This book will introduce you to graphics programming in Metal — Apple’s framework for programming on the GPU. Build a complete game engine in Metal!-Metal is a unified application programming interface (API) for the graphics processing unit, or GPU. It’s unified because it applies to both 3D graphics and data-parallel computation paradigms. Metal is a low-level API because it provides programmers near-direct access to the GPU. Finally, Metal is a low-overhead API because it reduces the central processing unit (CPU) cost by multi-threading and pre-compiling of resources. But beyond the technical definition, Metal is the most appropriate way to use the GPU’s parallel processing power to visualize data or solve numerical challenges. It’s also tailored to be used for machine learning, image/video processing or, as this book describes, graphics rendering. This book will introduce you to low-level graphics programming in Metal — Apple’s framework for programming on the graphics processing unit (GPU). As you progress through this book, you’ll learn many of the fundamentals that go into making a game engine and gradually put together your own engine. Once your game engine is complete, you’ll be able to put together 3D scenes and program your own simple 3D games. Because you’ll have built your 3D game engine from scratch, you’ll be able to customize every aspect of what you see on your screen. This book is for intermediate Swift developers interested in learning 3D graphics or gaining a deeper understanding of how game engines work.
Оглавление
Metal by Tutorials
Book License
Before You Begin
What You Need
Book Source Code & Forums
Dedications
About the Team
Acknowledgments
Introduction
Section I: Beginning Metal
Chapter 1: Hello, Metal!
Chapter 2: 3D Models
Chapter 3: The Rendering Pipeline
Chapter 4: The Vertex Function
Chapter 5: 3D Transformations
Chapter 6: Coordinate Spaces
Chapter 7: The Fragment Function
Chapter 8: Textures
Chapter 9: Navigating a 3D Scene
Chapter 10: Lighting Fundamentals
Section II: Intermediate Metal
Chapter 11: Maps & Materials
Chapter 12: Render Passes
Chapter 13: Shadows
Chapter 14: Deferred Rendering
Chapter 15: Tile-Based Deferred Rendering
Chapter 16: GPU Compute Programming
Chapter 17: Particle Systems
Chapter 18: Particle Behavior
Section III: Advanced Metal
Chapter 19: Tessellation & Terrains
Chapter 20: Fragment Post-Processing
Chapter 21: Imaged-Based Lighting
Chapter 22: Reflection & Refraction
Chapter 23: Animation
Chapter 24: Character Animation
Chapter 25: Managing Resources
Chapter 26: GPU-Driven Rendering
Section IV: Ray Tracing
Chapter 27: Rendering With Rays
Chapter 28: Advanced Shadows
Chapter 29: Advanced Lighting
Chapter 30: Metal Performance Shaders
Chapter 31: Performance Optimization
Chapter 32: Best Practices
Conclusion