在iOS上编程写Shader和Javascript学习图形渲染

552 阅读2分钟

我们开发了一款能够在iOS上编写Shader和Javascript的App。你能用他来编写GLSL,HLSL,Metal,甚至是Unity的ShaderLab。即便你并不了解Javascript,他对你而言仍然能是一款便携的Shader开发IDE,但引入Javascript能让你制作出更加复杂有趣的CG特效。

在正式介绍这款应用之前,我需要提前说明这是一款收费软件,他的订阅费用是10元/月,或63元/年,并提供14天的免费试用期。当然,在不收取费用的情况下,你仍然能够下载使用这款应用,但不能阅读或编辑任何代码。

这个App命名为CGProto,他是一款节点式的代码编辑器。和Unity Shader Graph不同的是,CGProto中的每一个Shader节点代表一组完整的顶点和片段(像素)着色器,你需要通过编码完成特效。节点图的作用是组织你的渲染流程以及数据转换。你可以直接把一个Javascript的数组输出连接到Shader的float4x4矩阵,int数组,float2向量或是其他任意基础数据类型的uniform数据上,而不需要关心GPU buffer的创建,管理和数据填充。你也可以在Javascript中通过代码创建模型和纹理,并连接的Shader的mesh或者texture uniform,或是将Shader的渲染结果图片传到Javascript去进行一些无法并行化计算的操作。

当你完成一个Shader或Javascript的编写并点击运行后,CGProto会自动分析你的代码,提取出代码的输入和输出,并映射节点上。你只需要关注于用于实现核心算法的代码部分,从冗长的窗口管理,图形API调用,资源调度中解放,快速实现图形算法原型。

0.gif

1.gif

我们提供了一些示例程序用于帮助你快速掌握CGProto的使用,并会在后续迭代中加入更多的例子。

examples.png

你可以通过观看我们制作的宣传视频来对这款应用有一个更具体的了解 www.bilibili.com/video/BV1j3…

如果你对我们的应用感兴趣,可以在Appstore中下载,或是关注我们的频道,如果你对这款应用有任何疑问或建议,也可以用过邮件联系我们