首页 > 独自研究 > HDR相关

HDR相关

呃那啥,HDR在GeForce7上面是个头痛的问题。GF7虽然支持fp16的渲染目标,却无法在使用fp16渲染目标的同时打开MSAA。其原因就不深究了,网上早有说明,总之事实如此。

HL2在Lost Coast中加入了HDR支持,不过因为当时MSAA和fp16冲突,Value并没有使用很直观的fp16方法来实现HDR,而是用了普通的int8来实现,其做法就是将光照信息编码压缩到RGBA的总共32bit里面。不过这有个问题,在Alpha混合的情况下处理起来会很麻烦,因为编码也会用到alpha通道。

然后,GeForce7600(或者说DX9c?)的显卡支持int16也就是每通道16位整数的渲染目标,但是在dx9c中int16并不支持alpha blending,于是pass。再考虑A2R10G10B10的渲染目标,此格式是支持alpha blending的,而一般的alpha blending只用到dest alpha(也就是贴图中的alpha通道)并没有用到framebuffer中的alpha通道,所以那个A2并不会影响到alpha混合的精度。据df叔所说,A2R10G10B10在XB360上会出现alpha混合的问题,而在他的PC(NV卡)上似乎没问题。于是我们也无从知道是不是PC上的NV卡就没问题,更不知道A卡如何了。

接下来还可以考虑MRT。GF7600是DX9c显卡,支持Shader Model3,也就是说可以一次性渲染到4个渲染目标。我们不做Deferred Shading,所以4个RT绰绰有余了。渲染到2个int8的RT,其中一个RT用RGB三个通道存储色相(剩下的一个留作alpha),第二个RT使用一个通道来存储一个倍数。在进行HDR相关的计算的时候,将第一个RT中的RGB值乘以第二个RT中的倍数的到完整范围的色彩。至于剩下的通道嘛…存点其他的东西啦,自发光度什么的…

 

最后,我觉得用什么技术实现并不是最大的问题,最大的问题是60FPS的怨念啊….

分类: 独自研究 标签:
  1. 本文目前尚无任何评论.
评论分页
1 2 124
  1. 2012年1月20日20:19 | #1
  2. 2012年1月25日23:40 | #2
  3. 2012年1月26日00:15 | #3
  4. 2012年1月26日01:09 | #4
  5. 2012年1月26日02:12 | #5
  6. 2012年1月26日02:30 | #6
  7. 2012年1月26日02:43 | #7
  8. 2012年1月26日03:09 | #8
  9. 2012年1月26日03:25 | #9
  10. 2012年1月26日06:20 | #10
  11. 2012年1月26日08:01 | #11
  12. 2012年1月26日13:09 | #12
  13. 2012年1月27日08:27 | #13
  14. 2012年1月28日23:37 | #14
  15. 2012年1月29日08:40 | #15
  16. 2012年1月30日18:20 | #16
  17. 2012年1月30日18:32 | #17
  18. 2012年1月31日08:44 | #18
  19. 2012年1月31日19:00 | #19
  20. 2012年1月31日20:52 | #20
  21. 2012年2月1日19:31 | #21
  22. 2012年2月2日15:12 | #22
  23. 2012年2月2日16:36 | #23
  24. 2012年2月2日17:19 | #24
  25. 2012年2月2日18:12 | #25
  26. 2012年2月3日20:04 | #26
  27. 2012年2月3日20:27 | #27
  28. 2012年2月3日20:40 | #28
  29. 2012年2月3日20:45 | #29
  30. 2012年2月3日22:18 | #30
  31. 2012年2月3日22:21 | #31
  32. 2012年2月4日03:06 | #32
  33. 2012年2月4日03:47 | #33
  34. 2012年2月4日03:51 | #34
  35. 2012年2月4日10:31 | #35
  36. 2012年2月4日13:53 | #36
  37. 2012年2月5日11:38 | #37
  38. 2012年2月5日12:14 | #38
  39. 2012年2月5日12:27 | #39
  40. 2012年2月5日19:47 | #40
  41. 2012年2月5日22:04 | #41
  42. 2012年2月5日22:41 | #42
  43. 2012年2月6日00:05 | #43
  44. 2012年2月6日01:49 | #44
  45. 2012年2月6日03:07 | #45
  46. 2012年2月6日04:18 | #46
  47. 2012年2月6日05:28 | #47
  48. 2012年2月6日05:48 | #48
  49. 2012年2月6日06:17 | #49
  50. 2012年2月6日06:40 | #50
  51. 2012年2月6日07:05 | #51
  52. 2012年2月6日08:12 | #52
  53. 2012年2月6日08:34 | #53
  54. 2012年2月6日08:52 | #54
  55. 2012年2月6日11:37 | #55
  56. 2012年2月6日12:20 | #56
  57. 2012年2月6日13:01 | #57
  58. 2012年2月6日23:59 | #58
  59. 2012年2月7日00:42 | #59
  60. 2012年2月7日01:11 | #60
  61. 2012年2月7日03:00 | #61
  62. 2012年2月7日06:11 | #62
  63. 2012年2月7日07:58 | #63

Spam protection by WP Captcha-Free