加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 如何将2个或更多纹理贴图应用于gluSphere OpenGL对象?

发布时间:2020-12-15 23:26:11 所属栏目:大数据 来源:网络整理
导读:我正在编写一个基本的行星查看器OpenGL Perl应用程序,只是为了好玩. 我有基本的工作,与辉煌的星球,通过gluSphere()实现,旋转与应用经典的地球纹理贴图. 现在,如果我想通过OpenGL应用第二个纹理贴图(比如“地球云”)怎么办? 当然,我可以在PhotoShop或其他一
我正在编写一个基本的行星查看器OpenGL Perl应用程序,只是为了好玩.
我有基本的工作,与辉煌的星球,通过gluSphere()实现,旋转与应用经典的地球纹理贴图.

现在,如果我想通过OpenGL应用第二个纹理贴图(比如“地球云”)怎么办?

当然,我可以在PhotoShop或其他一些图形应用程序中自己混合两个纹理贴图,但有没有办法通过OpenGL API?

我尝试加载两个纹理并生成mipmap,但显示的行星只应用了第一个纹理,而不是第二个纹理.

解决方法

正如吉姆巴克所说,你可以通过多重纹理获得理想的效果.

但是,我不认为GLU二次曲面支持多纹理坐标生成(即使用glMultiTexCoord *()与glTexCoord *().所以,我认为你需要自己的球体代码来进行多重纹理路由.

或者,您可以在当前具有第二个纹理贴图的周围绘制稍大的球体(适当使用Alpha通道和混合).这可能会导致z-fighting,所以它可能比它的价值更麻烦.

编写自己的球体代码并不难 – 可能是获得满意结果的最简单途径.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读