一个模块化着色器系统,允许定义与平台无关的模块,并支持本地化和唯一ID以避免冲突。

Stars

77

7 天增长

暂无数据

Fork 数

8

开放 Issue

5

开源协议

Zlib

最近更新

2026-07-15

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

通过强制模块分离和提供基于文本的材质设置,减少了着色器模块中的重复和冲突问题。

适合谁使用

  • Unity游戏开发者
  • 技术美术
  • 从事多平台项目的着色器程序员

典型使用场景

  • 构建可复用的着色器模块库
  • 为不同语言本地化材质编辑器界面
  • 跨平台复制粘贴材质设置
  • 创建自动避免变量名冲突的着色器模块

项目优势

  • 平台无关的模块定义减少了重写工作
  • 通过.po文件支持材质编辑器的本地化
  • 唯一模块ID防止变量名冲突
  • 基于文本的材质设置便于跨平台复制粘贴

使用前须知

  • 文档仅提供日语版本(但可通过机器翻译阅读)
  • 着色器主体仍然依赖平台
  • 不能使用MaterialPropertyDrawer或IMGUI(使用VisualElement)
  • 模块不能修改其他模块定义的行为

README 快速开始

Shader Core

モジュール型シェーダーシステムです。シェーダー本体はプラットフォームやレンダーパイプラインに依存しますが、各モジュールは基本的な処理であれば依存せずに記述できるようになっています。

機能

  • プラットフォームに依存しないモジュールの定義
  • マテリアルエディタのローカライズ対応(.poファイル)
  • モジュール固有IDによる変数名重複回避
  • プラットフォームに依存しないテキストベースのマテリアル設定値のコピー、ペースト処理

対応しないこと

  • ドキュメントは日本語のみです。ブラウザなどの機械翻訳で十分読める上、仮に私が英語のドキュメントを書く場合には機械翻訳を使用するため結果として品質がほとんど変わらないためです。
  • モジュールによるパスの追加は対応しません。モジュール同士の競合が発生するためです。シェーダー本体でマルチパスの定義を行ってください。
  • UnityEditor.MaterialPropertyDrawerは使用できません。VisualElementベースでエディタが記述されているためです。これとは別にUIをカスタマイズする方法が用意されています。
  • シェーダー本体はプラットフォームに依存します。基本的にはメインテクスチャやノーマルマップ、アウトライン程度しか処理しないことを想定しており、書き換えが容易であるためです。
  • モジュール側でUnity固有の機能は基本的に利用できません。ただしシェーダーキーワードについては[SCConstValue()]アトリビュートを付けることで自動生成されたシェーダーキーワードに基づきプロパティが定数化され、対応できます。
  • マテリアルエディタはIMGUIを使いません。VisualElementを使います。
  • モジュールがシェーダー本体や他モジュールで定義された動作を変更させるような機能には対応しません。動作を変更するモジュール同士で競合が発生するためです。

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

loyal-studio
loyal-studio GitHub avatar

Honami-Animation-System

Honami is a visual, UI-first animation system for Unity 6 that replaces Mecanim with timeline editors, node graphs, and a zero-allocation runtime, letting animators author animations with almost no code.

C#
239
aakk007
aakk007 GitHub avatar

RogueCleaner

A Windows tool that detects and removes malicious leftovers from right-click menus, startup items, services, scheduled tasks, browser extensions, and file associations.

C#
212
ThioJoe
ThioJoe GitHub avatar

Thio-Background-App-Notifier

A lightweight Windows tool that notifies you about new auto-starting background services and scheduled tasks that Windows normally doesn't alert you about.

C#
147