67

Click here to load reader

OTOY Presentation - 2016 NVIDIA GPU Technology Conference - April 5 2016

  • Upload
    otoyinc

  • View
    59.432

  • Download
    3

Embed Size (px)

Citation preview

PowerPoint Presentation

The Future of Rendering #GTC16 #OTOY #OctaneRenderOTOY Inc.April 2016

Rendering in 2020: Looking ahead 5 yearsUnbiased spectral path tracing - 16K/eye (90 deg.) HDR 240+ fpsLive and cinematic IP, games, WYSIWYG social sandbox all convergeHolographic VR, AR, MR, light fields -> mobile / volumetric / FV displaysCloud Rendering - hybrid adaptive live streams (web-like) vs. app/binaryGPU FTW* better and better rays/Watt on client + server (*until RT ASIC?)

2015 Recap

OTOYs Mission:Practical digital holographic* content creation and publishing for everyone*(Digital Hologram: 8D light field volume + depth + reflectance)

OCTANERENDER AND SPACE STATION 76

3

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

OCTANERENDER AND SPACE STATION 76

3.X

OCTANERENDER AND SPACE STATION 76

3.0May 15th

3.0 OXR Octane Film Buffer

OXR a file which stores a snapshot of the Octane film buffer (its a subset of ORBX)

Links and/or embeds to assets required to resume rendering are included (not needed w/ ORC)

All imager/post processing nodes work on film buffer, not baked in OXR file

ORC import or export OXR film buffers. Key requirement for commercial launch

3.0 Deep Motion buffers (OXR)

Deep Motion = multi-light for time/space

Render @ 24 fps but output 240 frames per sec.

Huge savings just in frame and scene load times...

Essential for VR renders where 90 120 fps is baseline BTW Carmack says 300 fps!

Can also be used to speed up stereo rendering

3.0 ORC OctaneRender Cloud

ORC is deeply integrated in Octane 3.0 and all 3.0 plug-ins going forward

Cloud render is one a click away within Octane. Each ORC render can pop open a web page to view status/result.

Delta synching only changed assets are sent to ORC. Huge savings in bandwidth vs. earlier workflows.

ORBX/OCS versioning ORC can roll back to a previous snapshot sent to ORC.

3.0 ORC Octane Live App Stream (experimental)

Users can run Octane and ORC entirely from a browser on any device even on a plane w/ LTE hotspot:

3.0 ORC subscriptions

Monthly subscription covers storage, I/O and other overhead - $9.99/month (ORC Test Drive)

Render credits based on GPU minutes (~40 OctaneBench).

ORC jobs mapped into 20 GPU workloads (~800 OctaneBench) for best price/perf ratio in $9.99 buckets

Load times+ export times minimized across nodes ORC is best for multi-frame or tiled rendering

3.0 ORC 2016 roadmap

Aiming for 50% more power per GPU minute once service scales close to last year RTM numbers

CPU jobs like OKX compression can run for free while GPU is rendering next frame

Adding more regions and many more providers over the coming months

AWS, Azure, SoftLayer and OTOY LA (mini ORC region)

3.0 May launch overview

May 15th Release of Octane 3.0 and ORC

OR 2.x -> 3.0 = $49 upgrade ($399 for new licenses)

ORC Test Drive = $9.99 (1000+ GPU render minutes)

3.0 Plug-in updates in line with 2.x path

Whats next?

OCTANERENDER AND SPACE STATION 76

3.1

Alpha 3.1 build as of today

3.1 CUDA cross compiler

CUDA is an amazing GPGPU toolchain.

Were sticking with CUDA across all OTOY projects for now

We plan to target new platforms such as Android, OSX and consoles through this unified codebase

3.1 CUDA cross compiler for non-GPUs

CPU will be first backend we ship in 3.1 alpha wont be fast (20 core Xeon < GK104 )

thinking about outlier hardware options beyond GPU and CPU

Each new GPU family/device we support requires 2-8 weeks of optimization work including Pascal (next)

3.1 Octane Shader Compiler

Part of larger compiler work being done at OTOY

OSL is subset of Octanes shader VM

AOV shaders are in Octane but extensions to OSL are needed to expose them fully

With 3.1 we are introducing API for any shader language - with OSL. as default

3.1 Octane Shader Compiler

We are working with NVIDIA on an MDL front end for the Octane Shader Compiler

Also exploring GLSL (would love to see shader toy textures)

On CPU we support both JIT and VM modes for shaders to cover all platforms

3.1 ORBX native plug-ins

Designed to keep Octane 3.1 features growing with new 1st and 3rd party extensions for long time to come

Limited only by what Octane C API exposes but that is a lot!

ORBX plug-ins may be pulled in to Octane node system like LiveDB materials must be whitelisted.

3.1 ORBX native plug-ins

ORBX plug-ins can be offered, sold or licensed through otoy.com alongside OR and DCC plug-ins

ORBX packager in 3.1 adds crypto, digital signing and various lossless compression options for all ORBX node types

ORBX plug-ins can also be used in ORBX Media Player

3.1 ORBX plug-in ecosystem

Scripting: looking at V8 plug-in for JS/LLVM script nodes

