Skip to content

Commit 058b861

Browse files
authored
Merge pull request #133 from GPUOpen-LibrariesAndSDKs/develop
Merge develop to master version 3.0
2 parents 83c658a + 36d8e0c commit 058b861

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1232
-487
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ bindings-ok
5454

5555
kernelsCache/
5656
.hybrid_cache
57+
.tex_cache
5758

5859
vscode/
5960

BlenderPkg/create_zip_addon.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#********************************************************************
1515

1616
import zipfile
17+
import zlib
1718
import platform
1819
from pathlib import Path
1920
import subprocess
@@ -93,7 +94,8 @@ def create_zip_addon(build_dir):
9394
zip_addon = build_dir / f"rprblender-{ver[0]}.{ver[1]}.{ver[2]}-{ver[3]}-{OS.lower()}.zip"
9495

9596
print(f"Compressing addon files to: {zip_addon}")
96-
with zipfile.ZipFile(zip_addon, 'w') as myzip:
97+
with zipfile.ZipFile(zip_addon, 'w', compression=zipfile.ZIP_DEFLATED,
98+
compresslevel=zlib.Z_BEST_COMPRESSION) as myzip:
9799
for src, package_path in enumerate_addon_data():
98100
print(f"adding {src} --> {package_path}")
99101

Changelog.md

Lines changed: 29 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,34 @@
1-
# Version 2.5.1
1+
# Version 3.0
2+
## New Features:
3+
- The new plug-in version incorporates version 2.0 of our Radeon™ ProRender system and brings about these significant changes and enhancements:
4+
- Hardware-accelerated ray tracing on AMD Radeon™ RX 6000 series GPUs
5+
- Better scaling across multiple devices: the use of two or more GPUs gives a better performance improvement with Radeon ProRender 2.0 than with Radeon ProRender 1.0 in most cases.
6+
- Less noise for a given number of render samples. Using the same number of samples as with Radeon ProRender 1.0 may be slower in some scenes, but noise will be significantly lower.
7+
- RPR 2.0 is the default render mode called “Full”. Users who wish to use RPR 1.0 can set the render quality mode to “Legacy”.
8+
- A new setting for texture cache has been added. The specified folder will cache textures for rendering, and can be cleaned up by the user if it becomes too large.
9+
- A new setting called “Contour Rendering” allows non-photorealistic outline style renders.
10+
- A setting has been added to allow “Motion Blur only in the Velocity AOV” in the Motion Blur settings. Enabling this setting means that all AOVs will not have motion blur, but the Velocity AOV will contain motion blur information to allow compositing of post-process motion blur.
11+
- Support for UDIM based tiled image textures has been added
212

