铁匠smith

In this blog post we’ll be sharing our animation pipeline, and our approach to the post effects and audio and video output in the short film The Blacksmith. You can also check out our previous ‘Making Of’ post about scene setup, shading, and lighting, as well as our dedicated page for the project, where all the articles in this series are collected.

在这篇博客文章中,我们将分享动画管道,以及在短片《铁匠》中处理后期效果以及音频和视频输出的方法。 您还可以查看我们之前有关场景设置,阴影和照明的 “制作”文章,以及该项目的专用页面 ,其中收集了本系列的所有文章。

动画管道 (Animation pipeline)

从Previz开始 (Starting With a Previz)

Once we knew the direction we were moving in terms of art style and themes for The Blacksmith, we were eager to see our short film in action, so we set off to build an early version of it, which we could use as a starting point.

一旦我们知道了《铁匠》在艺术风格和主题方面的发展方向,我们就渴望看到我们的短片在行动,因此我们着手制作它的早期版本,可以以此为起点。

We made early mesh proxies of the characters, supplied them with temporary rigs with very rough skinning, and quickly blocked shots out in 3D, so that we could work on a previz.

我们制作了角色的早期网格代理,为他们提供了非常粗糙的蒙皮临时装备,并Swift以3D遮挡了镜头,以便我们进行预览。

This approach provided us with a sense of timing and allowed us to iterate on the action, camera angles and editing, so we were able to get an idea about how our film was going to flow, even very early in the process. From there on, it was the perfect way to communicate the goals to the external contractors who helped us on the project, and to guide the production process.

这种方法为我们提供了时机感,并允许我们在动作,相机角度和编辑上进行迭代,因此即使在过程的非常早期,我们也可以对胶片的流动方式有所了解。 从那时起,这是将目标传达给帮助我们进行项目的外部承包商并指导生产过程的理想方式。

The cameras and rough animation from the previz were used as a placeholder going forward.

previz的摄像头和粗略动画被用作占位符。

动作捕捉 (Motion Capture)

For the performance of the characters, we worked with Swedish stunt- and mocap-specialists Stuntgruppen, who were not only able to carry out the motion capture performance, but also consulted us on the action our characters would engage in. We held some rehearsals with them before moving on to the mocap.

对于角色的表演,我们与瑞典的特技和运动捕捉专家Stuntgruppen合作 ,他们不仅能够进行动作捕捉表演,还就我们的角色将要采取的行动向我们进行了咨询。他们,然后再去捕猎。

We had a very smooth shooting session at the venue of Imagination Studios in Uppsala. The previz was instrumental at the motion capture shoot as it served as a reference for everyone involved. What made things even easier was that we were able to see the captured performance retargeted directly onto our characters in real time during the shoot.

我们在乌普萨拉Imagination Studios的场地进行了非常流畅的拍摄。 预览对动作捕捉拍摄很有帮助,因为它为所有参与的人提供了参考。 使事情变得更加容易的是,我们能够在拍摄过程中实时看到捕获的表演直接重新定位到角色上。

演示地址

端到端的管道 (The Pipeline From End-to-End)

Our animation pipeline was structured as follows:

我们的动画管道的结构如下:

在Unity中设置 (Setting Up In Unity)

Once in Unity, we had to set-up our rigs before we could move forward. ‘Generic Rig’ setting was used for the two master rig files. We then relied upon auto-mapping of joints referencing the two master rig files for scene optimization and organization. Next we used the Scene Manager to shift from one shot setup to the next, but each shot always referenced one of the two master rigs. For this naming of joints had to match 1/1 for retargeting to work effectively. Shots were then sourced from many fbx files, and were setup along the timeline pointing to the Master Characters in scene. The timeline then generally consisted of these playable items: Character Track, Camera Track, Prop Track, Event Track, Switcher/Shot Manager Track.

进入Unity之后,我们必须先设置好钻机,然后才能继续前进。 “通用装备”设置用于两个主装备文件。 然后,我们依靠引用两个主装备文件的关节自动映射来进行场景优化和组织。 接下来,我们使用场景管理器从一个镜头设置切换到下一个镜头设置,但每个镜头始终引用两个主装备之一。 为此,关节的命名必须匹配1/1,才能有效地重新定位。 然后从许多fbx文件中获取镜头,并沿着时间轴设置镜头,指向场景中的主角。 然后,时间轴通常由以下可播放项目组成:角色跟踪,摄像机跟踪,道具跟踪,事件跟踪,切换台/射击经理跟踪。

接近布料,头发和其他关节 (Approaching Cloth, Hair and Additional joints)

