// Copyright 2014-2021 The Khronos Group, Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

include::{generated}/meta/{refprefix}VK_GGP_stream_descriptor_surface.txt[]

=== Other Extension Metadata

*Last Modified Date*::
    2019-01-28
*IP Status*::
    No known IP claims.
*Contributors*::
  - Jean-Francois Roy, Google
  - Brad Grantham, Google
  - Connor Smith, Google
  - Cort Stratton, Google
  - Hai Nguyen, Google
  - Ian Elliott, Google
  - Jesse Hall, Google
  - Jim Ray, Google
  - Katherine Wu, Google
  - Kaye Mason, Google
  - Kuangye Guo, Google
  - Mark Segal, Google
  - Nicholas Vining, Google
  - Paul Lalonde, Google
  - Richard O'Grady, Google

=== Description

The `VK_GGP_stream_descriptor_surface` extension is an instance extension.
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by
the `apiext:VK_KHR_surface` extension) that refers to a Google Games
Platform code:GgpStreamDescriptor.

include::{generated}/interfaces/VK_GGP_stream_descriptor_surface.txt[]

=== Version History

 * Revision 1, 2018-11-26 (Jean-Francois Roy)
   - Initial revision.
