问题标签 [alphablending]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
804 浏览

opengl - 使用 OpenGL 的每个组件的 alpha 通道?

是否可以使用 OpenGL 对每个组件使用一个 alpha 通道(一个用于红色,一个用于绿色,一个用于蓝色)进行混合?如果没有,有哪些可能的解决方法?

0 投票
0 回答
385 浏览

linux - Alpha 混合在 Linux 上很慢

我们正在 Windows 和 Linux 上(在相同的硬件上)开发一个 SWT/RCP(Eclipse 3.5)应用程序。该应用程序是一个 GIS 应用程序,它显示了几个使用 alpha 混合渲染的分层地图(PNG 图像)。

在 Windows 上性能相当不错,但在 Linux 上性能很差。

那是Linux(GTK/KDE)的问题吗?或者是否有任何解决方法可以提高 Linux 的性能?

0 投票
0 回答
343 浏览

gtk - Windows 上的 GTK#:如何让桌面 alpha 混合工作?

主题。我找到了这个并翻译成下面的代码。但它只显示一个没有透明度的深蓝色矩​​形。

0 投票
1 回答
2368 浏览

opengl-es - 将透明纹理与深度混合

我正在尝试混合具有透明区域的纹理:

除非我添加 glDisable(GL_DEPTH_TEST),否则顶部纹理的透明部分会覆盖它们下方的所有内容(而不是混合)。有没有办法在不禁用深度的情况下做到这一点?我尝试了各种混合功能,但没有任何帮助。

0 投票
2 回答
1847 浏览

delphi - 如何使表单变成完全透明的 32 位 alpha?

我用来创建一个完全透明的表单,但是 png 和 32 位图像不会融合到表单中,并且图像无法正确显示其透明度。我在这里得到了这个概念,但我不能把按钮放在上面。除了图像背景之外,所有的下巴都是不可见的。顺便说一下我的编译器是delphi7和D2009

0 投票
2 回答
875 浏览

opengl - Opengl:仅使用纹理为彩色对象提供Alpha通道

我是 OpenGL 的新手,我不知道如何做到这一点:
我想渲染一个字母并能够改变它的颜色,所以我在透明背景上有一个带有字母的纹理。我设法使用以下代码渲染它:

但这会将字母呈现为黑色,因为它在纹理上。如何使用设置的颜色渲染它glColor4f

0 投票
3 回答
3024 浏览

c - 执行 Alpha 混合的正确方法是什么?(C)

我正在编写一个非常简单的图形库,并且正在尝试弄清楚如何进行 alpha 混合。我尝试了几次,但我的结果并不令人满意。根据维基百科,我应该这样做:

值 = (1-alpha) 值0 + alpha值 1

然而,这根本不起作用。也许我做错了什么?

我包含的代码绘制了一张彩色图片(即“接近”功能),然后尝试在 (100,100) 处绘制一个部分透明的框。但是,不是白色半透明框,而是图像看起来很奇怪的失真(我会尝试将它们放在帖子的底部)。有什么建议么?这是我的代码:

抱歉,因为我是新用户,所以无法包含输出。但是,这里是链接:

原图

带有“透明”框的图片

0 投票
1 回答
915 浏览

android - Android 中的动态位图编辑

我正在为游戏创建场景。

有一个背景是位图和播放器对象。我想让玩家对象在他们在棋盘上移动时能够以透明的颜色“吃掉”背景。基本上,如果一个对象位于某个点,则围绕该对象的一个​​圆圈会从位图中以 alpha 表示。位图的编辑需要保持。

实现这一目标的最佳方法是什么?我正在考虑使用 Bitmap.setPixel 修改位图的像素,但这可能会非常昂贵。

0 投票
4 回答
5801 浏览

opengl - 在 OpenGL 中绘制纹理,同时忽略其 Alpha 通道

我有一个纹理加载到内存中,它是具有各种 alpha 值的 RGBA 格式。

图像加载如下:

我想知道如何绘制此纹理,以便将图像中的 alpha 通道视为全 1,并且将纹理绘制为 RGB 图像。

考虑基本图像:

http://www.ldeo.columbia.edu/~jcoplan/alpha/base.png

此图像是从 0 到 255 alpha 的渐变,并且整个 RGB 值为 255,0,0

但是,如果我在禁用混合的情况下绘制它,我会得到一个看起来像这样的图像:www.ldeo.columbia.edu/~jcoplan/alpha/no_alpha.png

当我真正想要的是一个看起来像这样的图像时:www.ldeo.columbia.edu/~jcoplan/alpha/correct.png

我真的很感激一些建议让它完全忽略 alpha 通道。请注意,我最初不能将图像作为 RGB 加载,因为我在其他点确实需要 alpha 通道。

编辑:我尝试使用 GL_COMBINE 来解决我的问题:

但仍然没有运气,它仍然将黑色绘制为红色。

0 投票
2 回答
203 浏览

xna - 交叉区域颜色

我画了两个相交的半透明圆圈。我发现交叉区域的颜色比其他区域更深。有没有办法让整个形状成为一种半透明的颜色(一个区域的颜色不应该比其他区域更深)?

是否可以向我发送任何示例代码来解决问题?

现在在draw方法中,我正在使用以下代码: