Maxwell Render is a spectral rendering engine by Next Limit Technologies which can be used as a standalone product or more often, as a plugin inside all major 3D applications. Functionality is completely the same, but via plugin you preserve the comfort of staying inside your favourite application. Once you finish the installation, you will get the main render application, a companion application called Maxwell Studio, and additional tools such as standalone material editor, Network rendering components and PyMaxwell which can be used to write tools for Maxwell if you are familiar with Python. Each license also gives you access to all available plugins (12 right now) so you are not tied to one 3D application with your license. Aside to main installation, you have to manually install the appropriate plugin in your plugins folder to start using Maxwell inside CINEMA 4D.
Since we are most interested to see how Maxwell works inside CINEMA 4D, we will concentrate on that part of the functionality and will not cover the Studio application, although we will mention some extra features that are not accessible within the plugin, but only in Maxwell studio.
As a render engine, Maxwell uses real world physical camera paradigm which is exactly the same as in new physical render engine that came with Release 13, where one sets camera parameters like F-stop and ISO, but that is where all comparisons end since Maxwell is a completely different beast. First major difference is that Maxwell is a spectral renderer that uses unbiased approach, which means it doesn't use standard tricks or algorithms to produce visually appealing result or good enough approximation, where instead it gives physically correct result for any given situation by utilizing simulation technologies built into it. That is why throughout Maxwell you will find real world measuring units for lights and material properties such as watt, lumen or Nd (index of refraction). While this approach gives superb photo realistic results to which Maxwell is geared to, it implies that user understands some basic concepts of physics and optics to be able to use it efficiently. One drawback of this approach, figuratively speaking, is that computational power needed to calculate, or rather simulate your scenes, is greater than in biased render engines where calculations are cut down to maximize the rendering speed, but which also sacrifice quality at the same time. To counteract the penalty in render speed, Maxwell offers an interactive preview called "Fire" which is great and provides fast feedback from which you can accurately judge how the final render will appear. Fire preview, coupled with the fact you don't have to set additional parameters such as samples, photon count, resolution, or fiddle with any quality vs speed parameters which are common to biased render engines, and a simple fact is that Maxwell is not that slow as many people think makes it perfectly viable as a production ready solution.
Second Major difference and a very appealing feature is called MultiLight, where you can change certain parameters during and after the render, such as some camera parameters, turning lights on and off, change their colour or intensity which is a superb feature. In reality, this gives you freedom to fine tune lighting on the fly, achieve a different mood with colouring or simply turn your scene from daylight to a night scene. This feature can be animated and can produce very interesting results such as time passing simulation, because Multilight not only works with lights, it also works with image based lighting and physical sky that are built into Maxwell.
INSIDE CINEMA 4D
Let's take a look how things work while we are inside CINEMA 4D. Maxwell related features inside CINEMA 4D are to be found in 3 places. First one is that in the plugins menu you will find the scene object which is the central point for most of the settings related to your scene.
Maxwell objects in Plugins menu
Secondly, you will also find a new category in CINEMA 4D preferences where you can also set some global settings, mainly related to previews, sampling and paths.
Third, in the material manager, you will notice that aside to standard CINEMA 4D shaders you also have Maxwell material available.
Maxwell materials in Material Manager
Once you load a Maxwell scene object in your scene, you will get access to settings regarding output, render engine, environment and CINEMA 4D related settings.
Maxwell scene object
Here you can define multitude of settings including output paths and image format, set various export options, adjust motion blur parameters, and most importantly, set the physical camera parameters in terms of ISO, shutter speed and F-Stop. Those three settings define EV number, which is in fact exposure value. You can also lock exposure which basically connects F-stop and shutter so when one is adjusted, the other one automatically conforms to keep the same exposure. If you need clarification in regard how physical camera operates, check out the Cafe's Release 13 review in the Physical rendering section where the same concept is explained in some depth.
Here it is important to know that you use the regular CINEMA 4D camera and you set focal distance on the camera object tab. The focus distance has great impact on depth of field, which is also described in our Release 13 review, but let's simplify things and say that combined with other camera parameters, mainly F-stop, determines how wide or narrow the area where objects will appear in focus.
Various render channels are available
One more very usable feature of Maxwell is render channels, and this is pretty much the same as multi-pass in native the CINEMA 4D renderer, where you can simply break the image into components for editing in 2D image editor.
Render engine settings
Here you can define parameters concerning the render engines, and here I mean for both production render and for "Fire" preview render. Aside to that you can set the render time limit, or more preferred setting is the sampling level. There are also settings for setting up MultiLight and Simulens.
Render time - You can set time limit for the engine here
Sampling level (SL) - This is desired quality setting that you want to reach for your image. Higher SL will result in better image and less grain, but will also take longer to render. Here is important to understand that some images will reach acceptable quality when they reach SL 15, some 20 or 22 , but if I were to choose a starting point I would suggest SL 25 where most images clear up sufficiently to be called done well before reaching it. You can expect longer render times when you are rendering a scene with translucent materials, glass, dispersion effect, under lit or night conditions. For example, metals will clear up usually around SL 17. In any case, you can always set higher SL level even after Maxwell reaches what you have set initially, and simply resume to higher SL.
Priority - I feel this one should be explained because it is often misunderstood. Low means that once the render starts, Maxwell will not choke your system and leave everything else to be very slow and sluggish, and will favour other processes while you are using your computer. If you simply leave your machine, it will detect that you are not using it and simply use every available resource.
Here you can set desired sampling level for previews, and I suggest keeping this under 10 and you can also set quality ratio along with number of threads where 0 is auto-detect.
Here you can choose desired colour space for your images, along with settings to control the burn, gamma and sharpness filter for antialiasing. With Burn you control the intensity of speculars (highlighted areas). Gamma is (to simplify) an overall brightness/contrast setting. These settings should stay at default values unless you know exactly what you are doing or want to output to another colour space.
Simulens is very interesting feature in Maxwell render. It is basically options for reproducing real world camera effects such as glare (diffraction), bloom and obstacles on the camera lens. In the real world, glare happens when light is traveling through small holes, such as camera lens, where it will produce various interference patterns. Bloom is a name off the effect where light is bouncing and scattering inside the lens before it reaches the virtual film. The system is fully featured and gives you an ability to define physical obstacle on the lens itself via images, so you can freely put raindrops, smudges, dust or anything else that pops to your mind on the lens, and Maxwell will take it into consideration and render it realistically.
Various Simulens / Camera effects
Can be any black and white image that will represent the shape of the diaphragm inside the camera. As a result, light will be modified and the pattern corresponding to the shape will appear.
Here you can load the image that will be seen as real obstacle on the lens itself. Imagine you load an eyelash image with which you could mimic "looking through real eyes" effect or for example, loading a fancy graph with numbers to achieve submarine periscope look.
Intensity of the glare
Colourization of the glare based on frequency
Controls intensity of the bloom effect
In the real world, the image being photographed by the camera can appear darker towards the edges which is more pronounced for wide angle lenses. That is due to mechanical nature of the lens, where light coming from the angle is unable to light the entire lens uniformly. That effect is called "Vignetting" and can be eliminated via this setting.
Example of bloom
An important thing to add is that you have to use maps of same resolution for aperture and obstacle maps, and that you want to enable all these effects inside the Maxwell render application after you are done rendering, otherwise you will produce unnecessary calculations during render since effects will be calculated live for each pass, except vignetting which doesn't add to the render time.
Render layers offer you a way to cheat a little bit in Maxwell by simply removing some of the calculations to produce faster renders. Often by turning off indirect layers of reflection and refraction you can achieve satisfactory results without noticeable loss in image quality.
In the materials section, you can load an "MXM" file, which is actually a Maxwell material file that can be loaded here to be used as a default material upon creation, or as an override for all materials. Override is useful when you want to replace quickly all of your existing materials with a simple one to produce what is known as clay render. Do note that you can save materials only in MXED, which is standalone material editor you can access through the scene object. It offers a bit more functionality than the material editor designed to fit CINEMA 4D menu style. Maxwell also offers extensive pre made material database made by users called "MXM gallery".
Maxwell (MXED) Material Manager
Maxwell (MXED) material manager
Maxwell (MXED) material editor
The Environment tab offers you options on how you will illuminate your scene. Here you can choose various modes and based on what type you select, options will expand providing you with additional set of options to control the type of environment with a lot of control.
The Sky Dome offers you options to illuminate the scene with the light that will be radiated from the virtual sky dome. Here you can simply set colour for zenith and horizon, and control the intensity of both with same the intensity parameter. You can also combine it with virtual sun, where you can set longitude and latitude, or simply load the exact location of a city from the preset menu.
Sky dome settings
Provides you with a way to set a multitude of parameters to reproduce realistic atmospheric effects. These include: sun temperature, planet reflectance, ozone settings, aerosol parameters plus even more. This part of Maxwell is a bit on the "geek" side, so it is a much better idea to load one of the presets and start experimentation from there. Of course, you can enable the virtual sun here also. One great addition here is that you can export the sky as a HDR image.
Physical sky settings
This type off illumination is meant for use with HDR images. You can simply load one or more HDR images into 4 available channels and control the illumination, background, reflection and refraction. There is also an intensity slider and you can combine virtual sun with image based illumination also. The HDR image must be in lat/long format (width twice as much as the height).
Image based illumination settings
Here none means that neither the sky dome, physical sky, sun or image based lighting will be used, but instead the scene will be lit exclusively by emitters which we will be explained in the material section of this review.
The last tab in scene object is CINEMA tab, and contains some additional settings that you can see in the screenshot below, and most interesting is that you can set the resolution of procedurals which Maxwell will render. To explain what this means, you have to know that Maxwell offers a way to render (or bake) CINEMA 4D's procedural shaders such as noise, gradient or other to a image / texture map. Here you set that image size to what you find suitable. This is a nice functionality and leads us to another interesting feature, that is the ability to convert regular CINEMA 4D materials into Maxwell ones.
CINEMA tab settings
Material conversion options
Once you run this command from the plugins menu, you will be asked to specify some details for the conversion, and although conversion gives solid results, in the case of more complex materials it is not really that good and can produce weird results. In any case, I would strongly recommend that you build your materials for Maxwell either from scratch or from existing presets.
By double clicking a Maxwell material you will launch the material manager, just as for regular CINEMA 4D materials. Once inside the material manager you will be presented with settings and parameters which will be very strange if you are only used to the CINEMA material system because it has very little in common with it. On the left, you will probably pickup quickly that Maxwell uses a layer system, and that each layer contains one or more BSDF's (Bidirectional scattering distribution function) which is a fancy name for a set of mathematical equations that describes how light will interact with various materials. Let's keep things simple and say that BSDF's can be split into two flavors - one is custom where you set all the parameters by hand and watch the result in preview, or measured data, where you can simply load data that was acquired in a laboratory under controlled conditions. Maxwell ships with quite a few measured data presets (IOR files) of common real world materials like Aluminum and glass etc. Do note that when you use measured data, material render times are longer (especially for glass IOR files since they have dispersion 'built into' the IOR file and can't be turned off) , and there is no sense in using them unless you have to render something 100% scientifically correct.
Maxwell material settings
Here I will try to explain material system in non technical way as much as possible, but due to very nature of Maxwell, it will be impossible to do so without some technical terms. I will say some things that may not be technically correct, but it will give you far better understanding than dry technical terms.
Put simply, this is the colour of the object when viewed straight on.
This is the colour of the object from the "side". One thing that is important is you can't really achieve unnatural mixing of colours that you choose, things will tend to stay in physically plausible limits, and some colours are by nature "stronger" than others, so they will prevail in the setup. The gradient between those colours is controlled mainly by the Roughness parameter and Nd.
Controls the smoothness of the surface. In real life the smoother a surface is, the more sharply it will reflect the light, appearing mirror like. The rougher it is, the more it will reflect light in a chaotic way making it look dull. This parameter also controls which reflectance colour it will favour. High roughness favours reflectance 0, and low roughness favours reflectance 90 colour. It is important to note that 0 or 100 roughness is physically impossible, and you will want to avoid using such values. It is much better to use 2-3 for minimum values and 95-97 for maximum values.
Various roughness values
Is a colour that light will "pickup" as it travels through the material. This must be set to a colour other than black to create transparent materials.
Various transmittance colours
Is basically an absorption distance. With this setting you can set how far the light can travel inside any given object.
Various attenuations settings
This one can't be explained in a non geek way so... in the real world, when light travels through any medium it refracts, so some smart folks decided to create a unit for that value which is called refraction. A value of 1 means that light won't be refracted at all, and that happens only if you observe light in a vacuum. Every material has a different refraction value. Water for example, has a refraction value of 1.33, glass usually has 1.52 and so on. These refraction values are measured in a laboratory controlled environment where it is precisely determined which wavelength of light is used. Why is that important? The reason is, different wave lengths of light refract a bit different, and the value of that wavelength is the "d" number. This number is fixed in Maxwell and equals 589.29 nanometers, so if you search the Internet for measured material data, make sure that you use materials measured in that wavelength so that you can be sure Maxwell will interpret them correctly. To simplify this value, low values mean a material will be less refractive and also less reflective at it's surface, higher Nd will make it 'bend' the light more and also make the surface more reflective. You can find refraction values for common materials online, and it is also a good idea to see which Nd values are set into the preset materials.
Various Nd levels
Is the extinction coefficient, or amount of energy loss when electromagnetic wave travels through a material. This value comes with measured data and can be pretty much ignored if you are setting the material without it, since Nd is more than sufficient in almost all situations. The K parameter is relevant when making solid metallic materials and can provide a more 'true' metal material as a metal is usually defined by both an ND and K value. This parameter is not meant to be set to arbitrary values, but instead must be used with Nd and K values for metals you can find on the internet (such as luxpop.com). It is useful when you want very accurate metals but don't want to use an IOR file to still be able to freely set the metals reflection 0 and 90 colours.
Since different wavelength of lights can refract in slightly different angles, phenomena known as dispersion will occur. This effect is most obvious when light travels through a prism. Low Abbe values will disperse the light more, higher values will eventually make the effect almost invisible. You can turn this effect off to save some render time if dispersion is not needed.
With this parameter you can control falloff between reflectance colours. Generally speaking, roughness controls which colour is more present in a material along with Nd value. The higher the Nd value, the more of reflectance 90 colour you will receive, but only if roughness is low. On the other hand, if you increase roughness to a really high value, only reflectance 0 colour will be visible, regardless of Nd value. Often, there are materials which fall outside off this range, and have specific surface properties, such as satin or velvet. To keep it simple, when you enable R2 parameters, in first slider which goes from 0-90, you can set the angle value when reflectance 90 colour will start to appear. Second slider is percentage slider, where you set how much you want the roughness to keep controlling the effect. For example if you set this to 100, the result would be as if you turned off the R2 functionality completely. On the other hand, values towards zero remove roughness affecting the overall effect.
Various R2 settings
Aside to usual isotropic reflections that blur equally in all directions when increasing roughness, there are anisotropic reflections which occur on the surface that have micro irregularities, pattern like structure with directional nature. The best example would be a brushed metal surface that has an elongated reflection structure. Once enabled, you can set the angle or even control the effect with an image / texture map.
Various Anisotropy settings
The subsurface scattering section of the material offers a complete toolset to produce translucent materials. Here it is important to understand that if your Nd value is higher than the common range for a dielectric (material with transparent property) the subsurface scattering effect will be 'hidden' by the fact that most of the light will be reflected at the surface instead of passing through the object. Also transmittance must be other than black, otherwise the material is considered completely opaque so no sub surface scattering can occur.
Here you can choose the colour of scattered light inside the transparent object. This parameter can be set freely, however, the final result will determined by transmittance colour.
Put simply, this is a density control for scattering particles. In other words, if this is set to zero no scattering will occur at all. Higher values produce more opaque materials. One example of low value here would be a honey material, which is fairly translucent, but at the other end, rubber is quite opaque but also has some amount of subsurface scattering. You would be surprised to know how many real world materials have scattering property to them - even marble.
This is a bit geeky but basically if this is zero, scattered light inside the material will bounce from particles in all directions equally. Here you can change that and set asymmetric behaviour favoring scattered light passing through or sending it backwards.
Subsurface component offers additional settings where you can instruct Maxwell that you will be using a very thin object or a polygon with no thickness, and in that case the render engine will disregard the volume and use a virtual thickness. This is especially useful for things like leaves, papers, lamp shades or similar.
Various Subsurface Scattering materials
As I mentioned previously, you can use as many BSDF's inside one layer of your material and you can use as many layers as you want to. Layers and BSDF's are added via a right click. Both BSDF's and layers offer a way of blending with exact values in both normal and additive mode. This means you have a lot of freedom in mixing and creating stacked materials which surface properties would otherwise be very difficult to reproduce. The most simplest example would be that of polished plastic. That material should have rough base and a fine layer of polish over it which you can clearly see in this example below.
Polished plastic material example
You can also add coating components to your BSDF's where you can control the thickness of the coating along with it's respective reflectance values. You can also use just coating and turn BSDF of to produce bubbles.
Bubble coating example
By selecting the main component of a Maxwell material you can set the sampling level to be used for the material preview and enable dispersion calculation for transparent materials which is off by default. The reason for it being initially off, is that it is computationally intensive. Icons you see under preview are from left to right: image that will be displayed in viewport if you have more images loaded in the material, stop button for preview render and refresh preview.
SSS Dispersion settings
This little icon in a Maxwell material is where you load images and offers controls for tiling, offsets, filtering, brightness and much more. This means that you can modify your imported images to some extent.
Here are some materials that I created during the review. I used a scanned bust model.
Now let's take a look at lights, or better known in Maxwell as "Emitters". Emitters are created as a material component and are applied to parametric or polygon objects which will then illuminate the scene. This is very similar to applying a standard CINEMA 4D native material with a luminance channel to any object. Do note that when you are applying a Maxwell emitter material to polygon objects that you will want to use most simplest geometry possible, such as single polygon. The other thing to be aware of is that an emitter will emit light only in the direction of the polygon normal.
Emitters can be set in 3 modes:
Here you set colour and intensity of the light in a separate manner. Colours can be set in various colour scales and luminance in a number of different ways. You also have the option to use measured data in terms of IES files, which are available from lighting manufacturers and can be found online. There are a lot of option here, units wise, and you can set the light in watts/efficacy or use power and then set which unit you would like to use.
This is measured in Kelvin's, and in real world temperature of light source itself, determines the intensity and colour of the emission. That spectrum in which visible light is emitted is shown in gradient here so you can choose either temperature or related colour from gradient.
Will emit light from HDR image loaded and intensity control will be made available
Emitters in Maxwell are superb and offer everything you need to reproduce any lighting scenario, ranging from artistic custom lighting, to technically correct setups with measured data. There is one thing worth mentioning regarding emitters with which new users often have problems. Since everything in Maxwell is a simulation don't be surprised if a 100W bulb does not illuminate your scene as expected especially if your scene scale is high. In other words you can't light the stage that is 1 kilometer in scale with that bulb. Keep this in mind while creating your objects and try to model within physical scale. Also, if you apply a 100W value to emitter that is 100 meters in size, it won't be illuminated the same as 1 cm emitter in size. This is very important if you want to keep the same "level" of luminosity without having to worry about the size of the emitter use lumens/m2 as unit.
The review would naturally not be complete if we did not test it in everyday scenes, so I took some of my own scenes and did what is known as a "clay render" to judge the lighting and overall quality. Many render engines have trouble with very small light sources illuminating larger areas, so this is the first thing I wanted to test. The material that I used is 95% (RGB 242) of white colour which is roughly the maximum white value you can observe in the real world. This value is often used in calibrating the scene exposure and it makes perfect sense to do so in a Maxwell produced render. You can also calibrate with RGB values between 230-240 which makes more sense since that is a maximum value of brightness for common materials you will encounter in the real world.
In the first image, I used a 5x5 meter room with a window size of 1x1 meter through which the illumination from a default sky dome enters the room. Even though I did not take the effort to calibrate the camera exposure, it is more than clear that Maxwell does not have issues with this scenario. In the second image a default 40 Watt emitter was placed on a 5x5 centimeter polygon to mimic the approximate size of a light bulb.
Clay render - Dalmation Villa
I used this scene to test physical sky since it is also an outdoor scene, and I know it was modeled it in real world scale and I was eager to find out how using physical sky would work on this one.
Physical sky settings / Afternoon on Palau island / Summer 2012 :)
There are some certain features in the Maxwell studio application which would be nice to have inside CINEMA 4D, such as auto focus or turning off caustics but overall, integration is very good. One thing that is a bit annoying is that undoing changes in the Maxwell material manager while in CINEMA 4D doesn't seem to work. It works as expected for the scene object but from a logical standpoint of view I believe the user would benefit much more from having the undo option work when using material manager, rather than the scene object which you usually only set once. It's then only rarely visited apart from hitting render buttons. Sometimes when you change the material property, or even an object you have to manually refresh since fire preview did not "catch" the change. This is a minor issue, but if you are not aware of it you may wonder why something looks the same when you changed the value.
Now let's draw some conclusions - Maxwell is a superb photo realistic render engine with unmatched quality and it really delivers what it advertises. This may sound cheesy but it is simply true. That coupled with the attractive Fire preview, Multilight and Simulens feature, it is certainly the most technically advanced render engine out there, so if you are looking for best photo realistic quality rendering for any purpose or reason, look no further because Maxwell is what you are looking for. Often you will find Maxwell render in environments where precision matters, and it is number one choice in scientific community for obvious reasons. Once you pass the initial problem of understanding the physical paradigm of it, things start to make sense and you are surprised how easy is to get that top quality in both lighting and materials. The thought you really don't have to fiddle with additional settings common to biased render engines is a big plus, and most certainly is appealing to new users. Those that have some experience with photography will appreciate the real camera system and will probably have easier learning expeerience than those without.
During the 2 week of intensive testing, I did not have a single crash or freeze, and Maxwell, both plugin and standalone applications, proved to be as stable as CINEMA 4D which speaks volumes since CINEMA 4D is highly regarded for its stability. I tried really hard to think of a situation that Maxwell would have trouble with and although I found a few problems they are certainly not big ones and can be considered as glitches, or simply the result of Maxwell's physical nature. Here is a list of what you should be aware of:
The most obvious downside is render speed. Although Maxwell isn't as slow as one may think, it is still in the category of slower render engines. If you are planning to work efficiently with it, you have to consider having the most current hardware. I could compare Maxwell with a high tech sports car, and render speed is gasoline. There is really no point in getting such a high performance car and then complain that it uses a lot of gasoline but...
On my Intel i7 quad core Maxwell behaved really well, and Fire preview gave me good enough results under 30 seconds to judge the overall quality for test materials and clay renders. To reach a higher SL level for standard resolution, Maxwell delivers reasonable render times however once you jump into print resolution things change. For this reason I believe that having really fast 6 core, or at least a quad core CPU system is needed to work efficiently in a production environment, and even than access to a render box or render farm is a good idea. For home and hobby rendering, sure, if you can leave it over night and it will render the image just fine (assuming you are not using huge resolutions). In version 2.6 Maxwell is rendering things much faster, especially glass materials, and if Nextlimit continues to speed it up for next versions and with natural speed gains in CPU's every year, Maxwell could well become a render engine from dreams.
To try out the Maxwell Renderer, you can download the demo from NextLimit website which has following limitations:
Other than that there are no feature restrictions and it's not time limited.
Review by HSrdelic / Hrvoje Srdelic / C4D Cafe © 2012