It was also important to us to ensure we had some nice movement on our characters’ clothes and hair. For that reason we ended up having additional joints placed into the skirts of both characters, and the hair of our Blacksmith lead. The setup allowed the simulation to be baked back onto the joints that were skinned into the rigs, so it was effectively pseudo cloth with a lot of extra bones baked. This was an effective approach for us, as we had a really high target of 256 bones and four bone weights per Character.

对我们来说,确保角色服装和头发保持良好的运动对我们也很重要。 出于这个原因,我们最终在两个角色的裙子和铁匠的头发上都添加了额外的接缝。 该设置允许将模拟烘焙回贴到钻机蒙皮的关节上,因此它实际上是伪布,其中烘焙了很多额外的骨头。 对于我们而言,这是一种有效的方法,因为我们的目标非常高,即每个角色拥有256块骨头和四块骨头的重量。

The joints visible in the face drive the eyes for ‘look at’ control, and the rest around the jaw actually bind the beard to the face vertices using this riveting method in Maya.

面部可见的关节驱动眼睛进行“注视”控制,而下颌周围的其余部分实际上使用Maya中的铆接方法将胡须与面部顶点绑定在一起。

This was done purely because we needed to keep the beard and hair as separate elements in Unity for the custom hair shader to work. The facial animation is blendshape driven, and the custom wrinkle map tech also relied on the blendshape values. That meant we had to use the rivet approach and bake the joints to follow the blendshapes on export.

这样做完全是因为我们需要将胡须和头发作为Unity中的单独元素保留,以使自定义头发着色器正常工作。 面部动画是由blendshape驱动的,并且自定义皱纹贴图技术也依赖于blendshape值。 这意味着我们必须使用铆钉方法并烘烤接头以遵循出口时的混合形状。

内部组装Mocap场景 (Assembling the Mocap Scene in-house)

Post-shoot we reconstructed the mocap in Motionbuilder using ‘Story’ mode.

拍摄后,我们使用“故事”模式在Motionbuilder中重建了Mocap。

At this point the Demo team’s animator took the lead with content, refining the cameras around the newly produced near-final performances. Being the most intimate with the intention of the scenes it made sense that the animator edit the sequence back together into master scene files. Additionally, any further ideas that may have come up during the motion capture shoot could be incorporated at this stage.

在这一点上,演示团队的动画师以内容为主导,围绕新近制作的准决赛表演改进了摄像机。 由于与场景的意图最为亲密,因此动画师有意识地将序列重新编辑回主场景文件中。 另外,在运动捕捉拍摄过程中可能提出的任何其他想法都可以在此阶段合并。

The overall movie was divided into only a few master scene/fbx files, namely ‘Smithy to Vista’, ‘Vista to Challenger’, ‘Challenger and Blacksmith Battle’ and ‘Well Ending’. This grouping of shots simply made the file handling much easier. Each of the fbx files contained all the content needed to final the performances, and once completed were exported in full to Unity. After that, the take/frame ranges were split inside the Unity animation importer.

整个电影仅分为几个主要场景/ fbx文件,即“ Smithy to Vista”,“ Vista to Challenger”,“ Challenger and Blacksmith Battle”和“ Well Ending”。 这些镜头分组使文件处理变得更加容易。 每个fbx文件都包含完成演奏所需的所有内容,一旦完成,这些文件将全部导出到Unity。 之后,在Unity动画导入器中将拍摄/帧范围进行了拆分。

Next, all the content from previz was replaced with the motion capture. This allowed for ‘nearly final’ animation to be implemented into Unity. At this stage it was important to get it in quick, thus allowing art, lighting and FX to forge ahead with their own final pass on content.

接下来,previz中的所有内容都将替换为运动捕捉。 这允许将“几乎最终的”动画实施到Unity中。 在此阶段,快速上架非常重要,这样才能使艺术品,灯光和FX拥有自己的最终通过内容。

After this was done the performances were refined and polished, but the overall action and camera work didn’t noticeably change that much. Once the body work was finaled and locked off, the animator took all the content back to Maya for the final pass of facial animation, cloth and hair simulation, as well as the addition of props and other controls.

完成此操作后,表演得到了完善和完善,但是总体动作和摄像头的工作并没有明显改变。 一旦完成并锁定了车身,动画师便将所有内容带回Maya,以最终完成面部动画,衣服和头发的模拟,以及添加道具和其他控件。

最终出口到Unity (Final Exports to Unity)

At this stage in the production the time had come to overwrite all placeholder files with final animation assets. The sequence structure and scene in Unity stayed pretty well intact, and it was mostly just a matter of overwriting fbx files and doing some small editing in the sequencer.

在制作的这一阶段,是时候用最终的动画资源覆盖所有占位符文件了。 Unity中的序列结构和场景保持完好无损,主要只是覆盖fbx文件并在序列发生器中进行一些小的编辑。

The following video provides an opportunity to compare and contrast a brief cross sections of the stages of production, from storyboard to the final version.

