mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-09-12 18:50:22 -07:00
Release 1.16.
This commit is contained in:
Notes:
Henri Verbeet
2025-05-20 12:10:48 +02:00
Approved-by: Elizabeth Figura (@zfigura) Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1505
99
ChangeLog.md
99
ChangeLog.md
@@ -1,3 +1,102 @@
|
|||||||
|
# What's new in vkd3d 1.16 (20 May 2025)
|
||||||
|
|
||||||
|
### libvkd3d
|
||||||
|
|
||||||
|
- DXIL shaders are supported in the default configuration. Previously this
|
||||||
|
required building vkd3d with the ‘-DVKD3D_SHADER_UNSUPPORTED_DXIL’
|
||||||
|
preprocessor option. The also raises the maximum supported shader model to
|
||||||
|
version 6.0.
|
||||||
|
|
||||||
|
- Graphics pipeline state objects can be created from shaders with embedded
|
||||||
|
root signatures. This was already possible for compute pipeline state
|
||||||
|
objects.
|
||||||
|
|
||||||
|
- The SetEventOnMultipleFenceCompletion() method of the ID3D12Device1
|
||||||
|
interface is implemented.
|
||||||
|
|
||||||
|
- When the VK_KHR_zero_initialize_workgroup_memory extension is supported,
|
||||||
|
libvkd3d supports zero-initialising compute shader thread group shared
|
||||||
|
memory.
|
||||||
|
|
||||||
|
- The VK_KHR_maintenance2 extension is now explicitly required. libvkd3d
|
||||||
|
already unconditionally used features provided by this extension, but
|
||||||
|
unfortunately didn't explicitly require it. Support for this extension is
|
||||||
|
widespread, and the extension is part of Vulkan 1.1.
|
||||||
|
|
||||||
|
### libvkd3d-shader
|
||||||
|
|
||||||
|
- The previously experimental support for compiling DXIL shaders is now a
|
||||||
|
supported feature and enabled by default. Please note that this feature is
|
||||||
|
nevertheless still far from perfect.
|
||||||
|
|
||||||
|
- New features for the HLSL source type:
|
||||||
|
- Initial support for geometry shaders.
|
||||||
|
- Indirect addressing in shader model 1-3 target profiles.
|
||||||
|
- Modulus and truncation operations in shader model 1-3 target profiles.
|
||||||
|
- Vectorised output code.
|
||||||
|
- Further improved constant folding and propagation.
|
||||||
|
- The following intrinsic functions are supported:
|
||||||
|
- AllMemoryBarrier()
|
||||||
|
- AllMemoryBarrierWithGroupSync()
|
||||||
|
- DeviceMemoryBarrier()
|
||||||
|
- DeviceMemoryBarrierWithGroupSync()
|
||||||
|
- GroupMemoryBarrier()
|
||||||
|
- GroupMemoryBarrierWithGroupSync()
|
||||||
|
- The ‘.Length’ Texture object property.
|
||||||
|
- The ‘SV_RenderTargetArrayIndex’ and ‘SV_ViewportArrayIndex’ semantics in
|
||||||
|
tessellation shaders.
|
||||||
|
|
||||||
|
- Disassembler support for binary ‘fx_2_0’ effects.
|
||||||
|
|
||||||
|
- Experimental built-in support for disassembling SPIR-V shaders, enabled by
|
||||||
|
building vkd3d with the ‘-DVKD3D_SHADER_UNSUPPORTED_SPIRV_PARSER’
|
||||||
|
preprocessor option. When enabled, the built-in SPIR-V disassembler is
|
||||||
|
used instead of SPIRV-Tools for the ‘spirv-text’ target type, as well as
|
||||||
|
for the debug output enabled by the VKD3D_SHADER_DEBUG environment
|
||||||
|
variable.
|
||||||
|
|
||||||
|
- The experimental OpenGL Shading Language (GLSL) target supports indirect
|
||||||
|
addressing of constant buffers.
|
||||||
|
|
||||||
|
- The experimental Metal Shading Language (MSL) target supports texture
|
||||||
|
loads.
|
||||||
|
|
||||||
|
- New interfaces:
|
||||||
|
- The VKD3D_SHADER_COMPILE_OPTION_FEATURE_ZERO_INITIALIZE_WORKGROUP_MEMORY
|
||||||
|
flag indicates support for zero-initialising workgroup memory in the
|
||||||
|
SPIR-V target environment.
|
||||||
|
- The VKD3D_SHADER_COMPONENT_INT64 enumeration value indicates a 64-bit
|
||||||
|
signed integer value.
|
||||||
|
- The VKD3D_SHADER_COMPONENT_FLOAT16 enumeration value indicates a 16-bit
|
||||||
|
IEEE floating-point value.
|
||||||
|
- The VKD3D_SHADER_COMPONENT_UINT16 enumeration value indicates a 16-bit
|
||||||
|
unsigned integer value.
|
||||||
|
- The VKD3D_SHADER_COMPONENT_INT16 enumeration value indicates a 16-bit
|
||||||
|
signed integer value.
|
||||||
|
- When targeting VKD3D_SHADER_API_1_16, the
|
||||||
|
VKD3D_SHADER_RESOURCE_DATA_NONE enumeration value is returned for the
|
||||||
|
‘resource_data_type’ field in the vkd3d_shader_descriptor_info structure
|
||||||
|
for sampler descriptors. VKD3D_SHADER_API_1_15 and before use the
|
||||||
|
VKD3D_SHADER_RESOURCE_DATA_UINT enumeration value for this.
|
||||||
|
|
||||||
|
### demos
|
||||||
|
|
||||||
|
- The vkd3d demos now work on both the Microsoft Windows and Apple macOS
|
||||||
|
builds. The macOS versions of the vkd3d demos are completely new in vkd3d
|
||||||
|
1.16, while the Windows demos could previously be built, but only worked
|
||||||
|
on Wine. Note that the vkd3d demos produced by a Windows build of vkd3d
|
||||||
|
are distinct from those produced by the ‘make crosstest’ target: the
|
||||||
|
former are Vulkan applications using vkd3d, while the latter are Direct3D
|
||||||
|
12 applications.
|
||||||
|
|
||||||
|
- The vkd3d demos have basic support for DPI scaling.
|
||||||
|
|
||||||
|
### build
|
||||||
|
|
||||||
|
- Perl and the ‘JSON’ Perl module have been added as build dependencies.
|
||||||
|
These are used for the experimental built-in SPIR-V disassembler, as well
|
||||||
|
as for the macOS versions of the vkd3d demos.
|
||||||
|
|
||||||
# What's new in vkd3d 1.15 (19 February 2025)
|
# What's new in vkd3d 1.15 (19 February 2025)
|
||||||
|
|
||||||
### libvkd3d
|
### libvkd3d
|
||||||
|
@@ -419,7 +419,7 @@ libvkd3d_shader_la_SOURCES = \
|
|||||||
libs/vkd3d-shader/vkd3d_shader_main.c \
|
libs/vkd3d-shader/vkd3d_shader_main.c \
|
||||||
libs/vkd3d-shader/vkd3d_shader_private.h
|
libs/vkd3d-shader/vkd3d_shader_private.h
|
||||||
libvkd3d_shader_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_SHADER_SOURCE -I$(srcdir)/libs/vkd3d-shader @SPIRV_TOOLS_CFLAGS@
|
libvkd3d_shader_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_SHADER_SOURCE -I$(srcdir)/libs/vkd3d-shader @SPIRV_TOOLS_CFLAGS@
|
||||||
libvkd3d_shader_la_LDFLAGS = $(AM_LDFLAGS) -version-info 14:0:13
|
libvkd3d_shader_la_LDFLAGS = $(AM_LDFLAGS) -version-info 15:0:14
|
||||||
libvkd3d_shader_la_LIBADD = libvkd3d-common.la @SPIRV_TOOLS_LIBS@ -lm
|
libvkd3d_shader_la_LIBADD = libvkd3d-common.la @SPIRV_TOOLS_LIBS@ -lm
|
||||||
if HAVE_LD_VERSION_SCRIPT
|
if HAVE_LD_VERSION_SCRIPT
|
||||||
libvkd3d_shader_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d-shader/vkd3d_shader.map
|
libvkd3d_shader_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d-shader/vkd3d_shader.map
|
||||||
@@ -454,7 +454,7 @@ libvkd3d_la_SOURCES = \
|
|||||||
libs/vkd3d/vkd3d_shaders.h \
|
libs/vkd3d/vkd3d_shaders.h \
|
||||||
libs/vkd3d/vulkan_procs.h
|
libs/vkd3d/vulkan_procs.h
|
||||||
libvkd3d_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_SOURCE
|
libvkd3d_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_SOURCE
|
||||||
libvkd3d_la_LDFLAGS = $(AM_LDFLAGS) -version-info 16:0:15
|
libvkd3d_la_LDFLAGS = $(AM_LDFLAGS) -version-info 17:0:16
|
||||||
libvkd3d_la_LIBADD = libvkd3d-common.la libvkd3d-shader.la @DL_LIBS@ @PTHREAD_LIBS@
|
libvkd3d_la_LIBADD = libvkd3d-common.la libvkd3d-shader.la @DL_LIBS@ @PTHREAD_LIBS@
|
||||||
if HAVE_LD_VERSION_SCRIPT
|
if HAVE_LD_VERSION_SCRIPT
|
||||||
libvkd3d_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d/vkd3d.map
|
libvkd3d_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d/vkd3d.map
|
||||||
@@ -467,7 +467,7 @@ libvkd3d_utils_la_SOURCES = \
|
|||||||
libs/vkd3d-utils/vkd3d_utils_main.c \
|
libs/vkd3d-utils/vkd3d_utils_main.c \
|
||||||
libs/vkd3d-utils/vkd3d_utils_private.h
|
libs/vkd3d-utils/vkd3d_utils_private.h
|
||||||
libvkd3d_utils_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_UTILS_SOURCE
|
libvkd3d_utils_la_CFLAGS = $(AM_CFLAGS) -DLIBVKD3D_UTILS_SOURCE
|
||||||
libvkd3d_utils_la_LDFLAGS = $(AM_LDFLAGS) -version-info 7:1:6
|
libvkd3d_utils_la_LDFLAGS = $(AM_LDFLAGS) -version-info 7:2:6
|
||||||
libvkd3d_utils_la_LIBADD = libvkd3d-common.la libvkd3d-shader.la libvkd3d.la @PTHREAD_LIBS@
|
libvkd3d_utils_la_LIBADD = libvkd3d-common.la libvkd3d-shader.la libvkd3d.la @PTHREAD_LIBS@
|
||||||
if HAVE_LD_VERSION_SCRIPT
|
if HAVE_LD_VERSION_SCRIPT
|
||||||
libvkd3d_utils_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d-utils/vkd3d_utils.map
|
libvkd3d_utils_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libs/vkd3d-utils/vkd3d_utils.map
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
AC_PREREQ([2.69])
|
AC_PREREQ([2.69])
|
||||||
AC_INIT([vkd3d],[1.15])
|
AC_INIT([vkd3d],[1.16])
|
||||||
|
|
||||||
AC_CONFIG_AUX_DIR([bin])
|
AC_CONFIG_AUX_DIR([bin])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
|
@@ -28,7 +28,7 @@
|
|||||||
#ifdef HAVE_XCB
|
#ifdef HAVE_XCB
|
||||||
# define VK_USE_PLATFORM_XCB_KHR
|
# define VK_USE_PLATFORM_XCB_KHR
|
||||||
#endif
|
#endif
|
||||||
#define VKD3D_UTILS_API_VERSION VKD3D_API_VERSION_1_15
|
#define VKD3D_UTILS_API_VERSION VKD3D_API_VERSION_1_16
|
||||||
#include <vkd3d.h>
|
#include <vkd3d.h>
|
||||||
#include <vkd3d_utils.h>
|
#include <vkd3d_utils.h>
|
||||||
#ifdef HAVE_XCB
|
#ifdef HAVE_XCB
|
||||||
|
@@ -100,6 +100,7 @@ enum vkd3d_api_version
|
|||||||
VKD3D_API_VERSION_1_13,
|
VKD3D_API_VERSION_1_13,
|
||||||
VKD3D_API_VERSION_1_14,
|
VKD3D_API_VERSION_1_14,
|
||||||
VKD3D_API_VERSION_1_15,
|
VKD3D_API_VERSION_1_15,
|
||||||
|
VKD3D_API_VERSION_1_16,
|
||||||
|
|
||||||
VKD3D_FORCE_32_BIT_ENUM(VKD3D_API_VERSION),
|
VKD3D_FORCE_32_BIT_ENUM(VKD3D_API_VERSION),
|
||||||
};
|
};
|
||||||
|
@@ -58,6 +58,7 @@ enum vkd3d_shader_api_version
|
|||||||
VKD3D_SHADER_API_VERSION_1_13,
|
VKD3D_SHADER_API_VERSION_1_13,
|
||||||
VKD3D_SHADER_API_VERSION_1_14,
|
VKD3D_SHADER_API_VERSION_1_14,
|
||||||
VKD3D_SHADER_API_VERSION_1_15,
|
VKD3D_SHADER_API_VERSION_1_15,
|
||||||
|
VKD3D_SHADER_API_VERSION_1_16,
|
||||||
|
|
||||||
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_API_VERSION),
|
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_API_VERSION),
|
||||||
};
|
};
|
||||||
|
@@ -4037,7 +4037,7 @@ static void fx_parse_shader_blob(struct fx_parser *parser, enum vkd3d_shader_sou
|
|||||||
|
|
||||||
static const struct vkd3d_shader_compile_option options[] =
|
static const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
};
|
};
|
||||||
|
|
||||||
info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
||||||
|
@@ -38,7 +38,7 @@
|
|||||||
#define VKD3D_SPIRV_VERSION_1_0 0x00010000
|
#define VKD3D_SPIRV_VERSION_1_0 0x00010000
|
||||||
#define VKD3D_SPIRV_VERSION_1_3 0x00010300
|
#define VKD3D_SPIRV_VERSION_1_3 0x00010300
|
||||||
#define VKD3D_SPIRV_GENERATOR_ID 18
|
#define VKD3D_SPIRV_GENERATOR_ID 18
|
||||||
#define VKD3D_SPIRV_GENERATOR_VERSION 15
|
#define VKD3D_SPIRV_GENERATOR_VERSION 16
|
||||||
#define VKD3D_SPIRV_GENERATOR_MAGIC vkd3d_make_u32(VKD3D_SPIRV_GENERATOR_VERSION, VKD3D_SPIRV_GENERATOR_ID)
|
#define VKD3D_SPIRV_GENERATOR_MAGIC vkd3d_make_u32(VKD3D_SPIRV_GENERATOR_VERSION, VKD3D_SPIRV_GENERATOR_ID)
|
||||||
#ifndef VKD3D_SHADER_UNSUPPORTED_SPIRV_PARSER
|
#ifndef VKD3D_SHADER_UNSUPPORTED_SPIRV_PARSER
|
||||||
# define VKD3D_SHADER_UNSUPPORTED_SPIRV_PARSER 0
|
# define VKD3D_SHADER_UNSUPPORTED_SPIRV_PARSER 0
|
||||||
|
@@ -271,7 +271,7 @@ HRESULT WINAPI D3DCompile2VKD3D(const void *data, SIZE_T data_size, const char *
|
|||||||
|
|
||||||
option = &options[0];
|
option = &options[0];
|
||||||
option->name = VKD3D_SHADER_COMPILE_OPTION_API_VERSION;
|
option->name = VKD3D_SHADER_COMPILE_OPTION_API_VERSION;
|
||||||
option->value = VKD3D_SHADER_API_VERSION_1_15;
|
option->value = VKD3D_SHADER_API_VERSION_1_16;
|
||||||
|
|
||||||
compile_info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
compile_info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
||||||
compile_info.next = &preprocess_info;
|
compile_info.next = &preprocess_info;
|
||||||
@@ -435,7 +435,7 @@ HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename
|
|||||||
|
|
||||||
static const struct vkd3d_shader_compile_option options[] =
|
static const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
};
|
};
|
||||||
|
|
||||||
TRACE("data %p, size %"PRIuPTR", filename %s, macros %p, include %p, preprocessed_blob %p, messages_blob %p.\n",
|
TRACE("data %p, size %"PRIuPTR", filename %s, macros %p, include %p, preprocessed_blob %p, messages_blob %p.\n",
|
||||||
@@ -981,7 +981,7 @@ HRESULT WINAPI D3DDisassemble(const void *data, SIZE_T data_size,
|
|||||||
|
|
||||||
static const struct vkd3d_shader_compile_option options[] =
|
static const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
};
|
};
|
||||||
|
|
||||||
TRACE("data %p, data_size %"PRIuPTR", flags %#x, comments %p, blob %p.\n",
|
TRACE("data %p, data_size %"PRIuPTR", flags %#x, comments %p, blob %p.\n",
|
||||||
|
@@ -2389,7 +2389,7 @@ static HRESULT create_shader_stage(struct d3d12_device *device,
|
|||||||
|
|
||||||
const struct vkd3d_shader_compile_option options[] =
|
const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV, typed_uav_compile_option(device)},
|
{VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV, typed_uav_compile_option(device)},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_WRITE_TESS_GEOM_POINT_SIZE, 0},
|
{VKD3D_SHADER_COMPILE_OPTION_WRITE_TESS_GEOM_POINT_SIZE, 0},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, feature_flags_compile_option(device)},
|
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, feature_flags_compile_option(device)},
|
||||||
@@ -2444,7 +2444,7 @@ static int vkd3d_scan_dxbc(const struct d3d12_device *device, const D3D12_SHADER
|
|||||||
|
|
||||||
const struct vkd3d_shader_compile_option options[] =
|
const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV, typed_uav_compile_option(device)},
|
{VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV, typed_uav_compile_option(device)},
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -4135,7 +4135,7 @@ static int compile_hlsl_cs(const struct vkd3d_shader_code *hlsl, struct vkd3d_sh
|
|||||||
|
|
||||||
static const struct vkd3d_shader_compile_option options[] =
|
static const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
};
|
};
|
||||||
|
|
||||||
info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
info.type = VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO;
|
||||||
|
@@ -932,7 +932,7 @@ int main(int argc, char **argv)
|
|||||||
if (!options.explicit_colour && !getenv("NO_COLOUR") && !getenv("NO_COLOR") && has_colour(output))
|
if (!options.explicit_colour && !getenv("NO_COLOUR") && !getenv("NO_COLOR") && has_colour(output))
|
||||||
options.formatting |= VKD3D_SHADER_COMPILE_OPTION_FORMATTING_COLOUR;
|
options.formatting |= VKD3D_SHADER_COMPILE_OPTION_FORMATTING_COLOUR;
|
||||||
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_FORMATTING, options.formatting);
|
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_FORMATTING, options.formatting);
|
||||||
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15);
|
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16);
|
||||||
if (options.target_type->type == VKD3D_SHADER_TARGET_SPIRV_BINARY
|
if (options.target_type->type == VKD3D_SHADER_TARGET_SPIRV_BINARY
|
||||||
|| options.target_type->type == VKD3D_SHADER_TARGET_SPIRV_TEXT)
|
|| options.target_type->type == VKD3D_SHADER_TARGET_SPIRV_TEXT)
|
||||||
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_FEATURE,
|
add_compile_option(&options, VKD3D_SHADER_COMPILE_OPTION_FEATURE,
|
||||||
|
@@ -594,7 +594,7 @@ static bool compile_shader(struct gl_runner *runner, enum shader_type shader_typ
|
|||||||
|
|
||||||
const struct vkd3d_shader_compile_option options[] =
|
const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_FRAGMENT_COORDINATE_ORIGIN,
|
{VKD3D_SHADER_COMPILE_OPTION_FRAGMENT_COORDINATE_ORIGIN,
|
||||||
VKD3D_SHADER_COMPILE_OPTION_FRAGMENT_COORDINATE_ORIGIN_LOWER_LEFT},
|
VKD3D_SHADER_COMPILE_OPTION_FRAGMENT_COORDINATE_ORIGIN_LOWER_LEFT},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, shader_runner_caps_get_feature_flags(&runner->caps)},
|
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, shader_runner_caps_get_feature_flags(&runner->caps)},
|
||||||
|
@@ -336,7 +336,7 @@ static bool compile_shader(struct metal_runner *runner, enum shader_type type, s
|
|||||||
|
|
||||||
const struct vkd3d_shader_compile_option options[] =
|
const struct vkd3d_shader_compile_option options[] =
|
||||||
{
|
{
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_15},
|
{VKD3D_SHADER_COMPILE_OPTION_API_VERSION, VKD3D_SHADER_API_VERSION_1_16},
|
||||||
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, shader_runner_caps_get_feature_flags(&runner->caps)},
|
{VKD3D_SHADER_COMPILE_OPTION_FEATURE, shader_runner_caps_get_feature_flags(&runner->caps)},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -353,7 +353,7 @@ static bool compile_d3d_code(struct vulkan_shader_runner *runner,
|
|||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
options[0].name = VKD3D_SHADER_COMPILE_OPTION_API_VERSION;
|
options[0].name = VKD3D_SHADER_COMPILE_OPTION_API_VERSION;
|
||||||
options[0].value = VKD3D_SHADER_API_VERSION_1_15;
|
options[0].value = VKD3D_SHADER_API_VERSION_1_16;
|
||||||
options[1].name = VKD3D_SHADER_COMPILE_OPTION_FEATURE;
|
options[1].name = VKD3D_SHADER_COMPILE_OPTION_FEATURE;
|
||||||
options[1].value = shader_runner_caps_get_feature_flags(&runner->caps);
|
options[1].value = shader_runner_caps_get_feature_flags(&runner->caps);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user