当前位置:网站首页>Real time rendering: the difference between real-time, offline, cloud rendering and hybrid rendering

Real time rendering: the difference between real-time, offline, cloud rendering and hybrid rendering

2022-06-24 18:58:00 InfoQ

Rendering , Will be 3D Model into 2D Images , And finally appear on the screen . Although there is only one sentence here , But this sentence contains too much mathematics 、 Knowledge of physics and computer , It describes the basic logic of using computers to virtualize the real world . The rendering process requires computer calculation and takes time .
Different rendering categories , Different rendering engines will be used . For example, we usually use real-time rendering Unity and Unreal, Offline rendering we will use V-ray and Keyshot. But these technologies and engine products are interlinked , therefore Unreal Real time rendering capabilities can also be deployed in the cloud , Become the embodiment of cloud rendering . although , Due to different usage scenarios , The rendering algorithms of the engine itself have their own characteristics and advantages . however , With the development of hardware computing power , Their boundaries are becoming blurred .
Common rendering types are as follows :
Real time rendering 、 Offline rendering 、 Cloud rendering 、 Blend rendering .
There is overlap between them , There are also technical differences . We avoid too many professional descriptions , Try to explain in a simple and understandable way .
Real time rendering
Real time rendering (Real-time Rendering) The literal meaning is very easy to understand , That's what we need to see in real time after rendering 3D The effect of an object or scene . real time , How to understand with numbers ? At least 24FPS: Only reach or exceed 1 Seconds to play 24 The speed of Zhang's coherent image , When the human eye watches, it will not form the feeling of Caton .
General real-time rendering scenes have strong interactive properties , For example, the most common 3D game 《 The king 》《 Eat chicken 》, Or something with interaction 3D application , For example, smart city 、 Visualization project of smart Park . In a scene rendered in real time , These applications will run independently on our computers 、 On the cell phone , Complete the process of real-time rendering through local hardware capability . therefore , If you play a big game , The hardware performance must be better .
Offline rendering
Offline rendering (Offline Rendering) This is understood literally , It's like “ Broken net ” Then do rendering , But this understanding is wrong .
Offline rendering corresponds to real-time rendering , Simply put, we don't need to see the rendered scene in real time .
The most common scene of this kind is our home decoration renderings . Little friends who have done decoration should know , If you let the design company produce renderings, you usually have to charge ( Some are free to attract customers ), They are actually doing offline rendering .
Then why can't we render a rendering in real time , Instead, use the offline rendering mechanism ? This depends on how high the final rendering effect is .
Real time rendering , Although the rendering speed is fast , Rendering content can be generated in real time , But the rendering effect and realism are relatively impossible to be particularly high . For scenes rendered offline , Basically, they have very high requirements for rendering , Even completely real .
For example, the home decoration effect drawing mentioned just now , You may not need to see the rendering immediately , But if you see it , Found that the effect is not good , You may have to change to another design company .
Another of the most common is Hollywood blockbusters 、3D Animation and other film and television scenes . They all need to achieve a very realistic rendering effect, or even a completely realistic reproduction of the scene , But the real-time requirement is not high .
therefore , Ordinary Hollywood blockbusters , Especially the one with very good special effects , The production cycle after shooting is very long . For example, we are familiar with 《 "Avatar" 》, At that time 40000 star CPU,104TB Memory ,10G network bandwidth , The whole offline rendering 1 More than a month .
Speaking of this, you should have a question , How can I use 40000 star CPU To render ? What computer can have so many CPU Well ? In fact, this is offline rendering. Conceptually , It's easy to misunderstand : Offline rendering is mostly just online .
General situation , If we are making home decoration renderings , You can use your own ordinary computer to render , But your own computer hardware configuration will certainly not be particularly good .
therefore , It takes a long time to complete the whole process of rendering calculation to the final drawing , Of course, the better the computer hardware , The shorter the time .
If it is a professional design team , Although it is necessary to use offline rendering to achieve high rendering effect , At the same time, I certainly hope that the shorter the drawing time, the better .
Therefore, a new form of offline rendering appears : Rendering farm . When it comes to rendering farms, I believe many people are no stranger , It just bought a lot of rendering servers in the cloud , These servers can build thousands of CPU perhaps GPU The cluster of , To serve users who need to quickly complete offline rendering .
That's why 《 "Avatar" 》 It takes so much to render CPU Why , Of course, now they basically adopt GPU To render . Rendering farm is actually a rendering server cluster , Of course it's online . So , Just mention rendering farms , It is a rendering form in offline rendering scene , But in fact, it's just online .
Cloud rendering
Cloud rendering (Cloud Rendering), This literally means rendering in the cloud . But why is it that when it comes to rendering farms , I didn't emphasize that it is cloud rendering ?
In fact, according to the node where rendering occurs , The offline rendering of rendering farm belongs to the category of cloud rendering . however , What we usually understand about cloud rendering , Generally, the scene is rendered in real time in the cloud . The real-time rendering mentioned above is mostly done on our own local computer or mobile phone , Therefore, the hardware requirements of the terminal are relatively high , Otherwise “ Carton ” It must be inevitable .
The emergence of cloud rendering is to solve this problem :
The terminal with poor hardware performance can also render in real time, and the effect is good 3D Content .
The basic principle of cloud rendering is , Put all the 3D Rendering is left to the cloud . After rendering , The encoded video is transmitted to our client in real time , The client becomes a video player , Decode and play the video stream , In this process, you can monitor some mouse and keyboard operations , To complete the interactive function .
Such a large amount of 3D data and art resources do not need to be installed on our mobile phone or computer client , It's all done in the cloud , As long as the client has the performance of watching video , You can experience a better rendering effect 3D application . For the public , Mobile devices don't need special high configuration , You can experience the game with good effect , And mobile phones generally don't get hot . At present, the scene rendered by cloud is mainly reflected in the game scene , Cloud games . Of course, it also includes some that require high rendering quality 3D Visual or digital twin projects .
Speaking of this , We are interested in real-time rendering , Offline rendering and cloud rendering are three different rendering forms , There should be a basic understanding . In fact, when it comes to rendering itself , It is the operation process of a mathematical algorithm on the computer . They all have their own advantages and disadvantages and use scenarios :
01、 Real time rendering
Pursue rendering speed , Requires a strong interactive experience . So even when the client hardware performance is high , We also need to do a lot of mathematical algorithm optimization , While not particularly reducing the rendering effect , Reduce rendering time , Achieve good real-time interaction .
02、 Offline rendering
Pursue rendering quality , Real time and interactivity are not required . The pursuit is the ultimate rendering effect , Achieve the experience of confusing the false with the true . Therefore, we use the most extreme, the best and the closest rendering algorithm to the real physical principles , For a very realistic rendering process . By rendering the cloud computing power of the farm , Minimize rendering time .
03、 Cloud rendering
Pursue relatively high rendering quality while , Also meet the real-time requirements . Therefore, the deployment and scheduling capability of cloud computing power will be higher , Users with low client configuration can also experience good results through cloud rendering 3D application .
原网站

版权声明
本文为[InfoQ]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/175/202206241532486420.html