Leo Villareal:我创建Cosmic Bloom的过程
注:本文翻译与发布已获得授权
以下为正文
和 Cosmic Reef 一样,生成 Cosmic Bloom 的代码也是使用 three. js 这个javascript框架编写的。我的工作流程包括构建一个创作界面,它允许我快速向代码中添加对象并设置它们的参数。该界面不在最终部署的代码中,但是它允许我通过更改值和保存我喜欢的组合来探索参数空间。我可以在代码运行时实时调整参数,这样我就可以立即看到变化的值是如何改变输出视觉的。「译者按:源代码包含了一个创作界面工具,让艺术家更方便地创作」
构成宇宙爆发的基本单位是几何图形。
最初,我在创作界面的几何图形的下拉列表中选择基本几何图形,这个下拉列表工具包括圆、球、锥、柱面、环面、四面体、二十面体、八面体和十二面体。这些是内置在 three. js 中的几何图形,删除了穿过几何图形表面的边线,以便几何图形的轮廓显示为多面体而不是三角形线框。基本几何图形的半径、复杂度(分支类别数)、沿每个轴的缩放比例、位置和旋转都可以在创作工具中单独设置。点、线和填充色可以应用到每个基本几何图形,并且可以设置每个基本图形的颜色、大小和不透明度。
旋转、缩放和顶点位置的动态变换功能也可以使用。我们还为点,线条和填充色使用了自定义的着色器方案。每个着色器实现全套嵌套变换和嵌套变形并作为一个转换矩阵链。「译者按:此处译者理解为迭代嵌套变形和转换能力,犹如我们看到不断盛开的图案效果」
基本几何图形可以嵌套在大框架几何图形中,在大框架几何图形的每个顶点 放置一个基本几何图形。系统几何形状从圆形、球形、四面体、二十面体、八面体和十二面体中选择。系统的半径及其在 x、 y 和 z 方向的旋转可以动。每个完整的系统被写入一个帧缓冲区(显存),并应用一系列后处理效果。这些包括模糊,轨迹,帧混合,和开花。「(译者按:这里的system是构成一个作品的一个模块,几个模块组成了成品的结构,带来立体感的层在后面文字也会提到」
我通过跟踪和保存参数值来组织我的工作,我将参数值作为 json 格式记录在数据库中。这使我能够重现到我喜欢的、用于研究、分析和进一步开发的那些组合中。随着工作灵感的进展,我确定了形式、图案、配色方案和效果,它们将构成这些作品的核心视觉关键词。我使用一个标签系统将参数组合分类为背景、中心和前景元素。这些标签会成为最终作品的种子。
在这个过程的早期,我尽可能改变参数来探索不同组合的可能性。用相当多的设置相互作用,以确定最终的结果,我经常发现计划外的效果,这是一个非常即兴的过程。多年来,我在灯光雕塑的工作中培养了处理随机结果的习惯。对于这些随机结果的雕塑,我经常把他们录制成视频,然后再混合和随机化后生成动态序列。对于数字 NFT 项目,我总是使用生成结果的实时代码,而不是视频,所以我做出的所有创造性选择都必须反映到代码中。
我没有让代码中的参数完全随机化,而是将它们设置在一定范围内随机,这个范围由代码引入变量运行时出现了我需要的独特特征时确定。下面的示例显示了单个系统的输出,其中参数在我选择的范围内随机化。
要生成输出,需要将多个系统联动在一起。代码根据我分配给它们的标签引用参数组合,并在我设置的参数范围内随机组合背景、中心和前景元素来创建输出。我在以前的许多艺术作品中都使用了分层构图,通常是在 TouchDesigner (一个可视化编程的开发平台)中完成的,所以我对这种分层创作的过程很熟悉。其中的挑战是控制可能结果的同时创建规则约束,以始终如一地获得美观的输出。我们定期运行一个生成数千次迭代输出的脚本。这给了我一个它过量输出的感觉,帮助提示我是否需要对算法进行更改。我可以看到是否有太多类似的迭代输出,是否有一些不能很好地渲染,或者是否整个集合感觉是否有足够主题凝聚力。
每次代码运行以生成迭代时,我们可以将该迭代的特定参数值保存为 JSON 数据。后期将数据Jason加载到代码中,就可以精确地重现某次迭代过程。在最后的成品中,我们将上传单一最终版本的代码,这个版本去掉了创作界面产生的代码和创作阶段个人选择的输出结果相关的JSON文件。
开发中的 Cosmic Bloom 的早期输出
某种意义上这是一个混合的过程: 生成艺术的创意和创作手法,加上个人策划的步骤。最终结果仍然是活的代码,不是只有重复或循环。生成铸造的代码将托管在IPFS上。这与 Art Blocks 不同,他们代码会上传到区块链。每个铸造作品的 JSON 文件也将存储在 IPFS 中。相对于链上存储,IPFS 有许多优点,但也有一些小缺点。IPFS 对于这个项目的主要优势是它允许比区块链存储更大的生成代码块。只要不出问题,IPFS 存储是不可变并无限期可用的。Pins (IPFS的永久保存文件)不仅可以由项目团队维护,还可以由任何对保存工作感兴趣的人维护。最后,使用 IPFS 存储允许团队对项目系统进行调整维护,以确保在未来的市场、渲染平台和浏览器上正常工作。「译者按:艺术家选择了自己合适正确的技术方案,复杂效果带来复杂巨量的代码需要大存储,以及灯光艺术家对展现效果的要求甚至考虑到了未来展示设备的扩展性」
对于 Cosmic Bloom,我很兴奋,因为我将为生成过程添加最后一个管理步骤。我将检查代码生成的输出,并手动选择要包含的输出结果。
我已经与代码“合作”了20多年,我的理念是作品应该由艺术家来说了算。所以,Cosmic Bloom将会是一场盲选铸造。没有买家会知道他们在铸造之前收到什么作品,但他们会知道我亲自审查和选择了每一个铸造输出,每个作品将在创建之后立即显示。
2022年10月,伦敦,石巢,Cosmic Bloom预览