Hey. We’ve promised to release the assets and our custom project-specific tools and shaders from The Blacksmith realtime short film. Well, here they are.

嘿。 我们已承诺从《铁匠》实时短片中释放资产以及我们的定制项目专用工具和着色器。 好吧,它们在这里。

First of all, you are welcome to download the executable of the demo.

首先,欢迎您下载演示的可执行文件 。

The assets from the project, along with the custom tech, come in two main packages for your convenience: ‘The Blacksmith – Characters’ and ‘The Blacksmith – Environments’.

为方便起见,该项目的资产以及定制技术都分为两个主要包:“铁匠-角色”和“铁匠-环境”。

Below follows more information about what you can expect from each package, as well as some explanations about specific choices that we made. We’ve tried to not just release something of documentary value, but also make it more usable for you, in case you want to do something with it yourselves.

以下是有关您可以从每个软件包中获得的期望的更多信息,以及有关我们做出的特定选择的一些说明。 我们不仅试图发布具有文档价值的东西,而且还使它对您更有用,以防您想自己做某事。

And let me answer straight away a very popular question you’ve been asking on previous occasions when we’ve released demo materials: yes, you can use all of this in whatever way you like, including in commercial projects. The standard Asset Store license applies. It would be our pleasure if you find the releases helpful on your own way to achieving success.

而且,让我直接回答您在以前发布演示材料时曾问过的一个非常受欢迎的问题: 是的,您可以以任何喜欢的方式使用所有这些,包括在商业项目中 。 标准资产商店许可证适用。 如果您发现这些发行版对自己取得成功有帮助,将是我们的荣幸。

可执行文件 (The Executable)

We’ve added some simple interface for control over the playback of the demo:

我们添加了一些简单的界面来控制演示的回放:

You have the option to choose among four quality settings presets:

您可以选择以下四个质量设置预设:

It could take more than 30s to load, depending on your platform.

加载时间可能会超过30秒,具体取决于您的平台。

“铁匠–人物”套餐 (‘The Blacksmith – Characters’ Package)

This project contains:

该项目包含:

从此处下载“铁匠-人物”包。 (Download ‘The Blacksmith – Characters’ package from here.)

铁匠和挑战者 (Blacksmith and Challenger)

We have placed each character in a separate scene.

我们将每个角色放置在单独的场景中。

We have re-skinned the Challenger character so now it is a little better prepared for a more universal usage than the specific needs of our film. You are welcome to drop him in another environment and experiment. You still need to do some work if you want him to animate nicely. We have included sample animations ‘idle’ and ‘walk’.

我们已经重新设定了挑战者角色的外观,因此比起我们电影的特定需求,它为更好的通用性使用做了更好的准备。 欢迎您将他放到另一个环境中并进行实验。 如果您希望他很好地制作动画,则仍然需要做一些工作。 我们包括了示例动画“ idle”和“ walk”。

You will also find the main character, Blacksmith, in this package. We haven’t done any re-skinning on him: he is more complex than Challenger and would have taken us more time. We are including the original 3D character asset and you are free to use it in any way you like.

您还将在此包中找到主角铁匠。 我们没有对他进行任何重新蒙皮:他比Challenger更复杂,并且会花更多时间。 我们包括原始的3D角色资产,您可以自由使用任何喜欢的方式。

We are including the original, full-size 4K textures of both characters. In our project, we use a smaller version – 2K or less – of some of the textures.

我们包括两个字符的原始全尺寸4K纹理。 在我们的项目中,我们使用某些纹理的较小版本-2K或更小。

The characters’ models and textures were created by Jonas Thornqvist and Sergey Samuilov.

角色的模型和纹理由Jonas Thornqvist和Sergey Samuilov创建。

头发渲染 (Hair rendering)

To achieve those anisotropic highlights that are so characteristic in hair, we decided to create a separate hair shader. As a complement to this, we also added a rendering component that calculated ambient occlusion for the hair, and set up a multi-pass render approach to avoid sorting errors between overlapping, translucent hair polygons.

为了获得在头发中如此具有特色的各向异性高光,我们决定创建一个单独的头发着色器。 作为对此的补充,我们还添加了一个渲染组件,用于计算头发的环境光遮挡,并设置了多遍渲染方法,以避免重叠的半透明头发多边形之间的排序错误。

