public class ShadercSpvc
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
ShadercSpvc.Functions
Contains the function pointers loaded from the shaderc
SharedLibrary. |
| Modifier and Type | Field and Description |
|---|---|
static int |
shaderc_spvc_decoration_aliased
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_arraystride
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_binding
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_block
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_builtin
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_centroid
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_colmajor
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_component
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_descriptorset
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_flat
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_index
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_location
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_matrixstride
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_nocontraction
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_nonreadable
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_nonwritable
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_noperspective
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_offset
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_restrict
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_rowmajor
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_specid
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_decoration_uniform
SPIR-V decorations supported by spvc.
|
static int |
shaderc_spvc_execution_model_fragment
shaderc_spvc_execution_model |
static int |
shaderc_spvc_execution_model_glcompute
shaderc_spvc_execution_model |
static int |
shaderc_spvc_execution_model_vertex
shaderc_spvc_execution_model |
static int |
shaderc_spvc_msl_platform_ios
Enum values:
|
static int |
shaderc_spvc_msl_platform_macos
Enum values:
|
static int |
shaderc_spvc_status_compilation_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_configuration_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_internal_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_invalid_out_param
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_missing_context_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_success
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_transformation_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_uninitialized_compiler_error
Return code for spvc API calls.
|
static int |
shaderc_spvc_status_validation_error
Return code for spvc API calls.
|
| Modifier and Type | Method and Description |
|---|---|
static org.lwjgl.system.SharedLibrary |
getLibrary()
Returns the shaderc
SharedLibrary. |
static int |
nshaderc_spvc_add_msl_resource_binding(long context,
long binding)
Unsafe version of:
add_msl_resource_binding |
static int |
nshaderc_spvc_add_msl_resource_binding(long context,
long binding,
long __functionAddress)
Unsafe version of:
add_msl_resource_binding |
static void |
nshaderc_spvc_compile_options_set_entry_point(long options,
long entry_point)
Unsafe version of:
compile_options_set_entry_point |
static long |
nshaderc_spvc_compile_options_set_for_fuzzing(long options,
long data,
long size)
Unsafe version of:
compile_options_set_for_fuzzing |
static void |
nshaderc_spvc_compile_options_set_msl_discrete_descriptor_sets(long options,
long descriptors,
long num_descriptors)
Unsafe version of:
compile_options_set_msl_discrete_descriptor_sets |
static long |
nshaderc_spvc_context_get_messages(long context)
Unsafe version of:
context_get_messages |
static void |
nshaderc_spvc_get_combined_image_samplers(long context,
long samplers,
long num_samplers)
Unsafe version of:
get_combined_image_samplers |
static int |
nshaderc_spvc_get_decoration(long context,
int id,
int decoration,
long argument)
Unsafe version of:
get_decoration |
static int |
nshaderc_spvc_get_workgroup_size(long context,
long function_name,
int execution_model,
long workgroup_size)
Unsafe version of:
get_workgroup_size |
static int |
nshaderc_spvc_initialize_for_glsl(long context,
long source,
long source_len,
long options)
Unsafe version of:
initialize_for_glsl |
static int |
nshaderc_spvc_initialize_for_hlsl(long context,
long source,
long source_len,
long options)
Unsafe version of:
initialize_for_hlsl |
static int |
nshaderc_spvc_initialize_for_msl(long context,
long source,
long source_len,
long options)
Unsafe version of:
initialize_for_msl |
static int |
nshaderc_spvc_initialize_for_vulkan(long context,
long source,
long source_len,
long options)
Unsafe version of:
initialize_for_vulkan |
static int |
nshaderc_spvc_needs_buffer_size_buffer(long context,
long b)
Unsafe version of:
needs_buffer_size_buffer |
static long |
nshaderc_spvc_result_get_binary_output(long result)
Unsafe version of:
result_get_binary_output |
static long |
nshaderc_spvc_result_get_string_output(long result)
Unsafe version of:
result_get_string_output |
static void |
nshaderc_spvc_set_name(long context,
int id,
long name)
Unsafe version of:
set_name |
static int |
shaderc_spvc_add_msl_resource_binding(long context,
ShadercSPVCMSLResourceBinding binding)
Adds a binding to indicate the MSL buffer, texture or sampler index to use for a particular SPIR-V description set and binding.
|
static void |
shaderc_spvc_build_combined_image_samplers(long context)
Analyzes all separate image and samplers used from the currently selected entry point, and re-routes them all to a combined image sampler instead.
|
static long |
shaderc_spvc_compile_options_clone(long options)
Returns a copy of the given options.
|
static long |
shaderc_spvc_compile_options_create()
Creates default compiler options.
|
static void |
shaderc_spvc_compile_options_destroy(long options)
Destroys the compilation options.
|
static void |
shaderc_spvc_compile_options_set_emit_line_directives(long options,
boolean b) |
static void |
shaderc_spvc_compile_options_set_entry_point(long options,
java.nio.ByteBuffer entry_point)
Sets the entry point.
|
static void |
shaderc_spvc_compile_options_set_entry_point(long options,
java.lang.CharSequence entry_point)
Sets the entry point.
|
static void |
shaderc_spvc_compile_options_set_es(long options,
boolean b)
Force interpretion as ES, or not.
|
static void |
shaderc_spvc_compile_options_set_fixup_clipspace(long options,
boolean b)
If true (default is false):
GLSL: map depth from Vulkan/D3D style to GL style, i.e.
|
static void |
shaderc_spvc_compile_options_set_flatten_multidimensional_arrays(long options,
boolean b)
If true, flatten multidimensional arrays, e.g.
|
static void |
shaderc_spvc_compile_options_set_flatten_ubo(long options,
boolean b)
Flatten uniform or push constant variable into
(i|u)vec4 array. |
static void |
shaderc_spvc_compile_options_set_flip_vert_y(long options,
boolean b)
If true invert
gl_Position.y or equivalent. |
static long |
shaderc_spvc_compile_options_set_for_fuzzing(long options,
java.nio.ByteBuffer data)
Fill options with given data.
|
static void |
shaderc_spvc_compile_options_set_glsl_emit_push_constant_as_ubo(long options,
boolean b)
If true, emit push constants as uniform buffer objects.
|
static void |
shaderc_spvc_compile_options_set_glsl_language_version(long options,
int version)
Set GLSL language version.
|
static void |
shaderc_spvc_compile_options_set_hlsl_point_coord_compat(long options,
boolean b)
If true, ignore
PointCoord. |
static void |
shaderc_spvc_compile_options_set_hlsl_point_size_compat(long options,
boolean b)
If true, ignore
PointSize. |
static void |
shaderc_spvc_compile_options_set_hlsl_shader_model(long options,
int model)
Set HLSL shader model.
|
static void |
shaderc_spvc_compile_options_set_msl_argument_buffers(long options,
boolean b)
Enable use of MSL 2.0 indirect argument buffers.
|
static void |
shaderc_spvc_compile_options_set_msl_buffer_size_buffer_index(long options,
int index)
Set the index in the buffer size in the buffer for MSL.
|
static void |
shaderc_spvc_compile_options_set_msl_capture(long options,
boolean b)
If true, capture MSL output to buffer.
|
static void |
shaderc_spvc_compile_options_set_msl_discrete_descriptor_sets(long options,
java.nio.IntBuffer descriptors)
When using MSL argument buffers, force "classic" MSL 1.0 binding for the given descriptor sets.
|
static void |
shaderc_spvc_compile_options_set_msl_domain_lower_left(long options,
boolean b)
If true, flip the Y-coord of the built-in
TessCoord. |
static void |
shaderc_spvc_compile_options_set_msl_enable_point_size_builtin(long options,
boolean b)
Set whether or not
PointSize builtin is used for MSL shaders. |
static void |
shaderc_spvc_compile_options_set_msl_language_version(long options,
int version)
Set MSL language version.
|
static void |
shaderc_spvc_compile_options_set_msl_pad_fragment_output(long options,
boolean b)
If true, pad MSL fragment output.
|
static void |
shaderc_spvc_compile_options_set_msl_platform(long options,
int platform)
Choose MSL platform.
|
static void |
shaderc_spvc_compile_options_set_msl_swizzle_texture_samples(long options,
boolean b)
If true, swizzle MSL texture samples.
|
static void |
shaderc_spvc_compile_options_set_optimize(long options,
boolean b)
Set if optimization should be performed.
|
static void |
shaderc_spvc_compile_options_set_remove_unused_variables(long options,
boolean b)
If true, unused variables will not appear in the output.
|
static void |
shaderc_spvc_compile_options_set_robust_buffer_access_pass(long options,
boolean b)
If true, enable robust buffer access pass in the spirv-opt, meaning:
|
static void |
shaderc_spvc_compile_options_set_separate_shader_objects(long options,
boolean b)
If true,
gl_PerVertex is explicitly redeclared in vertex, geometry and tessellation shaders. |
static void |
shaderc_spvc_compile_options_set_source_env(long options,
int env,
int version)
Sets the source shader environment, affecting which warnings or errors will be issued during validation.
|
static void |
shaderc_spvc_compile_options_set_target_env(long options,
int env,
int version)
Sets the target shader environment, if this is different from the source environment, then a transform between the environments will be performed if
possible.
|
static void |
shaderc_spvc_compile_options_set_validate(long options,
boolean b)
Set if validation should be performed.
|
static void |
shaderc_spvc_compile_options_set_vulkan_semantics(long options,
boolean b)
If true, Vulkan GLSL features are used instead of GL-compatible features.
|
static int |
shaderc_spvc_compile_shader(long context,
long result)
Given an initialized compiler, generates a shader of the appropriate language.
|
static long |
shaderc_spvc_context_create()
Create a spvc state handle.
|
static void |
shaderc_spvc_context_destroy(long context)
Release resources.
|
static java.lang.String |
shaderc_spvc_context_get_messages(long context)
Get validation/compilation error or informational messages.
|
static void |
shaderc_spvc_context_set_use_spvc_parser(long context,
boolean b)
If true, use spvc built in parser to generate IR for spirv-cross, otherwise use spirv-cross's implementation.
|
static void |
shaderc_spvc_get_combined_image_samplers(long context,
ShadercSPVCCombinedImageSampler samplers,
org.lwjgl.PointerBuffer num_samplers)
Returns the combined image samplers.
|
static int |
shaderc_spvc_get_decoration(long context,
int id,
int decoration,
java.nio.IntBuffer argument)
Get spirv_cross decoration.
|
static int |
shaderc_spvc_get_workgroup_size(long context,
java.nio.ByteBuffer function_name,
int execution_model,
ShadercSPVCWorkgroupSize.Buffer workgroup_size)
Gets workgroup size for an entry point defined by a given execution model and function name.
|
static int |
shaderc_spvc_get_workgroup_size(long context,
java.lang.CharSequence function_name,
int execution_model,
ShadercSPVCWorkgroupSize.Buffer workgroup_size)
Gets workgroup size for an entry point defined by a given execution model and function name.
|
static int |
shaderc_spvc_initialize_for_glsl(long context,
java.nio.IntBuffer source,
long options)
Takes SPIR-V as a sequence of 32-bit words, validates it, then creates the internal compiler for translating to GLSL and performing reflection.
|
static int |
shaderc_spvc_initialize_for_hlsl(long context,
java.nio.IntBuffer source,
long options)
Takes SPIR-V as a sequence of 32-bit words, validates it, then creates the internal compiler for translating to HLSL and performing reflection.
|
static int |
shaderc_spvc_initialize_for_msl(long context,
java.nio.IntBuffer source,
long options)
Takes SPIR-V as a sequence of 32-bit words, validates it, then creates the internal compiler for translating to MSL and performing reflection.
|
static int |
shaderc_spvc_initialize_for_vulkan(long context,
java.nio.IntBuffer source,
long options)
Takes SPIR-V as a sequence of 32-bit words, validates it, then creates the internal compiler for translating to Vulkan and performing reflection.
|
static int |
shaderc_spvc_needs_buffer_size_buffer(long context,
java.nio.ByteBuffer b)
Gets whether or not the shader needes a buffer of buffer sizes.
|
static long |
shaderc_spvc_result_create()
Creates an instant of compilation result data structure.
|
static void |
shaderc_spvc_result_destroy(long result)
Destroys the resources held by the result object.
|
static int |
shaderc_spvc_result_get_binary_length(long result)
Get length of validation/compilation result as a binary buffer.
|
static java.nio.IntBuffer |
shaderc_spvc_result_get_binary_output(long result)
Get validation/compilation result as a binary buffer.
|
static java.nio.IntBuffer |
shaderc_spvc_result_get_binary_output(long result,
long length)
Get validation/compilation result as a binary buffer.
|
static java.lang.String |
shaderc_spvc_result_get_string_output(long result)
Get validation/compilation result as a string.
|
static int |
shaderc_spvc_set_decoration(long context,
int id,
int decoration,
int argument)
Set spirv_cross decoration.
|
static void |
shaderc_spvc_set_name(long context,
int id,
java.nio.ByteBuffer name)
Set
name on a given id. |
static void |
shaderc_spvc_set_name(long context,
int id,
java.lang.CharSequence name)
Set
name on a given id. |
static int |
shaderc_spvc_unset_decoration(long context,
int id,
int decoration)
Unset spirv_cross decoration.
|
public static final int shaderc_spvc_decoration_specid
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_block
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_rowmajor
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_colmajor
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_arraystride
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_matrixstride
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_builtin
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_noperspective
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_flat
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_centroid
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_restrict
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_aliased
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_nonwritable
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_nonreadable
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_uniform
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_location
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_component
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_index
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_binding
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_descriptorset
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_offset
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_decoration_nocontraction
shaderc_spvc_decoration
This is not an exhaustive list of all of the values in the spec, but more can be added if needed.
decoration_speciddecoration_blockdecoration_rowmajordecoration_colmajordecoration_arraystridedecoration_matrixstridedecoration_builtindecoration_noperspectivedecoration_flatdecoration_centroiddecoration_restrictdecoration_aliaseddecoration_nonwritabledecoration_nonreadabledecoration_uniformdecoration_locationdecoration_componentdecoration_indexdecoration_bindingdecoration_descriptorsetdecoration_offsetdecoration_nocontractionpublic static final int shaderc_spvc_msl_platform_ios
public static final int shaderc_spvc_msl_platform_macos
public static final int shaderc_spvc_status_success
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_compilation_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_internal_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_validation_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_transformation_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_configuration_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_uninitialized_compiler_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_missing_context_error
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_status_invalid_out_param
shaderc_spvc_status)
shaderc_spvc_status_success indicates success completion of the operation, all others indicate some sort of failure.
public static final int shaderc_spvc_execution_model_vertex
shaderc_spvc_execution_model
public static final int shaderc_spvc_execution_model_fragment
shaderc_spvc_execution_model
public static final int shaderc_spvc_execution_model_glcompute
shaderc_spvc_execution_model
public static org.lwjgl.system.SharedLibrary getLibrary()
SharedLibrary.public static long shaderc_spvc_context_create()
A return of NULL indicates that there was an error. Any function operating on a *_context_t must offer the basic thread-safety guarantee. That is: concurrent invocation of these functions on DIFFERENT objects needs no synchronization; concurrent invocation of these functions on the
SAME object requires synchronization IF AND ONLY IF some of them take a non-const argument.
public static void shaderc_spvc_context_destroy(long context)
After this the handle cannot be used.
public static long nshaderc_spvc_context_get_messages(long context)
context_get_messages@Nullable public static java.lang.String shaderc_spvc_context_get_messages(long context)
public static void shaderc_spvc_context_set_use_spvc_parser(long context,
boolean b)
public static long shaderc_spvc_compile_options_create()
A return of NULL indicates that there was an error initializing the options. Any function operating on shaderc_spvc_compile_options_t must
offer the basic thread-safety guarantee.
public static long shaderc_spvc_compile_options_clone(long options)
If NULL is passed as the parameter the call is the same as compile_options_initialize.
public static void shaderc_spvc_compile_options_destroy(long options)
It is invalid to use the given option object in any future calls. It is safe to pass NULL to this function, and doing such will have no effect.
public static void nshaderc_spvc_compile_options_set_entry_point(long options,
long entry_point)
compile_options_set_entry_pointpublic static void shaderc_spvc_compile_options_set_entry_point(long options,
java.nio.ByteBuffer entry_point)
public static void shaderc_spvc_compile_options_set_entry_point(long options,
java.lang.CharSequence entry_point)
public static void shaderc_spvc_compile_options_set_remove_unused_variables(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_robust_buffer_access_pass(long options,
boolean b)
Inject code to clamp indexed accesses to buffers and internal arrays, providing guarantees satisfying Vulkan's robustBufferAccess rules. This
is useful when an implementation does not support robust-buffer access as a driver option.
public static void shaderc_spvc_compile_options_set_emit_line_directives(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_source_env(long options,
int env,
int version)
Default value for environment is Vulkan 1.0.
public static void shaderc_spvc_compile_options_set_target_env(long options,
int env,
int version)
Currently only WebGPU <-> Vulkan 1.1 are defined. Default value for environment is Vulkan 1.0.
public static void shaderc_spvc_compile_options_set_vulkan_semantics(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_separate_shader_objects(long options,
boolean b)
gl_PerVertex is explicitly redeclared in vertex, geometry and tessellation shaders.
The members of gl_PerVertex is determined by which built-ins are declared by the shader.
public static void shaderc_spvc_compile_options_set_flatten_ubo(long options,
boolean b)
(i|u)vec4 array.public static void shaderc_spvc_compile_options_set_glsl_language_version(long options,
int version)
Default is 450 (i.e. 4.5).
public static void shaderc_spvc_compile_options_set_flatten_multidimensional_arrays(long options,
boolean b)
foo[a][b][c] -> foo[a*b*c]. Default is false.public static void shaderc_spvc_compile_options_set_es(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_glsl_emit_push_constant_as_ubo(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_msl_language_version(long options,
int version)
Default is 10200 (i.e. 1.2).
public static void shaderc_spvc_compile_options_set_msl_swizzle_texture_samples(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_msl_platform(long options,
int platform)
public static void shaderc_spvc_compile_options_set_msl_pad_fragment_output(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_msl_capture(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_msl_domain_lower_left(long options,
boolean b)
TessCoord. Default is top left.public static void shaderc_spvc_compile_options_set_msl_argument_buffers(long options,
boolean b)
public static void nshaderc_spvc_compile_options_set_msl_discrete_descriptor_sets(long options,
long descriptors,
long num_descriptors)
compile_options_set_msl_discrete_descriptor_setspublic static void shaderc_spvc_compile_options_set_msl_discrete_descriptor_sets(long options,
java.nio.IntBuffer descriptors)
VK_KHR_push_descriptor in
Vulkan.public static void shaderc_spvc_compile_options_set_msl_enable_point_size_builtin(long options,
boolean b)
PointSize builtin is used for MSL shaders.public static void shaderc_spvc_compile_options_set_msl_buffer_size_buffer_index(long options,
int index)
public static void shaderc_spvc_compile_options_set_hlsl_shader_model(long options,
int model)
Default is 30.
public static void shaderc_spvc_compile_options_set_hlsl_point_size_compat(long options,
boolean b)
PointSize. Default is false.public static void shaderc_spvc_compile_options_set_hlsl_point_coord_compat(long options,
boolean b)
PointCoord. Default is false.public static void shaderc_spvc_compile_options_set_fixup_clipspace(long options,
boolean b)
[ 0,w] -> [-w,w][-w,w] -> [ 0,w][-w,w] -> [ 0,w]public static void shaderc_spvc_compile_options_set_flip_vert_y(long options,
boolean b)
gl_Position.y or equivalent.
Default is false.
public static void shaderc_spvc_compile_options_set_validate(long options,
boolean b)
public static void shaderc_spvc_compile_options_set_optimize(long options,
boolean b)
public static long nshaderc_spvc_compile_options_set_for_fuzzing(long options,
long data,
long size)
compile_options_set_for_fuzzingpublic static long shaderc_spvc_compile_options_set_for_fuzzing(long options,
java.nio.ByteBuffer data)
public static int nshaderc_spvc_initialize_for_glsl(long context,
long source,
long source_len,
long options)
initialize_for_glslpublic static int shaderc_spvc_initialize_for_glsl(long context,
java.nio.IntBuffer source,
long options)
public static int nshaderc_spvc_initialize_for_hlsl(long context,
long source,
long source_len,
long options)
initialize_for_hlslpublic static int shaderc_spvc_initialize_for_hlsl(long context,
java.nio.IntBuffer source,
long options)
public static int nshaderc_spvc_initialize_for_msl(long context,
long source,
long source_len,
long options)
initialize_for_mslpublic static int shaderc_spvc_initialize_for_msl(long context,
java.nio.IntBuffer source,
long options)
public static int nshaderc_spvc_initialize_for_vulkan(long context,
long source,
long source_len,
long options)
initialize_for_vulkanpublic static int shaderc_spvc_initialize_for_vulkan(long context,
java.nio.IntBuffer source,
long options)
public static int shaderc_spvc_compile_shader(long context,
long result)
public static int nshaderc_spvc_get_decoration(long context,
int id,
int decoration,
long argument)
get_decorationpublic static int shaderc_spvc_get_decoration(long context,
int id,
int decoration,
java.nio.IntBuffer argument)
Given an id and a decoration, result is sent out through argument. If id does not exist, returns an error.
public static int shaderc_spvc_unset_decoration(long context,
int id,
int decoration)
Given an id and a decoration. Assuming id is valid.
public static void nshaderc_spvc_set_name(long context,
int id,
long name)
set_namepublic static void shaderc_spvc_set_name(long context,
int id,
java.nio.ByteBuffer name)
name on a given id.
Assuming id is valid.
public static void shaderc_spvc_set_name(long context,
int id,
java.lang.CharSequence name)
name on a given id.
Assuming id is valid.
public static void shaderc_spvc_build_combined_image_samplers(long context)
public static void nshaderc_spvc_get_combined_image_samplers(long context,
long samplers,
long num_samplers)
get_combined_image_samplerspublic static void shaderc_spvc_get_combined_image_samplers(long context,
@Nullable
ShadercSPVCCombinedImageSampler samplers,
org.lwjgl.PointerBuffer num_samplers)
If samplers is NULL, then num_samplers is set, and no data is copied. The caller is responsible for samplers being large
enough to contain all of the data.
public static int shaderc_spvc_set_decoration(long context,
int id,
int decoration,
int argument)
Given an id, decoration and argument, the decoration flag on the id is set. Assuming id is valid.
public static int nshaderc_spvc_add_msl_resource_binding(long context,
long binding,
long __functionAddress)
add_msl_resource_bindingpublic static int nshaderc_spvc_add_msl_resource_binding(long context,
long binding)
add_msl_resource_bindingpublic static int shaderc_spvc_add_msl_resource_binding(long context,
ShadercSPVCMSLResourceBinding binding)
public static int nshaderc_spvc_get_workgroup_size(long context,
long function_name,
int execution_model,
long workgroup_size)
get_workgroup_sizepublic static int shaderc_spvc_get_workgroup_size(long context,
java.nio.ByteBuffer function_name,
int execution_model,
ShadercSPVCWorkgroupSize.Buffer workgroup_size)
public static int shaderc_spvc_get_workgroup_size(long context,
java.lang.CharSequence function_name,
int execution_model,
ShadercSPVCWorkgroupSize.Buffer workgroup_size)
public static int nshaderc_spvc_needs_buffer_size_buffer(long context,
long b)
needs_buffer_size_bufferpublic static int shaderc_spvc_needs_buffer_size_buffer(long context,
java.nio.ByteBuffer b)
public static long shaderc_spvc_result_create()
A return of NULL indicates that there was an error creating the structure. Any function operating on shaderc_spvc_compilation_result_t must
offer the basic thread-safety guarantee.
public static void shaderc_spvc_result_destroy(long result)
It is invalid to use the result object for any further operations.
public static long nshaderc_spvc_result_get_string_output(long result)
result_get_string_output@Nullable public static java.lang.String shaderc_spvc_result_get_string_output(long result)
This is only supported compiling to GLSL, HSL, and MSL.
public static long nshaderc_spvc_result_get_binary_output(long result)
result_get_binary_output@Nullable public static java.nio.IntBuffer shaderc_spvc_result_get_binary_output(long result)
This is only supported compiling to Vulkan.
@Nullable
public static java.nio.IntBuffer shaderc_spvc_result_get_binary_output(long result,
long length)
This is only supported compiling to Vulkan.
public static int shaderc_spvc_result_get_binary_length(long result)
This is only supported compiling to Vulkan.
Copyright LWJGL. All Rights Reserved. License terms.