Learning Vulkan.
Annotation
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing,
2016.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Cover; Copyright; Credits; About the Author; Acknowledgments; About the Reviewer; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Getting Started with the NextGen 3D Graphics API; Vulkan and its evolution; Vulkan versus OpenGL; Important jargons before we get started; Learning the fundamentals of Vulkan; Vulkan's execution model; Vulkan's queues; The object model; Object lifetime and command syntax; Error checking and validation; Understanding the Vulkan application; Driver; Application; WSI; SPIR-V; LunarG SDK; Getting started with the Vulkan programming model.
- Hardware initializationWindow presentation surfaces; Resource setup; Pipeline setup; Descriptor sets and descriptor pools; Shaders with SPIR-V; Pipeline management; Recording commands; Queue submission; Summary; Chapter 2: Your First Vulkan Pseudo Program; Installing Vulkan; The Hello World!!! pseudocode; Initialization
- a handshake with the device; Swapchain initialization
- querying the WSI extension; Command buffer initialization
- allocating command buffers; Resource objects
- managing images and buffers; Creating a presentation surface
- creating a swapchain; Creating a depth image.
- Resource allocation
- allocating and binding device memorySupplying shaders
- shader compilation into SPIR-V; Building layouts
- descriptor and pipeline layouts; Creating a Render Pass
- defining a pass attribute; Framebuffer
- connect drawing images to the Render Pass; Populating geometry
- storing a vertex into GPU memory; Pipeline state management
- creating pipelines; Defining states; Creating a graphics pipeline; Executing the Render Pass
- drawing Hello World!!!; Acquiring the drawing surface; Preparing the Render Pass control structure; Render Pass execution.
- Queue submission and synchronization
- sending jobsDisplaying with presentation layer
- rendering a triangle; Fitting it all together; Summary; Chapter 3: Shaking Hands with the Device; Getting started with the LunarG SDK; Setting up our first project with CMake; How to build the CMake file; Introduction to extensions; Querying layers and extensions; Creating a Vulkan instance; Enabling layers and extensions; Testing the enabled layers and extensions; Understanding physical and logical devices; Physical devices; Enumerating physical devices; Querying physical device extensions.
- Getting the properties of a physical deviceInterrogating memory properties from the physical device; Logical device; Creating a logical device; Waiting on the host; Losing the device; Understanding queues and queue families; Querying queue families; Storing the graphics queue handle; Creating a queue; Implementing devices and queues all together; Summary; Chapter 4: Debugging in Vulkan; Peeking into Vulkan debugging; Understanding LunarG validation layers and their features; Implementing debugging in Vulkan; Summary; Chapter 5: Command Buffer and Memory Management in Vulkan.