Skip to content

Commit 561a0df

Browse files
Updating blast to 5.0.4
1 parent 85befb6 commit 561a0df

File tree

11 files changed

+97
-57
lines changed

11 files changed

+97
-57
lines changed

blast/VERSION.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5.0.3
1+
5.0.4

blast/deps/repo-deps.packman.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<project toolsVersion="5.0">
22
<dependency name="repo_man" linkPath="../_repo/deps/repo_man">
3-
<package name="repo_man" version="1.37.0" />
3+
<package name="repo_man" version="1.48.1" />
44
</dependency>
55
<dependency name="repo_build" linkPath="../_repo/deps/repo_build" tags="non-redist">
6-
<package name="repo_build" version="0.44.4" />
6+
<package name="repo_build" version="0.55.3" />
77
</dependency>
88
</project>

blast/docs/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## [5.0.4] - 22-January-2024
4+
5+
### Bugfixes
6+
- Fixed issue https://github.com/NVIDIA-Omniverse/PhysX/issues/207, Island removal doesn't work as expected
7+
8+
39
## [5.0.3] - 1-November-2023
410

511
### Bugfixes

blast/source/sdk/extensions/authoring/NvBlastExtAuthoringFractureToolImpl.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -573,7 +573,7 @@ Mesh* FractureToolImpl::createChunkMesh(int32_t chunkInfoIndex, bool splitUVs /*
573573
if (splitUVs)
574574
compactifyAndTransformVertexBuffer<VrtComp>(_vertexBuffer, edges, sourceVertices, numSourceVerts, numEdges, tm);
575575
else
576-
compactifyAndTransformVertexBuffer<VrtCompNoUV>(_vertexBuffer, edges, sourceVertices, numSourceVerts, numEdges, tm);
576+
compactifyAndTransformVertexBuffer<VrtCompNoUV>(_vertexBuffer, edges, sourceVertices, numSourceVerts, numEdges, tm);
577577

578578
// now fix the order of the edges
579579
// compacting the vertex buffer can put them out of order
@@ -629,7 +629,7 @@ Mesh* FractureToolImpl::createChunkMesh(int32_t chunkInfoIndex, bool splitUVs /*
629629
vert.uv[0].x = (vert.uv[0].x - bnd.minimum.x) * scale;
630630
vert.uv[0].y = (vert.uv[0].y - bnd.minimum.y) * scale;
631631
}
632-
632+
633633
// build a new mesh from the converted data
634634
Mesh* chunkMesh = new MeshImpl(vertices, edges, facets, numVerts, numEdges, facetsCount);
635635
NVBLAST_FREE(edges);
@@ -2105,8 +2105,11 @@ int32_t FractureToolImpl::islandDetectionAndRemoving(int32_t chunkId, bool creat
21052105
}
21062106
}
21072107

2108-
if (createAtNewDepth == false || chunkId != 0)
2108+
if (createAtNewDepth == false)
21092109
{
2110+
// We need to flag the chunk as changed, in case someone is calling this function directly
2111+
// Otherwise when called as part of automatic island removal, chunks are already flagged as changed
2112+
mChunkData[chunkInfoIndex].isChanged = true;
21102113
delete mChunkData[chunkInfoIndex].getMesh();
21112114
Mesh* newMesh0 =
21122115
new MeshImpl(compVertices[0].data(), compEdges[0].data(), compFacets[0].data(),

blast/tools/packman/bootstrap/configure.bat

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
:: Copyright 2019 NVIDIA CORPORATION
1+
:: Copyright 2019-2023 NVIDIA CORPORATION
22
::
33
:: Licensed under the Apache License, Version 2.0 (the "License");
44
:: you may not use this file except in compliance with the License.
@@ -12,7 +12,7 @@
1212
:: See the License for the specific language governing permissions and
1313
:: limitations under the License.
1414

15-
set PM_PACKMAN_VERSION=6.56
15+
set PM_PACKMAN_VERSION=7.10.1
1616

1717
:: Specify where packman command is rooted
1818
set PM_INSTALL_PATH=%~dp0..
@@ -59,7 +59,7 @@ if defined PM_PYTHON_EXT (
5959
goto PACKMAN
6060
)
6161

62-
set PM_PYTHON_VERSION=3.7.13-nv1-windows-x86_64
62+
set PM_PYTHON_VERSION=3.10.5-1-windows-x86_64
6363
set PM_PYTHON_BASE_DIR=%PM_PACKAGES_ROOT%\python
6464
set PM_PYTHON_DIR=%PM_PYTHON_BASE_DIR%\%PM_PYTHON_VERSION%
6565
set PM_PYTHON=%PM_PYTHON_DIR%\python.exe
@@ -95,11 +95,16 @@ if exist "%PM_PYTHON%" (
9595
if exist "%PM_PYTHON_DIR%" ( rd /s /q "%PM_PYTHON_DIR%" > nul )
9696
)
9797

98-
:: Perform atomic rename
99-
rename "%TEMP_FOLDER_NAME%" "%PM_PYTHON_VERSION%" 1> nul
100-
:: Failure during move, need to clean up and abort
98+
:: Perform atomic move (allowing ovewrite, /y)
99+
move /y "%TEMP_FOLDER_NAME%" "%PM_PYTHON_DIR%" 1> nul
100+
:: Verify that python.exe is now where we expect
101+
if exist "%PM_PYTHON%" goto PACKMAN
102+
103+
:: Wait a second and try again (can help with access denied weirdness)
104+
timeout /t 1 /nobreak 1> nul
105+
move /y "%TEMP_FOLDER_NAME%" "%PM_PYTHON_DIR%" 1> nul
101106
if %errorlevel% neq 0 (
102-
echo !!! Error renaming python !!!
107+
echo !!! Error moving python %TEMP_FOLDER_NAME% -> %PM_PYTHON_DIR% !!!
103108
call :CLEAN_UP_TEMP_FOLDER
104109
goto ERROR
105110
)
@@ -114,7 +119,7 @@ if defined PM_MODULE_DIR_EXT (
114119

115120
set PM_MODULE=%PM_MODULE_DIR%\run.py
116121

117-
if exist "%PM_MODULE%" goto ENSURE_7ZA
122+
if exist "%PM_MODULE%" goto END
118123

119124
:: Clean out broken PM_MODULE_DIR if it exists
120125
if exist "%PM_MODULE_DIR%" ( rd /s /q "%PM_MODULE_DIR%" > nul )
@@ -137,19 +142,6 @@ if %errorlevel% neq 0 (
137142

138143
del "%TARGET%"
139144

140-
:ENSURE_7ZA
141-
set PM_7Za_VERSION=22.01-1
142-
set PM_7Za_PATH=%PM_PACKAGES_ROOT%\7za\%PM_7ZA_VERSION%
143-
if exist "%PM_7Za_PATH%" goto END
144-
set PM_7Za_PATH=%PM_PACKAGES_ROOT%\chk\7za\%PM_7ZA_VERSION%
145-
if exist "%PM_7Za_PATH%" goto END
146-
147-
"%PM_PYTHON%" -S -s -u -E "%PM_MODULE%" pull "%PM_MODULE_DIR%\deps.packman.xml"
148-
if %errorlevel% neq 0 (
149-
echo !!! Error fetching packman dependencies !!!
150-
goto ERROR
151-
)
152-
153145
goto END
154146

155147
:ERROR_MKDIR_PACKAGES_ROOT
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<config remotes="cloudfront">
22
<remote2 name="cloudfront">
3-
<transport actions="download" protocol="https" packageLocation="d4i3qtqj3r0z5.cloudfront.net/${name}@${version}" />
4-
<transport actions="list upload" configUrl="https://gitlab-master.nvidia.com/hfannar/packman-transports/raw/main/d4i3qtqj3r0z5.cloudfront.toml" />
3+
<transport actions="download" protocol="http" packageLocation="d4i3qtqj3r0z5.cloudfront.net/${name}@${version}" />
4+
<transport actions="upload" protocol="s3" packageLocation="packages-for-cloudfront" />
5+
<transport actions="list" protocol="http" packageLocation="omnipackages.nvidia.com/api/v1/list/cloudfront" />
56
</remote2>
67
</config>

blast/tools/packman/packman

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22

3-
# Copyright 2019-2020 NVIDIA CORPORATION
3+
# Copyright 2019-2023 NVIDIA CORPORATION
44

55
# Licensed under the Apache License, Version 2.0 (the "License");
66
# you may not use this file except in compliance with the License.
@@ -18,11 +18,13 @@ set -eu
1818

1919
if echo ${PM_VERBOSITY-} | grep -i "debug" > /dev/null ; then
2020
set -x
21+
PM_CURL_SILENT=""
22+
PM_WGET_QUIET=""
2123
else
2224
PM_CURL_SILENT="-s -S"
2325
PM_WGET_QUIET="--quiet"
2426
fi
25-
PM_PACKMAN_VERSION=6.56
27+
PM_PACKMAN_VERSION=7.10.1
2628

2729
# This is necessary for newer macOS
2830
if [ `uname` == 'Darwin' ]; then
@@ -85,7 +87,7 @@ install_python()
8587
{
8688
PLATFORM=`uname`
8789
PROCESSOR=`uname -m`
88-
PYTHON_VERSION=3.7.13-nv1
90+
PYTHON_VERSION=3.10.5-1
8991

9092
if [ $PLATFORM == 'Darwin' ]; then
9193
PYTHON_PACKAGE=$PYTHON_VERSION-macos-x86_64
@@ -154,20 +156,6 @@ if [ ! -f "$PM_MODULE" ]; then
154156
fi
155157
fi
156158

157-
# Ensure 7za package exists:
158-
PM_7za_VERSION=22.01-1
159-
export PM_7za_PATH="$PM_PACKAGES_ROOT/7za/$PM_7za_VERSION"
160-
if [ ! -d "$PM_7za_PATH" ]; then
161-
export PM_7za_PATH="$PM_PACKAGES_ROOT/chk/7za/$PM_7za_VERSION"
162-
if [ ! -d "$PM_7za_PATH" ]; then
163-
"$PM_PYTHON" -S -s -u -E "$PM_MODULE" pull "$PM_MODULE_DIR/deps.packman.xml"
164-
if [ "$?" -ne 0 ]; then
165-
echo "Failure while installing required 7za package"
166-
exit 1
167-
fi
168-
fi
169-
fi
170-
171159
# Generate temporary file name for environment variables:
172160
PM_VAR_PATH=`mktemp -u -t tmp.$$.pmvars.XXXXXX`
173161

blast/tools/packman/packman.cmd

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
:: RUN_PM_MODULE must always be at the same spot for packman update to work (batch reloads file during update!)
2-
:: [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]
2+
:: [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]
33
:: Reset errorlevel status (don't inherit from caller)
44
@call :ECHO_AND_RESET_ERROR
5-
:: You can remove the call below if you do your own manual configuration of the dev machines
6-
call "%~dp0\bootstrap\configure.bat"
75

6+
:: You can remove this section if you do your own manual configuration of the dev machines
7+
call :CONFIGURE
88
if %errorlevel% neq 0 ( exit /b %errorlevel% )
9+
910
:: Everything below is mandatory
1011
if not defined PM_PYTHON goto :PYTHON_ENV_ERROR
1112
if not defined PM_MODULE goto :MODULE_ENV_ERROR
@@ -46,6 +47,7 @@ exit /b 1
4647
@echo Error while processing and setting environment variables!
4748
exit /b 1
4849

50+
:: pad [xxxx]
4951
:ECHO_AND_RESET_ERROR
5052
@echo off
5153
if /I "%PM_VERBOSITY%"=="debug" (
@@ -58,3 +60,30 @@ exit /b 0
5860
for /f "delims=" %%a in ('%PM_PYTHON% -S -s -u -E -c "import tempfile;file = tempfile.NamedTemporaryFile(mode='w+t', delete=False);print(file.name)"') do (set PM_VAR_PATH=%%a)
5961
set PM_VAR_PATH_ARG=--var-path="%PM_VAR_PATH%"
6062
goto :RUN_PM_MODULE
63+
64+
:CONFIGURE
65+
:: Must capture and set code page to work around issue #279, powershell invocation mutates console font
66+
:: This issue only happens in Windows CMD shell when using 65001 code page. Some Git Bash implementations
67+
:: don't support chcp so this workaround is a bit convoluted.
68+
:: Test for chcp:
69+
chcp > nul 2>&1
70+
if %errorlevel% equ 0 (
71+
for /f "tokens=2 delims=:" %%a in ('chcp') do (set PM_OLD_CODE_PAGE=%%a)
72+
) else (
73+
call :ECHO_AND_RESET_ERROR
74+
)
75+
:: trim leading space (this is safe even when PM_OLD_CODE_PAGE has not been set)
76+
set PM_OLD_CODE_PAGE=%PM_OLD_CODE_PAGE:~1%
77+
if "%PM_OLD_CODE_PAGE%" equ "65001" (
78+
chcp 437 > nul
79+
set PM_RESTORE_CODE_PAGE=1
80+
)
81+
call "%~dp0\bootstrap\configure.bat"
82+
set PM_CONFIG_ERRORLEVEL=%errorlevel%
83+
if defined PM_RESTORE_CODE_PAGE (
84+
:: Restore code page
85+
chcp %PM_OLD_CODE_PAGE% > nul
86+
)
87+
set PM_OLD_CODE_PAGE=
88+
set PM_RESTORE_CODE_PAGE=
89+
exit /b %PM_CONFIG_ERRORLEVEL%

blast/tools/packman/packmanconf.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ def init():
3434
"""
3535
major = sys.version_info[0]
3636
minor = sys.version_info[1]
37-
if major != 3 or minor != 7:
37+
if major != 3 or minor != 10:
3838
raise RuntimeError(
39-
f"This version of packman requires Python 3.7.x, but {major}.{minor} was provided"
39+
f"This version of packman requires Python 3.10.x, but {major}.{minor} was provided"
4040
)
4141
conf_dir = os.path.dirname(os.path.abspath(__file__))
4242
os.environ["PM_INSTALL_PATH"] = conf_dir
@@ -56,7 +56,7 @@ def get_packages_root(conf_dir: str) -> str:
5656
elif platform_name == "Darwin":
5757
# macOS
5858
root = os.path.join(
59-
os.path.expanduser("~"), "/Library/Application Support/packman-cache"
59+
os.path.expanduser("~"), "Library/Application Support/packman-cache"
6060
)
6161
elif platform_name == "Linux":
6262
try:

blast/tools/packman/python.bat

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,20 @@
1313
:: limitations under the License.
1414

1515
@echo off
16-
setlocal
16+
setlocal enableextensions
1717

1818
call "%~dp0\packman" init
1919
set "PYTHONPATH=%PM_MODULE_DIR%;%PYTHONPATH%"
20-
set PYTHONNOUSERSITE=1
21-
"%PM_PYTHON%" -u %*
20+
21+
if not defined PYTHONNOUSERSITE (
22+
set PYTHONNOUSERSITE=1
23+
)
24+
25+
REM For performance, default to unbuffered; however, allow overriding via
26+
REM PYTHONUNBUFFERED=0 since PYTHONUNBUFFERED on windows can truncate output
27+
REM when printing long strings
28+
if not defined PYTHONUNBUFFERED (
29+
set PYTHONUNBUFFERED=1
30+
)
31+
32+
"%PM_PYTHON%" %*

0 commit comments

Comments
 (0)