Textures: Substance Designer plug-in being developed

Physics plug-ins for rigid, soft and fluid dynamics (e.g. TFD)

3.1 ORBX Denoiser case study

Atlus ORBX native WIP plug-in

Hooked into OR film buffer system

Needs its own GPU (3 GB+ VRAM)

But results are really nice even at 16 spp!

3.1

3.1

3.1

3.1

3.1 ORBX native plug-ins:

Shader languages: OSL, MDL, GLSL et al

Media/3D file handlers: glTF ( in place of FBX), CT scans for medical data as volumes

Widgets and UX extensions

UDIM/PTEX plug-ins (implemented in some apps, should be supported widely)

3.1 Native skinned meshes and bones

Optimized character animation inside Octane for dynamic characters

Basis for new animated mesh types (other than .abc)

Exploring glTF instead of FBX as it is more compact and can also be supported in ORBX media player

3.1 Refinement of 3.0 features:

New Displacement and Rounded Edges codebase

Adaptive Sampling

UX scene tools (proxies for audio, light field volumes, and scene editing)

Faster Mesh loading/compiling

Whats next?

OCTANERENDER AND SPACE STATION 76

engine

OctaneEngine Major expansion of Octane ecosystem

OctaneEngine = Octane API refactored as ORBX module + running as web/socket server

Foundation for major features beyond 3.1

Legacy app/plug-in model is starting to hold us back..

OE will be subscription option in tandem w/ 3.1 box licenses

OctaneEngine Zero GPU mode

Octane plug-ins will no longer require a GPU on local machine connect to OE server over LAN (or WAN on high speed connection).

Max, Maya and Blender 3.0 plug-ins pushed out until now so we could include OE API support

Speed is looking on par w/ local GPU over 1 Gbps

OSX - MacPro (aging D700s), MacBook (no AMD/NV GPU) et al.

OctaneEngine New rental price points for artists, studios and pros

$19.99/month same features as Octane standalone/network slave

$9.99/month - Octane on up to 2x GPUs. Ideal for students, smaller studios, or remote second license

OE Plug-ins (using new OE API) will be $9.99/month

OE bundles/suites (e.g. 2, 3 or more plug-ins) priced at $19.99/month

OctaneEngine New Enterprise Plans (monthly pricing TBD)

Network rendering - up to 200 GPUs via certified GPU appliances w/ 10GE+ networking

ORC in a box create a virtual private ORC region using your GPU appliances. All the features of the ORC public cloud, but provisioned in your own DC.

NVIDIA and other partners working on HW certification path.

OctaneEngine Asynchronous Render Graph API

New API allows Octane to build node trees with asynchronous I/O and queues similar to ORC but internalized in Octane node system in future OE release.

Simple use case: baking camera -> texture input of light mapped mesh -> real time OR preview

API for light field photon cache could be used for biased rendering shaders and plug-ins.

OctaneEngine Collaborative Scene Graph API

Allows multiple clients to connect to a single OctaneEngine node and receive a unique viewport for the current render target

Changes in the scene graph can be handled by any connected application through new OE API (under development)

Powerful framework for merging app workflows e.g. Motion Builder + Max +Nuke + Unreal Engine all controlling and editing the same scene across LAN

OctaneEngine WebSocket API

OctaneEngine exposed as web service via WS/TCP and UDP. This is coming to ORC down the line

Web desktop recreating Octane Standalone UI in HTML5 combined with OE web service, means no need for standalone app.

Services like Vizor.io and clara.io can tap into Octane as a web service for live viewports or offline jobs powered by ORC credits.

OctaneImager

OctaneImagerCompositing and post processing framework -> OE

Independent filter and imaging SDK

2D and deep pixel/deep motion effects input for info channels, mesh data as well as multiple beauty passes layers and rendertarget groups

Can be used for 2D media passes (e.g. OXR/EXR deep images) independently of OctaneEngine

Filters and NPR effects via Octane Shader Compiler

OctaneImager

OctaneImager

OctaneImager

Brigade - Towards Real Time Path Tracing

Dynamic noise free rendering in Brigade ( ~3200 OctaneBench )

vs. single 980 (~1/32 the GPU power @ 100 OctaneBench )

Brigade - Towards Real Time path tracing at 120+ fps

Octane Towards Real Time path tracing at highest quality

OCTANERENDER AND SPACE STATION 76

1, 2, 3 2012-2016

OCTANERENDER AND SPACE STATION 76

42017

OCTANERENDER AND SPACE STATION 76

4+ Brigade

4

OctaneRenders cinematic final frame quality

Brigades speed

Interactivity >= OpenGL / DirectX legacy pipeline

4

Octane 4 integrates all of Brigades features to date

Supported in all OE plug-ins including final releases of Unity/UE4 and Motion builder plug-ins

Focus on next gen HW for much better speed

Deeper APIs for game engines especially UE4!

4

Filtering + smart sampling to get noise free PT in real time

Mobile + Console backbends e.g. Android/Vulkan, PSVR and iOS (key to VR/AER)

Speed ups will be as impactful for offline rendering

Much faster IES lights, point lights. Etc.

HAIR / FURThank you!