以下视频提供了一个机会,可以比较和对比从情节提要到最终版本的各个制作阶段的简短横截面。

演示地址

相机效果 (Camera effects)

Since we wanted to achieve cinematic look throughout this project, we ended up using some typical film post effects in every shot. We used several of Unity’s default effects: Depth of Field, Noise and Grain, Vignette and Bloom.

由于我们希望在整个项目中都能达到电影般的效果,因此最终在每张照片中都使用了一些典型的电影后期效果。 我们使用了Unity的几种默认效果:景深,噪点和纹理,晕影和光晕。

We developed a custom motion blur because we wanted to experiment with the effect that camera properties such as frame rate and shutter speed had on the final image. We also wanted to make sure we could accurately capture the velocities of animated meshes; something that involved tracking the delta movement of each skeletal bone in addition to the camera and object movements in the world.

我们开发了一种自定义运动模糊,因为我们想试验相机属性(例如帧频和快门速度)对最终图像的影响。 我们还想确保我们可以准确地捕获动画网格的速度。 除了相机和物体运动之外,还涉及跟踪每个骨骼骨骼的增量运动。

演示地址

To give a good sense of depth and scope in our large, scenic shots, we strived to have a solution to achieve a believable aerial perspective. We decided to develop a component for custom atmospheric scattering, as a drop-in replacement for Unity’s built in fog modes. After some initial experimentation based on various research papers, we opted to go for extensive artistic control over correctly modeling the physics of atmospheric scattering.

为了让我们在风景秀丽的大型镜头中具有良好的深度和范围感,我们努力寻求一种解决方案,以实现可信的空中视角。 我们决定开发一种用于自定义大气散射的组件,以代替Unity内置雾模式的组件。 在根据各种研究论文进行了一些初步实验之后,我们选择了广泛的艺术控制,以对大气散射的物理模型进行正确建模。

Here is an example of how our camera settings look in a randomly selected shot from the project:

这是我们的相机设置在项目中随机选择的镜头中的外观示例:

To further our goal of achieving a cinematic look, we wanted to simulate a classical film out process, i.e. printing to motion picture print film. We imported screenshots from Unity into DaVinci Resolve – an external application used for professional video production – where the color grading and tone mapping took place. There we produced a lookup table, which was imported and converted to a custom Unity image effect. At runtime, this image effect converted linear data to a logarithmic distribution, which was then remapped through the lookup table. This process unified tone mapping and grading into a single operation.

为了实现实现电影般外观的目标,我们希望模拟经典的胶片输出过程,即打印到电影胶片。 我们将来自Unity的屏幕截图导入了DaVinci Resolve(一个用于专业视频制作的外部应用程序),在其中进行了颜色分级和色调映射。 在那里,我们生成了一个查找表,将其导入并转换为自定义的Unity图像效果。 在运行时,此图像效果将线性数据转换为对数分布,然后通过查找表将其重新映射。 此过程将统一的色调映射和分级统一为一个操作。

音讯 (Audio)

The audio composition was a single track which was imported in Unity and aligned to the Sequencer timeline. The music composer was given an offline render – ‘preview’ – of the movie to use as a reference when composing and synchronising the track. In order to achieve the desired mood of the piece, he used the song ‘Ilmarinen’s Lament’, which we licensed from American-Swedish indie musician Theo Hakola, and enhanced it with additional elements he composed and recorded himself.

音频作品是一个单轨,已导入Unity并与Sequencer时间轴对齐。 音乐作曲家获得了电影的脱机渲染(“预览”),可以在作曲和同步音轨时用作参考。 为了达到理想的演奏效果,他使用了歌曲“ Ilmarinen's Lament ”,这首歌是我们从美国瑞典独立音乐家Theo Hakola那里获得许可的,并用他自己创作和录制的其他元素加以增强。

视频输出 (Video output)

We wanted to produce this short film in its entirety inside of Unity, without the need for any external post-processing or editing to finalize it. To achieve this, we put together a small tool that would render each frame of the movie with a fixed timestep. Each of these frames would then be piped in memory to an H.264 encoder, multiplexed with the audio stream, and written to an .mp4 on disk. The output from this process was uploaded straight to YouTube as the final movie.

我们希望在Unity内部完整地制作这部短片,而无需任何外部后期处理或编辑来完成。 为了实现这一目标,我们组合了一个小型工具,该工具将以固定的时间步长渲染电影的每一帧。 这些帧中的每一个随后将在内存中通过管道传输到H.264编码器,与音频流多路复用,并写入磁盘上的.mp4。 该过程的输出直接作为最终电影上传到YouTube。

And that’s it for this blog post. Stay tuned for more, and in the meantime make sure to check in at our special page for The Blacksmith, if you haven’t done so already. There you’ll find all the information we have already published about how we brought our short film to life.

