gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 22:26:31 27 4
gpt4 key购买 nike

我正在编写一个基本的行星查看器 OpenGL Perl 应用程序,只是为了好玩。
我有基本的工作,与辉煌的星球,通过 gluSphere() 实现,旋转应用经典地球纹理贴图。

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

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

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

最佳答案

正如吉姆巴克所说,您可以通过多重纹理获得所需的效果。

但是,我认为 GLU 二次曲面不支持多纹理坐标生成(即使用 glMultiTexCoord*() 与 glTexCoord*())。因此,我认为您需要自己的球体代码才能走多纹理路线。

或者,您可以在当前的球体周围绘制一个稍大的球体,上面有第二个纹理贴图(适当使用 alpha channel 和混合)。不过,这可能会导致 z-fighting,所以它可能比它的值(value)更麻烦。

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

关于perl - 如何将 2 个或更多纹理贴图应用于 gluSphere OpenGL 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/348266/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com