『第 235 楼』:
使用 LLM 解释/回答一下
这个不是强力压缩 而是3D 即时演算技术
即时演算,英文为Real Time Rendering。即所有我们眼中看到的图像芯片“即时”生成的,其一系列的程序语言经由API(程序接口)翻译成图形芯片可以执行的指令来完成处理工作。一般来说,即时演算的画面可以任意变换镜头角度,而CG动画则是固定的。但就画面的精细程度来说,CG动画还是强于即时演算的。不过随着图形技术的发展,即时演算与CG之间的差距会越来越小,比如《合金装备4》的那段即时演算的宣传片就绝对令人深刻。
一: 我们先述说它的定义,然后我再举一些典型的例子来说明一下.
说到即时演算,很多人会为比较悬,似乎很深奥,其实即时演算(尤其是游戏范畴的)就是图形技术的一种表现形式.
英文里面, real time rendering,翻译成中文就是我们通常说的“即时演算”.
即时演算的主要的工作都是由图形芯片来完成的,经过指令的指挥和复杂的计算,游戏中的人物和场景就出现在我们的屏幕上.
其实,提到"即时演算"的时候,我们伴随着提到最多的还有CG动画.
我想把"即时演算"和"CG动画"对比着来说,我们就很明白啦.
先说说"CG动画",所谓的CG动画,大部分工作是由动画制作人员来完成的,他们把建立好的模型在他们的电脑上渲染成完成的图,也即相当于经过了一道流水线,只不过流水线上的工作人员是动画制作人员,渲染结束后呢,我们的游戏机只需通过识别这些动画的编码,进行解码之后以每秒钟24幅画或者30幅画的速度播放出来就行啦,如果没有专门对应的芯片(这些芯片一般来说可编译的芯片,储存有编解码信息,解码时可以很方便的找到对应的输出),这个时候就要通过软件的算法来利用CPU的计算能力进行叽里呱啦的计算之后产生对应的图形输出,这就是往往我们嘴巴中间说的“播片能力”.
我下面举个例子来说明.
比如,游戏的开场CG动画部分就是我们非常熟悉的动画部分,这部分视频是游戏制作人事先已经制作好了的,只是播发即可,虽然我们看上去很色彩绚丽,其实并不占系统资源. 我们都有这样的体会,就是当系统配置不够的时候,往往能够顺利播发CG动画, 但是CG动画过后,立即退出了游戏,要么就黑屏, 就是这个道理.
那么为何退出游戏呢,下面就牵扯到了即时验算.即时验算在游戏中是最吃系统的,即使非常小一部分的即时验算都会耗费相当大的系统资源.
再举个即时验算的例子, 即时验算的份量最大的就属欧美制作的大型游戏,所以我就拿<上古4>为例吧:
<上古卷轴4>中有很多这样的场景,就是在对付敌人的时候,你既可以选择使用冷兵器攻击敌人,也可以使用魔法攻击,还可以互相交替进行攻击,还可以与对方沟通,还可以放弃战斗而逃跑, 那么在你瞬间选择的时候,系统并不知道你将采用哪种方式进行攻击,当你突然选择使用冷兵器的时候,渲染系统就要从预留的渲染文件中调出使用冷兵器的图形文件,进行即时渲染,这就是即时验算!!这个瞬间的即时验算完全是有CPU来进行的.而显卡和内存负责将CPU下达的指令进行合成然后完美还原计算,呈现出来的就是华丽的画面图形.
因此,需要系统有足够的容量储备来应付瞬间的图形计算,否则就出现我们经常说的"卡", 这就是由于系统配置跟不上,我们说的所谓的"卡" 其实就是丢祯现象, 因为系统在计算的时候已经出现了不连贯, 反映在屏幕上就是人物定格, 一祯一祯往前跳.
因此,即时验算非常考验系统.
This is not a powerful compression but 3D real-time rendering technology.
Real Time Rendering, in English, means that all the images we see are generated "instantly" by the graphics chip. A series of programming languages are translated into instructions that the graphics chip can execute through the API (program interface) to complete the processing work. Generally speaking, the picture of real-time rendering can arbitrarily change the lens angle, while CG animations are fixed. But in terms of the fineness of the picture, CG animations are still stronger than real-time rendering. However, with the development of graphics technology, the gap between real-time rendering and CG will become smaller and smaller. For example, the real-time rendering promotional video of "Metal Gear Solid 4" is absolutely impressive.
First, we will state its definition, and then I will give some typical examples to illustrate.
When it comes to real-time rendering, many people find it rather mysterious and seems very profound. In fact, real-time rendering (especially in the game category) is a form of expression of graphics technology.
In English, real time rendering is translated into what we usually call "real-time rendering".
The main work of real-time rendering is all done by the graphics chip. Through the command and complex calculation, the characters and scenes in the game appear on our screen.
In fact, when mentioning "real-time rendering", the most mentioned thing with it is also CG animations.
I want to compare "real-time rendering" and "CG animations", and then we will understand clearly.
First, let's talk about "CG animations". The so-called CG animations, most of the work is done by animation producers. They render the established models into complete pictures on their computers, which is equivalent to a production line. The staff on the production line are animation producers. After rendering is completed, our game console only needs to recognize the codes of these animations, decode them, and then play them at a speed of 24 or 30 frames per second. If there is no special corresponding chip (these chips are generally compileable chips, which store encoding and decoding information, and can easily find the corresponding output during decoding), at this time, it is necessary to use the algorithm of software to use the computing power of the CPU for a lot of calculations and then generate the corresponding graphics output. This is what we usually call "video playback ability".
I will give an example below to illustrate.
For example, the opening CG animation part of the game is a very familiar animation part. This part of the video has been produced in advance by the game producer, and just needs to be played. Although it looks very colorful, it does not occupy system resources. We all have such an experience that when the system configuration is not enough, we can often play the CG animation smoothly. But after the CG animation, we immediately exit the game, or there is a black screen. That's the reason.
Then why exit the game? Then it involves real-time rendering. Real-time rendering in the game is the most system-consuming. Even a very small part of real-time rendering will consume a considerable amount of system resources.
Let's take another example of real-time rendering. The largest part of real-time rendering is the large-scale games made in Europe and the United States. So I will take "The Elder Scrolls 4" as an example:
In "The Elder Scrolls 4", there are many such scenes. When dealing with enemies, you can choose to attack the enemy with cold weapons, or use magic to attack, or alternate attacks, or communicate with each other, or give up the battle and run away. Then when you choose suddenly which way to attack, the system doesn't know which way you will use to attack. When you suddenly choose to use cold weapons, the rendering system has to call out the graphic files using cold weapons from the reserved rendering files and perform real-time rendering. This is real-time rendering!! This instant real-time rendering is completely done by the CPU. And the graphics card and memory are responsible for synthesizing the instructions issued by the CPU and then perfectly restoring the calculation, and the gorgeous picture is presented.
Therefore, the system needs to have sufficient capacity reserves to cope with the instantaneous graphics calculation, otherwise the "freezing" we often say will occur. The so-called "freezing" is actually a frame drop phenomenon, because the system has been incoherent during calculation, and what is reflected on the screen is that the character is frozen and jumps frame by frame.
Therefore, real-time rendering is very demanding on the system.
|