gpt4 book ai didi

c++ - 防止 overdraw 的技术(OpenGL)

转载 作者:太空宇宙 更新时间:2023-11-04 01:15:11 25 4
gpt4 key购买 nike

我画了很多半透明的多边形。我的场景是 2D 并使用 2f verticies。我不能使用深度缓冲区,因为它对 alpha 混合没有帮助。有哪些其他技术可以减少 overdraw ,因为这是削弱我的应用程序的原因,而不是多边形计数,因为我使用 VBO。

最佳答案

首先,您如何确定 overdraw 是您的问题?如果没有关于您正在绘制什么的更多信息,很难猜出如何更快地绘制它。一般来说,避免过度绘制的关键是避免绘制任何不需要的东西。所以,如果你有一个 2D 横向卷轴游戏,其中有几层背景图像独立滚动以实现视差目的——天空、云彩、山脉、远处的森林和近处的森林——你会希望避免在其他任何地方绘制天空层是可见的。因此,如果您知道山脉一定会覆盖天空的某个部分,请更改天空多边形的形状以仅绘制您希望天空可见的区域。如果您仍然有问题,可以为跟随山脉形状的天空制作一个相当高分辨率的网格。同样,如果保证森林图层的地平面覆盖一定的高度跨度,则不要在该区域绘制山脉。

OTOH,在现代视频硬件上,2D 场景中的几层 overdraw 通常没什么大不了的,所以我仍然很想知道你是如何确定这一点的,如果可能有某种您的仪器和分析中的偏见可能会让您误入歧途。

关于c++ - 防止 overdraw 的技术(OpenGL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3154095/

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