My renderer update – Photon-Mapping(caustics) & Texture
来源:互联网 发布:淘宝 行业排名一直掉 编辑:程序博客网 时间:2024/05/16 07:15
In recent two weeks, I finished another two important components of a GI renderer: caustics and texture.
[Texture]: I use DevIL as the basic image loading library. DevIL also offers Mipmap building function. I adopt it directly and what I have implemented is to choose the most proper size sub-image
[Photon-Mapping (Caustic)]: The main reference is the seminal paper (Jenson, 1996). It requires another individual pass of photon projection from lights to objects. The photons will follow the regular paths of regular rays but they will stop on the diffuse surfaces. Each photon contains information of color & position. In the rendering pass, extra color estimation will be evaluated according to the photon densities of each pixel using reconstruction kernel functions.
As (Jenson 1996) mentioned, caustic computation requires high photon number, because small objects may generate a large scale of caustic due to the curvature – especially when you need high quality caustics. But I use Grid Acceleration on caustics reconstruction, so the caustic rendering now keeps a const cost of each pixel computation because of the identical grid index reference actions (but of course photon grid organization costs more time.)
A sample screenshot (3x anti-aliased, about 123k photons):
- My renderer update – Photon-Mapping(caustics) & Texture
- My renderer update – Tone Mapping (Global Op.)
- My renderer update – Blooming
- My renderer update – Instant Radiosity moved on GPU
- My renderer update – GPU Acceleration on Intersections (more than 2x faster)
- Texture mapping
- Texture Mapping
- Texture Mapping
- photon mapping学习笔记
- photon mapping学习笔记
- Texture mapping a pyramid
- 纹理映射 (texture mapping)
- projective texture mapping
- 纹理映射(Texture Mapping)
- 第五章 Texture Mapping
- sdl renderer window texture surface更新关系
- openGL中的Texture/MultiTexture Mapping
- Decals - Using Projective Texture Mapping
- 牛人
- IT外企那点儿事(8):又是一年加薪时
- Visual Studio 2010 快捷键大全
- email 中不合法的字符
- QSqlDatabase 与多文档窗口注意事项(此文有部分错误 仅作留档 请参见下一篇解释)
- My renderer update – Photon-Mapping(caustics) & Texture
- 凌晨三点的瞎扯
- printf, sprintf,输出数据类型
- MFC 下线程
- 多线程
- 16位MD5加密JAVA版
- 学习方法!!!
- .Net Compact Framework 资源内存释放
- Visitor パターン