2016-02-16 01:53:44 -08:00
|
|
|
vkCreateComputePipelines(3)
|
|
|
|
===========================
|
|
|
|
|
|
|
|
Name
|
|
|
|
----
|
|
|
|
vkCreateComputePipelines - Creates a new compute pipeline object.
|
|
|
|
|
|
|
|
C Specification
|
|
|
|
---------------
|
|
|
|
|
|
|
|
include::../protos/vkCreateComputePipelines.txt[]
|
|
|
|
|
|
|
|
Parameters
|
|
|
|
----------
|
|
|
|
|
|
|
|
pname:device::
|
|
|
|
A handle to the device to use to create the new compute pipelines.
|
|
|
|
|
|
|
|
pname:pipelineCache::
|
|
|
|
A handle to a pipeline cache from which the result of previous compiles may
|
|
|
|
be retrieved, and to which the result of this compile may be stored.
|
|
|
|
|
|
|
|
pname:createInfoCount::
|
|
|
|
The number of pipelines to create.
|
|
|
|
|
|
|
|
pname:pCreateInfos::
|
|
|
|
Pointer to an array of pname:createInfoCount
|
|
|
|
sname:VkComputePipelineCreateInfo structures defining the contents of
|
|
|
|
the new pipelines.
|
|
|
|
|
|
|
|
pname:pPipelines::
|
|
|
|
A pointer to an array to receive the handles to the new compute pipeline
|
|
|
|
objects.
|
|
|
|
|
|
|
|
Description
|
|
|
|
-----------
|
|
|
|
|
|
|
|
fname:vkCreateComputePipelines creates new compute pipeline objects using the device specified in
|
|
|
|
pname:device and the creation information specified in the structures pointed to by pname:pCreateInfos and
|
|
|
|
deposits the resulting handles in the array pointed to by pname:pPipelines. The definition
|
|
|
|
of slink:VkComputePipelineCreateInfo is:
|
|
|
|
|
|
|
|
include::../structs/VkComputePipelineCreateInfo.txt[]
|
|
|
|
|
|
|
|
.Create Info Details
|
|
|
|
|
|
|
|
- pname:sType indicates the type of this structure and must be
|
|
|
|
ename:VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO.
|
|
|
|
|
|
|
|
- pname:pNext is a pointer to an extension-specific structure (can be NULL).
|
|
|
|
|
|
|
|
- pname:stage is a sname:VkPipelineShaderStageCreateInfo describing the
|
|
|
|
compute shader.
|
|
|
|
|
|
|
|
- pname:flags controls how the driver will create the pipeline.
|
|
|
|
|
|
|
|
- pname:layout the description of binding locations used by both the
|
|
|
|
pipeline and the descritor sets.
|
|
|
|
|
|
|
|
- pname:basePipelineHandle the pipeline to derive from (can be
|
2016-04-21 01:08:38 -07:00
|
|
|
code:VK_NULL_HANDLE, if pipeline is not derived).
|
2016-02-16 01:53:44 -08:00
|
|
|
|
|
|
|
- pname:basePipelineIndex the index into the pname:pCreateInfos parameter
|
|
|
|
to fname:vkCreateComputePipelines.
|
|
|
|
|
|
|
|
The parameters pname:basePipelineHandle and pname:basePipelineIndex are ignored
|
|
|
|
unless pname:flags has the ename:VK_PIPELINE_CREATE_DERIVATIVE_BIT bit set. If
|
|
|
|
using the pname:basePipelineIndex parameter, the index must refer to a
|
Change log for April 29, 2016 Vulkan 1.0.12 spec update:
* Bump API patch number and header version number to 12 for this
update.
Github Issues:
* Change valid usage statements intended to be "sub-points" to
be actual sub-points (public issue 66).
* Replace double negation in description of
slink:VkRenderPassBeginInfo::pname:pClearValues (based on public
merge 142).
* Cleanup minor typos in spec, ref pages and XML, including those
proposed in public pull requests 144, 150, 151, 167, 168, 181, and
186.
* Use *strict subset* in describing the partial order of memory
property types for slink:VkMemoryType, and update the style guide
accordingly (public issue 190).
* Fix various "a image" -> "an image" typos (public issue 191).
* Note in the <<fundamentals-validusage,Valid Usage>> and
<<extensions-interactions,Extension Interactions>> sections that
structures defined by extensions which may be passed in structure
chains using the ptext:pNext member must: include initial
ptext:sType and ptext:pNext members (public issue 192).
Internal Issues:
* Remove duplicate language from the description of the pname:fence
parameter to flink:vkQueueSubmit and improve validity language
(internal issue 91).
* Added documentation for "optional" attribute to XML readme.tex/pdf
(internal issue 149).
* Clarify the host-side data validity rules and behavior of
flink:vkFlushMappedMemoryRanges and
flink:vkInvalidateMappedMemoryRanges (internal issue 266).
Other Commits:
* Added clarification to flink:vkCmdFillBuffer regarding the use of
ename:VK_WHOLE_SIZE.
* Fixed and documented implementation of "validextensionstructs"
attribute. in XML processing scripts and readme.tex/pdf.
* Add missing validity statements to flink:vkResetEvent and
flink:vkCmdResetEvent.
* Fix validity for the
ename:VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT flag.
Correct all the draw/dispatch commands to mention optimally tiled
images as well as linear tiled images, and say image VIEWS instead
of images. Add validity statement to flink:vkCmdBlitImage
* Replace the {apiname} macro with hardcoded "Vulkan", now that we've
committed to that name.
* Add the VK_AMD_rasterization_order extension to vk.xml.
2016-04-29 14:53:46 +02:00
|
|
|
pname:pCreateInfos parameter passed to vkCreateComputePipelines that appeared
|
2016-02-16 01:53:44 -08:00
|
|
|
earlier than the current sname:VkComputePipelineCreateInfo in the list. The
|
|
|
|
parameters pname:basePipelineHandle and pname:basePipelineIndex are mutually
|
|
|
|
exclusive. If you specify a valid pname:basePipelineHandle,
|
|
|
|
pname:basePipelineIndex must be set to -1. If you specify a valid
|
2016-04-21 01:08:38 -07:00
|
|
|
pname:basePipelineIndex, pname:basePipelineHandle must be code:VK_NULL_HANDLE.
|
2016-02-16 01:53:44 -08:00
|
|
|
|
|
|
|
include::../validity/protos/vkCreateComputePipelines.txt[]
|
|
|
|
|
|
|
|
See Also
|
|
|
|
--------
|
|
|
|
|
|
|
|
flink:vkCreateGraphicsPipelines, flink:vkCmdBindPipeline
|
|
|
|
|
|
|
|
include::footer.txt[]
|