编程教学在艺术教育中的实践研究

2019-07-23 09:15陈天翼
艺术科技 2019年1期
关键词:编程工具创作

陈天翼

摘 要:在艺术院校的教学中,引入工程学科课程是非常有意义的工作。编程教育是艺术学生工程类教育中比较常见的内容,互动艺术及装置的作品很大程度上依赖于编程和可实现的能力。通过教学实践,运用合适的教学工具及良好的课程设计,可以帮助艺术学生更好地学习编程课程,解放他们的思想,提高他们作品的交互性。

关键词:图形编程;艺术教育

计算机作为工具出现后,人们的生活和工作方式发生了很大改变。进入智能手机时代后,大家适应了把它作为感官的延伸。云、大数据及人工智能等技术的发展让我们更对未来数字生活产生了极大的向往。

如今的艺术设计创作几乎已离不开计算机软硬件的支持,图形图像工具软件、矢量绘图创作软件等计算机工具的应用,极大发挥了艺术家和设计师的想象力,提高了作品的质量和产生作品的速度。因而随着计算机的普及,艺术教育也已大量结合了信息化教育的内容。

近年来,一些艺术家和设计师渐渐不再满足于艺术作品的静态表达,越来越多的互动艺术作品在计算机技术的帮助下得到了實现。互动艺术作品可以让参观者参与到作品的呈现中去。由于不同参观者的介入,作品呈现出更多变化的形式,从而让参观者更多感受到艺术家的思想表达。

由于艺术与工程的跨学科,很多复杂的互动艺术作品从设计到实现,既需要艺术家的创意,也需要工程师的支持才能完成。因此完整的互动艺术作品的实现通常需要多人协作。为了更好地实现自己的创意,越来越多的互动艺术家都发现,了解和学习工程技术,可以更好地与工程师沟通,甚至自己独立即可完成创作。

在艺术院校的教学中,引入工程学科课程是非常有意义的工作。当前的艺术类学生自中学以来在理科方向的训练较少,如何在短期内让他们能理解和掌握基本的工程知识,并能运用到自己的创作中去,对教学是很大的挑战。

编程教育是现在针对艺术学生的工程类教育中比较常见的内容,互动艺术及装置的作品很大程度上依赖于编程和可实现的能力。通过教学实践,运用合适的教学工具及良好的课程设计,可以帮助艺术学生更好地学习编程课程,解放他们的思想,提高他们作品的交互性。

1 艺术编程教育

程序开发离不开各种语言,为了掌握一门计算机语言,需要花费大量的时间去理解、练习和掌握其语法和规则,以及复杂的调试方法。

无论C/C++、Java等高级计算机语言,或Python、Javascript等脚本类语言,在教学的过程中,老师需要讲解开发基础知识、语法规则和应用技巧。由于美院课程体系及学习过程和一般综合性院校不同,需要在两三周内完成其他院校跨度为一学期的课程内容,加之大部分艺术学生没有很好的理科学习背景,长期接受艺科训练,对计算机程序语言有着较多畏惧的心理,因此在编程课程学习过程中表规出来的障碍远大于理工科学生。

对于大部分艺术类学生而言,他们更多把编程当作创作工具使用,而并不需要专业程序员一样精通开发语言。因此在短时间的教学过程中,可以弱化开发语言的语法规则技巧,注重让学生了解基本的概念,理解程序开发的本质,熟练运用现有工具及资源,以便逐步在后续其他课程的创意创作中结合使用开发工具,从而不断提高编程开发的能力。

2 教学过程中的应用

虽然艺术类学生没有学习过程序开发,但他们学习了使用Photoshop绘制出炫彩的图像,用Maya设计出优美的造型,用Premiere创作出恢宏的影片,而这些都离不开对操作流程的理解记忆和应用。他们通过学习易于操作的工具软件的应用,对于程序化操作已经非常适应。从广义来说,这些也需要对程序理念的支持。因而通过选择合适的编程教学工具,简化程序开发的流程,可以实现让学生在掌握编程原理的基础上创作出优秀的交互作品,既提高了学生对编程学习的兴趣,同时也更好地对艺术创作形式有更多的理解,更进一步可以降低对软件开发的畏惧心理,掌握一定的编程基本技能,为他们未来的工作和学习打下很好的基础。