3-
## New Features
4-
- **Beta support for RPR 2.0 and the capability of using it for Viewport Rendering has been added. This also gives better support for Point and Spot light softness parameters. For equivalent sample counts, in most scenes, the noise should be lower, and scaling of render speeds across multiple devices should be better.**
5-
- The ML Denoising filter speed has been improved.
6-
- The viewport shading panel has been added in the viewport render mode.
7-
- Support for “Multiply Add” in the Math node has been added (thanks to user cmdrf for their contribution).
8-
- Support for muting nodes with the “M” key in the shader editor has been added.
9-
- Support for the Local mode with the “/” key in the viewport has been added.
10-
- The Object Info node is now supported in the Full mode.
11-
- The default adaptive tile size has been increased to 32 for adaptive rendering, which gives better results when rendering with multiple GPUs.
12-
A new setting in Viewport Sampling called “Samples per second” has been added, with the default being 15. This setting is roughly analogous to “Frames per second”. The viewport render resolution is adjusted during rendering to try and maintain this interactivity. There is also a “Minimum viewport resolution” setting which limits resolution downscaling. For users with high resolution displays, this adaptive resolution can maintain a much better viewport experience.
13-
- Support of image sequences of textures and sequences of animated OpenVDB files has been added.
14-
- Final rendering no longer uses the setting “Update samples”. Renders are exponentially updated after 1, 1, 2, 4, 8, 16, 32, and every 32 samples thereafter. This is done to maximize performance, especially with RPR 2.0. Viewport rendering is unchanged.
15-
- For users interested in testing the latest developments in the Radeon ProRender for Blender plugin, a weekly “Development Build” will be posted on future Mondays. See https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderBlenderAddon/releases or follow the repository on github to get weekly updates.
16-
- Support for Blender 2.90
17-
18-
## Fixed Issues
19-
- The Physical Light normalization now takes transform scaling into account.
20-
- Export of .rpr files now uses the scene camera property.
21-
- Backplate images now work in viewport renders.
22-
- An issue with image texture gamma correction in Hybrid modes has been fixed.
23-
- Pixel filter settings are now exported to .rpr files.
24-
- CPU rendering is now selectable in the UI with RPR 2.0 enabled.
25-
- Rendering animations can no longer cause a memory leak and eventual crash.
26-
- Export of .rpr files should no longer be slow with many textures in Blender 2.83.
27-
- Scene sync and render times are now logged to the console.
28-
- AOV names in the config.json file exported with .rpr are no longer different from expected names.
29-
- When using collections of objects with the same name there could be a name duplication leading to some objects not being rendered — fixed.
30-
- Sometimes switching from the Object to the Edit mode in the viewport could result in the loss of an object’s UV coordinates — fixed.
31-
- Mapping node transformations were off, in particular, combinations of transforms and rotations only took Z into account — fixed.
32-
- “Generated” UV in the Texture Coordinate mode is now correct.
33-
- The scale wrap, sin, cos and tan functions in the vector math node are now not supported.
34-
- Exporting .rpr files to directories with non-latin characters is now supported
35-
- Fixed artifacts while using the denoiser with tiled rendering
36-
- Light Group AOVs and ID’s now use 1-4 instead of selecting a “key” or “fill” light group.
37-
38-
## Known Issues
39-
- macOS ML denoiser may have issues (driver issue being investigated)
40-
- RPR 2.0 known issues
41-
- Shadow and reflection catchers are not yet enabled
42-
- Adaptive sampling is disabled
43-
- Adaptive subdivision is disabled
44-
- On macOS, currently RPR 2.0 uses OpenCL and not metal.
45-
- Volumetric absorption does not currently work
13+
## Issues Fixed:
14+
- Using the Uber shader with the “Metalness” reflection mode now matches the Disney shader PBR standard more closely. Among other improvements, the Blender “Principled BRDF” node respects the “Specular” parameter better.
15+
- Motion Blur, particularly for rotation, is now more correct.
16+
- Animated World settings were not being applied correctly — fixed.
17+
- An error when using RGB Curve nodes in some instances — fixed.
18+
- Object and material “Pass Index” Blender’s settings are now fully supported.
19+
- Some errors in Hybrid rendering have been resolved.
20+
- Some users (particularly users with 4GB VRAM GPUs) could not use Hybrid rendering. We have added a setting for them to use Hybrid in these instances with lower memory.
21+
- A memory leak when rendering animations has been fixed.
22+
- An issue involving OpenVDB compatibility with Blender 2.91 has been fixed.
4623

24+
## Known Issues:
25+
- RPR 2.0 has some forthcoming features. If these are needed, please use the “Legacy” render mode:
26+
- Heterogenous volumes;
27+
- Adaptive sampling;
28+
- Adaptive subdivision.
29+
- The first render on macOS® with RPR 2.0 can take a few minutes to start, while the kernels are being compiled.
30+
macOS® Mojave users should use Legacy mode if seeing crashes with Full mode.
31+
- Pixelated textures or color artifacts in textures can sometimes happen in Full mode.
4732

4833
# Version 2.4.11
4934

@@ -122,6 +107,5 @@ A new setting in Viewport Sampling called “Samples per second” has been adde
122107
- ML Denoiser on macOS (with certain Vega cards) and Ubuntu can produce black pixels.
123108

124109
- Viewport rendering with RPR 2.0 falls back to use RPR 1.0.
125-
126110

127111
- Invisible area lights can cause firefly artifacts in RPR 2.0.

README-OSX.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,10 @@ NOTES:
6060

6161
### Running
6262

63-
Ensure that the BLENDER_28X_EXE environment variable is set. For example, add the following to
63+
Ensure that the BLENDER_EXE environment variable is set. For example, add the following to
6464
your ~/.profile with the correct path to the Blender executable:
6565

66-
export BLENDER_28X_EXE="/Users/amd/Downloads/blender-2.78c-OSX_10.6-x86_64/blender.app/Contents/MacOS/blender"
66+
export BLENDER_EXE="/Users/amd/Downloads/blender-2.78c-OSX_10.6-x86_64/blender.app/Contents/MacOS/blender"
6767