The hair package and an accompanying example scene can be downloaded from the asset store. Don’t forget to check out the readme for more details about how it works, and how to configure it for your own projects.

可以从资产商店下载发型包和随附的示例场景。 不要忘记查看自述文件,以获取有关其工作方式以及如何为自己的项目进行配置的更多详细信息。

皱纹贴图 (Wrinkle maps)

To add more life to the Challenger’s expressions in The Blacksmith, we added a rendering component for blending ‘wrinkle maps’ based on the animated influence weights of the Challenger’s facial blendshapes. The rendering component blends normal and occlusion maps in an off-screen pre-pass, and then feeds these to the standard shader as direct replacements for the normal and occlusion maps assigned in the material.

为了使《铁匠》中的挑战者表情更加生动,我们添加了一个渲染组件,用于基于挑战者面部混合形状的动画影响权重混合“皱纹贴图”。 渲染组件在屏幕外的预通过过程中混合法线贴图和遮挡图,然后将它们馈入标准着色器,作为材质中分配的法线贴图和遮挡图的直接替换。

Available as a separate package here, and a dedicated blog post about it can be found here.

可在此处作为单独的软件包获得,也可以在此处找到有关它的专用博客文章。

独特的角色阴影 (Unique character shadows)

We wanted to make sure our characters always had soft, high-resolution shadows in close-up shots. We also needed to make sure we had enough shadow resolution to cover the rest of the world. To achieve this, we added a method of setting up a unique shadow map for a group of objects.

我们想确保我们的角色在特写镜头中始终有柔和的高分辨率阴影。 我们还需要确保我们有足够的阴影分辨率来覆盖世界其他地区。 为此,我们添加了一种为一组对象设置唯一的阴影贴图的方法。

Unique shadows can also be grabbed as a separate package from the Asset Store, and more details are available in the dedicated blog post.

独特的阴影也可以从Asset Store中作为单独的包来获取,有关更多详细信息,请参见专用博客文章 。

平面反射 (Plane reflections)

Plane reflections in The Blacksmith are, in essence, the kind of planar reflections one would normally render for reflective water surfaces. The twist is that once rendered, we convolve the reflected image into each mip-level of the target reflection texture. During this convolution, we use the depth information of the reflection to force sharper contacts for pixels close to the reflection plane. The goal of this contact sharpening is to simulate the effect ray tracing would have in non-perfect reflections. The result of this convolution is a reflection texture suitable as a drop-in replacement for reflection probe cubemaps, with the material’s roughness still dictating which of the different mip-levels are sampled for reflection. We use a modified Standard Shader that, based on a shader keyword toggle, samples reflections from this dynamic reflection texture instead of reflection probe cubemaps.

从本质上讲, 《铁匠》中的平面反射是一种通常会在反射水表面渲染的平面反射。 不同之处在于,渲染后,我们会将反射的图像卷积为目标反射纹理的每个mip级别。 在该卷积过程中,我们使用反射的深度信息为靠近反射平面的像素强制进行更清晰的接触。 接触锐化的目的是模拟光线跟踪在非完美反射中的效果。 这种卷积的结果是反射纹理适合作为反射探针立方体贴图的直接替代,而材料的粗糙度仍然决定了采样哪个不同的mip级别进行反射。 我们使用经过修改的标准着色器,该标准着色器基于着色器关键字切换,从该动态反射纹理而不是反射探针立方体贴图采样反射。

“铁匠–环境”套餐 (‘The Blacksmith – Environments’ Package)

This project contains:

该项目包含:

You can toggle between FPS and animated camera (press C) and between several light presets (press V).

您可以在FPS和动画相机之间切换(按C),也可以在多个灯光预设之间切换(按V)。

Download ‘The Blacksmith – Environments’ package from here. Be warned, it is quite large.

从此处下载“铁匠-环境”软件包。 请注意,它很大。

铁匠铺 (The Smithy)

Looking like this:

看起来像这样:

Game view of Smithy interior in ‘The Blacksmith – Environments’ package

“铁匠–环境”包中的史密斯室内游戏视图

