Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1962 commits
Select commit Hold shift + click to select a range
7642d44
buildmaster: version update to 3.3.27
radeonprorender Apr 15, 2022
6dee427
make render time output from main thread (#299)
Apr 18, 2022
3900c5c
buildmaster: version update to 3.3.28
radeonprorender Apr 18, 2022
4a73bb5
Merge pull request #70 from GPUOpen-LibrariesAndSDKs/develop
DMotorygin Apr 18, 2022
893be39
Remove RPR1 from the plugin (#278)
DMotorygin Apr 25, 2022
1b28656
buildmaster: version update to 3.3.29
radeonprorender Apr 25, 2022
3f4ebcc
Support callbacks for IPR for air volumes (#301)
DMotorygin Apr 27, 2022
5a03a5a
Save gamma to config (#300)
DMotorygin Apr 27, 2022
6e8c96a
buildmaster: version update to 3.3.30
radeonprorender Apr 27, 2022
0fe4e40
core 2.2.13 (#303)
DMotorygin May 4, 2022
5fe7fa9
buildmaster: version update to 3.3.31
radeonprorender May 4, 2022
7b91ee0
Toon light linking (#302)
VGorash May 6, 2022
c85f1df
buildmaster: version update to 3.3.32
radeonprorender May 6, 2022
b845b83
mid color as albedo (#304)
VGorash May 12, 2022
d4ba140
buildmaster: version update to 3.3.33
radeonprorender May 12, 2022
7932e52
UI
May 16, 2022
bb2e4e3
layer export
May 17, 2022
cf85d50
arg change
May 18, 2022
7bec985
move camera iutside the cycle
May 18, 2022
500bda5
cycles switch
May 18, 2022
181356b
implementation
DMotorygin May 19, 2022
4450938
fix reinhard setup
DMotorygin May 19, 2022
3b5521d
foreign objects fix
May 20, 2022
a4186b2
init callback
May 20, 2022
0b50755
submodule update (and hack)
DMotorygin May 20, 2022
ea0a736
Merge pull request #71 from GPUOpen-LibrariesAndSDKs/develop
DMotorygin May 20, 2022
73bd4ae
Merge branch 'develop' into dev/tonemap_via_rif
DMotorygin May 20, 2022
c3698f7
new AOVs
May 21, 2022
e5ffebe
params
May 21, 2022
0c06adb
fix after merge
DMotorygin May 22, 2022
ebaf3bd
dont use per face
DMotorygin May 22, 2022
56ae298
Merge branch 'master' into develop
DMotorygin May 22, 2022
894d940
Merge branch 'dev/tonemap_via_rif' into develop
DMotorygin May 22, 2022
a02f269
Merge branch 'dev/dmotor/abc_material_fix' into develop
DMotorygin May 22, 2022
00133e6
Merge pull request #72 from V-Gorash/cryptomatte_improvement
DMotorygin May 22, 2022
61b296d
Merge pull request #73 from V-Gorash/light_linking_fix
DMotorygin May 22, 2022
cd2854f
Merge pull request #74 from V-Gorash/layer_export
DMotorygin May 22, 2022
4007bff
fix simple and contour
DMotorygin May 23, 2022
2e55dc8
Merge branch 'dev/tonemap_via_rif' into develop
DMotorygin May 23, 2022
4e65b18
init callback (#306)
VGorash May 23, 2022
fcb466a
Layer export (#305)
VGorash May 23, 2022
075f6ab
Cryptomatte parameters improvement (#308)
VGorash May 23, 2022
0e1bd20
buildmaster: version update to 3.3.34
radeonprorender May 23, 2022
f6dbf9d
string fix
May 24, 2022
658ae86
dont use per face (#309)
DMotorygin May 24, 2022
2fde537
buildmaster: version update to 3.3.35
radeonprorender May 24, 2022
a7e8710
change mel command
DMotorygin May 24, 2022
bd77c61
Merge branch 'develop' into dev/dmotor/ipr_camera_fix
DMotorygin May 25, 2022
4be9cb6
Merge pull request #75 from V-Gorash/light_linking_mac
DMotorygin May 25, 2022
2d786ff
Merge branch 'develop' of https://github.com/DMotorygin/RadeonProRend…
DMotorygin May 25, 2022
a5fa7ec
merge fixes
DMotorygin May 25, 2022
a3f5da3
merge fixes
DMotorygin May 25, 2022
eb45378
string fix (#311)
VGorash May 25, 2022
7bae7d1
buildmaster: version update to 3.3.36
radeonprorender May 25, 2022
efcd654
changes after review
DMotorygin May 25, 2022
f641ede
Tonemap via RIF (#307)
DMotorygin May 25, 2022
797d132
Update CHANGELOG.md
bsavery May 25, 2022
d03733f
Merge branch 'dev/tonemap_via_rif' into develop
DMotorygin May 26, 2022
e530e2a
Merge branch 'develop' of https://github.com/DMotorygin/RadeonProRend…
DMotorygin May 26, 2022
f38aa74
Merge pull request #77 from GPUOpen-LibrariesAndSDKs/develop
DMotorygin May 26, 2022
e233607
Merge branch 'master' into develop
DMotorygin May 26, 2022
8179007
change mel command (#312)
DMotorygin May 26, 2022
6ab7227
buildmaster: version update to 3.3.37
radeonprorender May 26, 2022
b5826d6
Merge pull request #313 from DMotorygin/develop
bsavery May 26, 2022
d978435
Merge pull request #78 from GPUOpen-LibrariesAndSDKs/master
DMotorygin May 31, 2022
eef9c69
Merge pull request #80 from GPUOpen-LibrariesAndSDKs/develop
DMotorygin Jun 10, 2022
3cbc97e
RPRMAYA-3163 (#317)
Jun 17, 2022
530323e
buildmaster: version update to 3.3.38
radeonprorender Jun 17, 2022
a496415
Merge pull request #81 from GPUOpen-LibrariesAndSDKs/develop
DMotorygin Jul 4, 2022
41619f0
Merge pull request #324 from GPUOpen-LibrariesAndSDKs/master
bsavery Jul 7, 2022
31767be
buildmaster: version update to 3.3.39
radeonprorender Jul 7, 2022
350ab24
Merge branch 'develop' into develop
DMotorygin Jul 7, 2022
32cbe21
RPRMAYA-3177 (#318)
Jul 7, 2022
f66debb
buildmaster: version update to 3.3.40
radeonprorender Jul 7, 2022
aed8ce3
Swatch memory usage fix (#320)
DMotorygin Jul 8, 2022
ee301f4
buildmaster: version update to 3.3.41
radeonprorender Jul 8, 2022
e9787f0
RPR Ramp node implementation (#315)
DMotorygin Jul 8, 2022
947eb31
RPRMAYA-3184: Transparency vp2 issue fix (#325)
Jul 8, 2022
28e64ee
buildmaster: version update to 3.3.42
radeonprorender Jul 8, 2022
f0f2f86
fix build (#326)
DMotorygin Jul 11, 2022
a334d07
buildmaster: version update to 3.3.43
radeonprorender Jul 11, 2022
f184186
Support textures in ramp node (#327)
DMotorygin Jul 14, 2022
4497ca7
buildmaster: version update to 3.3.44
radeonprorender Jul 14, 2022
41d374c
Core 2.2.14 features (#319)
VGorash Jul 15, 2022
3a6fbed
buildmaster: version update to 3.3.45
radeonprorender Jul 15, 2022
517e4e2
core 2.2.15 update (#328)
VGorash Jul 22, 2022
df6c863
buildmaster: version update to 3.3.46
radeonprorender Jul 22, 2022
e5777c9
Add blackbody in RPR VDB (#329)
DMotorygin Sep 22, 2022
c8b9c77
buildmaster: version update to 3.3.47
radeonprorender Sep 22, 2022
c1da1a5
Output render times in log and more advanced progress bar (#332)
DMotorygin Oct 1, 2022
b7f62df
Expose out w option for lookup and arithmetic nodes (#330)
DMotorygin Oct 1, 2022
fb29038
buildmaster: version update to 3.3.48
radeonprorender Oct 1, 2022
03bd88e
Fix export issues with light linking (#335)
DMotorygin Oct 19, 2022
17c7745
Add maya 2023 support (#333)
DMotorygin Oct 19, 2022
249ba60
buildmaster: version update to 3.3.49
radeonprorender Oct 19, 2022
11cc45a
Fix light link in blend material (#336)
DMotorygin Oct 20, 2022
b1f7bfd
buildmaster: version update to 3.3.50
Oct 20, 2022
9a37224
IPR smooth preview hang: RPRMAYA-3116 (#338)
Oct 26, 2022
d6578e6
Fix light linking 2 (#337)
DMotorygin Oct 26, 2022
b9a3920
buildmaster: version update to 3.3.51
radeonprorender Oct 26, 2022
8db2601
Update core to 2.02.16 RC5 (#334)
DMotorygin Oct 27, 2022
e63f50e
buildmaster: version update to 3.3.52
Oct 27, 2022
fd9c25a
Implement double sided node (#340)
DMotorygin Oct 31, 2022
0796e1c
buildmaster: version update to 3.3.53
radeonprorender Oct 31, 2022
8c4d8ba
Fix IPR does not react on changes of time in case of deformers applie…
Nov 1, 2022
87d9424
buildmaster: version update to 3.3.54
radeonprorender Nov 1, 2022
2a1762b
enable hair and volume (#323)
DMotorygin Nov 3, 2022
24f4d2c
Enable HybridPro in Production Render (#322)
DMotorygin Nov 3, 2022
eb79ed1
Add bevel node (#343)
DMotorygin Nov 3, 2022
70d3a4f
buildmaster: version update to 3.3.55
radeonprorender Nov 3, 2022
90ce63f
Update version.h
bsavery Nov 4, 2022
f13be3e
buildmaster: version update to 3.4.1
radeonprorender Nov 4, 2022
bdd47d6
buildmaster: version update to 3.4.0
Nov 4, 2022
0dafae1
Merge pull request #344 from GPUOpen-LibrariesAndSDKs/Release_Nov_3_2022
bsavery Nov 7, 2022
dc6b517
Update CHANGELOG.md
bsavery Nov 7, 2022
94eee1d
RPRMAYA 3239 (#349)
Nov 22, 2022
58c8644
buildmaster: version update to 3.4.1
radeonprorender Nov 22, 2022
605bb2f
Fix animated textures export (#342)
DMotorygin Nov 23, 2022
08974a9
SDK 2.2.16 patch3 (#350)
Nov 23, 2022
4458f23
Remove old hybrid modes (#346)
DMotorygin Nov 23, 2022
74f2ea7
buildmaster: version update to 3.4.2
radeonprorender Nov 23, 2022
3d4e07d
Merge pull request #90 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Nov 27, 2022
f8ce41e
Enable per face materials for hybrid pro in the plugin (#351)
DMotorygin Nov 30, 2022
0aa9a48
buildmaster: version update to 3.4.3
Nov 30, 2022
97a2044
Merge pull request #91 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Dec 5, 2022
11801e5
soft min max (#358)
DMotorygin Jan 24, 2023
d1189f6
Fix ambient light for HybridPro (#356)
DMotorygin Jan 24, 2023
d6d8904
buildmaster: version update to 3.4.4
Jan 24, 2023
cf6b025
add enabled check (#357)
DMotorygin Jan 25, 2023
eb44e2b
buildmaster: version update to 3.4.5
radeonprorender Jan 25, 2023
648caf8
Merge pull request #92 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jan 30, 2023
1881be2
Update core to 2.2.17 (#352)
DMotorygin Jan 30, 2023
ce71d3d
buildmaster: version update to 3.4.6
radeonprorender Jan 30, 2023
39a03ac
Merge pull request #93 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jan 31, 2023
a66c2b6
Fix Blend Material Shading in Viewport (#360)
DMotorygin Feb 2, 2023
0da3a96
Fix viewport not updating when denoiser enabled (#359)
DMotorygin Feb 2, 2023
6657677
buildmaster: version update to 3.4.7
Feb 2, 2023
d9acea2
fix frames with negative numbers not exporting
Licoman256 Feb 13, 2023
294ebee
Merge branch 'master' of https://github.com/DMotorygin/RadeonProRende…
Licoman256 Feb 13, 2023
e0bcc4e
Merge pull request #94 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Feb 23, 2023
c51b576
Change default color for albedo to gray (#364)
Licoman256 Feb 23, 2023
b56bbcf
buildmaster: version update to 3.4.8
radeonprorender Feb 23, 2023
aee3cbe
Fallback to GPU when trying to render with CPU with HybridPro (#365)
Licoman256 Feb 27, 2023
a9e5924
buildmaster: version update to 3.4.9
radeonprorender Feb 27, 2023
4b86cbe
kernel and plugin wrapper update
DMotorygin Mar 2, 2023
5e8d29f
fix for win
DMotorygin Mar 2, 2023
b82c391
second fix for windows
DMotorygin Mar 2, 2023
28d1b9d
fix for mac
DMotorygin Mar 2, 2023
3f01f39
shader cache warning update
DMotorygin Mar 6, 2023
e268bd7
ui fix (#361)
Licoman256 Mar 7, 2023
043a6a0
change unsigned int to int in getOutputFilePath (#362)
Licoman256 Mar 7, 2023
83257e4
buildmaster: version update to 3.4.10
radeonprorender Mar 7, 2023
96befe5
update core (for hybrid)
DMotorygin Mar 8, 2023
22e3209
material x node
DMotorygin Mar 19, 2023
ab7c61d
shelf an menu ui
DMotorygin Mar 19, 2023
7ab2b58
materialX browser
DMotorygin Mar 19, 2023
4db3b2b
import materialx command
DMotorygin Mar 21, 2023
9b41532
fix file headers
DMotorygin Mar 21, 2023
63c392b
use hipbin from rpr sdk
DMotorygin Mar 21, 2023
51ff1fb
add extra time logging
DMotorygin Mar 21, 2023
3555d67
rework time logging
DMotorygin Mar 24, 2023
8199178
v 3.1.0 patch2
DMotorygin Mar 24, 2023
7789a72
v 3.1.0 multiGPU hotfix
DMotorygin Mar 26, 2023
75d2e73
add legacy context option
DMotorygin Mar 26, 2023
7a0af5f
hybrid pro RC4
DMotorygin Mar 28, 2023
1edfd1a
enabled disabled params
DMotorygin Mar 28, 2023
5cedf24
wip
DMotorygin Mar 28, 2023
63e5736
Toon shader UI rework (#370)
DMotorygin Mar 28, 2023
2170812
buildmaster: version update to 3.4.11
radeonprorender Mar 28, 2023
e5b6d4d
no subdiv displace wip
DMotorygin Mar 29, 2023
07822ac
finalize displacement for hybrid
DMotorygin Mar 29, 2023
08def77
Merge branch 'dev/dmotor/enable_uber_params_for_hybridPro' into dev/d…
DMotorygin Mar 29, 2023
ac0188a
shadow catcher for HybridPro
DMotorygin Mar 30, 2023
552302e
Fix black points not saving correctly with ramps and randomly adding …
Licoman256 Mar 30, 2023
1abcfa9
revert unintended submodule update
DMotorygin Mar 30, 2023
e61f07e
buildmaster: version update to 3.4.12
radeonprorender Mar 31, 2023
54ef0e7
Merge pull request #96 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Mar 31, 2023
40fb940
Merge branch 'master' into dev/dmotor/add_material_x
DMotorygin Apr 1, 2023
b87fd1d
Toon Shader old scenes loading fix (#376)
DMotorygin Apr 3, 2023
7fff296
buildmaster: version update to 3.4.13
radeonprorender Apr 3, 2023
c16c1cf
Merge branch 'master' into dev/dmotor/upd_3.1.00
DMotorygin Apr 3, 2023
a3b9240
Merge pull request #97 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Apr 3, 2023
e61ed8e
Merge branch 'master' into dev/dmotor/upd_3.1.00
DMotorygin Apr 3, 2023
55f65e6
Merge branch 'master' into dev/dmotor/add_material_x
DMotorygin Apr 3, 2023
5035e59
Render time log rework (#374)
DMotorygin Apr 4, 2023
1c5d0ca
buildmaster: version update to 3.4.14
radeonprorender Apr 4, 2023
9ec46b0
RC 7
DMotorygin Apr 14, 2023
10efe96
Merge pull request #98 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Apr 14, 2023
1c2dd7d
Merge branch 'master' into dev/dmotor/upd_3.1.00
DMotorygin Apr 14, 2023
c7f739b
v 3.1.1
DMotorygin Apr 19, 2023
09774e1
RC8
DMotorygin Apr 20, 2023
be8ad8d
improve render time logging
DMotorygin Apr 24, 2023
befb1aa
3.1.1.0
DMotorygin Apr 28, 2023
4de717e
Merge pull request #367 from DMotorygin/dev/dmotor/upd_3.1.00
radeonprorender May 1, 2023
ea5edf7
buildmaster: version update to 3.5.0
radeonprorender May 1, 2023
5c15408
Merge pull request #99 from GPUOpen-LibrariesAndSDKs/master
DMotorygin May 8, 2023
b32b158
Add HybridPro parameters to UI (#345)
DMotorygin May 12, 2023
ef2646a
Fix IBL not rendering when exporting a scene (#369)
Licoman256 May 12, 2023
153e332
don't write out not needed aovs (#381)
Licoman256 May 12, 2023
4461a8e
Merge pull request #100 from GPUOpen-LibrariesAndSDKs/master
DMotorygin May 13, 2023
e928a3e
Merge pull request #382 from DMotorygin/fix_shared_components_link
DMotorygin May 15, 2023
1edad15
buildmaster: version update to 3.5.1
radeonprorender May 15, 2023
6ed81a8
Merge pull request #101 from GPUOpen-LibrariesAndSDKs/master
DMotorygin May 16, 2023
2e83911
Merge pull request #101 from GPUOpen-LibrariesAndSDKs/master
DMotorygin May 16, 2023
e6d4626
Update CHANGELOG.md
bsavery May 17, 2023
38c06b5
buildmaster: version update to 3.5.2
radeonprorender May 17, 2023
1f0d9a2
Disable tile rendering for contour (#380)
Licoman256 May 19, 2023
78a64ed
buildmaster: version update to 3.5.3
radeonprorender May 19, 2023
7407b79
fix for tile render (#383)
DMotorygin May 23, 2023
a8fdb9b
buildmaster: version update to 3.5.4
radeonprorender May 23, 2023
7e2cf43
RPR Ramp update (#366)
Licoman256 May 31, 2023
1d5a159
Support old GPUs (#378)
DMotorygin May 31, 2023
a5fe804
Merge pull request #102 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jun 6, 2023
b5dc338
Merge pull request #102 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jun 6, 2023
0d1a515
Add support for textures for maya ramp. Use rpr ramp for maya ramp. (…
Licoman256 Jun 6, 2023
d713fa2
buildmaster: version update to 3.5.5
radeonprorender Jun 8, 2023
348abd9
Fix TMS Propagate Edge Hardness option not working on smooth mesh (#387)
Licoman256 Jun 12, 2023
421dd18
buildmaster: version update to 3.5.6
radeonprorender Jun 12, 2023
4546bac
swap (#388)
Licoman256 Jun 13, 2023
9f68974
buildmaster: version update to 3.5.7
radeonprorender Jun 13, 2023
c2d34b3
display a warning (#389)
Licoman256 Jun 14, 2023
e40cec6
buildmaster: version update to 3.5.8
radeonprorender Jun 14, 2023
015d47e
gray out (#392)
Licoman256 Jun 15, 2023
537a66a
replace \ with / (#391)
Licoman256 Jun 15, 2023
f64483e
buildmaster: version update to 3.5.9
radeonprorender Jun 15, 2023
cd21342
Change render quality name from full to Northstar (#390)
Licoman256 Jun 26, 2023
91bfbc6
buildmaster: version update to 3.5.10
radeonprorender Jun 26, 2023
d6815eb
v3.1.2 (#393)
DMotorygin Jul 3, 2023
f2ea9d0
buildmaster: version update to 3.5.11
radeonprorender Jul 3, 2023
8dbcb7b
Merge pull request #103 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jul 6, 2023
9cc7f64
Merge pull request #103 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jul 6, 2023
d73bb96
material x node
DMotorygin Mar 19, 2023
43bd9f3
shelf an menu ui
DMotorygin Mar 19, 2023
25373c4
materialX browser
DMotorygin Mar 19, 2023
21493a0
import materialx command
DMotorygin Mar 21, 2023
11f1c76
fix file headers
DMotorygin Mar 21, 2023
4b48f02
Merge branch 'dev/dmotor/add_material_x' of github.com:DMotorygin/Rad…
DMotorygin Jul 6, 2023
49b5146
Merge pull request #104 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Jul 12, 2023
e486c9c
Merge pull request #105 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Aug 28, 2023
1170567
Merge pull request #106 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Sep 22, 2023
3ea7640
Merge pull request #107 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Oct 4, 2023
345c195
Merge pull request #108 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Oct 24, 2023
678accf
Merge pull request #109 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Oct 30, 2023
efc813e
Merge pull request #110 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Nov 3, 2023
0d02f84
Merge branch 'master' into dev/dmotor/add_material_x
DMotorygin Nov 12, 2023
dd230e5
Merge pull request #111 from GPUOpen-LibrariesAndSDKs/master
DMotorygin Nov 12, 2023
f0c10bd
Merge branch 'master' into dev/dmotor/add_material_x
DMotorygin Nov 12, 2023
8f3b533
update mtlx assignment
DMotorygin Nov 14, 2023
c7505ff
new mtlx library icon
DMotorygin Nov 14, 2023
c016989
fix build
DMotorygin Nov 15, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions FireRender.Maya.Src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ set(Commands
"RenderCacheWarningDialog.h"
"RenderProgressBars.cpp"
"RenderProgressBars.h"
"FireRenderImportMaterialX.h"
"FireRenderImportMaterialX.cpp"
)
source_group("Commands" FILES ${Commands})

Expand Down Expand Up @@ -214,6 +216,8 @@ set(Materials
"FireRenderVoronoi.h"
"SubsurfaceMaterial.cpp"
"SubsurfaceMaterial.h"
"FireRenderMaterialXMaterial.cpp"
"FireRenderMaterialXMaterial.h"
)
source_group("Materials" FILES ${Materials})

Expand Down
12 changes: 12 additions & 0 deletions FireRender.Maya.Src/Context/HybridProContext.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ limitations under the License.
********************************************************************/
#include "HybridProContext.h"
#include "RadeonProRender_Baikal.h"
#include "RadeonProRender_MaterialX.h"
#include "ContextCreator.h"
#include "../VulcanUtils.h"

Expand All @@ -20,6 +21,7 @@ limitations under the License.
#include "../FireRenderDoublesided.h"
#include "../FireRenderPBRMaterial.h"
#include "../FireRenderShadowCatcherMaterial.h"
#include "../FireRenderMaterialXMaterial.h"

rpr_int HybridProContext::m_gHybridProPluginID = INCORRECT_PLUGIN_ID;

Expand Down Expand Up @@ -142,6 +144,10 @@ void HybridProContext::setupContextPostSceneCreation(const FireRenderGlobalsData
#ifdef FORCE_ENABLE_VOLUMES
rprContextSetParameterByKey1u(frcontext, (rpr_context_info)RPR_CONTEXT_ENABLE_VOLUMES, RPR_TRUE);
#endif

// set dependency for materialX standard surface (could be missing from *.mtlx files)
frstatus = rprMaterialXAddDependencyMtlx(frcontext, "scripts/standard_surface.mtlx");
checkStatus(frstatus);
}

bool HybridProContext::IsAOVSupported(int aov) const
Expand Down Expand Up @@ -191,6 +197,12 @@ bool HybridProContext::IsShaderNodeSupported(FireMaya::ShaderNode* shaderNode) c
return true;
}

FireMaya::MaterialXMaterial* pMaterialX = dynamic_cast<FireMaya::MaterialXMaterial*> (shaderNode);
if (pMaterialX != nullptr)
{
return true;
}

return false;
}

Expand Down
5 changes: 5 additions & 0 deletions FireRender.Maya.Src/Context/TahoeContext.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ See the License for the specific language governing permissions and
limitations under the License.
********************************************************************/
#include "TahoeContext.h"
#include "RadeonProRender_MaterialX.h"

#include "maya/MColorManagementUtilities.h"
#include "maya/MFileObject.h"
Expand Down Expand Up @@ -338,6 +339,10 @@ void NorthStarContext::setupContextPostSceneCreation(const FireRenderGlobalsData
frstatus = rprContextSetParameterByKeyString(frcontext, RPR_CONTEXT_TEXTURE_CACHE_PATH, fireRenderGlobalsData.textureCachePath.asChar());
checkStatus(frstatus);

// set dependency for materialX standard surface (could be missing from *.mtlx files)
frstatus = rprMaterialXAddDependencyMtlx(frcontext, "scripts/standard_surface.mtlx");
checkStatus(frstatus);

// SC and RC
// we should disable built-in shadow catcher composite
frstatus = rprContextSetParameterByKey1u(frcontext, RPR_CONTEXT_SHADOW_CATCHER_BAKING, fireRenderGlobalsData.shadowCatcherEnabled ? 0 : 1);
Expand Down
1 change: 1 addition & 0 deletions FireRender.Maya.Src/FireMaya.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ namespace FireMaya
FireRenderRamp,
FireRenderDoubleSided,
FireRenderBevel,
FireRenderMaterialXMaterial,

// ^ always add new ids to end of list (max 128 entries here)
FireRenderNodeIdEndCurrent, // <- this value is allowed to change, it marks the end of current list
Expand Down
4 changes: 4 additions & 0 deletions FireRender.Maya.Src/FireRender.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@
<ClCompile Include="FireRenderImageUtil.cpp" />
<ClCompile Include="FireRenderImportCmd.cpp" />
<ClCompile Include="FireRenderImportExportXML.cpp" />
<ClCompile Include="FireRenderImportMaterialX.cpp" />
<ClCompile Include="FireRenderImportXML.cpp" />
<ClCompile Include="FireRenderIpr.cpp" />
<ClCompile Include="FireRenderLayeredTextureUtils.cpp" />
Expand All @@ -203,6 +204,7 @@
<ClCompile Include="FireRenderMaterialSwatchRender.cpp" />
<ClCompile Include="FireMaterialViewRenderer.cpp" />
<ClCompile Include="FireRenderBlendMaterial.cpp" />
<ClCompile Include="FireRenderMaterialXMaterial.cpp" />
<ClCompile Include="FireRenderMeshMASH.cpp" />
<ClCompile Include="FireRenderNoise.cpp" />
<ClCompile Include="FireRenderNormal.cpp" />
Expand Down Expand Up @@ -358,6 +360,7 @@
<ClInclude Include="FireRenderImageUtil.h" />
<ClInclude Include="FireRenderImportCmd.h" />
<ClInclude Include="FireRenderImportExportXML.h" />
<ClInclude Include="FireRenderImportMaterialX.h" />
<ClInclude Include="FireRenderIpr.h" />
<ClInclude Include="FireRenderLayeredTextureUtils.h" />
<ClInclude Include="FireRenderLocationCmd.h" />
Expand All @@ -367,6 +370,7 @@
<ClInclude Include="FireMaterialViewRenderer.h" />
<ClInclude Include="FireRenderBlendMaterial.h" />
<ClInclude Include="FireRenderCmd.h" />
<ClInclude Include="FireRenderMaterialXMaterial.h" />
<ClInclude Include="FireRenderMath.h" />
<ClInclude Include="FireRenderMeshMASH.h" />
<ClInclude Include="FireRenderNoise.h" />
Expand Down
18 changes: 18 additions & 0 deletions FireRender.Maya.Src/FireRender.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -704,6 +704,12 @@
<ClCompile Include="FireRenderDoublesided.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="FireRenderMaterialXMaterial.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="FireRenderImportMaterialX.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="FireRenderMaterialSwatchRender.h">
Expand Down Expand Up @@ -1216,6 +1222,18 @@
<ClInclude Include="FireRenderBevel.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="FireRenderMaterialXMaterial.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="FireRenderImportMaterialX.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="FireRenderMaterialXMaterial.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="FireRenderImportMaterialX.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="VulcanUtils.h">
<Filter>Utils</Filter>
</ClInclude>
Expand Down
145 changes: 145 additions & 0 deletions FireRender.Maya.Src/FireRenderImportMaterialX.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
/**********************************************************************
Copyright 2020 Advanced Micro Devices, Inc
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
********************************************************************/
#include "FireRenderImportMaterialX.h"

#include <maya/MArgDatabase.h>
#include <maya/MItDag.h>
#include <maya/MDagPath.h>
#include <maya/MGlobal.h>
#include <maya/MSelectionList.h>
#include <maya/MObjectArray.h>
#include <maya/MArgList.h>
#include <maya/MStatus.h>
#include <maya/MDagPathArray.h>
#include <maya/MFileObject.h>
#include <maya/MCommonSystemUtils.h>

#include "Context/TahoeContext.h"
#include "FireRenderUtils.h"
#include "FileSystemUtils.h"


FireRenderMaterialXImportCmd::FireRenderMaterialXImportCmd()
{
}

FireRenderMaterialXImportCmd::~FireRenderMaterialXImportCmd()
{
}

void* FireRenderMaterialXImportCmd::creator()
{
return new FireRenderMaterialXImportCmd;
}

MSyntax FireRenderMaterialXImportCmd::newSyntax()
{
MSyntax syntax;

CHECK_MSTATUS(syntax.addFlag(kMaterialFilePathFlag, kMaterialFilePathFlagLong, MSyntax::kString));
CHECK_MSTATUS(syntax.addFlag(kMaterialNameFlag, kMaterialNameFlagLong, MSyntax::kString));

return syntax;
}

std::tuple<MStatus, MString> GetFilePath(const MArgDatabase& argData)
{
// back-off
if (!argData.isFlagSet(kMaterialFilePathFlag))
{
MGlobal::displayError("File path is missing, use -file flag");
return std::make_tuple(MS::kFailure, MString());
}

MString filePath;
argData.getFlagArgument(kMaterialFilePathFlag, 0, filePath);

return std::make_tuple(MS::kSuccess, filePath);
}

std::tuple<MStatus, MString> GetName(const MArgDatabase& argData)
{
// back-off
if (!argData.isFlagSet(kMaterialNameFlag))
{
MGlobal::displayError("Material name is missing, use -name flag");
return std::make_tuple(MS::kFailure, MString());
}

MString materialName;
argData.getFlagArgument(kMaterialNameFlag, 0, materialName);

return std::make_tuple(MS::kSuccess, materialName);
}

MStatus FireRenderMaterialXImportCmd::doIt(const MArgList& args)
{
MStatus result = MS::kSuccess;
MArgDatabase argData(syntax(), args);

// Get material name
MString materialName;
std::tie(result, materialName) = GetName(argData);
if (MS::kSuccess != result)
return result;

// create node
MString executeCommand = "shadingNode -name \"" + materialName + "\" -asShader RPRMaterialXMaterial";

MString shaderName = MGlobal::executeCommandStringResult(executeCommand);
MSelectionList sList;
sList.add(shaderName);
MObject shaderNode;
sList.getDependNode(0, shaderNode);
if (shaderNode.isNull())
{
MGlobal::displayError("Unable to create shader!");
return MS::kFailure;
}

// create shading groupand connect it with shader node
MString sgCommand = "sets -renderable true -noSurfaceShader true -empty -name " + shaderName + "SG";
MString sgName = MGlobal::executeCommandStringResult(sgCommand);
MString connectCommand = "connectAttr -f " + shaderName + ".outColor " + sgName + ".surfaceShader";
MGlobal::executeCommandStringResult(connectCommand);

// Get path to file describing material
MString filePath;
std::tie(result, filePath) = GetFilePath(argData);
if (MS::kSuccess != result)
return result;

// Get directory name
std::string directory = getDirectory(filePath.asChar());

// write data into created shader node
MFnDependencyNode nodeFn(shaderNode);
MStatus status;
MPlug filePlug = nodeFn.findPlug("filename", false, &status);
assert(status == MStatus::kSuccess);
if (MS::kSuccess != status)
{
return status;
}

status = filePlug.setString(filePath);
assert(status == MStatus::kSuccess);
if (MS::kSuccess != status)
{
return status;
}

// Success!
return MS::kSuccess;
}

40 changes: 40 additions & 0 deletions FireRender.Maya.Src/FireRenderImportMaterialX.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/**********************************************************************
Copyright 2020 Advanced Micro Devices, Inc
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
********************************************************************/
#pragma once

#include <maya/MPxCommand.h>
#include <maya/MSyntax.h>
#include <maya/MArgDatabase.h>
#include <maya/MObject.h>
#include <maya/MStatus.h>
#include <maya/MString.h>

#define kMaterialFilePathFlag "-f"
#define kMaterialFilePathFlagLong "-file"
#define kMaterialNameFlag "-n"
#define kMaterialNameFlagLong "-name"

class FireRenderMaterialXImportCmd : public MPxCommand
{
public:

FireRenderMaterialXImportCmd();

virtual ~FireRenderMaterialXImportCmd();

static void* creator();

static MSyntax newSyntax();

MStatus doIt(const MArgList& args);
};
Loading