在教学过程中,使用了可视化图形开发工具和Processing两种不同的艺术编程工具作为开发环境指导学生学习编程应用。

目前流行的可视化图形开发工具有两种,一种是以LabView为代表的流程框图式的图形化编程工具,典型应用是LEGO Mindstorms EV3编程环境和Google的Project Bloks编程环境,另一种是文字模块拼图式的编程工具,如Google Blockly和MIT的Scratch开发工具。它们共同的特点是编程过程如同积木拼图,无须再记忆语句,不必关注语法是否正确,只需要从菜单中选择模块,连接或拼接到一起即可实现程序功能。这对于只需掌握入门编程能力的学生来说,是快速学习的极好工具。

在实际教学中,结合学生学习的专业内容,让学生有更大的创作选择,使用Mind+(0.96c版)为开发工具,学习Arduino智能硬件知识。Mind+是一款与LabView编程环境相似的开发工具,学生只需要从菜单中选择模块,设定参数,连接Arduino,即可实现创意装置。如图1是Mind+的编程环境。

图2是中国美术学院上海设计学院同学在课程中设计并结合使用Mind+软件编程自行实现的Arduino装置,该装置作品有7个带有不同形状的章(圆形的公章、方形的私人章、企业章、椭圆形的票务章等),利用电磁铁不间断地盖在各种不同材质的A4纸上,而这些纸上保留有不同的文件信息。震耳欲聋的盖章声与音乐节奏结合,试图展现持章者的轻蔑和求章者的卑微。

课程中使用可视化图形编程环境的教学,可以让学生从零基础迅速导入编程理念,掌握快速编程的能力,并在课程中把更多时间精力放在创作上,同时又锻炼了编程能力。

由于可视化图形编程环境在艺术编程中的可选择性较少,在其他课程中,主要采用了Processing作为开发工具进行教学。Processing是由美国麻省理工学院媒体实验室(M.I.T. Media Laboratory)的美学与运算小组(Aesthetics & Computation Group)两位成员Casey Reas与Ben Fry为面向艺术家和设计师而开发的程序语言。Processing现已被国际上众多著名艺术学院作为必修编程语言,现也已在中国美术学院部分专业被设定为必修专业课程。

Processing通过对Java语言进行封装,提供了大量易于使用的绘图和工具库,为学习者大大缩短了语言的学习曲线。由于Processing的开源性,在社区中受到极大欢迎,其框架模块现已被移植到JavaScript语言(被命名为p5.js)和Python语言(被命名为py.processing)。由于不同专业侧重点不同,有些专业需要实现与Arduino或Kinect等设备交互,有些专业需要在网站发布作品,因此在授课时分别使用了Java版、p5.js和Python版Processing进行教学,均取得了很好的教学效果。大部分同学在后续艺术设计课程中,能自发通过编程实现自己的创意,取得了意想不到的效果。

图3是中国美术学院上海设计学院同学在编程课程中完成的交互作品。

3 展望

国内外各艺术院校都已开始把艺术编程教育安排在专业学习课程中。中国美术学院创新设计学院突破了以往的艺术类课程教学模式,把计算机编程作为数字基础课程的内容之一,参考工科类院校的教学方式,贯穿整个学年教学,并结合各阶段艺术类课程教学的内容,培养学生从艺术和逻辑两个不同的角度观察思考和实践。

对艺术专业学生进行编程教育,已初步展示了艺术学生跨界后的多元创作能力。通过更全面地设计课程,引导学生综合学习科学和艺术专业知识,可以更好地让艺术生进行科融合,培养出更多符合时代发展的复合型艺术家和设计师。

参考文献:

[1] 薄一航.用另一种方式去绘画  艺术类学生初触计算机编程的教学探索[J].北京电影学院学报,2017(02):154-160.

[2] 李学明.程序设计对于数字媒体艺术学科尤其重要[J].艺术教育,2018(04):10.

猜你喜欢
编程工具创作
编程,是一种态度
波比的工具
波比的工具
编程小能手
纺织机上诞生的编程
《一墙之隔》创作谈
“巧用”工具
创作随笔