外观 (The Exterior)

We decided to re-arrange the original exterior from the movie in order to make it more relevant to game production, which we hope would be of more use to you. We haven’t gone too far with the polishing. If you spend some additional time on it, it could be a good basis for some action of your own. Here is how it looks as we’ve provided it to you:

我们决定重新安排电影的原始外观,以使其与游戏制作更加相关,我们希望这对您有更多用处。 在抛光方面,我们还没有走得太远。 如果您花一些额外的时间,这可能是您自己采取一些行动的良好基础。 这是我们为您提供的外观:

The difference is that, for our film, we had arranged the environment according to the cameras. If you are still curious, here is a screenshot of how the environment of the original project looks in Scene view:

不同之处在于,对于我们的电影,我们是根据摄影机布置环境的。 如果您仍然感到好奇,请参见以下屏幕快照,该屏幕截图显示了原始项目的环境在“场景”视图中的外观:

Scene view of the original Blacksmith project

原始铁匠项目的场景视图

There were assets we didn’t use in the rearranged scene, but we still wanted you to have them. You will find them in the project.

有一些我们在重新安排的场景中没有使用过的资产,但是我们仍然希望您拥有它们。 您将在项目中找到它们。

Almost all of the gorgeous assets in this package were created by Plamen ‘Paco’ Tamnev. He also built the exterior environment scene.

此包装中几乎所有华丽的资产都是由Plamen'Paco'Tamnev创建的。 他还建立了外部环境场景。

大气散射 (Atmospheric Scattering)

Our custom Atmospheric Scattering solution comes in this project. Find more details about it in this dedicated blogpost. For your convenience, we have also uploaded the Atmospheric Scattering as a separate package on the Asset Store. This way you don’t have to extract it yourself from this rather big project. Get it here.

我们的自定义大气散射解决方案来自此项目。 在此专门的博客中查找有关它的更多详细信息。 为方便起见,我们还将“大气散射”作为单独的软件包上载到了资源商店。 这样,您不必自己从这个相当大的项目中提取它。 在这里得到它。

PaintJob工具 (PaintJob tool)

This tool allows the artist to paint vegetation projected onto any geometry, not just Unity Terrains. It was a way for us to to explore how we could make the most out of the built-in Unity terrain tools, while also fulfilling one of the requirements we had for the project.

该工具允许艺术家绘制投影到任何几何图形上的植被,而不仅仅是Unity Terrains。 这是我们探索如何充分利用内置Unity地形工具的一种方式,同时也满足了我们对该项目的要求之一。

You are welcome to extract it from ‘The Blacksmith – Environments’ and use it in your own projects.

欢迎您从“铁匠-环境”中提取它,并将其用于您自己的项目中。

植被系统 (Vegetation system)

There were a couple of things that we wanted to do with vegetation in The Blacksmith: we wanted it to be soft; we wanted custom shading on it; we wanted it to support dynamic GI; we wanted it to blend with whatever it considered to be ground; and we wanted it to work without being forced to use Unity terrains. PaintJob already took care of the latter, but to solve the rest we needed to do a little bit of a custom setup. We decided to build a component that would capture the PaintJob data – as well as any other hand-placed vegetation marked for capturing – and generate a number of baked vegetation meshes for which we could retain full control over rendering. Among other things, this allowed us to apply any kind of custom sorting we wanted, or reproject light probe data into dynamic textures.

《铁匠》中 ,我们想做些与植被有关的事情:我们希望它柔软。 我们想要在其上自定义阴影; 我们希望它支持动态GI; 我们希望它与它认为是地面的任何东西融为一体; 并且我们希望它能够正常运行而不会被迫使用Unity地形。 PaintJob已经解决了后者,但是要解决其余问题,我们需要做一些自定义设置。 我们决定构建一个组件,该组件将捕获PaintJob数据以及标记为要捕获的任何其他手动放置的植被,并生成许多烘焙的植被网格,我们可以对其进行完全控制。 除其他外,这使我们能够应用所需的任何类型的自定义排序,或将光探测器数据重新投影到动态纹理中。

MaskyMix着色器 (MaskyMix Shader)

