3D计算机动画的制作,是一个非常耗时、且有很高的技术要求的工作。即使是单个动画场景,也需要经过包括建模、装配和动画制作等复杂工序。

尽管3D动画技术已经发展了几十年,由于这样的复杂性,往往只有娴熟的专业人员才可以完成3D动画的制作。

那么,是否可以建造一种工具,让每个人都可以进行3D动画的制作?

谷歌尝试着制作这样一种工具。他们的主要想法来源于艺术家的“casual mode”(译:休闲模式),这往往也是灵感迸发的时刻。比如,吉他手的即兴创作,演员在排练时随机加入的台词或动作,油画家速写下的画面。在这些场景中,艺术家们可以非常迅速地完整展现他们的想法,同时不惧怕犯错。这里的每个创造过程毫不费力,但却探索了新的可能性。

Monster Mash可以帮助任何人找到3D动画制作的“casual mode”。使用这个工具,用户随手勾勒出图案,Monster Mash可以自动将图案转换为3D模型。

同时,用户可以通过拖拽的方式,让3D模型动起来,形成3D动画。

这个工具的代码是开源的,地址:
https://github.com/google/monster-mash。

Monster Mash的实现,主要基于以下现象——多数3D模型都可以被描述为一系列有顺序的2D图像的重叠。这一想法,可以让3D动画的过程变得非常简单:用户勾画出2D平面轮廓,算法通过拼接、膨胀这些2D轮廓来构建3D模型,通过变形系统让模型动起来。

2D轮廓绘制

比如,用户希望画出一个3D的大象。第一步,画出大象的身体的轮廓,如图(a)。第二步,添加大象的其他部分,如腿,图(b)。这些部分的轮廓往往不会闭合,这意味告诉系统,重叠的部分需要平滑的连接和过渡,比如大腿根部没有闭合,因而身体和大腿需要过渡。

除此之外,用户可以绘制出被遮挡住的部分,如图(c)中远侧的腿,也可以指示出对称的遮挡部分,如图(d)。这些都可以通过简单的操作(右键、双击)告知软件。

通过这样的绘画,我们会得到一系列有顺序的2D区域。

拼接和膨胀

那么,这些2D区域是如何变成3D模型的呢?

以大象为例。首先,对于每个未闭合2D区域,系统找到能让其闭合的线段,如下图(a)红色线段,在此基础上,系统会认知到,这两个区域(腿和身体)需要被连接起来。因而,系统会将身体正面(面对我们的一面)沿着线段切开,将腿连接到切开的部分,下图(b)给出了左视图。

之后,系统会在连接处建立一个3D平面,这一建模基于泊松方程(图像平滑融合的常用方法),如图(c)。通过这个过程,我们就可以得到图(d)的大象,长得很奇怪的“扁平”大象。

为了解决“扁平”的问题,接下来会使用到一个多层变形系统,把3D建模的一些部分分开。这一过程是基于经典的as-rigid-as-possible (ARAP)方法。这一方法的本质,是求解优化问题,在保持局部细节不变的前提下,将身体的各个部分以前后方向来开,防止3D模型重叠。

加入动画

在3D模型的基础上,用户可以通过建立控制点,让3D模型动起来。在加入动画的过程中,变形系统会在保证模型局部不变的情况下,平滑、缓和地改变模型的大形态。

在这个过程中,控制点可以是很多个,每个点针对一个(身体)部件,因而可以实现较为复杂的动作,比如走路、踢腿等等。

看看这些奇形怪状的模型,想不想试试呢?测试版网站:http://monstermash.zone

参考文献:

  • 开源代码:https://github.com/google/monster-mash
  • Cassidy Curtis and David Salesin, "Monster Mash: A Sketch-Based Tool for Casual 3D Modeling and Animation," https://ai.googleblog.com/2021/04/monster-mash-sketch-based-tool-for.html, accessed on Apr. 18, 2021.
  • Dvorožňák M, et al., "Monster mash: a single-view approach to casual 3D modeling and animation," ACM Transactions on Graphics (TOG), vol. 39, no. 6, pp. 1-12, Nov. 2020.

分享计算机前沿动态及干货。喜欢的话,记得点赞、收藏和关注哟。欢迎留言及评论。

