gpt4 book ai didi

c++ - 将 OpenGL 中的 3 层与背景混合

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:59:29 24 4
gpt4 key购买 nike

实现以下效果的 glBlendfunc() 参数是什么:

0) 背景,不透明。

1) 第一层,只有一种颜色。

2) 半透明球体,与 first_layer 混合但不与背景混合...

编辑

下面是我希望展示我正在努力实现的效果图。

This is the original - sphere over background

This is the desired effect - green color between sphere and background and sphere is blended with color but not background

最佳答案

根据简要描述,听起来您可以将第 2 层(球体)混合到第 1 层(first_layer)上,然后将其 blit 到第 0 层(背景)之上。第一次混合应该可以使用通常的 alpha 混合参数:

glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

但是,glBlendFunc 已经过时了。如今,桌面和移动设备上的 OpenGL 都支持着色器,可以更轻松地实现您想要的效果。

关于c++ - 将 OpenGL 中的 3 层与背景混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11480923/

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