[RELEASED] Deckard Render - Cinematographic Renderer for Unity

Now available on Assetstore:

DECKARD RENDER ON ASSETSTORE - BUY HERE
Recetly I was doing a personal challenge of remaking scenes from Blade Runner 2049 in Unity. For this task I wanted to make all shots as cinematic as possible. We have some really nice tools in Unity to do this, but those are made for realtime graphics and for performance - and, for anyone that works in video production, it can be seen that those scenes are made with hardware renderer. Mostly because of aliasing issues (temporal and spatial), DOF behaviour, motion blur behaviour. So I had an idea of translating real camera behaviour into an asset that simulates physical camera behaviour - and then renders Unity scenes into a video file.
This tech boosts Unity rendering capabilities and works in combination with Post Processing stack while augmenting it’s capabilities. It is completely integrated into Unity, and doesn’t require any change of a workflow or a usage of custom shaders. This means that you can take your scene, render it with Deckard Render, and it will look much better than in Unity in realtime.
Features:
-Real soft shadows. Any unity light can behave like a soft light or area light resulting in smooth shadows.
-Temporal and spatial antialiasing for perfect filmic motion. This means also that there is no more shimmering with highlights and bloom. No more moire effects in your footage.
-Physical Depth of Field that works with transparent objects and particles. It will give correct DOF even on materials that are using parallax, displacement or fake interiors shaders.It also supports anamorphic behaviour of Depth of Field. This kind of depth of Field works with any transparent, refractive, or reflective object. For example, it is known that while using small DOF, a glossy object can be in focus, but it’s reflection will be out of focus. On a contrary, if a glossy object is out of focus, reflections seen on it’s surface will be in focus. Deckard renderer deals with all those cases.
-Motion blur that works on interframe basis (working correctly with circular or curved motion). It can give you a correct depth of field on transparent objects, like particle systems, glass refractions, specular highlights.
-It smooths out any Unity Post Processing effect, making it’s appereance seem more real.
-Deckard renderer is compatible with all Unity standard and custom shaders.
Deckard renderer isn’t a real ray-tracer, but it works on principles of Nyquist–Shannon sampling theorem while sampling pixels in space and time. Most antialiasing tech is done by super-sampling frame buffer (rendering at a double off a screen resolution and then resizies it down to screen resolution). This process requires a lot of video-RAM memory, and still doesn’t produce perfect antialiasing. Deckard rendered goes further and uses various techniques to simulate real optics physics. The “side effect” of this procedure is that even rendering at smaller resolution results in a more natural looking image. This approach of rendering behaves much as in an analog camera systems.
Typical usages of this asset:
-Rendering high quality presentations of 3D environments, like demoes or showreels
-Using Unity instead of other Offline renderer systems
-Pre-visualisation or production for motion picture movie (and testing real Depth of field effects) and TV
-Testing what will be possible to do in a future with realtime graphics
-Tool for pre-imaging scenes and correct camera look.
This tool can export video files in JPG, PNG oer EXR sequences, or mp4 video format file. If you are a user of a VR Panorama (my first asset to hit Assetstore), you will be at home with this tool.

Deckard renderer still relies on some post processing techniques, like bloom, AO, reflection probes, and Screen Space reflections. But due to it’s nature it mostly corrects issues with those effects, enhancing overall look and smoothness of those effects. Some of those effects that require temporal sampling begin to really shine (like volumetric light rays or realtime GI).

14 Likes

Another test:

5 Likes

That looks great!

1 Like

Looks very nice, is this something that you are making available, or how would it work? Would not mind giving it a go!

1 Like
3 Likes

I would love to learn more what you have going on here with this new renderer. Will it support and work well with outdoor nature scenes and all things related to outdoor nature environments. Be great to see some tests or videos on that working as well. I currently use your VR Panorama plugin for all the 5k 360 stereo videos I create so if Deckard Render could work in tandem with it would be something else.

So when we render out a sequence with this it will be independent of framerate? There was another great asset, Render Monster I think it was called, allowed you to render out an image sequence at really high resolution. For a while in an old project I had full 4k video clips directly out of Unity with perfect framerate - I’m not sure it will be supported any longer though as it’s been made free…

Here you can see a little nature test. There are no limits or restrictions on what it can render (or atleast, untill now I didn’t come across any). If Unity can do it, then also Deckard should do it - but better. Mostly because it handles better shadows, antialiasing, stabilizes any desired image effects (does De-noise on any of them) and because it uses color science used in motion picture industry standards - it can output familiar movie look of a 35mm film or DCI cameras like Arri Alexa.
Note that this video was done few days ago before I’ve implemented real motion blur, and now a rendering should be even better.

https://www.youtube.com/watch?v=J72kPHXfgKo

Well, I didn’t test it with VRPanorama, but there should be no issues other than much slower rendering and somewhat different workflow. It might be that I should do some smaller modifications to enable it to work. But, due to it’s nature, I personally wouldn’t use this plugin to render panoramas. In 360 video you always want to be able to eliminate real optics ‘problems’ - as they can be real problem. Like, you don’t wan’t any depth of field - but any real optics has it. You don’t wan’t chromatic abberation, but a real optics have them. You don’t want filmic colors, you don’t want lense distortion or lense flares… and so on. So, I would say that both plugins are different tybe of beasts and are optimized into doing different tasks.
But a good news for you is that Deckard Renderer will have inittial discount for any VR Panorama user.

