微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在处理 3 中将代码实现为着色器

如何解决在处理 3 中将代码实现为着色器

我最近在处理 3 中创建了一个简单的程序,将每个像素设置为其位置作为颜色。

void setup()
{
  size(960,960);
}

void draw()
{
  for(int j = 0;j < height;j++)
  {
    for(int i = 0;i < width;i++)
    {
      set(i,j,color(map(i,width,255),map(j,height,0));
    }
  }
}

我如何将其实现为着色器?

注意:我已经在网上看过了,并没有真正找到答案。

解决方法

如果你还不是很熟悉着色器,你应该先看看这个页面:https://processing.org/tutorials/pshader/

您可能想要的是绘制一个覆盖整个屏幕的矩形,并使用内置的 GLSL 变量 X = np.array(list(df['mfcc']),dtype=np.float) X0 = np.zeros((50000,273)) for index,value in enumerate(df['attr1']): X0[index][0] = value X = np.hstack((X,X0)) ,它为您提供 gl_FragCoord 中当前像素的索引和x 很像你的循环变量 yi。请参阅 https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/gl_FragCoord.xhtml 以获取完整文档

还要记住,片段着色器输出的值在 0 到 1 的范围内,而不是 0 到 255。所以最后相关的着色器代码可能看起来像:

j

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。