Cargando…

Learning Vulkan.

Annotation

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Singh, Parminder
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.