我正在尝试渲染一个方形边框(可变厚度,因此线条不起作用)。我在想4个四边形可以做到这一点(所有相同的尺寸,只为每一侧旋转和翻译)。然后我想,2个四边形应该这样做 - 画一个然后在中间画一个小的。但是,我实际上是试图用第二个在盒子里创建一个“洞”。我想我可以应用一些混合功能来做我想要的。
我不太明白会发生什么。
我理解了一些因素,但我不明白源和目的地的定义。 src是该位置的现有像素还是我打算放在那里的像素?目标似乎是直观的调用缓冲区,因为这最终我计划放置像素。
如果是这种情况,当我放下第一个盒子时,我会破坏像素数据,无论我如何尝试混合,我都会失败。它是否正确?这仍然让我无法理解参数意味着什么(sfactor,dfactor)如果我将GL_DST内容放在src和dst中会发生什么?对这些如何运作有一个很好的解释吗?我找到了
http://www.opengl.org/sdk/docs/man/xhtml/glBlendEquation.xml
http://www.andersriggelsen.dk/glblendfunc.php
但是没有很好的例子说明如何将这些因素实际应用于像素数据。
答案 0 :(得分:1)
目标是视频缓冲区(帧缓冲区)的像素数据,源是要混合的像素数据。
它在文中说:
framebuffer(''destination''color)
新像素(''来源''颜色)