(映维网 2019年04月20日)3D越来越受欢迎,并对每个人的生活都产生了影响。从建筑到娱乐,许多不同的领域都有利用3D技术。例如詹姆斯·卡梅隆的《阿凡达》,这部电影给我们带来了前所未有的世界,并且颠覆了3D产业。

VR和AR游戏显然需要利用3D设计,例如美术会通过Blender构建3D对象。为了进一步探究有关3D建模的更多信息,荷兰游戏开发商VR-Innovations的两位美术Joel Pellini和Lajos de Graaf向我们分享了自己的看法:

1. 你们是从什么时候开始3D建模的呢?

Joel:我是在学校开始进行3D建模。高中毕业后,我参加了媒体设计课程。我的第一年是学习2D设计。结束后,我选择专注于3D,因为我认为它更为有趣。对于我余下的职业生涯,我无法想象自己会再次涉足2D设计。另外,我的3D设计水平要高于2D。

Lajos:我同样是从学校开始。我已经完成了两门ICT课程。两者都不是非常有趣,所以我决定学习游戏设计。我一开始希望成为一名程序员,但后来我转向3D建模。设计游戏似乎比编程游戏更为有趣。

2. 遇到过什么挑战,又是如何克服它们的呢?

Lajos:对我来说,最大的挑战是放弃数字。在加入VR-Innovations并开始使用Blender之前,我的模型一直都非常精确。每个设计都必须精确到毫米。在学习了如何使用Blender后,我放弃了这种方法。一方面,因为Blender默认情况下不会显示这方面的信息,另一方面是因为结果没有什么差异。

Joel:我面临的最大挑战是掌握Blender。在开始时,由于键盘快捷键的数量,Blender可能会让人不堪重负。每个函数都有自己的快捷方式。Blender有一个陡峭的学习曲线。3D建模师需要具备空间感知能力。你需要通过大量练习,并查看参考资料来克服这个问题。同时需要向其他设计师学习。

3. 你们是如何开始一个新的项目的呢?

Joel:当我拿到一个新的任务或项目时,我首先会看一下参考资料,然后用3D制作一个粗糙的,低多边形草图。

低多边形是指使用低多边形数。多边形是三角形。大多数3D建模程序和游戏引擎都使用多边形。三条线之间的连接称为顶点。降低多边形数量可提高游戏性能。

我们测试游戏引擎中的低多边形模型,以及游戏其余部分的情景。如果可行,我会使用这个草图作为最终模型的基础。根据项目,我会制作模型的高多边形版本。建模后,我会打开文件并添加纹理。

UV展开是“展开”对象的过程。这个操作可以创建适合3D对象的2D纹理。如果对象需要精确的纹理,展开则是必要的步骤。我们在Blender中打开对象,然后利用一个名为Substance Painter的程序进行纹理处理,给予它们完整的外观。

Lajos:我的工作流程类似于Joel。在设计任何东西之前我都会首先看一下参考资料。大多数3D美术都采用这种方法。我们与团队一起讨论游戏的外观和感觉。然后我会开始设计模型,打开它并添加纹理。

4. 设计VR/AR游戏与PC游戏之间有什么区别?

Joel: 我负责过很多移动VR游戏的工作。我可以使用的多边形数量非常有限。移动设备的性能不足以渲染高多边形对象。我们在将对象用于游戏之前都会进行测试。

高多边形是指使用高多边形数。增加多边形会使对象的细节更复杂,但缺点是性能下降。

在为VR进行设计时,你必须经常考虑你的决策。看不见的部分要删除,否则游戏就会断断续续。设计不能有缺陷。PC游戏设计可能有点草率,因为PC的速度足够快,可以渲染额外的多边形。另外,着色器非常不同。

Lajos:在学校里我设计过大量的“时尚”卡通对象。在VR-Innovations,我们制作逼真的游戏。在设计卡通游戏时,你可以摆脱不切实际的形状。例如,书架不能是沙漏形状,它必须像是真正的家具。

5. VR-Innovations使用Blender。但Lajos曾经用过Autodesk 3ds max。两者有什么不同?

Lajos:速度和快捷方式非常不同。3ds max没有快捷方式。相反,所有功能都有特定按钮。对于初学者来说,这是一个很好的工具,因为你不必记住任何键盘快捷键。但是,如果你学会如何使用它们,它们确实非常有用,并且可以大大加快设计过程。

对于新人建模者而言,Blender具有开源的优势。任何对3D感兴趣的人都可以官网下载并开始使用。互联网充满了关于在Blender的文档和视频。

6. Blender 2.8现在是测试阶段,并带来了很多变化。令你感到兴奋的地方是什么?

Joel:整个UI都经过了彻底改动。现在看起来更好,效率更高。Blender现在提供了更多自定义视口的方法。任何微小的地方都可以定制,所以你可以把它变成属于自己的界面。全新的EEVEE渲染引擎也很棒,键盘快捷键效率更高。

EEVEE引擎是Blender 2.8的新功能。EEVEE比旧的循环渲染引擎快得多。它可以支持你实时处理渲染模型。任何更改都会立即显示。这对于动画师非常有用,因为他们可以马上看到渲染的动画。

Lajos:当我几年前尝试Blender时,它看起来相当过时,而且使用起来非常痛苦。2.7版本中的UI非常奇怪,不会吸引新用户。如果你看看像3ds max或Maya这样的建模套件,它们看起来非常现代化。对于Blender 2.8,用户界面简洁易用。

7. 你认为Blender缺少什么?

Lajos:3ds max有一个“平滑分组”选项。但你应用平滑效果时,并非每个脸都会应用这一效果,具体取决于组。因此,模型仍然可以在平滑的面之间保持清晰的边缘。Blender没有这个功能,你必须通过多次操作来完成。

