GNU General Public License v3.0

技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

深度技术分析:Blender-miHoYo-Shaders

项目背景与痛点

图形渲染是 3D 创作和视觉特效的核心,而《原神》作为一款在全球范围内拥有极高口碑的游戏,其独特的渲染风格受到了创作者们的广泛关注。重现《原神》的渲染效果不仅能满足玩家和创作者对游戏内容的深度解析,也为其他 3D 应用提供了可借鉴的光照和材质处理标准。然而,市面上针对 Blender 软件,复现《原神》渲染风格的插件和资源稀缺,因此,festivities/Blender-miHoYo-Shaders 应运而生,填补了这一空缺。通过反向工程和数据挖掘,这个项目试图复现《原神》的具体渲染效果。

核心技术揭秘

该项目的核心在于通过使用 Blender 的着色器,实现对《原神》特定规则的忠实践行。其技术栈基于 Blender 的着色语言——GLSL,通过设计巧妙的着色器链来模拟游戏中的光照模型、纹理处理和材质表现。为了确保这一系列过程的正确无误,项目开发者必定深入研究了 Genshin Impact 的数据,从而全面理解其光照和材质的运算机制。

核心架构设计:

graph TD A[数据挖掘] --> B[光照模型] A --> C[纹理处理] B --> D[材质表现] C --> D D --> E[Blender着色器] E --> F[渲染效果]

项目通过 数据挖掘 获得了关键的光照和材质数据,这些数据提供给 光照模型 和 纹理处理,最终在 材质表现 层次上完美地模拟出《原神》中的渲染效果,并借助 Blender 的着色器引擎输出。

主要技术特点

  • 数据挖掘技巧:运用数据挖掘手段,提取《原神》游戏中的关键光照和材质参数。
  • 着色器设计:针对 Blender 的 GLSL 着色语言进行了综合性的优化设计,使着色器能够处理复杂的光照及材质效果。
  • 精确度和效率:项目兼顾了渲染的精细度和可扩展性,确保在不失真的情况下,渲染速度仍处于合理范围。

功能亮点与差异

Blender-miHoYo-Shaders 的核心亮点在于为创作者提供了一套高效、精准的着色器库,能够在有限的时间和资源条件下,快速生成与《原神》观感相似的图形。相比市面上多数只侧重于库中素材质量而忽视具体渲染风格的插件,此项目专为 Genshin Impact 的光影效果量身订制,不仅深度解析了其光照模型,还兼顾了不同材质的细致处理,使其在忠实地复现官方效果方面具有明显的优势。

应用场景与落地建议

此插件非常适合用于需要原神风格可视化效果的 3D 项目。在使用时,开发者应注意查看 authors 提供的详细文档,特别是关于数据挖掘和着色器落地的具体指导,以便能更好地调整参数和设置以符合项目需求。另外,为了提升渲染效率和图像质量,还需在调试过程中结合 GPU 的性能,进行一定程度的优化和微调。

此外,项目虽然专注于《原神》的渲染效果,但所采用的着色技术具有一定的通用性,可以被借鉴到其他 3D 应用场景中。因此,在进行项目迁移时,应当仔细评估拟迁入的应用场景与原神效果的匹配度,确保在特定场景下的视觉呈现仍能忠实于原效果。

综合评价

优点总结

  • 实际效仿效果优秀:深入复原了原神的具体渲染风格。
  • 数据挖掘技巧高超:有效提取和应用游戏内的光照及材质数据。
  • 开源特性:允许更多的开发者对比及扩展其现有的效果。

不足之处

  • 项目文档详细程度需进一步提升,引入更详尽的参数指导将提升用户的体验。
  • 社区的维护与开发力度需增加,保持与原神版本的同步改进是非常必要的,以免着色效果逐渐偏离原神新的渲染风格。

最终,Blender-miHoYo-Shaders 项目展现了开发者对《原神》渲染风格的高度解析,为还原游戏图像提供了强有力的支持。同时,也为希望在其他 3D 应用中使用类似风格的创作者提供了有力的解决方案。

关于

GitHub 原始描述(英文)

Shader for Blender attempting to replicate the shading of Genshin Impact. These are for datamined assets, not custom-made ones nor the MMD variants.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

简要分析

热度分
2492
价值分
827
活跃状态
归档

README

HoYoverse Shaders for Blender/Goo Engine 3.3 and above

Trailer

Trailer

Preview (heavily post-processed)

Preview

Preview

Overview made by No_Tables (thank you!)

Overview by No_Tables

Usage

  1. Either download a release here, or download from the source for the latest commit.
  2. In a new project with your desired character mesh, append whatever materials the .blend file you downloaded will contain.
  3. Replace the original materials of the mesh with the materials from the .blend file you just appended.
  4. Import the textures into their corresponding image nodes/texture slots.
  5. Constrain the empty object named Head Origin to the head bone of your character with a Child Of constraint.
  6. This video made by No_Tables showcases the actual shader without any post-processing, and provides an overview as well.
  7. This video made by Bonny is a (slightly outdated) tutorial on how to setup the shader
  8. Check out this Blender add-on by Mken for automating the set-up for the shader.

Contact

Rules

  • The GPL-3.0 License applies.
  • If you use this shader as is in renders, animations or any form of medium that does not directly modify the shader, I’d appreciate being credited - you don’t have to do it though.
  • If you use this shader as the main reference for your own shader, please give credit where it’s due.
  • In compliance with the license, you are free to redistribute the files as long as you attach a link to the source repository.

Special thanks

All of this wouldn’t be possible if it weren’t for:

For that, I’d like to give back to the community with what I’ve learned. With that said, I hope you learn a thing or two. Enjoy!

Disclaimer

These shaders aren’t meant to be 100% accurate. What I only aim for is to replicate the in-game looks to the best of my ability.

While the shaders are developed primarily for datamined assets, this repository does not endorse datamining in any way whatsoever and will never directly provide the assets nor tools in extracting from game files.

Since you’ve read this far…

Using this shader is completely free if it’s not already evident from the license BUT - if and only if you have something to spare and would like to support me, then you can do so on my Ko-fi here. I appreciate every tip and each one motivates me to keep on improving the shader.

评论

暂无评论