就是这个博客文章。 请继续关注更多信息,同时,如果您尚未这样做,请确保在我们的铁匠铺特别页面中进行检查。 在这里,您将找到我们已经发布的有关如何使短片栩栩如生的所有信息。

翻译自: https://blogs.unity3d.com/2015/06/22/making-of-the-blacksmith-animation-camera-effects-audiovideo/

铁匠smith

铁匠smith_铁匠的制作:动画,相机效果,音频/视频相关推荐

  1. python制作简单动画_把数据摇起来!用Python制作动画可视化效果!

    Python 中有很多不错的数据可视化库,但是极少能渲染 GIF 图或视频动画效果.本文就分享一下如何用 MoviePy 作为其他可视化库的通用插件,制作动画可视化效果,毕竟这年头,没图不行,有动图更 ...

  2. 铁匠smith_铁匠的制作:场景设置,阴影,照明

    铁匠smith In the previous blog posts in this series we have looked at the team that created The Blacks ...

  3. ppt模板如何制作动画展示效果?

    你的ppt模板还是文字+图片吗?现在ppt模板制作都自带了很多的动画效果,如何让你的ppt动起来呢?ppt家园就来介绍一下ppt设计动画展示效果的方法吧. 1.插入-形状-椭圆-按shift键绘制正圆 ...

  4. 铁匠smith_铁匠的制作:概念和艺术创作

    铁匠smith For our second blog post in this series, the team reveals some sources of inspiration behind ...

  5. 铁匠smith_铁匠中的独特角色阴影

    铁匠smith It was bright and sunny morning. It must have been some time last fall, when we finally got ...

  6. 铁匠smith_铁匠的大气散射

    铁匠smith Early in the planning phase of The Blacksmith, we knew we wanted an atmospheric scattering s ...

  7. 铁匠smith_铁匠镇的皱纹地图

    铁匠smith When planning The Blacksmith short film, we never really prioritized a custom skin shader hi ...

  8. 让数据动起来!用Python制作动画可视化效果,让数据不再枯燥!

    通常大家做出来的图表,绝大部分都是静态的,有时会显得不够吸引人. 今天小F就给大家介绍一下,如何用Python绘制动态图表. 主要是使用到Matplotlib+imageio,其中Matplotlib ...

  9. python制作简单动画_让数据动起来!用python制作动画可视化效果,让数据不再枯燥!...

    MoviePy允许我们自定义的动画功能make_frame (t).函数将返回视频帧时间t(以秒为单位):根据Mayavi Mayavi做出动画是一个Python模块,可以使交互式3 d数据可视化.在 ...

最新文章

  1. python 文案自动生成_Python自动化测试如何自动生成测试用例?
  2. 杭电1754--I Hate It(线段树)
  3. 计算机科学中最重要的32个算法(转)
  4. mysql variables_通过什么命令能够改变mysql的variables的变量里的值?
  5. C语言字符串是否为pallindrome排列的算法(附完整源码)
  6. 用高等数学“铲雪”!这个200多年前的证明太厉害了,有城市用它省了2000多万..........
  7. python3.5中import sqlite3报错:ImportError: No module named _sqlite3
  8. FCPX插件:Hyper Zoom Transitions Mac(33种扭曲变形缩放转场效果)
  9. 转换到bot模式失败_《认知觉醒》:为什么越“努力”,会越失败
  10. c++ 常用字符串封装函数
  11. linux hadoop namenode_HADOOP_HDFS伪分布式安装步骤
  12. 偏光太阳镜测试图片软件,[专题]真假偏光太阳镜简单、实用辨别方法!
  13. 京东类目如何修改,批量修改京东分类教程
  14. gma 教程 | 气候气象 | 计算标准化降水蒸散指数(SPEI)
  15. 小米8使用usb连接计算机,小米怎么连接电脑usb(小米8连接电脑看不到文件)
  16. 精心备战30天,三天斩获阿里offer,揭秘面试流程及我的学习方向
  17. 什么是ddos攻击,怎么防御ddos攻击?
  18. Excel中如何添加Power Pivot
  19. python图像检测_用Python实现通过哈希算法检测图片重复的教程
  20. 【程序设计】迭代器遍历集合

热门文章

  1. PackageInstaller源码分析(一)
  2. week 3 7月14日
  3. css hover控制其他元素
  4. 运筹学——matlab实现对偶单纯形法
  5. img标签保持纵横比html,调整图像大小,保持纵横比,使纵向和横向图像大小完全相同?...
  6. php mysql批量删除_php批量删除操作代码分享
  7. html textarea文本域高度自适应
  8. Oracle sqlplus 上下键失灵解决方案
  9. css 和常用快捷键
  10. [ANOJ]1017隐匿行踪[dijkstra]