《Blender Cycles:统一的CPU GPU路径追踪器架构.pdf》由会员分享,可在线阅读,更多相关《Blender Cycles:统一的CPU GPU路径追踪器架构.pdf(55页珍藏版)》请在三个皮匠报告上搜索。
1、Sergey SharybinBlender CyclesArchitecture of a unified CPU/GPU path tracerBut first.Blender 5.0 is out!Massive release,check out at blender.orgTalk OverviewIntroduction What is Cycles?Difference from real-time engines Architecture Overview Render scheduling Kernel Unified kernel for all GPGPU backen
2、ds Megakernel vs.wavefront render Kernel scheduling Deeper dive Shading Virtual Machine Texture filtering Interactive viewport Q&AIntroductionWhat is Cycles?Physically-based path tracer for production rendering Developed by theBlender project under the Apache 2 license Render engine that is interact
3、ive and easy to use Supports many production features Uses physically based shading system Design goals include handling large amount of geometry and complex shading and lighting scenariosCycles featuresUnified rendering kernel for CPU and GPU AMD,Apple,Intel,Nvidia)Cross platform and multi-device s
4、upport(even heterogenous)Compositing(render layers and passes,shadow catcher,etc.)Denoising,adaptive subdivision,camera lens models Shading:node-based,OpenBPR compatible(mostly),OpenShadingLanguage OSL Light:global illumination,light portals,light and shadow linking,manifold next event estimation MN
5、EE,path guiding Many more!Difference from real-time enginesPath tracing render engine Takes long time to converge,but allows for complex light interactions Implements full global illumination Shading Virtual Machine SVM Byte-code machine which interprets shader node graph Kernel is written in C Matc
6、hed features set on CPU,GPU,and GPUHWRTArchitecture overviewArchitecture overviewArchitecture overviewHost application adapterTakes care of converting data from DCC to Cycles scene graph Its responsibility only synchronize changes from the host application Adapter from Blender is maintained by the F