gpt4 book ai didi

c++ - 我怎样才能在 OpenGL 片段着色器中制作这个球形渐变?

转载 作者:行者123 更新时间:2023-11-30 05:43:49 27 4
gpt4 key购买 nike

我是 OpenGL 的新手。我希望我的背景看起来好像玩家在下图所示的球体内。玩家向上看时为白色,向下看时为黑色,沿途呈渐变。

我尝试将相机封闭在菱形棱镜中,并将白色分配给顶部顶点,灰色分配给中间,黑色分配给底部。但是三角形的接缝非常明显,我不完全明白为什么。使更多的顶点更好地近似球体似乎有些矫枉过正。我觉得我应该能够在片段着色器中完成这一切,但对实现它的了解还不够。我可以将相机的 y 方向 [-1,1] 作为统一传递给着色器。

我该如何实现?

Sphere Gradient

最佳答案

解决方案 A:添加更多三角形。这样他们就不会那么引人注目了。现代 GPU 可以在您的情况下同样轻松地渲染 3 个或 3000 个三角形。

解决方案 B:对“菱形棱镜”应用渐变纹理

解决方案 C:编写自定义片段着色器,根据垂直位置分配像素颜色

关于c++ - 我怎样才能在 OpenGL 片段着色器中制作这个球形渐变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30085923/

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