Real Time Render 4
【Real Time Render 4】
1、Radiometry(辐射测试) deals with the measurement of electromagnetic(电磁) radiation(辐射). Such radiation consists of a flow of photons(光子).
Photons behave as either particles or waves, depending on circumstance.
光子可以表现为粒子或波。
One wave-related property of photons that cannot be disregarded is the fact that each has an associated frequency or wavelength. The energy of each photon is proportional to its frequency. Different frequencies of photons are perceived as light of different colors.
波有频率、波长属性, 能量正比于频率。不同频率的光子对应不同的颜色。
2、The relationships between a photon’s wavelength λ (in meters), frequency ν (in Hertz, or cycles per second) and energy Q (in joules) are:
where c is the speed of light (2.998×108 meters/second) and h is Planck’s constant (6.62620 × 10−34 joule-seconds).
3、In radiometry, the basic unit is energy or radiant energy Q, measured in joules (abbreviated “J”).
能量单位是焦耳(joule),简写为 J。
The radiant flux(辐射流) or radiant power(辐射能量), Φ or P, of a light source is equalto the number of joules per second emitted (i.e., dQ/dt). The watt (W) is another term for joules per second.
辐射流等于每秒的joules。简称为watt(瓦)。
Irradiance (辐照度) is the density of radiant flux with respect to area.dΦ/dA. irradiance E is used to measure light flowing into a surface and exitance M (also called radiosity or radiant exitance) is used to measure light flowing out of a surface.
辐照度是单位面积的辐射强度。
I, is called intensity or radiant intensity. If the distance r equals 1, then intensity is the same as irradiance—in other words, intensity is flux density with respect to area on an enclosing radius-1 sphere.
辐射强度,等于半径为1时的辐照度。
A solid angle is a three-dimensional extension of the concept—a continuous set of directions, measured with steradians (弧度)(abbreviated “sr”). intensity is actually flux density with respect to solid angle (dΦ/dω), unlike irradiance, which is flux density with respect to area. Intensity is measured in watts per steradian.
强度单位是 w/sr。
"five-times" rule of thumb. If the distance from the light source is five times or more that of the light's width, then the inverse square law is a reasonable approximation and so can be used.
五倍定律,到光源的距离大于光源宽度时,上述Intesity公式可以使用。
4、In two dimensions, an angle of 2π radians covers the whole unit circle. Extending this to three dimensions, a solid angle of 4π steradians would cover the whole area of the unit sphere.
球的表面积是4πr2,所以,整个球面有4π球面度。
5、Radiance measures the illumination in a single ray of light—it is flux density with respect to both area and solid angle.
对于上图:
This irradiance is the flux density per area at a surface point— it represents photons hitting that point from all parts of the light bulb, covering a range of directions represented by the solid angle ω.
An important property of radiance is that it is not affected by distance.
6、Light from a given direction consists of a set of photons in some distribution of wavelengths. This distribution is called the light’s spectrum.
光由一群不同波长的光子组成,这些不同波长的光子的分布叫作 spectrum。
So for a given spectrum, the brain itself then receives only three different signals from these receptors. This is why just three numbers can be used to precisely represent any spectrum seen.
对于给定的 spectrum,大脑只会接收3种不同的信号。所以只要3种颜色就能表示任意的 spectrum。
不同的光强可以组成任意的颜色。在 645、526、444上,分别是单色。
7、Given an arbitrary spectrum, these curves can be multiplied by the spectrum and the area under each resulting curve (i.e., the integral) gives the relative amounts to set the colored lights to match the perceived color produced by the spectrum.
对于任意的光(spectrum),分别用上图中的 r、g、b 乘以 spectrum。各个面积的值就是各RGB值。
The three weighted r, g, and b values cannot directly represent all visible colors, as their color matching curves have negative weights for various wavelengths.
RGB无法代表所有颜色,因为有负数。
The CIE proposed three different hypothetical light sources that did not use monochromatic light.
Given a surface reflectance and light source, the product of these two defines a color function C(λ), i.e., a spectrum. By again multiplying this spectrum by a color matching curve and integrating a single value is computed for each curve:
让 X+Y+Z=1,则可以省略Z轴。
从而得到CIE色彩图:
The curvedline in the diagram shows where the colors of the spectrum lie, and the straight line connecting the ends of the spectrum is called the purple line.
曲线是 spectrum。
白色是 1/3,1/3,1/3。
Given a color point (x,y), draw a line from the white point through this point to the spectral line. The relative distance of the color point compared to the distance to the edge of the region is the saturation of the color.
饱和度。指颜色的纯度。
The point on the region edge defines the hue of the color.
色调。指颜色。
The third dimension needed to fully describe a color is the Y value, luminance. These then define what is called the xyY coordinate system.
亮度。最右侧图中,竖轴表示亮度。指黑白程度。
参考:https://blog.csdn.net/u011399342/article/details/79656855
The triangle in the chromaticity diagram represents the gamut of a typical computer monitor.
8、Conversion from XY Z to RGB space is linear and can be done with a matrix.
The inverse RGB to XYZ conversion is:
A common conversion is to transform an RGB color to a grayscale luminance value, which is simply the middle row of the previous equation:
Photometric curve multiplied by the spectra of the three phosphors, The three resulting weights are what form the luminance equation above.
9、 Multiplying two RGB colors to obtain an RGB result is not the same as multiplying two spectra together and then converting the resulting spectrum to RGB.
Other color systems common in computer graphics include HSB (hue, saturation, brightness)。
计算机图形也常用 HSB来表示颜色。即前文所述,Hue色调,Saturation饱和度,Brightness亮度。
CMYK (cyan, magenta, yellow, black) is for the inks used in standard four-color printing.
CMYK用在四色印刷行业。
10、Omni Lights(常量点光源)
Point lights are defined by their position pL and intensity IL. Point lights with a constant value for IL are known as omni lights.
It is often preferable to use a different function to describe how EL decreases with distance. Such functions are called distance falloff function.
A much simpler distance falloff function is often used in games and graphical modeling applications:
11、Spotlight
IL varies with direction. The spotlight function used in the OpenGL fixed-function pipeline is:
We call θu the umbra angle, the angle at which the intensity reaches 0.
The exponent and cutoff behavior in the DirectX fixed-function pipeline is more flexible:
The angle θp defines the penumbra angle of the spotlight, or the angle at which its intensity starts to decrease.
12、Textured Lights
For lights that are not limited to a frustum but illuminate in all directions, a cube map can be used to modulate the intensity, instead of a two-dimensional projective texture.
Real Time Render 4的更多相关文章
- React.render和reactDom.render的区别
刚开始学习react.js.发现网上的资料,有些是写着react.render,有些写着reactDom.render.觉得很奇怪就查阅了一下资料.解释如下: 这个是react最新版api,也就是0. ...
- XF custom render 各平台实现类
目前的XF还是非常简陋的,所以存在大量的自定义工作.一般情况下我们只是要需要派生原生的XF控件,然后在各平台下修改其呈现方法. 所以了解每个XF控件在不同平台上呈现使用的控件类是有所必须要的.以下别人 ...
- 塞翁失马,焉知非福:由 Styles.Render 所引发 runAllManagedModulesForAllRequests="true" 的思考
最近在使用 MVC 开发的时候,遇到一个对我来说"奇怪的问题",就是使用 BundleTable 进行 CSS.JS 文件绑定,然后使用 Styles.Render.Scripts ...
- ReactJS分析之入口函数render
前言 在使用React进行构建应用时,我们总会有一个步骤将组建或者虚拟DOM元素渲染到真实的DOM上,将任务交给浏览器,进而进行layout和paint等步骤,这个函数就是React.render() ...
- Cesium原理篇:6 Render模块(3: Shader)
在介绍Renderer的第一篇,我就提到WebGL1.0对应的是OpenGL ES2.0,也就是可编程渲染管线.之所以单独强调这一点,算是为本篇埋下一个伏笔.通过前两篇,我们介绍了VBO和Textur ...
- Cesium原理篇:6 Render模块(4: FBO)
Cesium不仅仅提供了FBO,也就是Framebuffer类,而且整个渲染过程都是在FBO中进行的.FBO,中文就是帧缓冲区,通常都属于高级用法,但其实,如果你了解了它的基本原理后,用起来还是很简单 ...
- Cesium原理篇:6 Render模块(5: VAO&RenderState&Command)
VAO VAO(Vertext Array Object),中文是顶点数组对象.之前在<Buffer>一文中,我们介绍了Cesium如何创建VBO的过程,而VAO可以简单的认为是基于VBO ...
- render :template 和 render :parital
1 .这两个都可以在controller和view中使用,而且好像可以替换,只是用:template,rails不会自动加下划线,用:partial,rails会自动添加下划线.而且规范的做法,:te ...
- AngularJs中,如何在render完成之后,执行Js脚本
AngularJs是Google开源的前端JS框架.使用AngularJs, 我们能够容易地.健壮的开发出类似于Gmail一样的单页Web应用.AngularJs这个新兴的MVC前端框架,具有以下特点 ...
- 利用Render Texture实现游戏的小雷达效果(摄影机分屏)
最近游戏蛮牛在举办一个活动,就是要做出这样的效果: 题目:实现游戏分屏效果 要求:1. 分屏,且分割线不规则(即非水平或垂直):2. 各屏可单独操作(移动.缩放),操作指该 ...
随机推荐
- 【Selenium-WebDriver自学】Selenium-IDE安装和使用(一)
==================================================================================================== ...
- win7 数据源只有 SQL SERVER, WIN7 64bit 环境使用 access 作为 CIS的数据源
最近换了个工作电脑,安装的是 WIN7 64BIT,结果配置CIS数据源的时候出现问题了,默认的数据源只有 SQL SERVER,没有ACCESS的数据源.后来在网上寻找了一圈后,找到了解决方法: C ...
- 【Excel技能】字符串包含某字符串个数?替换许多组字符串?
=len(单元格A)-len(substitute(单元格A,某字符串,)) 原理:将某字符串替换成空,前后字符串长即为减去的这个字符串长度,这个字符串出现个数=前后字符串长度之差/这个字符串长度 = ...
- 白鹭引擎 - 资源文件的加载 ( RES, loadConfig, loadGroup )
class Main extends egret.DisplayObjectContainer { public constructor() { super(); this.addEventListe ...
- 用URL传递参数
用URL传递参数,在园子里找到一篇文章解决了自己的问题,地址如下:http://www.cnblogs.com/lolicon/archive/2009/01/19/1378408.html
- js弹出div层内容(按回退键关闭div层及遮罩)
<!--弹出的div列表对应的详情--> <div id="newhtml" class="white_content"> <di ...
- js 迭代 方法
在js 中,有一些方法, 可以很方便的遍历出数据,不用进行for循环就可以,是怎么实现的呢? 例如:在javascript 中的forEach 方法:打印一个数组的索引和项目: 1. forEach ...
- SpringMVC是单例的
spring的controller是单例还是多例,结果我傻逼的回答当然是多例,要不然controller类中的非静态变量如何保证是线程安全的,这样想起似乎是对的,但是不知道(主要是我没看过spring ...
- mysql 忘记密码解决方案
Mysql 忘记root密码的完美解决方法 转载 2016-12-23 作者:MR.QiGao 我要评论 通常在使用Mysql数据库时,如果长时间没有登陆,或者由于工作交接完成度不高,会导 ...
- js 替换字符串中所有匹配的字符
var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str1); // 打印结果: obcadeacf var str2 = ...