Skip to content

Commit 24a5366

Browse files
committed
finalised 2026 support + add uv sln launcher
1 parent 9c44720 commit 24a5366

File tree

7 files changed

+42
-1
lines changed

7 files changed

+42
-1
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ $Env:ADSK_MAYA_SDK_2026 = "C:\Program Files\Autodesk\Maya2026\devkit\devkitBase"
1313

1414
$installedVersions = pyenv versions --bare
1515
foreach ($version in $installedVersions) {
16+
$version = $version.Split("-")[1]
1617
Write-Host $version
1718
pyenv local $version
1819
$pythonPath = pyenv which python

src/cpp/.sln-uv.ps1

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Set dependency variables here:
2+
$devFolder = Resolve-Path -Path "$PSScriptRoot\..\..\.dev"
3+
Write-Host $devFolder
4+
Set-Location "$devFolder\ThirdParty"
5+
$Env:THIRD_PARTY_EIGEN = (Resolve-Path -Path "./eigen")
6+
$Env:THIRD_PARTY_FMT = (Resolve-Path -Path "./fmt")
7+
8+
$Env:ADSK_MAYA_SDK_2022 = "C:\Program Files\Autodesk\Maya2022\devkit\devkitBase"
9+
$Env:ADSK_MAYA_SDK_2023 = "C:\Program Files\Autodesk\Maya2023\devkit\devkitBase"
10+
$Env:ADSK_MAYA_SDK_2024 = "C:\Program Files\Autodesk\Maya2024\devkit\devkitBase"
11+
$Env:ADSK_MAYA_SDK_2025 = "C:\Program Files\Autodesk\Maya2025\devkit\devkitBase"
12+
$Env:ADSK_MAYA_SDK_2026 = "C:\Program Files\Autodesk\Maya2026\devkit\devkitBase"
13+
14+
$installedVersions = uv python list --only-installed
15+
foreach ($version in $installedVersions) {
16+
$version = $version.Split("-")[1]
17+
Write-Host $version
18+
uv python pin $version
19+
$pythonPath = uv python find $version
20+
$pythonRootPath = (Get-Item $pythonPath).Directory.FullName
21+
$majorMinor = $version -replace '(\d+\.\d+).*', '$1' -replace '\.', ''
22+
Set-Item "Env:PYTHON_$majorMinor" $pythonRootPath
23+
Write-Host $majorMinor
24+
$pybindPath = Resolve-Path -Path "$devFolder\venvs\py$majorMinor\.venv\Lib\site-packages\pybind11" -ErrorAction SilentlyContinue
25+
if ($pybindPath) {
26+
Write-Host "Setting PyBind11 path: $pybindPath"
27+
Set-Item "Env:PYBIND11_$majorMinor" $pybindPath
28+
}
29+
}
30+
31+
Set-Location $PSScriptRoot
32+
.\skin_plus_plus.sln

src/cpp/open_sln-uv.bat

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
rem This allows the sln to be opened by double clicking, rather than right click -> run with powershell.
2+
@echo off
3+
PowerShell .sln.ps1

src/cpp/skin_plus_plus_pymaya/skin_plus_plus_pymaya.vcxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@
163163
<TargetExt>.pyd</TargetExt>
164164
<IncludePath>$(THIRD_PARTY_EIGEN);$(THIRD_PARTY_FMT)\include;$(ProjectDir);$(ProjectDir)..\skin_plus_plus_py\headers;$(ADSK_MAYA_SDK_2026)\include;$(PYTHON_311)\include;$(PYBIND11_311)\include;$(IncludePath)</IncludePath>
165165
<LibraryPath>$(ADSK_MAYA_SDK_2026)\lib;$(PYTHON_311)\libs;$(LibraryPath)</LibraryPath>
166-
<OutDir>$(SolutionDir)..\skin_plus_plus\dccs\maya\2024\</OutDir>
166+
<OutDir>$(SolutionDir)..\skin_plus_plus\dccs\maya\2026\</OutDir>
167167
</PropertyGroup>
168168
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='2023-Debug|x64'">
169169
<LinkIncremental>true</LinkIncremental>

src/skin_plus_plus/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ def _activate_skin_plus_plus_py_(python_version: str, debug: bool = False):
3434
global skin_plus_plus_py
3535
global SkinData
3636

37+
print(f"python_version: {python_version}")
38+
3739
debug = bool(os.environ.get("SKIN_PLUS_PLUS_DEBUG", False)) or debug
3840
if debug:
3941
python_version = f"debug_{python_version}"
@@ -48,6 +50,7 @@ def _activate_skin_plus_plus_py_(python_version: str, debug: bool = False):
4850
if "skin_plus_plus_py" in sys.modules:
4951
del sys.modules["skin_plus_plus_py"]
5052

53+
print(f"import_path: {import_path}")
5154
skin_plus_plus_py = importlib.import_module(import_path)
5255
if is_reloading:
5356
_ = importlib.reload(skin_plus_plus_py)
@@ -76,6 +79,7 @@ def _activate_host_():
7679
if current_host_interface is None:
7780
raise RuntimeError(f"Unsupported executable: {executable}")
7881

82+
print(f"Activating host: {current_host_interface}")
7983
extract_skin_data = current_host_interface.extract_skin_data
8084
apply_skin_data = current_host_interface.apply_skin_data
8185
get_vertex_positions = current_host_interface.get_vertex_positions

src/skin_plus_plus/dccs/core.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ def _get_dcc_backend(self):
5656
raise FileNotFoundError(f"Unsupported DCC version: {version}")
5757

5858
import_path = f"{__name__.rstrip('core')}{self.name}.{version}.skin_plus_plus_{self.api_name}"
59+
print(f"dcc import_path: {import_path}")
5960
backend = importlib.import_module(import_path)
6061

6162
self._extract_skin_data = backend.extract_skin_data

0 commit comments

Comments
 (0)