[directxmesh, directxtex, directxtk(12), uvatlas] Updated for October 2024 releases (#41878)

This commit is contained in:
Chuck Walbourn 2024-11-03 17:18:35 -08:00 committed by GitHub
parent ee27d75fc4
commit 0f16cea155
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
22 changed files with 425 additions and 36 deletions

View File

@ -1,4 +1,4 @@
set(DIRECTXMESH_TAG sep2024)
set(DIRECTXMESH_TAG oct2024)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@ -6,7 +6,7 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXMesh
REF ${DIRECTXMESH_TAG}
SHA512 ea0f39c14613e60e967eaea2735f73730a1c79f9fdd9b3d799b6c765843804dd7c002dedac8f566989bac99dc41dfa9b1a9a14e141a0917f888d3e3c6ecf47cb
SHA512 a7d6eca75315a8f24fdc7753fd0e0b26b1b170ef0ffa1954065164f5da567ba09d1605c45cae91cf73dccc04f52162c3ad62f6a83eddf33c076e6ffb4723276d
HEAD_REF main
)
@ -41,7 +41,7 @@ if("tools" IN_LIST FEATURES)
MESHCONVERT_EXE
URLS "https://github.com/Microsoft/DirectXMesh/releases/download/${DIRECTXMESH_TAG}/meshconvert.exe"
FILENAME "meshconvert-${DIRECTXMESH_TAG}.exe"
SHA512 f7cfd5d89d92bfe9e6b58691444b9b49e42b88b721f52abe40af4a090f3ff45476727116131fae2d4bbb74e81ff7d998ccbdb01bb037391d743e44823c490786
SHA512 6b437004ee3b8a44d475db51f01558d777bf3c65b1ea132606b9b682ab6310dbdf0c939ecdf7b621255b6130a424de6db368dd73b8d22393bd932342fd3f45e0
)
file(INSTALL
@ -56,7 +56,7 @@ if("tools" IN_LIST FEATURES)
MESHCONVERT_EXE
URLS "https://github.com/Microsoft/DirectXMesh/releases/download/${DIRECTXMESH_TAG}/meshconvert_arm64.exe"
FILENAME "meshconvert-${DIRECTXMESH_TAG}-arm64.exe"
SHA512 71d677b95fa964dc3a6d3e3804fa86fb86ec0a5165045baeb42fa4e025c68806edf4cb737906f1f4287e877d5443eda9e5c38e51a9aa62c76ba84f68ba48c69e
SHA512 e4f9eb983ea6cfbf18c342d5f1a52210d933ca6bbe7fe5dbca4fee516106f02ac4936804ab222c337ac42eb809c16f06132d51ffa44fb67315c2f28f282afdf3
)
file(INSTALL

View File

@ -1,6 +1,6 @@
{
"name": "directxmesh",
"version-date": "2024-09-04",
"version-date": "2024-10-28",
"description": "DirectXMesh geometry processing library",
"homepage": "https://github.com/Microsoft/DirectXMesh",
"documentation": "https://github.com/microsoft/DirectXMesh/wiki",

View File

@ -0,0 +1,284 @@
diff --git a/Auxiliary/DirectXTexXbox.h b/Auxiliary/DirectXTexXbox.h
index 0829c8f..9f75866 100644
--- a/Auxiliary/DirectXTexXbox.h
+++ b/Auxiliary/DirectXTexXbox.h
@@ -132,6 +132,39 @@ namespace Xbox
HRESULT __cdecl SaveToDDSMemory(_In_ const XboxImage& xbox, _Out_ DirectX::Blob& blob);
HRESULT __cdecl SaveToDDSFile(_In_ const XboxImage& xbox, _In_z_ const wchar_t* szFile);
+#ifdef __cpp_lib_byte
+ inline HRESULT __cdecl GetMetadataFromDDSMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_ DirectX::TexMetadata& metadata, _Out_ bool& isXbox)
+ {
+ return GetMetadataFromDDSMemory(reinterpret_cast<const uint8_t*>(pSource), size, metadata, isXbox);
+ }
+
+ inline HRESULT __cdecl GetMetadataFromDDSMemoryEx(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_ DirectX::TexMetadata& metadata, _Out_ bool& isXbox,
+ _Out_opt_ DirectX::DDSMetaData* ddPixelFormat)
+ {
+ return GetMetadataFromDDSMemoryEx(reinterpret_cast<const uint8_t*>(pSource), size, metadata, isXbox, ddPixelFormat);
+ }
+
+ inline HRESULT __cdecl LoadFromDDSMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_opt_ DirectX::TexMetadata* metadata, _Out_ XboxImage& image)
+ {
+ return LoadFromDDSMemory(reinterpret_cast<const uint8_t*>(pSource), size, metadata, image);
+ }
+
+ inline HRESULT __cdecl LoadFromDDSMemoryEx(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_opt_ DirectX::TexMetadata* metadata,
+ _Out_opt_ DirectX::DDSMetaData* ddPixelFormat,
+ _Out_ XboxImage& image)
+ {
+ return LoadFromDDSMemoryEx(reinterpret_cast<const uint8_t*>(pSource), size, metadata, ddPixelFormat, image);
+ }
+#endif // __cpp_lib_byte
+
//---------------------------------------------------------------------------------
// Xbox Texture Tiling / Detiling (requires XG DLL to be present at runtime)
@@ -178,4 +211,20 @@ namespace Xbox
const XboxImage& xbox,
_Out_writes_bytes_(maxsize) uint8_t* pDestination, _In_ size_t maxsize) noexcept;
+#ifdef __cpp_lib_byte
+ inline HRESULT __cdecl EncodeDDSHeader(
+ const XboxImage& xbox,
+ _Out_writes_bytes_(maxsize) std::byte* pDestination, _In_ size_t maxsize) noexcept
+ {
+ return EncodeDDSHeader(xbox, reinterpret_cast<uint8_t*>(pDestination), maxsize);
+ }
+
+ inline HRESULT __cdecl EncodeDDSHeader(
+ const XboxImage& xbox,
+ _Reserved_ std::nullptr_t, _In_ size_t maxsize) noexcept
+ {
+ return EncodeDDSHeader(xbox, static_cast<uint8_t*>(nullptr), maxsize);
+ }
+#endif
+
} // namespace
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cffe5ca..e26b5a1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -311,7 +311,11 @@ endif()
if(MINGW OR (NOT WIN32))
find_package(directxmath CONFIG REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectXMath)
+
find_package(directx-headers CONFIG REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectX-Headers)
+ target_compile_definitions(${PROJECT_NAME} PUBLIC USING_DIRECTX_HEADERS)
else()
find_package(directxmath CONFIG QUIET)
find_package(directx-headers CONFIG QUIET)
@@ -319,13 +323,13 @@ endif()
if(directxmath_FOUND)
message(STATUS "Using DirectXMath package")
- target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectXMath)
+ target_link_libraries(${PROJECT_NAME} PRIVATE Microsoft::DirectXMath)
endif()
if(directx-headers_FOUND)
message(STATUS "Using DirectX-Headers package")
- target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectX-Headers)
- target_compile_definitions(${PROJECT_NAME} PUBLIC USING_DIRECTX_HEADERS)
+ target_link_libraries(${PROJECT_NAME} PRIVATE Microsoft::DirectX-Headers)
+ target_compile_definitions(${PROJECT_NAME} PRIVATE USING_DIRECTX_HEADERS)
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CXX_COMPILER_ID:MSVC,Intel>:/wd4062> $<$<CXX_COMPILER_ID:Clang,IntelLLVM>:-Wno-switch-enum>)
endif()
diff --git a/DirectXTex/DirectXTex.h b/DirectXTex/DirectXTex.h
index e24142c..4dc36c8 100644
--- a/DirectXTex/DirectXTex.h
+++ b/DirectXTex/DirectXTex.h
@@ -382,6 +382,34 @@ namespace DirectX
_In_z_ const wchar_t* szFile,
_Out_ TexMetadata& metadata) noexcept;
+#ifdef __cpp_lib_byte
+ HRESULT __cdecl GetMetadataFromDDSMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ DDS_FLAGS flags,
+ _Out_ TexMetadata& metadata) noexcept;
+ HRESULT __cdecl GetMetadataFromDDSMemoryEx(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ DDS_FLAGS flags,
+ _Out_ TexMetadata& metadata,
+ _Out_opt_ DDSMetaData* ddPixelFormat) noexcept;
+ HRESULT __cdecl GetMetadataFromHDRMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_ TexMetadata& metadata) noexcept;
+ HRESULT __cdecl GetMetadataFromTGAMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ TGA_FLAGS flags,
+ _Out_ TexMetadata& metadata) noexcept;
+
+#ifdef _WIN32
+ HRESULT __cdecl GetMetadataFromWICMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ WIC_FLAGS flags,
+ _Out_ TexMetadata& metadata,
+ _In_ std::function<void __cdecl(IWICMetadataQueryReader*)> getMQR = nullptr);
+#endif
+#endif // __cpp_lib_byte
+
+
//---------------------------------------------------------------------------------
// Bitmap image container
struct Image
@@ -590,6 +618,34 @@ namespace DirectX
HRESULT __cdecl SaveToTGAMemory(_In_ const Image& image, _Out_ Blob& blob, _In_opt_ const TexMetadata* metadata = nullptr) noexcept;
HRESULT __cdecl SaveToTGAFile(_In_ const Image& image, _In_z_ const wchar_t* szFile, _In_opt_ const TexMetadata* metadata = nullptr) noexcept;
+#ifdef __cpp_lib_byte
+ HRESULT __cdecl LoadFromDDSMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ DDS_FLAGS flags,
+ _Out_opt_ TexMetadata* metadata, _Out_ ScratchImage& image) noexcept;
+ HRESULT __cdecl LoadFromDDSMemoryEx(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ DDS_FLAGS flags,
+ _Out_opt_ TexMetadata* metadata,
+ _Out_opt_ DDSMetaData* ddPixelFormat,
+ _Out_ ScratchImage& image) noexcept;
+ HRESULT __cdecl LoadFromHDRMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _Out_opt_ TexMetadata* metadata, _Out_ ScratchImage& image) noexcept;
+ HRESULT __cdecl LoadFromTGAMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ TGA_FLAGS flags,
+ _Out_opt_ TexMetadata* metadata, _Out_ ScratchImage& image) noexcept;
+
+#ifdef _WIN32
+ HRESULT __cdecl LoadFromWICMemory(
+ _In_reads_bytes_(size) const std::byte* pSource, _In_ size_t size,
+ _In_ WIC_FLAGS flags,
+ _Out_opt_ TexMetadata* metadata, _Out_ ScratchImage& image,
+ _In_ std::function<void __cdecl(IWICMetadataQueryReader*)> getMQR = nullptr);
+#endif
+#endif // __cpp_lib_byte
+
//---------------------------------------------------------------------------------
// Texture conversion, resizing, mipmap generation, and block compression
@@ -959,6 +1015,18 @@ namespace DirectX
_Out_writes_bytes_to_opt_(maxsize, required) uint8_t* pDestination, _In_ size_t maxsize,
_Out_ size_t& required) noexcept;
+#ifdef __cpp_lib_byte
+ HRESULT __cdecl EncodeDDSHeader(
+ _In_ const TexMetadata& metadata, DDS_FLAGS flags,
+ _Out_writes_bytes_to_opt_(maxsize, required) std::byte* pDestination, _In_ size_t maxsize,
+ _Out_ size_t& required) noexcept;
+
+ HRESULT __cdecl EncodeDDSHeader(
+ _In_ const TexMetadata& metadata, DDS_FLAGS flags,
+ _Reserved_ std::nullptr_t, _In_ size_t maxsize,
+ _Out_ size_t& required) noexcept;
+#endif
+
//---------------------------------------------------------------------------------
// Direct3D interop
diff --git a/DirectXTex/DirectXTex.inl b/DirectXTex/DirectXTex.inl
index 49745ae..d20f41e 100644
--- a/DirectXTex/DirectXTex.inl
+++ b/DirectXTex/DirectXTex.inl
@@ -190,3 +190,85 @@ inline HRESULT __cdecl SaveToTGAFile(const Image& image, const wchar_t* szFile,
{
return SaveToTGAFile(image, TGA_FLAGS_NONE, szFile, metadata);
}
+
+
+//=====================================================================================
+// C++17 helpers
+//=====================================================================================
+#ifdef __cpp_lib_byte
+
+_Use_decl_annotations_
+inline HRESULT __cdecl GetMetadataFromDDSMemory(const std::byte* pSource, size_t size, DDS_FLAGS flags, TexMetadata& metadata) noexcept
+{
+ return GetMetadataFromDDSMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl LoadFromDDSMemory(const std::byte* pSource, size_t size, DDS_FLAGS flags, TexMetadata* metadata, ScratchImage& image) noexcept
+{
+ return LoadFromDDSMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, image);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl GetMetadataFromDDSMemoryEx(const std::byte* pSource, size_t size, DDS_FLAGS flags, TexMetadata& metadata, DDSMetaData* ddPixelFormat) noexcept
+{
+ return GetMetadataFromDDSMemoryEx(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, ddPixelFormat);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl LoadFromDDSMemoryEx(const std::byte* pSource, size_t size, DDS_FLAGS flags, TexMetadata* metadata, DDSMetaData* ddPixelFormat, ScratchImage& image) noexcept
+{
+ return LoadFromDDSMemoryEx(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, ddPixelFormat, image);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl GetMetadataFromHDRMemory(const std::byte* pSource, size_t size, TexMetadata& metadata) noexcept
+{
+ return GetMetadataFromHDRMemory(reinterpret_cast<const uint8_t*>(pSource), size, metadata);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl LoadFromHDRMemory(const std::byte* pSource, size_t size, TexMetadata* metadata, ScratchImage& image) noexcept
+{
+ return LoadFromHDRMemory(reinterpret_cast<const uint8_t*>(pSource), size, metadata, image);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl GetMetadataFromTGAMemory(const std::byte* pSource, size_t size, TGA_FLAGS flags, TexMetadata& metadata) noexcept
+{
+ return GetMetadataFromTGAMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl LoadFromTGAMemory(const std::byte* pSource, size_t size, TGA_FLAGS flags, TexMetadata* metadata, ScratchImage& image) noexcept
+{
+ return LoadFromTGAMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, image);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl EncodeDDSHeader(const TexMetadata& metadata, DDS_FLAGS flags, std::byte* pDestination, size_t maxsize, size_t& required) noexcept
+{
+ return EncodeDDSHeader(metadata, flags, reinterpret_cast<uint8_t*>(pDestination), maxsize, required);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl EncodeDDSHeader(const TexMetadata& metadata, DDS_FLAGS flags, std::nullptr_t, size_t maxsize, size_t& required) noexcept
+{
+ return EncodeDDSHeader(metadata, flags, static_cast<uint8_t*>(nullptr), maxsize, required);
+}
+
+#ifdef _WIN32
+_Use_decl_annotations_
+inline HRESULT __cdecl GetMetadataFromWICMemory(const std::byte* pSource, size_t size, WIC_FLAGS flags, TexMetadata& metadata, std::function<void __cdecl(IWICMetadataQueryReader*)> getMQR)
+{
+ return GetMetadataFromWICMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, getMQR);
+}
+
+_Use_decl_annotations_
+inline HRESULT __cdecl LoadFromWICMemory(const std::byte* pSource, size_t size, WIC_FLAGS flags, TexMetadata* metadata, ScratchImage& image, std::function<void __cdecl(IWICMetadataQueryReader*)> getMQR)
+{
+ return LoadFromWICMemory(reinterpret_cast<const uint8_t*>(pSource), size, flags, metadata, image, getMQR);
+}
+#endif // _WIN32
+
+#endif // __cpp_lib_byte
--
2.47.0.vfs.0.3

View File

@ -1,4 +1,4 @@
set(DIRECTXTEX_TAG sep2024)
set(DIRECTXTEX_TAG oct2024)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@ -6,8 +6,10 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTex
REF ${DIRECTXTEX_TAG}
SHA512 c76c6d33f6a06e28e27c36be0f56b2c880cdd221b12680cc390f6f05a2c80169266cce9f0ac1803e7160d098f02f25a358ea73a116fd4186f4e0de17aba81ab7
SHA512 4ac9307ab6e36aa727afa5bd5bb945fb431c89fa01c9c8283eebf512707acfb15a0d7cd84f72349d4271b0eef2e13bca38a38226c1afafd8f1e36b38c1c4b07f
HEAD_REF main
PATCHES
FixStdByteAndCMake.patch
)
vcpkg_check_features(
@ -67,21 +69,21 @@ if("tools" IN_LIST FEATURES)
TEXASSEMBLE_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texassemble.exe"
FILENAME "texassemble-${DIRECTXTEX_TAG}.exe"
SHA512 17ae3ce91135e6c442c6127b77a4407ee5e029f1239cdc9066f34ddae9a3982de67d5314b5f03fde77802525e770be49f719fb6ddeb4d5316f440fb4ab24113a
SHA512 bb3c45d35305a56b80035bd7c076cd0000461cb37a5cd9495ac8f8a1647967fb6ecb02245336356674829f179ef05330d5aa9e768637e93b9db587d7eb684dfe
)
vcpkg_download_distfile(
TEXCONV_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texconv.exe"
FILENAME "texconv-${DIRECTXTEX_TAG}.exe"
SHA512 856648b04c9d9eab5a63b1abf226eac8509b400a2087dae32fddcc61ea6d7d8426b07d710f765a01ab1bacbd8a9731684c42a72e2bd4f7f3477f379cec39c409
SHA512 6376ee91dca0b53c043e1e86ec56f418029591885dd9fd49f8e932aa635e6668d430aeb30b497daa4e8c1f02ac42f7dc901ebec107d8bc1e611c9a0ec8747029
)
vcpkg_download_distfile(
TEXDIAG_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texdiag.exe"
FILENAME "texdiag-${DIRECTXTEX_TAG}.exe"
SHA512 38f083bbcf80b30b7d36312e824e03e25396f8801d8c13f6d4029731226415a3596e61863c7f8fd54f71afd6770e6e08bfc4118d65b48a977613b81f221e08d8
SHA512 31261ceefc17ce30c7f21dff961bfe03b2dc65619f60c64891a5fc56847cd7468a6629c36b1fcbf4c6f967232ad88eb85cf5c2ea874084dfe0d8da4ffabc12c8
)
file(INSTALL
@ -100,21 +102,21 @@ if("tools" IN_LIST FEATURES)
TEXASSEMBLE_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texassemble_arm64.exe"
FILENAME "texassemble-${DIRECTXTEX_TAG}-arm64.exe"
SHA512 4026647c8e18fc54a28fdec31e9b5c26dba4d6141e2fee53dc94c84bc1bdfb446b40c31a0f4babbaf1eda2a25589486ae5898210f2a5644bc29959ddbe88a475
SHA512 48b629b7aead482c0dc96c2fcfb28d534076d62dc77ce94256ad52df48596c1993645900873bf0dfd3d888087b423c350ba3f420b1305ef2ed7a43eafecfb523
)
vcpkg_download_distfile(
TEXCONV_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texconv_arm64.exe"
FILENAME "texconv-${DIRECTXTEX_TAG}-arm64.exe"
SHA512 2556604381e5c45aa137bf868db27013bee4bec1860df25f991f104a4c606bfde90e0eba8a347e5a5fc145c6a6a0b28529c6c7edd9cec0a5310dcec50d295b50
SHA512 53f319be7e739d9e3addc2e86648022ec802315a94c600eb6886a4474232aa25de0c9fb8d72868d2871d29eb36ee1dd6a186094edb6d9ab8f249b4eb4849a10c
)
vcpkg_download_distfile(
TEXDIAG_EXE
URLS "https://github.com/Microsoft/DirectXTex/releases/download/${DIRECTXTEX_TAG}/texdiag_arm64.exe"
FILENAME "texdiag-${DIRECTXTEX_TAG}-arm64.exe"
SHA512 dfa8d2046cc18541998b719ace66b6807e59ea480febf41852b5973eb60aea20cb66702cab578d6e4474ecd782c03c061f363deb8e1bcb6a4c8f5002a521fe88
SHA512 638b6b8443767ca390efdfdb8e4e8a655f0cc370a81b946678414481a6c3fc0c431a7082d08206fa86bc4ccf9c8b0027a427d483474a8c3d1ff0a030011779f7
)
file(INSTALL

View File

@ -1,6 +1,6 @@
{
"name": "directxtex",
"version-date": "2024-09-04",
"version-date": "2024-10-28",
"description": "DirectXTex texture processing library",
"homepage": "https://github.com/Microsoft/DirectXTex",
"documentation": "https://github.com/microsoft/DirectXTex/wiki",

View File

@ -1,4 +1,4 @@
set(DIRECTXTK_TAG sep2024)
set(DIRECTXTK_TAG oct2024)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@ -10,13 +10,14 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTK
REF ${DIRECTXTK_TAG}
SHA512 82a47ea210bf7878fdb33960ce38b0d797e8d782ac92d69e82fefa31377b4ba52a4d65d40bb4f136015d65648e42898adf9edb6dbc203885c6718e2db9a6587d
SHA512 a0c51fbbb9e639ba73dcdfcb2de0b8a859720bba4bd9273a40c4cc2cb949927815ab291e676a676ebd437c473f8548a7b323e7e349ff5a06d04af97d3edc2866
HEAD_REF main
)
vcpkg_check_features(
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
gameinput BUILD_GAMEINPUT
spectre ENABLE_SPECTRE_MITIGATION
tools BUILD_TOOLS
xaudio2-9 BUILD_XAUDIO_WIN10
@ -39,7 +40,7 @@ if("tools" IN_LIST FEATURES)
MAKESPRITEFONT_EXE
URLS "https://github.com/Microsoft/DirectXTK/releases/download/${DIRECTXTK_TAG}/MakeSpriteFont.exe"
FILENAME "makespritefont-${DIRECTXTK_TAG}.exe"
SHA512 15ba6d2b17a43335782cd0f34c017085a747d3308a73f2ae48423873c7e2e3a22bae292c2dc812b67077f96faa41ba81cca4f8a3a36f497f7f6517e24f41474b
SHA512 b7cc8a4b1920d85a0b826a4aac6053f0f0e7411dd115d3afc5fb5d2542661d47de11e81cc94830059ca29b0511f585913479fdba24da7f5bff03627a8117a60d
)
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxtk/")
@ -54,7 +55,7 @@ if("tools" IN_LIST FEATURES)
XWBTOOL_EXE
URLS "https://github.com/Microsoft/DirectXTK/releases/download/${DIRECTXTK_TAG}/XWBTool.exe"
FILENAME "xwbtool-${DIRECTXTK_TAG}.exe"
SHA512 33413514de463d771950caab415cd1ae499dd9ab8f7b2580e7de6e7a49e413f35cd44f8f0a561a1f99f331e5375d91f81b2d47184c4ab30d326feab2c49a82bc
SHA512 b08f61e7a6190f779ebecd25ec6d8c95c86ed231582b7567e83ededd5c8e0f7497f1c962535e29b204b897e0734f69d7eef78637a77bb9b401e6d1e66821e98b
)
file(INSTALL "${XWBTOOL_EXE}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk/")
@ -67,7 +68,7 @@ if("tools" IN_LIST FEATURES)
XWBTOOL_EXE
URLS "https://github.com/Microsoft/DirectXTK/releases/download/${DIRECTXTK_TAG}/XWBTool_arm64.exe"
FILENAME "xwbtool-${DIRECTXTK_TAG}-arm64.exe"
SHA512 90af7b04ee0b152e3f08891f85cf970330d2ff16e6f7ac2269f4a5803dddb891e0cca186c56ef38d2b64f40c86889e31f0c4b017845decf3e6660c9654a0eea8
SHA512 b25000552c74081b0da117b4b762b98eb68c5de6f6b65a8208811900316f8138f717e6050a30dcb7c71e3e2c01cba12b8dc6d4a9ade45da39abfd2fc3ef679e3
)
file(INSTALL "${XWBTOOL_EXE}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk/")

View File

@ -1,6 +1,6 @@
{
"name": "directxtk",
"version-date": "2024-09-04",
"version-date": "2024-10-28",
"description": "A collection of helper classes for writing DirectX 11.x code in C++.",
"homepage": "https://github.com/Microsoft/DirectXTK",
"documentation": "https://github.com/microsoft/DirectXTK/wiki",
@ -18,6 +18,13 @@
}
],
"features": {
"gameinput": {
"description": "Build using GameInput API for input processing",
"supports": "windows & x64 & !uwp",
"dependencies": [
"gameinput"
]
},
"spectre": {
"description": "Build Spectre-mitigated library"
},

View File

@ -1,4 +1,4 @@
set(DIRECTXTK_TAG sep2024)
set(DIRECTXTK_TAG oct2024)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@ -6,13 +6,14 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTK12
REF ${DIRECTXTK_TAG}
SHA512 902f2ee19953cb36e5982930f3f2cdd7915fadc0e2e97388e44ce677dd9598ccd588b9157179edd2348cef48af7061944083ada1398a47a6805c5d7c1c4c73d3
SHA512 bfa254615395f464a7ec1fe544dbb3ef9cf2c755e6902ec9b472fe4e3d6848381cf476435665309c27dbacebceb2a745e865f42eb7b037364dab9fc8eb74d21f
HEAD_REF main
)
vcpkg_check_features(
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
gameinput BUILD_GAMEINPUT
spectre ENABLE_SPECTRE_MITIGATION
xaudio2-9 BUILD_XAUDIO_WIN10
xaudio2redist BUILD_XAUDIO_REDIST
@ -40,7 +41,7 @@ if("tools" IN_LIST FEATURES)
MAKESPRITEFONT_EXE
URLS "https://github.com/Microsoft/DirectXTK12/releases/download/${DIRECTXTK_TAG}/MakeSpriteFont.exe"
FILENAME "makespritefont-${DIRECTXTK_TAG}.exe"
SHA512 15ba6d2b17a43335782cd0f34c017085a747d3308a73f2ae48423873c7e2e3a22bae292c2dc812b67077f96faa41ba81cca4f8a3a36f497f7f6517e24f41474b
SHA512 b7cc8a4b1920d85a0b826a4aac6053f0f0e7411dd115d3afc5fb5d2542661d47de11e81cc94830059ca29b0511f585913479fdba24da7f5bff03627a8117a60d
)
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/directxtk12/")
@ -55,7 +56,7 @@ if("tools" IN_LIST FEATURES)
XWBTOOL_EXE
URLS "https://github.com/Microsoft/DirectXTK12/releases/download/${DIRECTXTK_TAG}/XWBTool.exe"
FILENAME "xwbtool-${DIRECTXTK_TAG}.exe"
SHA512 33413514de463d771950caab415cd1ae499dd9ab8f7b2580e7de6e7a49e413f35cd44f8f0a561a1f99f331e5375d91f81b2d47184c4ab30d326feab2c49a82bc
SHA512 b08f61e7a6190f779ebecd25ec6d8c95c86ed231582b7567e83ededd5c8e0f7497f1c962535e29b204b897e0734f69d7eef78637a77bb9b401e6d1e66821e98b
)
file(INSTALL "${XWBTOOL_EXE}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk12/")
@ -68,7 +69,7 @@ if("tools" IN_LIST FEATURES)
XWBTOOL_EXE
URLS "https://github.com/Microsoft/DirectXTK12/releases/download/${DIRECTXTK_TAG}/XWBTool_arm64.exe"
FILENAME "xwbtool-${DIRECTXTK_TAG}-arm64.exe"
SHA512 90af7b04ee0b152e3f08891f85cf970330d2ff16e6f7ac2269f4a5803dddb891e0cca186c56ef38d2b64f40c86889e31f0c4b017845decf3e6660c9654a0eea8
SHA512 b25000552c74081b0da117b4b762b98eb68c5de6f6b65a8208811900316f8138f717e6050a30dcb7c71e3e2c01cba12b8dc6d4a9ade45da39abfd2fc3ef679e3
)
file(INSTALL "${XWBTOOL_EXE}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/directxtk12/")

View File

@ -1,6 +1,6 @@
{
"name": "directxtk12",
"version-date": "2024-09-04",
"version-date": "2024-10-28",
"description": "A collection of helper classes for writing DirectX 12 code in C++.",
"homepage": "https://github.com/Microsoft/DirectXTK12",
"documentation": "https://github.com/microsoft/DirectXTK12/wiki",
@ -34,6 +34,13 @@
"xaudio2-9"
],
"features": {
"gameinput": {
"description": "Build using GameInput API for input processing",
"supports": "windows & x64 & !uwp",
"dependencies": [
"gameinput"
]
},
"spectre": {
"description": "Build Spectre-mitigated library"
},

View File

@ -0,0 +1,16 @@
diff --git a/src/bsa/fo4.cpp b/src/bsa/fo4.cpp
index 5484f13..2d9bbf3 100644
--- a/src/bsa/fo4.cpp
+++ b/src/bsa/fo4.cpp
@@ -677,7 +677,7 @@ namespace bsa::fo4
}
a_out.write_bytes({ //
- static_cast<const std::byte*>(blob.GetBufferPointer()),
+ reinterpret_cast<const std::byte*>(blob.GetBufferPointer()),
blob.GetBufferSize() });
std::vector<std::byte> buffer;
for (const auto& chunk : *this) {
--
2.47.0.windows.1

View File

@ -5,6 +5,8 @@ vcpkg_from_github(
REF 4.1.0
SHA512 c488a4f7cffa59064baafd429cf118a8f8a7b5594a0bd49a0ed468572b37af2e7428a83ad83cc7b13b556744a444cb7b8a4591c7018e49cadb1c5d42ae780f51
HEAD_REF master
PATCHES
DirectXTexUint8Byte.patch
)
if (VCPKG_TARGET_IS_LINUX)

View File

@ -1,6 +1,7 @@
{
"name": "rsm-bsa",
"version-semver": "4.1.0",
"port-version": 1,
"description": "A C++ library for working with the Bethesda archive file format",
"homepage": "https://github.com/Ryan-rsm-McKenzie/bsa",
"documentation": "https://ryan-rsm-mckenzie.github.io/bsa/",

View File

@ -0,0 +1,36 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9be54f3..5656d03 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -139,7 +139,11 @@ endif()
if(MINGW OR (NOT WIN32))
find_package(directxmath CONFIG REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectXMath)
+
find_package(directx-headers CONFIG REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectX-Headers)
+ target_compile_definitions(${PROJECT_NAME} PUBLIC USING_DIRECTX_HEADERS)
else()
find_package(directxmath CONFIG QUIET)
find_package(directx-headers CONFIG QUIET)
@@ -147,13 +151,13 @@ endif()
if(directxmath_FOUND)
message(STATUS "Using DirectXMath package")
- target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectXMath)
+ target_link_libraries(${PROJECT_NAME} PRIVATE Microsoft::DirectXMath)
endif()
if(directx-headers_FOUND)
message(STATUS "Using DirectX-Headers package")
- target_link_libraries(${PROJECT_NAME} PUBLIC Microsoft::DirectX-Headers)
- target_compile_definitions(${PROJECT_NAME} PUBLIC USING_DIRECTX_HEADERS)
+ target_link_libraries(${PROJECT_NAME} PRIVATE Microsoft::DirectX-Headers)
+ target_compile_definitions(${PROJECT_NAME} PRIVATE USING_DIRECTX_HEADERS)
endif()
if(ENABLE_USE_EIGEN)
--
2.47.0.vfs.0.3

View File

@ -1,4 +1,4 @@
set(UVATLAS_TAG sep2024)
set(UVATLAS_TAG oct2024)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@ -6,8 +6,10 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/UVAtlas
REF ${UVATLAS_TAG}
SHA512 89807b52a3802f3147415d1d42dda279c04c17c5fa23e2516f6f1e72f00205f5a45842970d06ddfc86c0aae0d7c432c440a7650d94dc786b5bdc62db809e9498
SHA512 0ff09914445344eac748e7e6cfddebb062a0c7f36dc79d1591f5337b6600e69430aafc6f8a4cf5e3c343aea990feac4afa4cf4cf5f1e2d0865746008583bcf3d
HEAD_REF main
PATCHES
FixCMake.patch
)
vcpkg_check_features(
@ -41,7 +43,7 @@ if("tools" IN_LIST FEATURES)
UVATLASTOOL_EXE
URLS "https://github.com/Microsoft/UVAtlas/releases/download/${UVATLAS_TAG}/uvatlastool.exe"
FILENAME "uvatlastool-${UVATLAS_TAG}.exe"
SHA512 7e747fd8ae93f00d2691af748d6d7c9c42773a704132d5e9cc3230dfaff93490bf3e7273a08af5c2a92cd5344d881255d0788df3f13f288767b11789d8775da0
SHA512 e4b08d355b311481cabb11afb2c0da745b033b4f9c09461a07da2f265944e84e4730e38f4f5f3ff7f1438b8f066f714876bdccc4d26d7dfb82a21646e509389b
)
file(INSTALL

View File

@ -1,6 +1,6 @@
{
"name": "uvatlas",
"version-date": "2024-09-04",
"version-date": "2024-10-29",
"description": "UVAtlas isochart texture atlas",
"homepage": "https://github.com/Microsoft/UVAtlas",
"documentation": "https://github.com/Microsoft/UVAtlas/wiki",

View File

@ -2305,7 +2305,7 @@
"port-version": 0
},
"directxmesh": {
"baseline": "2024-09-04",
"baseline": "2024-10-28",
"port-version": 0
},
"directxsdk": {
@ -2313,15 +2313,15 @@
"port-version": 8
},
"directxtex": {
"baseline": "2024-09-04",
"baseline": "2024-10-28",
"port-version": 0
},
"directxtk": {
"baseline": "2024-09-04",
"baseline": "2024-10-28",
"port-version": 0
},
"directxtk12": {
"baseline": "2024-09-04",
"baseline": "2024-10-28",
"port-version": 0
},
"dirent": {
@ -7994,7 +7994,7 @@
},
"rsm-bsa": {
"baseline": "4.1.0",
"port-version": 0
"port-version": 1
},
"rsm-mmio": {
"baseline": "2.0.0",
@ -9257,7 +9257,7 @@
"port-version": 1
},
"uvatlas": {
"baseline": "2024-09-04",
"baseline": "2024-10-29",
"port-version": 0
},
"uvw": {

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "bf34ce542e4e55ddd839cb50381cb0207c94b3d7",
"version-date": "2024-10-28",
"port-version": 0
},
{
"git-tree": "b78a6fc9cca45bce5e15011fc0022a140d480ac1",
"version-date": "2024-09-04",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "5ba303f8b50e8237cef6809bbf8a891adea2203d",
"version-date": "2024-10-28",
"port-version": 0
},
{
"git-tree": "bf509ba95b00e84e46e805c9b607f4e5b9cc8e01",
"version-date": "2024-09-04",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "633c6ef2a57d96b7a5b0d206cd4d77db8e9d8d88",
"version-date": "2024-10-28",
"port-version": 0
},
{
"git-tree": "a7ecae1b4319528b67d6cc9aa66e5e2a58f21008",
"version-date": "2024-09-04",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "93f061b596529d6b084a068953bea28c9aae05a1",
"version-date": "2024-10-28",
"port-version": 0
},
{
"git-tree": "cdddbfa0d0b483bb76aafbc6f6d601d171770a17",
"version-date": "2024-09-04",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "1cd731f50095336045c52135640ccab426741366",
"version-semver": "4.1.0",
"port-version": 1
},
{
"git-tree": "56763c1c1befe44030f14704e1be0c05424f039e",
"version-semver": "4.1.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "2059b1fac30299fb988bee51c78964d8aa42b30e",
"version-date": "2024-10-29",
"port-version": 0
},
{
"git-tree": "1e1cf99e5b991e2c335ba171022ac5861c50b23e",
"version-date": "2024-09-04",