3D动画制作太复杂?谷歌推出MonsterMash,绘画小白都能用相关推荐

  1. 最全的3D动画软件介绍来了!良心总结9款3D动画制作必备软件

    现在,市面上流行着的3D动画软件如此之多,以至于很难敲定到底哪一款更适合自己或自己的团队.本篇文章带来了一些热门的.被视为行业标准的3D动画软件的介绍,帮助您更好地做出选择. 不仅如此,您还能从文章中 ...

  2. 3D动画制作软件有哪些?怎么使用

    常见的 3D 动画制作软件有: Autodesk Maya Blender 3ds Max Cinema 4D Houdini Lightwave 3D 使用方法因软件不同而异,建议您根据自己的需求选 ...

  3. Nukeygara Akeytsu(3D动画制作软件)官方正式版V20.3.5 | 动画制作软件哪个好用

    Nukeygara Akeytsu 2020 是一款非常优秀且设计新颖功能完整的高效专业3D动画制作软件,旨在重新考虑"针对艺术家而非工程师"的角色装配和动画制作过程,通过全屏视口 ...

  4. 3D动画制作创意体现

    首先,电视画面信息要清晰.准确.简洁.集中.动画制作公司的概念不同于一般的动画感,动画是一门综合性的艺术,它是绘画.卡通.电影.数字媒体.摄影.音乐.文学等艺术表现形式的集合.从不同的角度看,聚田文化 ...

  5. MATLAB 3D 动画制作(一)- 3D 图形设计

    MATLAB 3D 动画制作(一)- 3D 图形设计  MATLAB 3D Animation -- 3D object design  Auther: Sonictl Northeastern Un ...

  6. 【OpenGL】“我叫MT”纯手工3D动画制作之1——基础介绍

    最近在家研习面经,温习基础,索性花些时间将本科期间完成的一些学习之作整理出来,分享之余顺便水点经验 其实这个事情起源于一门"计算机图形与动画(Computer Graphics & ...

  7. 3dmax和python做3d动画_Autodesk 3ds Max 2015(3D动画制作3dsmax2015)官方中文版下载 - 下载吧...

    3dsmax2015官方中文版(3dsmax2015)能够为用户提供强大且即购即用的专业级3D动画创建功能,3dsmax2015具有用于3D建模.动画.模拟和渲染的创意工具集,可帮助游戏.电影和运动图 ...

  8. AMEsim 3D动画制作流程

    准备工作:首先确保所建模型可以正常仿真,并有仿真结果显示(后面动画对象的驱动需要使用该数据). 新建动画:可以单击动画图标,或单击向下箭头,这两种情况下,为当前系统创建一个新的动画. 注意: 一旦你创 ...

  9. 如何用python制作三维动画_用Python制作3D动画

    很多小伙伴可能不知道,在3D动画甚至电影制作的过程中,Python也在其中扮演了很重要的角色呢! 比如皮克斯的动画片一般使用Maya软件制作,并且流程中使用到了大量的Maya Python插件. 另外 ...

  10. 3d max用不同目标做关键帧_3D动画制作流程大解析

    普通的二维动画发展至今已有许久,基本上所有的画面全靠动画师一张张画出来,小编在这里也就不再多说了. 而现如今,3d动画已经有了独属于自己的地位.业界大牛如皮克斯.迪士尼等公司,已经做出了许多非常优秀的 ...

最新文章

  1. JXJJOI2018_T1_market
  2. R语言临床预测模型的评价指标与验证指标实战:净重新分类指数NRI(Net Reclassification Index, NRI)
  3. 开通博客的第一篇随笔~
  4. linux文件层级、目录、文件基本操作介绍
  5. linux降内核版本_ubuntu16.04降级内核版本至3.13.0-85
  6. MySQL_运算符与函数
  7. python中0xff_强悍的Python读取大文件的解决方案
  8. sudo su 和sudo -s的区别
  9. Python深度学习:Python数据处理及可视化(读书笔记)
  10. 简单的酒店管理系统(纯属练手)
  11. 基于Spark的学生成绩分析系统
  12. python中的index函数
  13. Pytorch教程[03]transforms
  14. Eclipse中如何创建文件夹管理多个项目
  15. SylixOS学习一—— SylixOS启程之旅 虚拟机配置
  16. 【论文笔记】Proofs-of-delay and randomness beacons in Ethereum-2017IEEE SB Workshop
  17. 大学计算机第四讲答案,大学职业生涯规划课第四讲答案
  18. 链乔教育在线|数字化工作管理工具—Notion(四):同步块(Synced block)
  19. 【渝粤题库】陕西师范大学500010 量子力学 作业(专升本)
  20. Linux内存管理之UMA模型和NUMA模型

热门文章

  1. 软件工程实验微信小程序
  2. 手机内置摄像头接线图解_坚果R2 手机官方壁纸
  3. 商机无限!在政府门户网站升级改造中掘金
  4. 基于RouteOS的NAT Radius网络计费管理实验
  5. 锂电池常规认证-各国认证大全
  6. 两位共阳极数码管c语言,89c51驱动两位共阳极数码管倒计时显示程序,60秒到30秒能实现,但从30秒到90秒不能实现,请高手帮忙!...
  7. 超级授权专业版 SuperSU Pro v2.68 简体中文版
  8. PLL-Hyd-PEG-COOH/NH2/NHS/OH/MAL/SH/N3 聚赖氨酸-腙键-聚乙二醇-官能团的制备
  9. C#编程,获取当前时间为一年的第几周的一种方法。
  10. 分享个自己Python爬虫时的浏览器标识库