ProcessingJoy —— Processing 与 OpenGL 的交互入门【JAVA】【GLSL】

举报
ShaderJoy 发表于 2021/11/19 00:55:52 2021/11/19
5.2k+ 0 0
【摘要】 效果图       代码与注释 通过以下这段代码和注释,可以基本了解,平时我们所使用的 Processing 语法为我们节约了大量的数据准备操作:比如顶点的坐标、顶点的卷绕索引、顶点的颜色、纹理的 uv 坐标等相关 buffer 的构造,以及如何开启相关顶点属性并传递给底层的 GL。 &nb...

效果图

代码与注释

通过以下这段代码和注释,可以基本了解,平时我们所使用的 Processing 语法为我们节约了大量的数据准备操作:比如顶点的坐标、顶点的卷绕索引、顶点的颜色、纹理的 uv 坐标等相关 buffer 的构造,以及如何开启相关顶点属性并传递给底层的 GL。


      import java.nio.ByteBuffer;
      import java.nio.ByteOrder;
      import java.nio.FloatBuffer;
      import java.nio.IntBuffer;
      import com.jogamp.opengl.GL;
      import com.jogamp.opengl.GL2ES2;
      // https://github.com/processing/processing/wiki/Advanced-OpenGL
      PShader shader;
      float a;
      float[] positions;
      float [] texcoords;
      // float[] colors; ///< 由于使用了纹理,所以顶点颜色这部分注释了,但是功能代码保留着
      int[] indices;
      /// @note 重要 !!!
      // 在我们将数据传递给OpenGL之前,我们需要将其转换为它能够理解的形式。
      // Java和本机系统可能不会以相同的顺序存储它们的字节,因此我们使用一组特殊的缓冲区类并创建一个足够大的 ByteBuffer来保存我们的数据,
      // 并告诉它使用本机字节顺序存储它的数据。然后我们将它转​​
  
 

文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。

原文链接:panda1234lee.blog.csdn.net/article/details/112684279

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。