Yes. It is independent of screen framerate as any renderer like those found in any 3d software. As for resolution, it goes up to 8k (but you would probably need much time to render it). But actually, due to it’s way of working, it gives a good image even at 2K. We usually wan’t to render at higher resolutions because of aliasing problems. With Deckards lense physical modelling, you simply don’t have any aliasing issues ( other than issues that might happen also with real cameras, or in cases when models are badly made/textured). Real cinema lenses doesn’t have much more definition than 2k. That’s why most of a cinema movies are actually all projected in 2k and only a few in 4k.

3 Likes

One of the new features for Deckard is a Real Motion Blur. If works for any type of a motion. It’s best seen on a circular motion, where a standard vector motion blur fails. Also, Deckards motion blur works also on shadows.

4 Likes

So when I render out 5k 360 stereo renders with VR Pano I only use a handful of image effects so the videos come out clear as possible. I only use Bloom, AO, AA and Color Grading rest of the normal image effects are not needed for 360 video. So can Deckard take the image effects I use for these videos to the next level your saying or does Deckard have its own suite of image effects like these to use then I would use VR pano on top of that to record the videos I need?

What is this kind of magic? All the things you have shown are quite cool! How much would the asset cost?

1 Like

Here is small simple demo that shows difference in motion blur Post Processing Stack vs. Deckard Render.

4 Likes

It will cost 40$.
If you already own my VRPanorama it will be 30$

I must have this! I want to do some video shorts using Unity HDRP and this would be wonderful!

1 Like

Unfortunately, Deckard Render won’t be supporting HDRP from a start. HDRP is in constant developement by Unity, and it is simply impossible to support it across all unity and srp versions. I have managed to make it work for rendering out Book of Dead scene, but it was more of a hack to make it work. It’s enough to know that Book of a Dead demo works only on 2018.2… and it is even broken on any later versions of unity or hdrp.
But anyway, from my experience, I can say that you don’t actually need HDRP to get everything that you need with deckard render.

4 Likes

Here is another test of how well Deckard Render can handle transparent surfaces and custom third party shaders.

In a meantime, I have also implemented a new feature of supporting Motion blur on shaders. Any shader can be suctomized easily to support motion blurring. This can be pretty nice when used with water surfaces or any other type of shaders that can ‘scroll’ textures.

5 Likes

So, it isn’t anything good for realtime gaming?

No, unfortunately I can’t do any magic about this. It could probably work in realrime on hardware in five years from now. But until then, you can use it only as offline renderer. And I can assure you that any realtime rendering tech can’t match its quality in terms of depth of field or antialiasing.

So if I am only needing Bloom, AA, AO and Color grading for the videos I render out using unity’s post processing stack does Deckard still help me out or not you think. I don’t need DOF or motion blur either.

Well, it quite depens on what quality do you wan’t from your renderings. If you strive for hi-quality animation renderings that have real life look - you actually really need DOF and Motion blur.
-Even a sharpest lense in film photography have a finite depth of field, and introduces bluring to some extent. In CG graphics we use some workarounds for simulating this kind of blur - for textures we use mip-mapping (use textures that are lower resolution, and are blurred when viewed from a distance). For meshes (mesh edges) we use antialiasing that is actually blurring of edges. Shallow DOF can be used as creative effect, but real lense DOF actually plays a big role in antialiasing - together with other capturing techniques as diffusion filters… Even a real life digital cameras can soffer from aliasing issues, and this is a reason why some cameras can be used for professional filming, and others can’t. Overall, a science behid those issues is pretty complex.

-Motion blur is essential for smooth motion. In realtime CG we are used to render at high framerates - usually a higher FPS means better. In cinematographic rendering, we are mostly targetting 24 fps. Almost every movie made in history plays at only 24fps - but you can be pretty sure that nobody will ever say that those movies stutter. And, if as you probably know, if you have realtime graphics that are rendered at 24 fps, you will probably see a horrbile image that stutters at unbearable levels. It all comes to motion blur. A perfect motion blur has to be long exactly one half of a frame. In cinema we call it 180 degree shutter. This means that each image is exposed for a half frame, and motion blur contains exact movement of a camera inside this frame. You should look at a motion blur as temporal antialiasing. Image antialiasing can be defined as sampling between adjecent pixels on image X and Y axes. Motion blur is antialiasing in time - or sampling single pixel values over Z axis. You can have a perfectly anitaliased image in 2D (as a photo) but without motion blur, it will break appart as soon as there is a motion.

-Aliasing issues (temporal and spatial) are pretty hard to handle. Now we are used to render into 4k and 60 fps, as higher sampling rate gives US better perception on motion and better antialiasing. But, strangely enough, when rendering with Deckard, you can get better motion and more definition while rendering 1080p at 24 fps, than rendering 4k at 60 fps on screen in realtime.

-one of the examples of major problems with temporal aliasing is how Bloom behaves. If you ever rendered high frequency glossy surfaces with camera movement, you are probably noticing that small highlight areas can usually have bloom shimmer - flickering. In post processing stack you can use Anti Flicker option, but it removes only some of that highlight flicker. And most of high reflective surfaces will look somewhat odd. This can be fixed for some points of view by changing reflection probe resolutions, materialy glossyness, and bloom thresholds… but it is always a hit and miss work. With Deckard, you can fix those issues without having to tune your scene too much. (I might make a small demo on how it looks).

-also, Deckard lets you use realtime lights with soft shadows.

5 Likes