8. 行业将在10年后发生什么变化?

.Joel:显然,随着游戏行业的发展,图形会不断发展。我相信机器学习和人工智能会令3D建模更容易。像Substance Painter这样的程序已经令纹理设计变得更简单。在之前,你需要通过Photoshop手动设计每个像素。这项工作非常乏味和无聊。Substance Painter帮助你完成了大量的工作。原来需要通过手动完成的工作现在都可以程序化地生成。

Lajos:就像Joel所说,未来的机器会为你做很多工作。这使得设计过程更快,也许成本更低。如果你看看10年前,你会发现其实3D建模已经发生了很大的变化。

原文链接:https://yivian.com/news/59959.html

directui 3d界面引擎_美术设计师浅谈AR/VR中3D建模设计的工具、挑战与区别相关推荐

  1. mysql declare与set的区别_浅谈MySQL存储过程中declare和set定义变量的区别

    在存储过程中常看到declare定义的变量和@set定义的变量.简单的来说,declare定义的类似是局部变量,@set定义的类似全局变量. 1.declare定义的变量类似java类中的局部变量,仅 ...

  2. python中if和elif的区别_浅谈对python中if、elif、else的误解

    今天下午在练习python时用了"if...if...else..."的分支结构,结果运行出来吓我一跳.原来我想当然的认为"if...if...else..." ...

  3. java编译异常和运行时异常_浅谈异常结构图、编译期异常和运行期异常的区别...

    异常处理一般有2种方式,要么捕获异常try-catch,要么抛出异常throws 如果一个方法后面抛出一个运行时期异常(throws RuntimeException),调用者无须处理 如果一个方法后 ...

  4. python中分支语句elif与else的区别_浅谈对python中if、elif、else的误解

    今天下午在练习python时用了"if...if...else..."的分支结构,结果运行出来吓我一跳.原来我想当然的认为"if...if...else..." ...

  5. java扫码枪键盘_浅谈在react中如何实现扫码枪输入

    触发原理 原理就是监听键盘输入,比如扫一个为6970596130126的69条形码,用扫码枪扫一下会在光标位置依次输出: 6 9 7 0 5 9 6 1 3 0 2 6 但这不是完整的,所以需要写一个 ...

  6. python程序调用写好的代码_扣丁学堂浅谈Python编程中NotImplementedError的使用方法...

    扣丁学堂浅谈Python编程中NotImplementedError的使用方法 2018-07-04 14:08:02 2559浏览 本篇文章扣丁学堂 Python编程中raise可以实现报出错误的功 ...

  7. java 定时任务怎么关闭_浅谈springboot项目中定时任务如何优雅退出

    在一个springboot项目中需要跑定时任务处理批数据时,突然有个Kill命令或者一个Ctrl+C的命令,此时我们需要当批数据处理完毕后才允许定时任务关闭,也就是当定时任务结束时才允许Kill命令生 ...

  8. mysql存储过程set什么意思_浅谈MySQL存储过程中declare和set定义变量的区别

    在存储过程中常看到declare定义的变量和@set定义的变量.简单的来说,declare定义的类似是局部变量,@set定义的类似全局变量. 1.declare定义的变量类似java类中的局部变量,仅 ...

  9. 浅谈VB6.0中的实用技巧

    浅谈VB6.0中的实用技巧 (一) VB6.0中文本框处理技巧 在Visual Basic中,文本框(TextBox)是最常用的控件,熟练运用文本框 是开发出高质量的应用程序的基础.笔者在从事应用程序 ...

最新文章

  1. c语言复杂性,C语言复杂函数
  2. 【Android 插件化】多开原理 | 使用插件化技术的恶意应用 | 插件化的其它风险 | 应用开发推荐方案
  3. 命令行下使用javah命令生成.h文件,出现“错误: 无法访问android.app.Activity 找不到android.app.Activity的类文件”的解决方法...
  4. 从“连锁”到“新联锁”,尚美生活如何引领酒店行业变革?
  5. C++模拟键盘操作窗口入门
  6. 为什么创建线程池一定要用ThreadPoolExecutor?
  7. Python学习笔记之函数(五)
  8. 2017.3.25 圆桌聚餐 思考记录
  9. Qt——线程类QThread
  10. 加入收藏 设为首页 代码:兼容IE和FireFox
  11. [redis] Redis 配置文件置参数详解
  12. 平均无故障时间100万小时_无故障运行时间MTBF投标要求GB5080.7-中检
  13. 4.8、漏洞利用-NSF配置漏洞与Rpcbind信息泄露
  14. 码农故事:一个辞职创业卖凉皮的程序员
  15. android手机控制家用电器,手机遥控电脑!教你用手机控制家里电脑
  16. windows防火墙是干什么的_我可以用windows防火墙做什么
  17. 2021年读书节书单推荐
  18. web基础(一)——初识HTML5
  19. 后端传给xml格式文件前端要求导出xslx,表格文件
  20. 外企工作日常:全英文CrossTalk反串讲-讲前紧张,讲后淡定

热门文章

  1. ps计算机按键.,计算机一级Photoshop视图操作快捷键
  2. 2017.5.8 飞扬的小鸟 失败总结
  3. 2017.4.2 loli测试
  4. barbuttonitem 文字换行_ios开发 常用代码整理
  5. python和别的脚本语言_PHP与Python与其它脚本语言
  6. CCS 3.3中统计程序运行的时间
  7. c语言编程从键盘上输入两个整数m和n,C语言习题 求键盘输入的两个正整数的最大公约数和最小公倍数...
  8. STL之remove、remove_copy、remove_if、remove_copy_if
  9. [BZOJ4987]Tree
  10. 自定义tt文本模板实现MySql指数据库中生成实体类