AMD's (ProRender) Plugin for Blender

Rounded Edges are always one that I see mentioned for rendering. IMO it’s something that should be done on the mesh side (more control). But related I was looking at the 2.79 release notes, looks like there’s an addon being included that does this quite well:
https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.79/Add-ons

To answer the question of “why this over cycles”. Fair question. Here’s what I’d say:

  1. New renderer, being built from the ground up. Keep in mind RPR has only been around for a yearish. But being new, if you have ideas how a renderer should be you can have influence on that. We’re listening :wink: . For example, we want to get our bsdf shaders right, want a principled shader similar to the Disney model or what’s in 2.79? We are doing that.
    1a. Faster development. This renderer is evolving quickly, and we’re looking to put out major release each quarter. Again if you have some feature you want NOW we’re listening.
  2. We’re enabling better out of core rendering. Have a huge scene? At SIGGRAPH we demoed a 25+gb of geometry scene rendering in IPR.
  3. Hardware agnostic, all the same code. Cycles CUDA vs OpenCL kernels are split and do exactly the same thing.
  4. GPU + CPU rendering (both at once).
  5. Generally a cool project. We’re trying to bring raytracing to the masses, for the good of the people.

Thanks!

edit:
6. Fast now, getting faster.

Hello Bsavery,

when your principled shader implementation will arrive? Thx.

And thank you and the pro render team for making this happen.:smiley:

Hi !
Is there any possibility of it being compatible with Microsoft Windows® 7 for non-AMD GPU ?
Thx !

It already is…
running fine here /// w7x64, Q M5000 + GTX 1060

Hello all! We (AMD) are looking for a few users to help create some great looking renders for https://pro.radeon.com/en-us/software/prorender/
Want to see your render in place of the lighthouse? So would we! Get in touch if interested and send an example, hardware compensation will be provided for renders we use.

I will happily deliver some renders when your version of the principled shader will be implemented, so it depends on you;).

Plugin documentation only has information on windows installation.

executing the radeonprorenderforblender.1.2.8.run installer on OpenSUSE Leap 42.2 -->

Verifying archive integrity… All good.
Uncompressing Radeon ProRender for Blender 100%
Traceback (most recent call last):
File “./install.py”, line 34, in <module>
home = Path.home()
AttributeError: type object ‘Path’ has no attribute ‘home’

Same thing happens SU or user. Any thoughts? I can’t even find where the installer uncompressed files to look at the script.

I think that the installer is using python to install, and with an older version of python (on your system) it might not find that path.home. What system python version do you have?

@jandress
See here:

You replace the name of the file with the version you use.

Tried Yafu’s method, no success:

john@linux-uzhk:~/graphicall> ./radeonprorenderforblender.1.2.8.run /home/john/graphicall/blender-2.78c-linux-glibc219-x86_64
Verifying archive integrity… All good.
Uncompressing Radeon ProRender for Blender 100%
Traceback (most recent call last):
File “./install.py”, line 34, in <module>
home = Path.home()
AttributeError: type object ‘Path’ has no attribute ‘home’

I have both python 2 and 3 installed. I believe the default is python 2, what is the installer expecting?

john@linux-uzhk:~/graphicall> python --version
Python 2.7.13
john@linux-uzhk:~/graphicall> python3 --version
Python 3.4.6

There’s a good chance, you just have to install the addon the usual way. Because it sounds like installation of the renderer itself was succesfull.
try:

sh PATH_TO_YOUR_FILE/radeonprorenderforblender.1.2.0.run --noexec --target /home/YOUR_NAME/Desktop/ProRender

This will extract the .run to a folder ProRender on your Desktop without executing the script. In there will be a folder addon containing a .zip you can install the usual way.

@m_squareGFX … that gets a little closer (maybe…)
I installed the “addon.zip” in the decompressed folder.

When attempting to activate the addon, I get this error: in the info header area:

Traceback (most recent call last):
File “/home/john/graphicall/blender-2.78c-linux-glibc219-x86_64/2.78/scripts/modules/addon_utils.py”, line 349, in enable
mod.register()
File “/home/john/graphicall/blender-2.78c-linux-glibc219-x86_64/2.78/scripts/addons/rprblender/init.py”, line 160, in register
from . import render # import render first to initialize pyrpr(can be used in other modules)
File “/home/john/graphicall/blender-2.78c-linux-glibc219-x86_64/2.78/scripts/addons/rprblender/render/init.py”, line 96, in <module>
assert pyrpr_init(bindings_import_path, rprsdk_bin_path)
AssertionError

and the terminal shows a continuous scrolling stream of this error until I quit blender:

Traceback (most recent call last):
File “/home/john/graphicall/blender-2.78c-linux-glibc219-x86_64/2.78/scripts/addons/rprblender/init.py”, line 115, in on_scene_update_post
from . import ui
SystemError: Parent module ‘rprblender’ not loaded, cannot perform relative import.

Perhaps not related, but out of curiosity i ran the checker executable included in the addon folder:

john@linux-uzhk:~/Desktop/ProRender/addon> ./checker
./checker: /lib64/libpci.so.3: version `LIBPCI_3.3’ not found (required by ./checker)

I’m sorry to dissappoint you. It worked for me and unfortunatly my understandings of programming and therefore errors isn’t sufficient in this case. Let’s hope for one of the Gurus.

I wonder if this renderer has support for baking textures. Does it work on nvidia cards? Checking it out.

It’s not fast. I found it actually slow.

Rendering itself is more or less good but initialization takes forever! Especially with both CPU+GPU configuration it seems you can’t save any time for rendering animation because it’s slower than using GPU only. I really love the idea and I wait for improvements.

Or maybe I did something wrong…

Best Regards!
Albert

I can definitely confirm this behaviour. The initialisation process does indeed take forever, but only when CPU+GPU is enabled. Performing certain actions such as copying an object into the buffer also causes an immediate crash. So all in all, the engine is near-unusable at the moment so we’ll just have to wait for further development.

Having played with the renderer for a bit now, here are my experiences:

  • OpenCL kernel compilation time is actually really fast compare to Blender’s Cycles. Probably since Blender’s kernel compile isn’t multithreaded.
  • Performance is lacking a bit compare to Cycles, which has years of work behind it. But then, RPR isn’t that bad considering the default ray depth are set to 8. IMO 2 to 4 would be a much better default for diffuse and glossy bounces. Transparency will obviously need more.
  • Disney shader would be awesome!
  • Coming from Blender, i wish there are more material nodes for color tweaking. It sucks having to use a POW node to adjust gamma or a Multiply and Add nodes to adjust contrast.
  • Texture compression and being able to render out-of-core is huge! It means we can easily render much bigger scenes than Cycles can on identical GPUs.

Here are a few test renders I made:






Regarding feature requests - VrayDirt node is very impressive allowing to create Dust/Dirt/Cavity effects as well as Edge effects/wear. Accurate curvature detection and masking is most important workflow in Substance. It would be nice if render engine could calculate it on the fly to be used as a texture/mask.


I just hope that there is no GPU limitation. for exmpale Asus is releaseing 19 PCIe slot motherboard for miners, but it would be impressive for rendering as well… I know there is a driver limitation of how many GPU’s can be used, but onece resolved, does ProRender have any limits on OpenCL resources?