6868
To run the local build, use:
6969
- ./run_blender_with_rpr_osx.sh

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,12 @@ run `build.py` to build.
7070
## Run Addon while developing it(without real installation)
7171

7272
- make sure you have no installed addon for Blender version you want to use; remove installed version if needed.
73-
- set environment variable BLENDER_28x_EXE to blender.exe you want to use via the command line or system environment settings.
73+
- set environment variable BLENDER_EXE to blender.exe you want to use via the command line or system environment settings.
7474
- run run_blender_with_rpr.cmd
7575

7676
Example:
7777

78-
`set BLENDER_28X_EXE="C:\Program Files\Blender Foundation\Blender 2.81\blender.exe" && run_blender_with_rpr.cmd`
78+
`set BLENDER_EXE="C:\Program Files\Blender Foundation\Blender 2.81\blender.exe" && run_blender_with_rpr.cmd`
7979

8080
### Debugging
8181

RadeonProImageProcessingSDK

RadeonProRenderSDK

Submodule RadeonProRenderSDK updated 76 files

cmd_tools/create_sdk.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ def copy_rif_sdk():
8888
'Linux': "Ubuntu18",
8989
'Darwin': "OSX"
9090
}[OS]
91-
bin_dir = rif_dir / os_str
91+
bin_dir = rif_dir / os_str / "Dynamic"
9292

9393
# copying inc files
9494
shutil.copytree(str(rif_dir / "include"), str(sdk_rif_dir / "inc"))
@@ -109,21 +109,21 @@ def copy_rif_sdk():
109109
shutil.copy(str(lib), str(sdk_lib_dir))
110110

111111
elif OS == 'Linux':
112-
shutil.copy(str(bin_dir / "libRadeonImageFilters.so.1.5.4"),
112+
shutil.copy(str(bin_dir / "libRadeonImageFilters.so.1.6.1"),
113113
str(sdk_bin_dir / "libRadeonImageFilters.so"))
114-
shutil.copy(str(bin_dir / "libRadeonML_MIOpen.so.0.9.7"),
114+
shutil.copy(str(bin_dir / "libRadeonML_MIOpen.so.0.9.8"),
115115
str(sdk_bin_dir / "libRadeonML_MIOpen.so"))
116116
shutil.copy(str(bin_dir / "libOpenImageDenoise.so.0.9.0"),
117117
str(sdk_bin_dir / "libOpenImageDenoise.so"))
118-
shutil.copy(str(bin_dir / "libMIOpen.so.2.0.1"),
118+
shutil.copy(str(bin_dir / "libMIOpen.so.2.0.4"),
119119
str(sdk_bin_dir / "libMIOpen.so.2"))
120120

121121
elif OS == 'Darwin':
122-
shutil.copy(str(bin_dir / "libRadeonImageFilters.1.5.4.dylib"),
122+
shutil.copy(str(bin_dir / "libRadeonImageFilters.1.6.1.dylib"),
123123
str(sdk_bin_dir / "libRadeonImageFilters.dylib"))
124124
shutil.copy(str(bin_dir / "libOpenImageDenoise.0.9.0.dylib"),
125125
str(sdk_bin_dir / "libOpenImageDenoise.dylib"))
126-
shutil.copy(str(bin_dir / "libRadeonML_MPS.0.9.7.dylib"),
126+
shutil.copy(str(bin_dir / "libRadeonML_MPS.0.9.8.dylib"),
127127
str(sdk_bin_dir / "libRadeonML_MPS.dylib"))
128128

129129
# adjusting id of RIF libs

run_blender_with_rpr.cmd

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ REM *******************************************************************
1717

1818
@echo on
1919

20-
if ""=="%BLENDER_28x_EXE%" goto error
20+
if ""=="%BLENDER_EXE%" goto error
2121

22-
py cmd_tools/run_blender.py "%BLENDER_28x_EXE%" cmd_tools/test_rpr.py
22+
py cmd_tools/run_blender.py "%BLENDER_EXE%" cmd_tools/test_rpr.py
2323
pause
2424
REM it's much easier to get issue traceback on crash if pause is present; remove if not needed
2525
exit
2626

2727
:error
28-
echo "Please set BLENDER_28x_EXE environment variable"
28+
echo "Please set BLENDER_EXE environment variable"

0 commit comments

Comments
 (0)