You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: chapters/vulkan_profiles.adoc
+23-3Lines changed: 23 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,9 +49,12 @@ For example:
49
49
50
50
This approach allows developers to target specific capability sets without being tied to a particular Vulkan version, providing more flexibility in application development.
51
51
52
-
== Official Profiles
52
+
== Maintained Profiles
53
53
54
-
The Khronos Group maintains several profiles, which are defined in the link:https://github.com/KhronosGroup/Vulkan-Profiles/tree/main/profiles[Vulkan-Profiles repository]. The only official profiles are the Khronos Roadmap profiles and the Android Baseline profile. The others are maintained by Google and LunarG:
54
+
The Khronos Group maintains several profiles, which are defined in the
@@ -115,7 +118,8 @@ By targeting this profile, developers can prepare their applications for future
115
118
116
119
=== Profile Versioning Strategy
117
120
118
-
Profiles use a year-based versioning scheme (e.g., 2022, 2023) to indicate when they were defined. This approach:
121
+
Profiles may use a year-based versioning scheme (e.g., 2022, 2023) to indicate
122
+
when they were defined. This approach:
119
123
120
124
* Provides clear temporal context for each profile
121
125
* Allows for the creation of new profiles that reflect evolving hardware capabilities
@@ -252,6 +256,19 @@ The key parts of a profile definition include:
252
256
* *Properties*: Required properties and limits
253
257
* *Formats*: Required format support with specific capabilities
254
258
259
+
=== Types of Vulkan Profiles
260
+
261
+
Vulkan Profiles can be applied for a multitude of use cases, including:
262
+
263
+
* *Roadmap profiles*: To express guidance on the future direction of Vulkan devices.
264
+
* *Platform profiles*: To express the Vulkan support available on different platforms.
265
+
* *Device profiles*: To express the Vulkan support of a single Vulkan driver on a Vulkan device.
266
+
* *Architecture profiles*: To express the Vulkan support of a class of GPUs.
267
+
* *Engine profiles*: To express some rendering code paths requirements of an engine.
268
+
* *Drivers bugs profiles*: To express capabilities that can't be used by an application.
269
+
270
+
These different types of profiles allow developers to target specific hardware configurations, platforms, or use cases, ensuring compatibility and optimal performance across a wide range of scenarios.
271
+
255
272
=== Creating Custom Profiles
256
273
257
274
Developers can create custom profiles to target specific hardware configurations or to define a baseline for their own applications. To create a custom profile:
@@ -519,3 +536,6 @@ For more information, refer to these resources:
519
536
- Contains profile definitions, library code, and tools
0 commit comments