[zh]
上一篇“游戏中基于物理的渲染(一)”中介绍了反射方程和Lambert,本篇将介绍基于物理的光源部分。
[/zh]
[en]
In my last article, "Physically-Based Rendering in Game, Part 1", I introduce reflectance equation and Lambert. In this article, we mainly focus on physically-based lighting.
[/en]
[zh]
精确光源
[/zh]
[en]
Punctual Light Sources
[/en]
[zh]
游戏中经典的光源有point, directional和spot,这些局部光源都可以抽象成“精确光源”的概念,表示一个方向确定、大小为无穷小的光源。由于要计算的是到达表面点时的光照,所以不考虑从光源到表面之间的衰减。因此,精确光源都可以用颜色$\mathbf{c}_{light}$ ...
[zh]
“游戏中基于物理的渲染”系列由4-5篇文章组成,介绍了如何在实时渲染中使用基于物理的方法。内容主要来自于SIGGRAPH 2010的course:Physically-Based Shading Models in Film and Game Production。本系列文章讲述的渲染技术用在了KlayGE中。
[/zh]
[en]
"Physically-Based Rendering in Game" serial, which contains 4-5 articals, introduces how to use physically based method in realtime rendering. The main idea comes from a course of SIGGRAPH 2010: Physically-Based Shading Models in Film and Game Production. The rendering technique in this serial is used in KlayGE 3.11.
[/en]
[zh]
引言
[/zh]
[en]
Int ...
[zh]
刚制作了一段KlayGE海洋渲染的视频,包含GPU FFT、HDR skybox、Lens flare等技术。
EDIT: 换成传到土豆的视频了,更清晰一些。
[/zh]
[en]
I just composed a video of KlayGE ocean rendering, including techniques such as GPU FFT, HDR skybox, lens flare, etc.
EDIT: switch to the video on tudou.com.
[/en]
多年前NVIDIA就发布了3D Vision技术,能提供多种立体渲染的效果。随着2009年的电影阿凡达所带来的世界性3D狂潮,你是否也想在自己的程序中加入立体渲染呢?
3D Vision的原理
根据http://developer.nvidia.com/object/3d_stereo_dev.html,3D Vision的原理如下:
在驱动内部,所有3D场景都渲染两次——一次用左眼,一次用右眼。驱动会自动“在线”修改典型的3D游戏vertex shader,所以在执行期可以产生正确的图像。
注意加粗的几个词所透露出来的信息。首先,你的每一个Draw call都被驱动变成了两个Draw call;其次,立体化的过程是自动的,无法自由控制;第三,它只能处理典型的vertex shader,而不是任意的vertex shader,比如sky box的vert ...