feat: Extend Random Row Selection feature to multiple shader components#158
Merged
Conversation
…能を実装 シェーダー実装: - 各機能のFlipBook/FlipBookBlendingモードでRandom Row Selectionを使用可能に - ForwardパスにTintMap、ParallaxMap、AlphaTransition、Emissionの実装を追加 - ShadowCasterパスにTintMapとAlphaTransitionの実装を追加 - DepthNormalsパスにTintMap、AlphaTransition、Emissionの実装を追加 - 各パスで#ifdef _FEATURE_RANDOM_ROW_SELECTION_ENABLEDによる条件分岐を実装 GUI実装: - 各機能のFlipBook/FlipBookBlendingモード選択時にRandom Row Selectionトグルを表示 - Row Count設定とRandom Coord選択のUIを追加 - Row Countのバリデーションと自動修正機能を実装 - ヘルプメッセージによるユーザーガイダンスを提供 注意事項: - MaterialPropertyNamesとShaderKeywordsは前回のコミットで実装済み - MaterialPostProcessorのキーワード管理も前回のコミットで実装済み - ParallaxMapはForwardパスのみで使用されるため、他のパスには実装なし 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- ParticlesUberLit.shader: 重複したキーワードを削除 - UIParticlesUberUnlit.shader: 重複したキーワードを削除 - 全てのシェーダーでRandom Row Selection機能が正常に動作 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- MaterialPropertyNames.csに2nd Texture用プロパティを追加 - ParticlesUberCommonMaterialPropertiesにプロパティ定義を追加 - 全シェーダーファイルに2nd Texture用プロパティを追加 - HLSL実装に2nd Texture Random Row Selection処理を追加 - GUI実装に2nd Texture Random Row Selection設定を追加 - MaterialPostProcessorにキーワード管理を追加 - 全シェーダーファイルに2nd Texture用キーワードを追加 これによりAlpha Transitionの2nd TextureでもRandom Row Selection機能が利用可能になりました。 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Pull Request Overview
Extends the existing Random Row Selection feature from the Base Map to additional shader components (Tint Map, Parallax Map, Alpha Transition, and Emission) in the NOVA shader system, enabling consistent flipbook animation control across all shader features.
- Extended Random Row Selection functionality to Tint Map, Parallax Map, Alpha Transition Map (including second texture), and Emission Map
- Updated all shader variants (Unlit, Lit, UIParticles) with new shader properties and pragma directives
- Refactored Material Editor GUI to use shared utility methods for consistent Random Row Selection interface
Reviewed Changes
Copilot reviewed 18 out of 21 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Version bump from 3.1.0 to 3.2.0 |
| UIParticlesUberUnlit.shader | Added new Random Row Selection properties and shader features for Tint, Parallax, Alpha Transition, and Emission maps |
| UIParticlesUberLit.shader | Added new Random Row Selection properties and shader features for Tint, Parallax, Alpha Transition, and Emission maps |
| ParticlesUberUnlit.shader | Added new Random Row Selection properties and shader features with proper grouping comments |
| ParticlesUberUnlit.hlsl | Implemented Random Row Selection logic for all extended shader components with proper conditional compilation |
| ParticlesUberShadowCaster.hlsl | Updated shadow caster to support Random Row Selection for Tint and Alpha Transition maps |
| ParticlesUberLit.shader | Added new Random Row Selection properties and shader features for Tint, Parallax, Alpha Transition, and Emission maps |
| ParticlesUberDepthNormalsCore.hlsl | Updated depth normals pass to support Random Row Selection for Tint, Alpha Transition, and Emission maps |
| ParticlesUber.hlsl | Added property declarations for all new Random Row Selection variables |
| Particles.hlsl | Removed unused macros and early return conditions from flipbook functions |
| ShaderKeywords.cs | Added shader keyword constants for all new Random Row Selection features |
| ParticlesUberUnlitMaterialPostProcessor.cs | Added material keyword setup for all new Random Row Selection features |
| ParticlesUberCommonMaterialProperties.cs | Added property declarations for all new Random Row Selection material properties |
| ParticlesUberCommonGUI.cs | Refactored to use shared DrawRandomRowSelection utility method for consistent UI |
| MaterialPropertyNames.cs | Added property name constants for all new Random Row Selection features |
| MaterialEditorUtility.cs | Added shared DrawRandomRowSelection utility method and improved code organization |
Comments suppressed due to low confidence (1)
Assets/Nova/Runtime/Core/Shaders/ParticlesUberUnlit.hlsl:231
- Incorrect function call - should be FlipBookBlendingProgressWithRandomRow for 3D mode (line 159 calls FlipBookBlendingProgress in the else branch)
#if defined(_ALPHA_TRANSITION_BLEND_SECOND_TEX_AVERAGE) || defined(_ALPHA_TRANSITION_BLEND_SECOND_TEX_MULTIPLY)
CyTakayukiKiyohara
approved these changes
Jul 24, 2025
S20817
approved these changes
Jul 24, 2025
- Tint Color、Parallax Map、Alpha Transition、EmissionセクションにRandom Row Selection機能の説明を追加 - 各機能でのFlip Book/Flip Book Blendingモード時の使用方法を明記 - Unity Particle SystemのCustom Coordを使用したランダム値設定方法を説明 - Row CountとRandom Coordの設定手順を詳細に記述 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Tint Color、Parallax Map、Alpha Transition、EmissionセクションにRandom Row Selection機能の説明を追加 - 各機能でのFlip Book/Flip Book Blendingモード時の使用方法を日本語で明記 - Unity Particle SystemのCustom Coordを使用したランダム値設定方法を詳細に説明 - Row CountとRandom Coordの設定手順を日本語で記述 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary