Skip to content

Commit

Permalink
October 28, 2024 (#192)
Browse files Browse the repository at this point in the history
  • Loading branch information
walbourn authored Oct 29, 2024
1 parent 6abf4f5 commit 2d1da4c
Show file tree
Hide file tree
Showing 9 changed files with 56 additions and 30 deletions.
2 changes: 1 addition & 1 deletion .nuget/uvatlas_desktop_2019.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<description>This version is for Windows desktop applications using Visual Studio 2019 (16.11) or Visual Studio 2022.

UVAtlas, a shared source library for creating and packing an isochart texture atlas.</description>
<releaseNotes>Matches the September 4, 2024 release on GitHub.</releaseNotes>
<releaseNotes>Matches the October 29, 2024 release on GitHub.</releaseNotes>
<projectUrl>http://go.microsoft.com/fwlink/?LinkID=512686</projectUrl>
<repository type="git" url="https://github.com/microsoft/UVAtlas.git" />
<icon>images\icon.jpg</icon>
Expand Down
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,19 @@ Release available for download on [GitHub](https://github.com/microsoft/UVAtlas/

## Release History

### October 29, 2024
* All enums now use ``uint32_t`` as the underlying type rather than ``unsigned long`` or ``int``.
* uvatlastool:
* Add "GNU-style" *--long-options* to the command-line tools (all existing switches are still supported)
* Refactored code to use shared header
* Updated for October 2024 DirectXTex & DirectXMesh releases
* CMake and MSBuild project updates

### September 4, 2024
* CMake project updates including support for ARM64EC
* Code review
* Added GitHub Actions YAML files
* uvatlastool: Updated for September 2024 DirectXTex & DirectXMesh releases

### June 5, 2024
* CMake project updates
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

cmake_minimum_required (VERSION 3.20)

set(UVATLAS_VERSION 1.8.8)
set(UVATLAS_VERSION 1.8.9)

if(WINDOWS_STORE OR (DEFINED XBOX_CONSOLE_TARGET))
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
Expand Down
45 changes: 30 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ http://go.microsoft.com/fwlink/?LinkID=512686

Copyright (c) Microsoft Corporation.

**September 4, 2024**
**October 29, 2024**

This package contains UVAtlas, a shared source library for creating and packing an isochart texture atlas.

Expand All @@ -16,25 +16,27 @@ These components are designed to work without requiring any content from the leg

## Directory Layout

* ``Inc\``
* ``UVAtlas\``

+ Public Header File (in the DirectX C++ namespace):
+ ``Inc\``

* UVtlas.h
- UVAtlasCreate
- UVAtlasPartition
- UVAtlasPack
- UVAtlasComputeIMTFromPerVertexSignal
- UVAtlasComputeIMTFromSignal
- UVAtlasComputeIMTFromTexture
- UVAtlasComputeIMTFromPerTexelSignal
- UVAtlasApplyRemap
+ Public Header File (in the DirectX C++ namespace):

* ``geodesics\``, ``isochart\``
* UVtlas.h
- UVAtlasCreate
- UVAtlasPartition
- UVAtlasPack
- UVAtlasComputeIMTFromPerVertexSignal
- UVAtlasComputeIMTFromSignal
- UVAtlasComputeIMTFromTexture
- UVAtlasComputeIMTFromPerTexelSignal
- UVAtlasApplyRemap

+ Library source files
* ``geodesics\``, ``isochart\``

* ``UVAtasTool\``
+ Library source files

* ``UVAtlasTool\``

+ Command line tool and sample for UVAtlas library

Expand Down Expand Up @@ -78,6 +80,19 @@ For a full change history, see [CHANGELOG.md](https://github.com/microsoft/UVAtl

* When using clang/LLVM for the ARM64/AArch64 platform, the Windows 11 SDK ([22000](https://walbourn.github.io/windows-sdk-for-windows-11/)) or later is required.

* As of the October 2024 release, the command-line tool also supports GNU-style long options using ``--``. All existing switches continue to function, but some of the `-` options are now deprecated per this table:

|Old switch|New switch|
|---|---|
|-sdkmesh|-ft sdkmesh<br />--file-type sdkmesh|
|-sdkmesh2|-ft sdkmesh2<br />--file-type sdkmesh2|
|-cmo|-ft cmo<br />--file-type cmo|
|-vbo|-ft vbo<br />--file-type vbo|
|-wf|-ft obj<br />--file-type obj|
|-flipu|--flip-u|
|-flipv|--flip-v|
|-flipz|--flip-z|

## Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
Expand Down
2 changes: 1 addition & 1 deletion UVAtlas/inc/UVAtlas.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@

#include <DirectXMath.h>

#define UVATLAS_VERSION 188
#define UVATLAS_VERSION 189


namespace DirectX
Expand Down
6 changes: 4 additions & 2 deletions UVAtlasTool/MeshOBJ.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,9 @@ HRESULT LoadFromOBJ(
bool ccw,
bool dds)
{
WaveFrontReader<uint32_t> wfReader;
using Vertex = DX::WaveFrontReader<uint32_t>::Vertex;

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

'DX': is not a class or namespace name

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

syntax error: missing ';' before '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

syntax error: '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

'Vertex': is not a member of '`global namespace''

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

'DX': is not a class or namespace name

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

syntax error: missing ';' before '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

syntax error: '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

'Vertex': is not a member of '`global namespace''

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

'DX': is not a class or namespace name

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

syntax error: missing ';' before '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

syntax error: '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

'Vertex': is not a member of '`global namespace''

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

'DX': is not a class or namespace name

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

syntax error: missing ';' before '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

syntax error: '<'

Check failure on line 68 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

'Vertex': is not a member of '`global namespace''

DX::WaveFrontReader<uint32_t> wfReader;

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

'DX': is not a class or namespace name

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

syntax error: '<'

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

'DX': is not a class or namespace name

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

syntax error: '<'

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

'DX': is not a class or namespace name

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

syntax error: '<'

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

'DX': is not a class or namespace name

Check failure on line 70 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

syntax error: '<'
HRESULT hr = wfReader.Load(szFilename, ccw);

Check failure on line 71 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2019, x64-Debug-VCPKG, amd64)

'wfReader': undeclared identifier

Check failure on line 71 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x64-Debug-VCPKG, amd64)

'wfReader': undeclared identifier

Check failure on line 71 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, arm64-Debug-VCPKG, amd64_arm64)

'wfReader': undeclared identifier

Check failure on line 71 in UVAtlasTool/MeshOBJ.cpp

View workflow job for this annotation

GitHub Actions / build (windows-2022, x86-Debug-VCPKG, amd64_x86)

'wfReader': undeclared identifier
if (FAILED(hr))
return hr;
Expand Down Expand Up @@ -117,7 +119,7 @@ HRESULT LoadFromOBJ(
if (FAILED(hr))
return hr;

hr = vbr.AddStream(wfReader.vertices.data(), wfReader.vertices.size(), 0, sizeof(WaveFrontReader<uint32_t>::Vertex));
hr = vbr.AddStream(wfReader.vertices.data(), wfReader.vertices.size(), 0, sizeof(Vertex));
if (FAILED(hr))
return hr;

Expand Down
8 changes: 4 additions & 4 deletions UVAtlasTool/UVAtlasTool_2019.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -315,14 +315,14 @@
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets" Condition="Exists('..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets')" />
<Import Project="..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets" Condition="Exists('..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets')" />
<Import Project="..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets" Condition="Exists('..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets')" />
<Import Project="..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets" Condition="Exists('..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets')" />
</ImportGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets'))" />
</Target>
</Project>
8 changes: 4 additions & 4 deletions UVAtlasTool/UVAtlasTool_2022.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -315,14 +315,14 @@
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets" Condition="Exists('..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets')" />
<Import Project="..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets" Condition="Exists('..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets')" />
<Import Project="..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets" Condition="Exists('..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets')" />
<Import Project="..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets" Condition="Exists('..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets')" />
</ImportGroup>
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxmesh_desktop_2019.2024.9.5.1\build\native\directxmesh_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxtex_desktop_2019.2024.9.5.1\build\native\directxtex_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxmesh_desktop_2019.2024.10.29.1\build\native\directxmesh_desktop_2019.targets'))" />
<Error Condition="!Exists('..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\directxtex_desktop_2019.2024.10.29.1\build\native\directxtex_desktop_2019.targets'))" />
</Target>
</Project>
4 changes: 2 additions & 2 deletions UVAtlasTool/packages.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="directxmesh_desktop_2019" version="2024.9.5.1" targetFramework="native" />
<package id="directxtex_desktop_2019" version="2024.9.5.1" targetFramework="native" />
<package id="directxmesh_desktop_2019" version="2024.10.29.1" targetFramework="native" />
<package id="directxtex_desktop_2019" version="2024.10.29.1" targetFramework="native" />
</packages>

0 comments on commit 2d1da4c

Please sign in to comment.