Maskymix is an extended Standard Shader that mixes in an additional set of detail textures based on certain masking criteria – hence the name MaskyMix. The masking is primarily based on the angle between a material-specified world-space direction, and the per-pixel normal sampled from the base normal map. The mask is also modified by a tiled masking texture, as well as the vertex-color alpha channel of the mesh – if present. Depending on the masking thresholds specified in the material, the additional detail layer is mixed in based on this final mask. If the mesh provides a vertex alpha channel for masking, the vertex color can optionally be used for tinting the detail layer albedo.

Maskymix是扩展的Standard Shader,可根据某些遮罩标准混合其他一组细节纹理,因此命名为MaskyMix。 遮罩主要基于材质指定的世界空间方向与从基本法线贴图采样的每个像素法线之间的角度。 蒙版还可以通过平铺的蒙版纹理以及网格的顶点颜色alpha通道(如果存在)进行修改。 根据材料中指定的遮罩阈值,将基于此最终遮罩混合其他细节层。 如果网格提供用于遮罩的顶点alpha通道,则可以选择使用顶点颜色为明细层反照率着色。

修改后的标准着色器 (Modified Standard Shader)

The Blacksmith used quite a few tiny Standard Shader modifications to tweak things to our liking, or add small shader features that we wanted. Not all of these make sense outside of the main project, but some of them are included in the surface-shader based Standard Shader used in this package. These modifications are typically things like: optionally sampling per-pixel smoothness from the albedo alpha channel instead of a dedicated texture, or being able to control the culling mode of any material, or having additional control over the color and intensity of bounced global illumination.

铁匠使用了一些微小的标准着色器修改来调整我们喜欢的东西,或者添加我们想要的小的着色器功能。 在主项目之外,并非所有这些方法都有意义,但其中一些包含在此软件包中使用的基于表面着色器的Standard Shader中。 这些修改通常是这样的:从反照率Alpha通道(而不是专用纹理)可选地按像素采样平滑度,或者能够控制任何材料的剔除模式,或者对反射的全局照明的颜色和强度进行额外控制。

音调映射 (Tonemapping)

We’ve explained in an earlier blogpost how we used Tonemapping and applied Color Grading for The Blacksmith short film. Since the short film was shown, the Tonemapping was taken up by a Unity engineering team, and is now being developed properly into Unity.

我们已经在较早的博客文章中说明了我们如何使用色调映射并将“颜色分级”应用于《铁匠》短片。 自从放映了这部短片以来,色调映射已由Unity工程团队接手,目前已被正确开发为Unity。

The HDR sky textures in the package are from NoEmotionHDRs (Peter Sanitra) / CC BY-ND 4.0. Used without modification.

软件包中的HDR天空纹理来自NoEmotionHDRs( Peter Sanitra )/ CC BY-ND 4.0 。 无需修改即可使用。

That’s all from us for now. Having delivered everything we promised, we’re ready to go off to new adventures.

现在就这些了。 兑现了我们承诺的一切之后,我们就可以开始新的冒险了。

If you do something with our assets, we are very curious to know about it. It would be nice of you if you post it as a comment here or drop us a line at demos@unity3d.com. And if it is something which others could use, please consider sharing back to the community.

如果您对我们的资产有所作为,我们很想知道。 如果您在此处将其发布为评论或在demos@unity3d.com上给我们留言,将非常高兴。 如果其他人可以使用它,请考虑与社区分享。

Have fun!

玩得开心!

Edit: Here are the links to the blogposts where we explain specific systems in more detail:

编辑:这是博客文章的链接,我们在其中详细介绍了特定的系统:

Wrinkle Maps in The Blacksmith

铁匠镇的皱纹地图

Unique Character Shadows in The Blacksmith

铁匠中的独特角色阴影

Atmospheric Scattering in The Blacksmith

铁匠的大气散射

翻译自: https://blogs.unity3d.com/2015/06/24/releasing-the-blacksmith/

