gpt4 book ai didi

rendering - p5 中 createGraphics() 缓冲区上的 tint()

转载 作者:行者123 更新时间:2023-12-05 05:20:55 30 4
gpt4 key购买 nike

我试图在 p5 中更改屏幕外图形缓冲区的不透明度,但无法弄清楚。

考虑:

var pg = createGraphics(...)
var image = loadImage(...)

tint(255, 50)
image(image, 0, 0) <----- this works
image(pg, 0, 0) <----- but this doesn't

working example here

tint(255, x) 应该保持颜色不变并将不透明度设置为 x,但似乎没有效果。不过,在图像上效果很好……我错过了什么?

最佳答案

更新:似乎在 P5 中(虽然不在 Processing 中),tint() 确实实际上只对 p5.Image 对象。因此,解决方法是使用 get() 从屏幕外图形缓冲区创建一个 p5.Image 从缓冲区(返回图像)中获取像素。令人困惑的是,get() 的引用文章也使用了图片,让人很难理解实际发生了什么。

一个更新的(有效的)例子是 here .

重申一下,这样做完全值得的原因是只将复杂的形状(如文本)渲染到缓冲区一次,然后根据需要绘制/操作该缓冲区。这大大降低了 CPU 负载并加快了草图的速度。

(解决这个问题的功劳归功于 Ian )

关于rendering - p5 中 createGraphics() 缓冲区上的 tint(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44034307/

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