Welcome to ZwqXin


3D Graphics、OpenGL、GLSL、C/C++、GameEngine ……

What are you looking for?

留言本

  • quote 51.User
  • 你好,我看了您博客,对FBO有些问题,网上找关于FBO的文章大都会提到RenderBuffer Object,但是都只提到了初始化和绑定,没有读取类的操作信息,然后再其他地方找到了说RenderBuffer Object是个简单的图像,没有MipMap,可与Tex2D转换.
    但是这样直接用Texture不就行了吗,为什么还会有RenderBuffer Object 这个扩展,这个对象是在什么时候才能用到?要读取的话还要传换成Texture吗?还有,加入我想渲染Depth Buffer,这个RenderBuffer Object和Texture可以同时绑定到深度通道吗,会不会冲突?
    谢谢
    zwqxin 于 2012-10-5 11:15:51 回复
    RENDER BUFFER,如其名就是一个可渲染的缓冲区对象。比起Texture纹理,它是更一般意义上的离线缓冲区。但是它不像纹理那样可以直接拿来用,你要读取渲染到这个Buufer里的图像,需要通过glReadPixels或glMapBufferRange之类的方式获取数据(另外还可配合PBO来隐藏读取操作的消耗)。当然你也可以把它的数据交给另外的纹理,但是这一来最开始就没有使用RenderBuffer的意义了(比起Render to Texture更轻便)。
    所以如果对于FBO,如果你不需要在后续操作中获取里面的任何数据,那么应该更倾向于使用RenderBuffer来存储颜色/深度之类信息。最后的那个问题,我不太记得自己以前有没试验过,但是个人而言只要设置好目标DEPTH_COMPONENT的话,应该是不会冲突的,但是一般而言既然有Texture这个需求就没啥必要另外再渲染到一个renderbuffer里了……
  • 2012-10-3 1:46:44 回复该留言
  • quote 54.青蛙
  • 博主,为什么这个主页要是点进去看全文,都显示不出来啊?
    zwqxin 于 2012-11-6 23:56:17 回复
    你用的是什么浏览器啊?是不是还没有缓冲完?我也觉得服务器那边越来越慢的说。
    青蛙 于 2012-11-15 10:10:17 回复
    360的浏览器。
  • 2012-11-6 10:48:43 回复该留言
  • quote 56.ll
  • 博主你好,刚看了下你的基础的shadowmap例子的源码,受益匪浅,但发现有个问题:阴影在竖直的面上投影还正常,但在水平面的投影会发生变形和位移,请问这个是否有什么解决办法?
  • 2012-12-10 17:01:01 回复该留言
  • quote 57.ll
  • 里面有两个运动的球,这两个球的投影在水平的面上阴影是挤压过的,而且投影在水平面从远向近移动时,扭曲的方向会突然翻转?
  • 2012-12-10 17:07:40 回复该留言
  • quote 58.ll
  • 把灯光拉远是效果会很明显。或者是我移植的时候无意中改动了某个地方?
    zwqxin 于 2012-12-10 22:31:17 回复
    额不记得了,貌似是bias和分辨率的问题了有空再看~~
  • 2012-12-10 17:08:44 回复该留言
  • quote 59.ll
  • 你好,问题好像解决了,对于shadow demo1的shader,貌似把以下两句话从顶点shader移动到片元shader中效果就正常了:
    shadowTexcoord = texcoord / texcoord.w;
    shadowTexcoord = 0.5 * shadowTexcoord +0.5;
    这是否是因为必须将纹理坐标在vs与ps之见插值后才能在ps中进行上述这两个计算呢?
    耽误你时间了,呵呵~
  • 2012-12-11 21:03:16 回复该留言
分页:[«][1][2]3[4][5][6][7][8][»]

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

IE下本页面显示有问题?

→点击地址栏右侧【兼容视图】←

日历

Search

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Walle Build 100427

Copyright 2008-2024 ZwqXin. All Rights Reserved. Theme edited from ipati.