Maxwell Render integration for Blender (different one)

is the plugin export vdb file ?

hi Tella
unfortunately no at the moment. i almost stopped all 3d commercial work and focusing on 2d retouching/grading. that’s why i didn’t upgrade to v4… it might change, but i can’t promiseanything…

so v4 is compatible with v3 files, good news. on osx it won’t be that easy…
and viewport rendering works as well?

no, only Constant and Noise 3d volumes. add an empty to scene (the best is cube shaped), scale as you want, turn on in object buttons, result box will be as large as empty

yes sadly vdb don’t work .
yes V4 open v3 files ; and the plugin export mxs file but viewport rendering inside blender don’t work or i miss something.
is there anyway to make the scripts detect pymaxwell4 ?

viewport render has its settings in 3d view properties (N panel) where you also enable it, then switch viewport to Rendered. it might work, because it exports scene a call maxwell to render in background in the same way you do it manually, the difference is it only renders viewport resolution and then draw result on screen

swapping to pymaxwell4 module would be easy, but i am sure it won’t be compatible. pymaxwell api changed a bit also between minor versions and this is major version change…

thanks i find it and it work fine ; sometimes blender closed if i create a material and render viewport. or after two minutes but it is not very important.
i don’t know about plugins development but i create an app and it work when i switch from pymaxwell4 to pymaxwell3; i just remove the new features like denoiser .
when i replace pymaxwell(3) by (4) in python folder the plugin don’t work with error message : no module named pymaxwell ; i just try to see if it work or not.

the plugin work fine now with maxwell v4 without need to install v3 or copy files from v3 folder.
but to work must copy _pymaxwell4.pyd and to : C:\Program Files\Next Limit\Maxwell Render 4\python\pymaxwell\python3.5

  • also exr replaced by png and viewport render with material render work well without crashes
  • viewport render panel moved to render panel
  • GPU render added and worked fine
  • fix initial angle in grass preset .
    i check also nildar plugin and i hope find method to add vdb code to this plugin since Carbon stop developement.

question to Carbon : can you help to give some informations which maybe help to add more features to your plugin ?
like denoiser and fire and render preview for materials .
Brany one of the maxwell developers share a script help to render mxm preview but i don’t understand how to add it to your plugin;
you can see the script with png reader/writer here :

import mxs can import scenes created by V4 but after test if the scene exported from blender it will imported without problem but if it created by sketchup for example it will imported with very large scale

plugin update :

i want test the plugin with blender 2.8
i install it and it activated but because blender 2.8 have different theme Maxwell render don’t appear in the menu.
blender 2.79 : bpy.context.scene.render.engine = ‘MAXWELL_RENDER’
in blender 2.8 : bpy.context…viewport_render.engine = ‘BLENDER_CLAY’

adding simple features on win/linux is easy, on osx is much more complicated, but if you would like to add stuff just for yourself/win users, it’s ok.
in nutshell, put your additional param to to some reasonable place, eg some scene property to SceneProperties class, then add them in to some existing panel like SceneOptionsPanel class. all blendmaxwell panels inherit from BMPanel class which contains some useful button drawing shortcuts. then in add property to corresponding class like MXSScene with m_ prefix. all exportable classes inherit from Serializable which upon calling repr() pack all it’s properties prefixed with m to dict. then go to MXSExport class in and find correct platform/place in _write method and make it to send your additional data to MXSWriter class, add a new param to eg parameters() method and write it to mxs with pymaxwell calls. that should be all for some simple parameter like number of samples or so. for denoiser this would be enough. for anything related to rendering, well that would be much more difficult. best would be to add that script as standalone utility which upon button click calls it as external script with python subprocess module and waits until it is done. if i remember right, material preview and viewport rendering is done this way, look into support directory, there are such utils for rendering and all osx export. these are called from, also keep in mind that all methods there are platform aware.
uh, hope it helps, a decent source code editor with ‘find in project’ will be your best friend

 ValueError: expected RenderEngine, MaxwellRenderExportEngine class "update" function to have 4 args, found 3

blender api changes, i recomend always running blender from terminal/cmd

thank you
i have no idea about scripting with blender ; writing scripts with pymaxwell is more easier .
i hope some people who have experience can do this steps .

**is that mean it is impossible to use maxwell render ? i don’t have error like when something wrong in the script
ValueError: expected RenderEngine, MaxwellRenderExportEngine class “update” function to have 4 args, found 3

you get all errors in terminal if you start blender from it. or cmd on windows, better to work with because it won’t go away if you move mouse or if it is invisible to user

i don’t have any error ; this error happen with bmaxwell but with your plugin some tools appear except the name of Maxwell render in render menu.

i got this error
Traceback (most recent call last):
File “C:\Users\arch\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blendmaxwell\”, line 2602, in poll
e = context.scene.render.engine
AttributeError: ‘RenderSettings’ object has no attribute ‘engine’

location: <unknown location>:-1

Hello; i tried to enable denoiser but i don’t work ; i miss something.
the steps :

  • sub.prop(m, ‘globals_denoiser’) / >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  • globals_denoiser = BoolProperty (…) / >>>>>>>>>>>>>>>>>>>>>>>>>>>>
  • …,“m.globals_denoiser”, … / >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  • self.m_globals_denoiser = mx.globals_denoiser / >>>>>>>>>>>>>>>>>>>>>
  • s.setRenderParameter(DENOISE ENABLED’, d[“globals_denoiser”]) / >>>>> write_mxs

in blender 2.8 : bpy.context…viewport_render.engine

in poll function, Blender 2.8 has changed the code!
“render” is changed to “viewport_render” !

you must corrected in", line 2602:
e = context.scene.viewport_render.engine

i tried that but don’t work

Wait I search…with Blender 2.80

 As i change the render engine, I obtain:
&gt;&gt;&gt; bpy.context.scene.render.engine

&gt;&gt;&gt; bpy.context.scene.render.engine

&gt;&gt;&gt; bpy.context.scene.render.engine

&gt;&gt;&gt; bpy.context.scene.render.engine

You have a traceback with e = context.scene.render.engine ???
I can’t understand because in terminal, no problem!

but if you can’t set the render engine to “Maxwell render”, you can obtain ERROR, I suppose!

i am not sure if this problem of python or api ; because pymaxwell don’t support python 3.6
and maybe it’s just problem of the new theme of blender ; if you use maxwell you can try the plugin and you see the errors

Yes I have seen it!
My Blender 2.8 is python 3.6
and is coded with

Just Carbon2 could make the corrections.