铁匠发布:可执行文件,资产,工具和着色器相关推荐

  1. OpenGL 着色器基础

    Instagram,Snapchat,Photoshop. 所有这些应用都是用来做图像处理的.图像处理可以简单到把一张照片转换为灰度图,也可以复杂到是分析一个视频,并在人群中找到某个特定的人.尽管这些 ...

  2. Shader着色器代码辅助工具

    借用二次元界一个传奇组合的话:"既然你诚心诚意地发问了,我们就大发慈悲地告诉你--"这次我为普罗开发者提供Shader代码辅助工具的安装指南,也是作为Unity着色器训练营第二期直 ...

  3. 优化着色器信息加载,或查看Yer数据!

    A story about a million shader variants, optimizing using Instruments and looking at the data to opt ...

  4. 为新手准备的 Codea 着色器(Shader)教程

    为新手准备的 Codea 着色器(Shader) 教程 原文标题:<Shaders for dummies>  作者:Ignatz  译者:FreeBlues  译文链接:http://m ...

  5. “着色器”是什么意思? 如何使用HTML5和WebGL创建它们

    本文是Microsoft的Web开发技术系列的一部分. 感谢您支持使SitePoint成为可能的合作伙伴. 您可能已经注意到,去年我们第一次谈论了babylon.js ,最近发布了带有3D声音定位(使 ...

  6. OpenGL着色器透视变换实例-通过旋转平移调试着色器

    OpenGL 着色器新手样例 带透视变换和旋转平移缩放 OpenGL着色器样例 - 最简单的顶点着色器 + 片元着色器 头文件和宏定义 全局变量部分 读取着色器 从文本中读取着色器代码 初始化着色器 ...

  7. 使用着色器在WebGL3D场景中呈现行星表面地形

    实验目的:按照一定规律生成类地行星地表地形区块,并用合理的方式将地形块显示出来 涉及知识:Babylon.js引擎应用.着色器编程.正态分布.数据处理.canvas像素操作 github地址:http ...

  8. WPF 像素着色器入门:使用 Shazzam Shader Editor 编写 HLSL 像素着色器代码

    HLSL,High Level Shader Language,高级着色器语言,是 Direct3D 着色器模型所必须的语言.WPF 支持 Direct3D 9,也支持使用 HLSL 来编写着色器.你 ...

  9. 检查Rage的着色器

    检查愤怒的着色器 愤怒狂怒的GLSL着色器代码下载地址,下载  乃是愤怒代码的一部分代码,但是也是可以看到愤怒的一些设计原理. 着色器代码,集中表现了动画混合,虚拟纹理的加载,反馈,对于理解愤怒的ma ...

最新文章

  1. Java学习_day001
  2. python绘制简单图形-python绘制数学图形(堪比matlab)
  3. 领域驱动系列:三种领域逻辑组织模式的本质
  4. 《CMake实践》笔记二:INSTALL/CMAKE_INSTALL_PREFIX
  5. JDK8新特性之方法引用
  6. Python找出某元素的索引下标
  7. UNICODE与ANSI的区别
  8. linux下mongodb的安装及启动
  9. 平时如何管理你的项目?
  10. jquary插件Lightbox灯箱
  11. 跳过Android6.0+权限的方法
  12. 解决Tomcat运行内存不足问题
  13. 中国人想在外国卖东西,这些经典网站不能错过
  14. 计算任意多边形的面积(已知各顶点的坐标)
  15. 专访|带着问题去学习,Apache DolphinScheduler 王福政
  16. Data too long for column ‘password‘ at row 1“
  17. FPGA——用VGA时序显示图像原理详解(2)
  18. 模电知识体系总结-1.1半导体基础器件
  19. 浅说ksm的适用范围
  20. 魅族手机没有插耳机却显示耳机模式解决方案

热门文章

  1. uniapp-css-table
  2. [黑金原创教程][连载][iBoard 电子学堂][第〇卷 电子基础]第二篇 电路图与印刷电路板...
  3. C. Compressed Bracket Sequence
  4. UML--时序图(顺序图、序列图、循序图)
  5. Codeforces1364B Most socially-distanced subsequence (思维)
  6. 机器学习——k-means
  7. Web API和Web Service的区别
  8. CDMA网络演进与联通业务模式探讨(转)
  9. Java8 ~ Java17 新特性
  10. 解决delphi直接打开bpg工程组文件后提示PROJECTS macro in project group file missing or incorrect丢失错误