Welcome to ZwqXin


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

What are you looking for?

留言本

  • quote 41.daniel
  • 博主的opengl系列文章写得非常不错.请教个问题,如果我用一系列控制点矩阵计算得到一个nurbs曲面,有办法对这个曲面贴图吗?
    zwqxin 于 2011-10-7 9:33:31 回复
    一般是进行分割后再帖吧。
    hello 于 2012-6-25 11:21:05 回复
    我最近在看关于opengl渲染地形的知识,觉得你的文章写的非常好,分享了好多有价值的资料。不知道你关于地形渲染这一部分有没有可以供学习的资料可以下载的?如果有的话可不可以分享一下?谢谢!
  • 2011-10-7 2:47:21 回复该留言
  • quote 42.linus
  • 期待你用这个做出一款galgame,哈哈,顺便教我编程哦!
    zwqxin 于 2011-10-13 21:04:01 回复
    你写文案咯.我要老虚那种深度治愈(?)的。
  • 2011-10-12 23:24:37 回复该留言
  • quote 43.whsong
  • 刚刚开始学OPENGL..楼主人很好,分享的东西很有用,支持下
  • 2011-11-11 17:04:31 回复该留言
  • quote 44.wangsong
  • 博主,有个问题想咨询一下,关于FBO离屏渲染

    opengl做小样本纹理的简单拼贴,如果正常的通过顶点和像素着色器实现,可以在着色器中控制 32*32 的小纹理(假设)去覆盖任意数目的网格,例如可以32*32的小样本纹理覆盖4*4的网格,然后重复很多次来生成效果(1024*1024的网格),这时候显示的小样本很清晰。

    可是,把这个过程用离屏渲染来做的话,32*32的小样本纹理在覆盖4*4的网格时候,出现了纹理走样,即出现了马赛克那种效果。我想应该是纹理的 min_filter 即缩小过滤器起作用,我也设置了过滤方式,但是效果还是不理想

    为什么用固定流水线或着色器做的时候,小样本纹理可以覆盖比它自己尺寸小的范围而不会出现失真的效果,而用离屏渲染做的时候,纹理一旦覆盖比它自己尺寸小的范围的时候,就会出现失真的效果
    zwqxin 于 2012-4-12 21:55:15 回复
    “为什么用固定流水线或着色器做的时候,小样本纹理可以覆盖比它自己尺寸小的范围而不会出现失真的效果”——如果没失真应该是因为生成了mipmap吧,你可以看做内存中该纹理有一系列比原大小要小的纹理副本(mipmap,尺寸均满足2的N次方),min_filter的值是那些带有mipmap字眼的话,贴图时GL会选择大小贴近的一张mipmap去贴的;“用离屏渲染做的时候,纹理一旦覆盖比它自己尺寸小的范围的时候,就会出现失真的效果”——你是说FBO绑定的那个纹理吧,因为FBO建立纹理时很少采用mipmap的缘故吧?我以前试过如果要生成mipmap的话FBO会创建失败,不知道当前的世道会如何了。
  • 2012-4-10 19:54:55 回复该留言
  • quote 45.wangsong
  • 谢谢博主呀,现在看来FBO还是行不通,我再想别的方法了
  • 2012-4-16 16:13:40 回复该留言
  • quote 46.Goldenwang
  • 问题:
    pc如何把GPU显存里的内容读出来? 使用FBO?还是OpenCL?两者有什么区别?

    场景:pc需要把GPU显存里经过渲染的内容读取出来,经过压缩后发送出去。

    多谢指点
    zwqxin 于 2012-4-23 20:54:07 回复
    要读取像素数据,OpenGL下可以试试用PBO。
  • 2012-4-23 11:55:25 回复该留言
  • quote 47.朵朵
  • 楼主,我刚开始学opengl,在看DancingWind的NEHE中文教程,能不能麻烦你把DancingWind的源码发我?
  • 2012-4-25 11:58:04 回复该留言
  • quote 48.kcpnevergiveup
  • 楼主,今天看到你的博客我是激动万分,太多好资料了。
    我才学opengl不久,我在MFC单文档框架下做opengl,加入glEnable(GL_DEPTH_TEST);界面就只显示背景,什么也看不见,你知道是什么问题吗?
    zwqxin 于 2012-5-25 21:00:18 回复
    你确定是这一句导致的问题吗?如果是的话,大概你没设置好深度缓冲,或者绘图位置不对了,或者……了。
  • 2012-5-25 9:42:19 回复该留言
  • quote 49.infor
  • 您好,博主.有个问题想请教下:
    我想用opengl复制当前屏幕上已经绘制的像素并作为纹理
    我这样处理:
    保存屏幕指定位置并生成纹理对象:(width和height是满足2的整数次方的)
    GLuint textureid;
    glGenTextures(1, &textureid);
    glBindTexture(GL_TEXTURE_2D, textureid);
    glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_BGRA, x, y, width, height, 0);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

    使用时调用该纹理

    可是画出来的部分总是空白。

    能指点下不?谢谢了。
    zwqxin 于 2012-6-18 23:21:30 回复
    太遥远了点……我还是建议你使用FBO来做类似这样的事情吧。
    infor 于 2012-6-19 9:40:27 回复
    谢谢你的及时回复.我看了博主的FBO的文章,完全可以用FBO来做.
    主要是自己折腾了几天这个方式,不弄出来心里总是不舒服,呵呵.今早把它折腾出来了.用glGetError查看错误码找到原因的,原来是glCopyTexImage2D的第3个参数传错了.根本不支持GL_BGRA,改成GL_RGB就ok了,马上去再研究下FBO.
    再次感谢.
  • 2012-6-18 16:11:49 回复该留言
分页:[«][1][2][3]4[5][6][7][8][»]

发表评论:

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

IE下本页面显示有问题?

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

日历

Search

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Walle Build 100427

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