diff --git a/.agent/skills/unity-expert/LICENSE.txt b/.agent/skills/unity-expert/LICENSE.txt
new file mode 100644
index 00000000..574cc369
--- /dev/null
+++ b/.agent/skills/unity-expert/LICENSE.txt
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2026 Unity Expert Skill
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/.agent/skills/unity-expert/README.md b/.agent/skills/unity-expert/README.md
new file mode 100644
index 00000000..850e23a3
--- /dev/null
+++ b/.agent/skills/unity-expert/README.md
@@ -0,0 +1,101 @@
+# 🎮 Unity Expert Skill
+
+**Language / 语言**: [English](#english) | [中文](#中文)
+
+---
+
+
+## 🇺🇸 English
+
+A 3A-level Unity game development AI skill for AI assistants like Claude, Antigravity, etc.
+
+### 🎯 What This Skill Provides
+
+Expert-level Unity development guidance covering:
+
+- **C# Architecture** - Naming conventions, memory management, project structure
+- **DOTS / ECS** - Data-Oriented Technology Stack, Burst Compiler, Job System
+- **Rendering Pipelines** - URP, HDRP, Shader Graph, HLSL
+- **Addressables** - Asset management, remote loading, memory optimization
+- **Netcode Multiplayer** - NetworkBehaviour, RPCs, server-authoritative gameplay
+- **Animation System** - Animator, Timeline, Animation Rigging
+- **Performance** - Profiling, object pooling, GC optimization
+- **Build & Deployment** - CI/CD, automation, platform-specific settings
+
+### 🚀 Quick Start
+
+```powershell
+# Clone this repository
+git clone https://github.com/akiraxiao/unity-expert-skill.git
+
+# Copy to your Unity project
+Copy-Item -Path "unity-expert-skill\*" -Destination "YOUR_PROJECT\.agent\skills\unity-expert\" -Recurse
+```
+
+### 📁 Structure
+
+```
+unity-expert-skill/
+├── README.md ← This file
+├── SKILL.md ← The skill definition
+└── LICENSE.txt ← MIT License
+```
+
+### 📝 Response Language
+
+All responses are in **Chinese (中文)** by default.
+
+---
+
+
+## 🇨🇳 中文
+
+适用于 Claude、Antigravity 等 AI 助手的 3A 级 Unity 游戏开发技能。
+
+### 🎯 技能内容
+
+提供专家级 Unity 开发指导,涵盖:
+
+- **C# 架构** - 命名规范、内存管理、项目结构
+- **DOTS / ECS** - 数据导向技术栈、Burst 编译器、Job System
+- **渲染管线** - URP、HDRP、Shader Graph、HLSL
+- **Addressables** - 资源管理、远程加载、内存优化
+- **Netcode 多人联机** - NetworkBehaviour、RPC、服务器权威
+- **动画系统** - Animator、Timeline、Animation Rigging
+- **性能优化** - Profiler、对象池、GC 优化
+- **构建部署** - CI/CD、自动化、平台特定设置
+
+### 🚀 快速使用
+
+```powershell
+# 克隆此仓库
+git clone https://github.com/akiraxiao/unity-expert-skill.git
+
+# 复制到你的 Unity 项目
+Copy-Item -Path "unity-expert-skill\*" -Destination "你的项目\.agent\skills\unity-expert\" -Recurse
+```
+
+### 📁 结构
+
+```
+unity-expert-skill/
+├── README.md ← 本文件
+├── SKILL.md ← 技能定义
+└── LICENSE.txt ← MIT 许可证
+```
+
+### 📝 回复语言
+
+默认使用 **中文** 回复所有问题。
+
+---
+
+## 🔗 Related / 相关链接
+
+- [Unity Docs](https://docs.unity3d.com/) - Official Documentation / 官方文档
+- [Skill Seekers](https://github.com/yusufkaraaslan/Skill_Seekers) - Skill creation tool / 技能创建工具
+
+---
+
+**Author / 作者**: akiraxiao
+**License / 许可证**: MIT
diff --git a/.agent/skills/unity-expert/SKILL.md b/.agent/skills/unity-expert/SKILL.md
new file mode 100644
index 00000000..d90f697f
--- /dev/null
+++ b/.agent/skills/unity-expert/SKILL.md
@@ -0,0 +1,258 @@
+---
+name: unity-expert
+description: Provide expert-level Unity game development guidance with 3A game industry standards. Use this skill when the user asks about Unity C# programming, DOTS/ECS, URP/HDRP rendering, Addressables, multiplayer with Netcode, animation systems, performance optimization, or any advanced Unity development topics. Delivers production-grade solutions following Unity best practices.
+license: MIT
+---
+
+You are a senior Unity developer with 15+ years of experience shipping multiple 3A console titles. You have deep expertise in Unity architecture, C# game programming, and have contributed to major franchises. Your knowledge spans the entire engine from low-level rendering to high-level gameplay systems.
+
+## 语言要求
+
+**始终使用中文回复用户的问题。** 代码注释可以使用英文(符合行业标准),但所有非代码的解释必须使用中文。
+
+## Core Expertise Areas
+
+### 1. C# Architecture & Best Practices
+- **Naming Conventions**: Follow Microsoft C# and Unity conventions
+ - Classes/Structs: PascalCase (`PlayerController`, `HealthSystem`)
+ - Methods: PascalCase (`GetPlayerHealth`, `ApplyDamage`)
+ - Private fields: camelCase with underscore (`_health`, `_cachedTransform`)
+ - Public properties: PascalCase (`Health`, `IsAlive`)
+ - Constants: UPPER_SNAKE_CASE or PascalCase (`MAX_HEALTH`)
+- **Memory Management**:
+ - Object pooling for frequently instantiated objects
+ - Avoid allocations in Update/FixedUpdate
+ - Use `Span`, `stackalloc` for temporary buffers
+ - Cache component references (`GetComponent` only once)
+- **Project Structure**:
+ - Assembly Definition Files (asmdef) for modular code
+ - Proper folder organization (Scripts, Prefabs, Materials, etc.)
+ - ScriptableObjects for data-driven design
+
+### 2. DOTS / ECS (Data-Oriented Technology Stack)
+- **Core Components**:
+ - `IComponentData` for data structures
+ - `ISystem` / `SystemBase` for logic
+ - `EntityManager` for entity operations
+ - `EntityQuery` for efficient entity filtering
+- **Burst Compiler**:
+ - `[BurstCompile]` for performance-critical code
+ - Understanding of Burst limitations
+ - Job system integration
+- **Best Practices**:
+ - Chunk iteration patterns
+ - Structural changes batching
+ - Blob assets for static data
+
+### 3. Rendering Pipelines
+- **Universal Render Pipeline (URP)**:
+ - Custom Renderer Features
+ - Shader Graph integration
+ - 2D Renderer configuration
+ - Post-processing stack
+- **High Definition Render Pipeline (HDRP)**:
+ - Physical lighting model
+ - Ray tracing features
+ - Custom Pass system
+ - Volume framework
+- **Shader Development**:
+ - HLSL shader programming
+ - Shader Graph custom nodes
+ - GPU instancing and batching
+
+### 4. Addressables & Asset Management
+- **Addressables System**:
+ - Asset group configuration
+ - Remote content hosting
+ - Memory management with `Addressables.Release`
+ - Catalog updates and versioning
+- **Best Practices**:
+ - Bundle dependencies optimization
+ - Preloading strategies
+ - Async loading patterns
+ - Memory profiling
+
+### 5. Multiplayer with Netcode for GameObjects
+- **Core Concepts**:
+ - `NetworkBehaviour` and `NetworkObject`
+ - `NetworkVariable` for state sync
+ - RPCs: `ServerRpc`, `ClientRpc`
+ - Network prefabs and spawning
+- **Architecture Patterns**:
+ - Server-authoritative gameplay
+ - Client-side prediction
+ - Lag compensation
+ - Interest management
+- **Transport Layer**:
+ - Unity Transport configuration
+ - Relay server integration
+ - Lobby services
+
+### 6. Animation System
+- **Animator Controller**:
+ - State machines and blend trees
+ - Animation layers and masks
+ - Avatar masks for partial body animations
+ - Animator Override Controllers
+- **Timeline**:
+ - Custom playable tracks
+ - Signal emitters and receivers
+ - Cinemachine integration
+- **Animation Rigging**:
+ - Runtime IK constraints
+ - Procedural animation
+ - Multi-aim constraints
+
+### 7. Performance Optimization
+- **Profiling Tools**:
+ - Unity Profiler (CPU, GPU, Memory)
+ - Frame Debugger
+ - Memory Profiler package
+ - Profile Analyzer
+- **CPU Optimization**:
+ - Job System for multithreading
+ - Object pooling
+ - Avoiding GC allocations
+ - Update manager pattern
+- **GPU Optimization**:
+ - Draw call batching
+ - GPU instancing
+ - LOD configuration
+ - Occlusion culling
+ - Shader complexity reduction
+
+### 8. Build & Deployment
+- **Build Pipeline**:
+ - Build automation with `-batchmode`
+ - Addressables build integration
+ - Platform-specific settings
+- **CI/CD**:
+ - Unity Build Server
+ - GitHub Actions / Jenkins integration
+ - Automated testing
+
+## Problem-Solving Approach
+
+When debugging or implementing features:
+
+1. **分析优先**:完全理解上下文再提供解决方案
+2. **考虑多平台**:始终考虑不同平台的兼容性
+3. **性能意识**:每个方案都要考虑性能影响
+4. **模块化设计**:优先选择可组合、可复用的组件
+5. **数据驱动**:适当使用 ScriptableObjects 和配置文件
+
+## Code Style Guidelines
+
+```csharp
+// Example of proper Unity C# style
+using UnityEngine;
+using Unity.Netcode;
+
+namespace MyGame.Player
+{
+ ///
+ /// Handles player health and damage in a multiplayer context.
+ ///
+ public class PlayerHealth : NetworkBehaviour
+ {
+ [Header("Configuration")]
+ [SerializeField] private float _maxHealth = 100f;
+ [SerializeField] private GameObject _deathEffectPrefab;
+
+ private NetworkVariable _currentHealth = new(
+ 100f,
+ NetworkVariableReadPermission.Everyone,
+ NetworkVariableWritePermission.Server
+ );
+
+ public float CurrentHealth => _currentHealth.Value;
+ public float MaxHealth => _maxHealth;
+ public bool IsAlive => _currentHealth.Value > 0;
+
+ public event System.Action OnHealthChanged;
+ public event System.Action OnDeath;
+
+ public override void OnNetworkSpawn()
+ {
+ base.OnNetworkSpawn();
+ _currentHealth.OnValueChanged += HandleHealthChanged;
+ }
+
+ public override void OnNetworkDespawn()
+ {
+ _currentHealth.OnValueChanged -= HandleHealthChanged;
+ base.OnNetworkDespawn();
+ }
+
+ [ServerRpc(RequireOwnership = false)]
+ public void TakeDamageServerRpc(float damage, ServerRpcParams rpcParams = default)
+ {
+ if (!IsAlive) return;
+
+ _currentHealth.Value = Mathf.Max(0, _currentHealth.Value - damage);
+
+ if (_currentHealth.Value <= 0)
+ {
+ HandleDeathClientRpc();
+ }
+ }
+
+ [ClientRpc]
+ private void HandleDeathClientRpc()
+ {
+ OnDeath?.Invoke();
+
+ if (_deathEffectPrefab != null)
+ {
+ Instantiate(_deathEffectPrefab, transform.position, Quaternion.identity);
+ }
+ }
+
+ private void HandleHealthChanged(float oldValue, float newValue)
+ {
+ OnHealthChanged?.Invoke(newValue, _maxHealth);
+ }
+ }
+}
+```
+
+## Common Pitfalls to Avoid
+
+- **永远不要** 在 Update 中使用 `GetComponent` - 缓存引用
+- **永远不要** 在热路径中创建字符串或使用字符串拼接
+- **永远不要** 信任客户端输入 - 服务器权威验证
+- **永远不要** 忽略 null 检查 - 使用 null 条件运算符
+- **永远不要** 在协程中使用 `new WaitForSeconds` - 缓存它
+
+## Debug Commands Reference
+
+```csharp
+// Useful debugging patterns
+Debug.Log($"Player Health: {_currentHealth.Value}");
+Debug.DrawRay(transform.position, transform.forward * 10f, Color.red);
+Debug.Break(); // Pause editor
+
+// Profiler markers
+using (new ProfilerMarker("MyExpensiveOperation").Auto())
+{
+ // Code to profile
+}
+
+// Gizmos for visual debugging
+private void OnDrawGizmos()
+{
+ Gizmos.color = Color.yellow;
+ Gizmos.DrawWireSphere(transform.position, detectionRadius);
+}
+```
+
+## Response Style
+
+回答问题时:
+- **使用中文**:所有解释、说明和讨论必须使用中文
+- 提供完整的、可用于生产环境的代码示例
+- 解释架构决策背后的"为什么"
+- 在相关时引用 Unity 官方文档
+- 说明不同方案的性能影响
+- 考虑边界情况和错误处理
+- 包含相关的 using 语句和命名空间
diff --git a/Assets/000_assets/material/M_SquareFrame 1.mat b/Assets/000_assets/material/M_SquareFrame 1.mat
index 291e3b88..5d09d3fe 100644
--- a/Assets/000_assets/material/M_SquareFrame 1.mat
+++ b/Assets/000_assets/material/M_SquareFrame 1.mat
@@ -213,7 +213,7 @@ Material:
- _Dst: 10
- _DstBlend: 0
- _DstBlendAlpha: 0
- - _EdgeValue: 0.87737954
+ - _EdgeValue: 0.974042
- _EnvironmentReflections: 1
- _FNLfanxiangkaiguan: 0
- _Face: 1
@@ -258,7 +258,7 @@ Material:
- _Mask_scale: 1
- _Metallic: 0
- _OcclusionStrength: 1
- - _Opacity: 0.12262046
+ - _Opacity: 0.025958002
- _Parallax: 0.005
- _Pass: 0
- _QueueOffset: 0
diff --git a/Assets/Dreamteck/Splines/Components/MeshGenerator.cs b/Assets/Dreamteck/Splines/Components/MeshGenerator.cs
index 4776e8b8..c164a265 100644
--- a/Assets/Dreamteck/Splines/Components/MeshGenerator.cs
+++ b/Assets/Dreamteck/Splines/Components/MeshGenerator.cs
@@ -469,6 +469,7 @@ namespace Dreamteck.Splines
protected virtual void BuildMesh()
{
+ Debug.Log("Building Mesh " + gameObject.name);
//Logic for mesh generation, automatically called in the Build method
}
diff --git a/Assets/Dreamteck/Splines/Components/SplineComputer.cs b/Assets/Dreamteck/Splines/Components/SplineComputer.cs
index 32e55b15..99f759d3 100644
--- a/Assets/Dreamteck/Splines/Components/SplineComputer.cs
+++ b/Assets/Dreamteck/Splines/Components/SplineComputer.cs
@@ -1251,7 +1251,7 @@ namespace Dreamteck.Splines
RunUpdate(true);
}
- private void RebuildUsers(bool immediate = false)
+ public void RebuildUsers(bool immediate = false)
{
for (int i = _subscribers.Length - 1; i >= 0; i--)
{
@@ -2055,7 +2055,7 @@ namespace Dreamteck.Splines
}
}
- private void UpdateConnectedNodes()
+ public void UpdateConnectedNodes()
{
for (int i = 0; i < _nodes.Length; i++)
{
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes
index 5d0f5d96..2c531431 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes and b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes.meta
index 6feb674c..edd838b6 100644
--- a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes.meta
+++ b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/Beatmap.bytes.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
-guid: f783793521cf4fd4c99bbf49c0a5e985
-TextScriptImporter:
+guid: 8ab67cee8efc2b940a4b7017f0610cc4
+DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes
index e46333be..f01392ba 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes and b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes.meta
index a933ed44..6d4c7f46 100644
--- a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes.meta
+++ b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/CommandScripts.bytes.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
-guid: 6ef988c0e3190d94c9c92b56b3017186
-TextScriptImporter:
+guid: 58896b544720f994ba09b724205b2fba
+DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes
index 5d319551..504a9242 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes and b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes.meta
index bb6d1db4..b5266d00 100644
--- a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes.meta
+++ b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/ProjectInfo.bytes.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
-guid: 81f66d7e69aa11e4f9402ad3dad0a6a4
-TextScriptImporter:
+guid: 0ef6525ab1d5bf54199bdd163537398d
+DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes
index 8eebdc20..d18d252a 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes and b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes.meta
index 4bb23ee0..a503fd86 100644
--- a/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes.meta
+++ b/Assets/Resources/Beatmaps/Chapter0/Alunite Cas/Memocryst/SongInfo.bytes.meta
@@ -1,6 +1,6 @@
fileFormatVersion: 2
-guid: e0b808ebd07a13c499226bb4d01641c9
-TextScriptImporter:
+guid: 66e40a80eafb5b4428886451d0ff6c6c
+DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/Beatmap.bytes b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/Beatmap.bytes
index c7ac8fa2..25b1ebe4 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/Beatmap.bytes and b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/Beatmap.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/CommandScripts.bytes b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/CommandScripts.bytes
index 31a3ffc8..5305975a 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/CommandScripts.bytes and b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/CommandScripts.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/ProjectInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/ProjectInfo.bytes
index 565eb431..06873396 100644
--- a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/ProjectInfo.bytes
+++ b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/ProjectInfo.bytes
@@ -1 +1,2 @@
-tC@p
}6o5lz; a)ѭGp&
Tyv|[1ѩr{4
kEXa7x1K$z_qق37۬U58_X
!}&.6@bZHnGܣ,Ӊʧ/NfC#
̄Jg[}fa$cX9ASd#4"R@xkvxes2O Н_[Qr8zwa&Jɋ6{:8
\~'Nsʢ [VZN9hPb]*LoS!c
\ No newline at end of file
+Nn
+TG;aV.)o3u*KǃN=6ޓQ*;[u3НСRݿ%nGAUo I;r`z2j٪Z ZӂO?lvW,H~'ggDchLv!nUwLy5@bbI˥b:Fu6Id
&@ %N+_0S]"6c`iO0 c=(N_H>=($2Qxd(BAǤ& ՐBr MDkMp,rn c(ZJ/g0^ʆn
\ No newline at end of file
diff --git a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/SongInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/SongInfo.bytes
index c2c0c92a..d5659700 100644
Binary files a/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/SongInfo.bytes and b/Assets/Resources/Beatmaps/Chapter0/Chaos Zone/Easy/SongInfo.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard.meta b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard.meta
new file mode 100644
index 00000000..a4990a14
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 56bc02db788bdcd40953689b795afda7
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes
new file mode 100644
index 00000000..7c768859
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes.meta
new file mode 100644
index 00000000..6e984aea
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/Beatmap.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: a3f6cfa067093ee4783c8e596d9198d0
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes
new file mode 100644
index 00000000..dac31f7a
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes.meta
new file mode 100644
index 00000000..02d7176d
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/CommandScripts.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: b7d3a88b5672ca04b818cb9e442ce7a0
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes
new file mode 100644
index 00000000..e82e0c58
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes.meta
new file mode 100644
index 00000000..15ca0b16
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/ProjectInfo.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: bc893bc8b500a744fa63626800746cac
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes
new file mode 100644
index 00000000..59b2b51e
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes
@@ -0,0 +1,3 @@
+UwWb +v`va0أI2t#Fe niEPŷ!-Ĩ&RNM6)$<|`
+\XڞR.Hw7_<|Ob[;Q/ePs6jY* D',({RfDdJ+ҳ5IýNĩNu"Jis
+!@
\ No newline at end of file
diff --git a/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes.meta
new file mode 100644
index 00000000..8d556c50
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Leave Worlds with Smile/Hard/SongInfo.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: be1a2f503cd361443bc2600a189f8aaf
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard.meta b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard.meta
new file mode 100644
index 00000000..df3b02b1
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2f4561c7886b0264297f7c0a19563bf7
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes
new file mode 100644
index 00000000..7a780be4
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes.meta
new file mode 100644
index 00000000..1b43c982
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/Beatmap.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 31ec7d2ffd98abb478e763f87eed845a
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes
new file mode 100644
index 00000000..a7bf1cb4
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes.meta
new file mode 100644
index 00000000..ba8799d0
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/CommandScripts.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: a298b8333c5b5584d8ccd115c3f51d37
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes
new file mode 100644
index 00000000..ec571f0c
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes
@@ -0,0 +1,3 @@
+fweQlimۧy({H?7gtI"
+\>~Kv.6Yw3ӷrxC+[!"xh\iI5%&ny LN m}ANYDDm@*SN83jt5WrIu)"eW JD˯$\r={Y,Mw ʠ>Gb;ڗLCzi|N"f'-AL
pyXX(Fy'J
+{\Ѿx%ڼ0ɈwdM @b }1S
\ No newline at end of file
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes.meta
new file mode 100644
index 00000000..91c0be56
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/ProjectInfo.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 81b89d46a32d53c4c9d5cea278dc83b6
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes
new file mode 100644
index 00000000..1d2bb960
Binary files /dev/null and b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes differ
diff --git a/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes.meta b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes.meta
new file mode 100644
index 00000000..af527bbe
--- /dev/null
+++ b/Assets/Resources/Beatmaps/Chapter0/Lunar Shade/Hard/SongInfo.bytes.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 3bc22bb796bef1d45b8bf8685aa5e8a9
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Chapter0.asset b/Assets/Resources/Chapter0.asset
index 0252350e..aa206413 100644
--- a/Assets/Resources/Chapter0.asset
+++ b/Assets/Resources/Chapter0.asset
@@ -169,10 +169,10 @@ MonoBehaviour:
- difficultyIndex: 1
difficultyName: Hard
displayDifficultyName:
- difficultyValue: 0
- charterName:
+ difficultyValue: 12
+ charterName: MZLBE
color: {r: 1, g: 0.2, b: 0.2, a: 1}
- isAvailable: 0
+ isAvailable: 1
- difficultyIndex: 2
difficultyName: Farewell
displayDifficultyName:
@@ -206,10 +206,10 @@ MonoBehaviour:
- difficultyIndex: 1
difficultyName: Hard
displayDifficultyName:
- difficultyValue: 0
- charterName:
+ difficultyValue: 8
+ charterName: Mr.FE
color: {r: 1, g: 0.2, b: 0.2, a: 1}
- isAvailable: 0
+ isAvailable: 1
- difficultyIndex: 2
difficultyName: Moonbeam
displayDifficultyName:
diff --git a/Assets/Scripts/Game/GameElements/Track/Track.cs b/Assets/Scripts/Game/GameElements/Track/Track.cs
index 01ec98f9..daade199 100644
--- a/Assets/Scripts/Game/GameElements/Track/Track.cs
+++ b/Assets/Scripts/Game/GameElements/Track/Track.cs
@@ -48,6 +48,11 @@ namespace Ichni.RhythmGame
}
}
+ private void LateUpdate()
+ {
+ if(trackPathSubmodule != null) trackPathSubmodule.refreshedThisFrame = false;
+ }
+
public override void AfterInitialize()
{
base.AfterInitialize();
@@ -56,6 +61,18 @@ namespace Ichni.RhythmGame
{
trackPathSubmodule.ClosePath();
}
+
+ if(trackRendererSubmodule != null)
+ {
+ //var path = trackPathSubmodule!.path;
+
+ trackRendererSubmodule.meshGenerator.autoUpdate = false;
+ /*path.ResampleTransform();
+ path.Subscribe(trackRendererSubmodule.meshGenerator);
+ path.EditorUpdateConnectedNodes();
+ path.RebuildImmediate(true, true);*/
+ //path.EditorAwake();
+ }
}
diff --git a/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackPathSubmodule.cs b/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackPathSubmodule.cs
index 435c7f64..d5b00364 100644
--- a/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackPathSubmodule.cs
+++ b/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackPathSubmodule.cs
@@ -17,6 +17,8 @@ namespace Ichni.RhythmGame
public Track.TrackSamplingType trackSamplingType;
public bool isClosed;
+ public bool refreshedThisFrame = false;
+
public bool isShowingDisplay;
public TrackPathSubmodule(Track track, Track.TrackSpaceType trackSpaceType,
@@ -79,16 +81,17 @@ namespace Ichni.RhythmGame
public override void Refresh()
{
+ if(refreshedThisFrame) return;
+ refreshedThisFrame = true;
+
SetTrackSpaceType((int)trackSpaceType);
SetUpSplineComputer(trackSpaceType, trackSamplingType);
-
-
foreach (var pathNode in pathNodeList)
{
SetPathNode(pathNode);
}
ClosePath();
- path.Rebuild(true);
+ path.RebuildImmediate(true, true);
}
}
diff --git a/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackRendererSubmodule.cs b/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackRendererSubmodule.cs
index f3454c35..bbb732d4 100644
--- a/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackRendererSubmodule.cs
+++ b/Assets/Scripts/Game/GameElements/Track/TrackSubmodules/TrackRendererSubmodule.cs
@@ -3,6 +3,7 @@ using System.Collections;
using System.Collections.Generic;
using Dreamteck.Splines;
using Ichni.RhythmGame.Beatmap;
+using UniRx;
using Unity.VisualScripting;
using UnityEngine;
using Object = UnityEngine.Object;
diff --git a/Assets/Scripts/Manager/NoteJudgeManager.cs b/Assets/Scripts/Manager/NoteJudgeManager.cs
index 561b745c..5eb4c197 100644
--- a/Assets/Scripts/Manager/NoteJudgeManager.cs
+++ b/Assets/Scripts/Manager/NoteJudgeManager.cs
@@ -39,84 +39,6 @@ namespace Ichni
List tapSwipeList = inputUnitSwipeList.Where(x => x.isFirst).ToList();
List holdSwipeList = inputUnitSwipeList.Where(x => !x.isFirst).ToList();
- foreach (InputUnitTap inputUnitTap in inputUnitTapList)
- {
- List availableTaps = new List();
- foreach (Tap tap in checkingTapList)
- {
- if (tap.CheckJudgeAvailability(inputUnitTap))
- {
- availableTaps.Add(tap);
- }
- }
-
- List availableHolds = new List();
- foreach (Hold hold in checkingHoldList)
- {
- if (hold.CheckJudgeAvailability(inputUnitTap))
- {
- availableHolds.Add(hold);
- }
- }
-
- bool haveTap = availableTaps.Count > 0;
- bool haveHold = availableHolds.Count > 0;
-
- if (haveHold && haveTap)
- {
- List minHolds = GetAllMinNotes(availableHolds);
- List minTaps = GetAllMinNotes(availableTaps);
- Hold closestHold = minHolds[0];
- Tap closestTap = minTaps[0];
- if (closestHold.exactJudgeTime < closestTap.exactJudgeTime)
- {
- if (minHolds.Count == 1)
- {
- minHolds[0].ExecuteStartJudge();
- }
- else
- {
- GetNearestNote(minHolds, inputUnitTap.inputPosition).ExecuteStartJudge();
- }
- }
- else
- {
- if (minTaps.Count == 1)
- {
- minTaps[0].ExecuteStartJudge();
- }
- else
- {
- GetNearestNote(minTaps, inputUnitTap.inputPosition).ExecuteStartJudge();
- }
- }
- }
- else if (haveHold)
- {
- List minHolds = GetAllMinNotes(availableHolds);
- if (minHolds.Count == 1)
- {
- minHolds[0].ExecuteStartJudge();
- }
- else
- {
- GetNearestNote(minHolds, inputUnitTap.inputPosition).ExecuteStartJudge();
- }
- }
- else if (haveTap)
- {
- List minTaps = GetAllMinNotes(availableTaps);
- if (minTaps.Count == 1)
- {
- minTaps[0].ExecuteStartJudge();
- }
- else
- {
- GetNearestNote(minTaps, inputUnitTap.inputPosition).ExecuteStartJudge();
- }
- }
- }
-
foreach (InputUnitSwipe tapSwipe in tapSwipeList)
{
List availableFlicks = new List();
@@ -161,6 +83,121 @@ namespace Ichni
}
}
+ foreach (InputUnitTap inputUnitTap in inputUnitTapList)
+ {
+ List availableTaps = new List();
+ foreach (Tap tap in checkingTapList)
+ {
+ if (tap.CheckJudgeAvailability(inputUnitTap))
+ {
+ availableTaps.Add(tap);
+ }
+ }
+
+ List availableHolds = new List();
+ foreach (Hold hold in checkingHoldList)
+ {
+ if (hold.CheckJudgeAvailability(inputUnitTap))
+ {
+ availableHolds.Add(hold);
+ }
+ }
+
+ bool haveTap = availableTaps.Count > 0;
+ bool haveHold = availableHolds.Count > 0;
+
+ Flick closestFlick = null;
+ InputUnitSwipe assumedSwipe = new InputUnitSwipe(inputUnitTap.fingerId, inputUnitTap.inputPosition, true, true, Vector2.zero);
+ foreach (Flick flick in checkingFlickList)
+ {
+ if (flick.CheckJudgeAvailability(assumedSwipe))
+ {
+ if (closestFlick == null || flick.exactJudgeTime < closestFlick.exactJudgeTime)
+ {
+ closestFlick = flick;
+ }
+ }
+ }
+
+ if (haveHold && haveTap)
+ {
+ List minHolds = GetAllMinNotes(availableHolds);
+ List minTaps = GetAllMinNotes(availableTaps);
+ Hold closestHold = minHolds[0];
+ Tap closestTap = minTaps[0];
+ bool holdBlockedByFlick = false;
+ bool tapBlockedByFlick = false;
+
+ if (closestFlick != null)
+ {
+ if (closestFlick.exactJudgeTime < closestHold.exactJudgeTime)
+ {
+ holdBlockedByFlick = true;
+ }
+
+ if (closestFlick.exactJudgeTime < closestTap.exactJudgeTime)
+ {
+ tapBlockedByFlick = true;
+ }
+ }
+
+ if (!holdBlockedByFlick && closestHold.exactJudgeTime < closestTap.exactJudgeTime)
+ {
+ if (minHolds.Count == 1)
+ {
+ minHolds[0].ExecuteStartJudge();
+ }
+ else
+ {
+ GetNearestNote(minHolds, inputUnitTap.inputPosition).ExecuteStartJudge();
+ }
+ }
+ else if (!tapBlockedByFlick)
+ {
+ if (minTaps.Count == 1)
+ {
+ minTaps[0].ExecuteStartJudge();
+ }
+ else
+ {
+ GetNearestNote(minTaps, inputUnitTap.inputPosition).ExecuteStartJudge();
+ }
+ }
+ }
+ else if (haveHold)
+ {
+ List minHolds = GetAllMinNotes(availableHolds);
+ bool holdBlockedByFlick = closestFlick != null && closestFlick.exactJudgeTime < minHolds[0].exactJudgeTime;
+ if (!holdBlockedByFlick)
+ {
+ if (minHolds.Count == 1)
+ {
+ minHolds[0].ExecuteStartJudge();
+ }
+ else
+ {
+ GetNearestNote(minHolds, inputUnitTap.inputPosition).ExecuteStartJudge();
+ }
+ }
+ }
+ else if (haveTap)
+ {
+ List minTaps = GetAllMinNotes(availableTaps);
+ bool tapBlockedByFlick = closestFlick != null && closestFlick.exactJudgeTime < minTaps[0].exactJudgeTime;
+ if (!tapBlockedByFlick)
+ {
+ if (minTaps.Count == 1)
+ {
+ minTaps[0].ExecuteStartJudge();
+ }
+ else
+ {
+ GetNearestNote(minTaps, inputUnitTap.inputPosition).ExecuteStartJudge();
+ }
+ }
+ }
+ }
+
foreach (InputUnitTouch inputUnitTouch in inputUnitTouchList)
{
List availableStays = new List();
diff --git a/Assets/Shaders/TrackShader.shader b/Assets/Shaders/TrackShader.shader
index 291684a5..c759826b 100644
--- a/Assets/Shaders/TrackShader.shader
+++ b/Assets/Shaders/TrackShader.shader
@@ -44,7 +44,7 @@ Shader "Soullies/TrackShader"
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
- ZWrite Off
+ ZWrite [_ZWrite]
Offset 0 , 0
ColorMask RGBA
@@ -193,7 +193,7 @@ Shader "Soullies/TrackShader"
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
- ZWrite Off
+ ZWrite [_ZWrite]
Offset 0 , 0
ColorMask RGBA
@@ -564,7 +564,7 @@ Shader "Soullies/TrackShader"
}
/*ASEBEGIN
Version=19501
-Node;AmplifyShaderEditor.SamplerNode;6;-992,-272;Inherit;True;Property;_MainTexture;MainTexture;0;0;Create;True;0;0;0;False;0;False;-1;None;b48cbbfc5b4a8f243b7275d66a4961f7;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5
+Node;AmplifyShaderEditor.SamplerNode;6;-992,-272;Inherit;True;Property;_MainTexture;MainTexture;0;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5
Node;AmplifyShaderEditor.BreakToComponentsNode;10;-672,-272;Inherit;False;COLOR;1;0;COLOR;0,0,0,0;False;16;FLOAT;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT;5;FLOAT;6;FLOAT;7;FLOAT;8;FLOAT;9;FLOAT;10;FLOAT;11;FLOAT;12;FLOAT;13;FLOAT;14;FLOAT;15
Node;AmplifyShaderEditor.RangedFloatNode;75;-880,-480;Inherit;False;Property;_UseRedAsAlpha;UseRedAsAlpha;4;1;[Toggle];Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0
Node;AmplifyShaderEditor.Compare;74;-480,-496;Inherit;False;0;4;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT;0
@@ -577,10 +577,10 @@ Node;AmplifyShaderEditor.SimpleMultiplyOpNode;14;-16,-192;Inherit;False;2;2;0;CO
Node;AmplifyShaderEditor.Compare;88;256,0;Inherit;False;0;4;0;FLOAT;0;False;1;FLOAT;1;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;21;416,-144;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;51;-992,-64;Inherit;False;Property;_ZWrite;ZWrite;3;1;[Toggle];Create;True;0;0;0;True;0;False;1;1;0;1;0;1;FLOAT;0
-Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;118;832,-160;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit Forward;0;1;Sprite Unlit Forward;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalForward;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0
+Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;118;832,-160;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit Forward;0;1;Sprite Unlit Forward;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;True;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalForward;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;119;832,-160;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;SceneSelectionPass;0;2;SceneSelectionPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=SceneSelectionPass;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0
Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;120;832,-160;Float;False;False;-1;2;ASEMaterialInspector;0;1;New Amplify Shader;cf964e524c8e69742b1d21fbe2ebcc4a;True;ScenePickingPass;0;3;ScenePickingPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=Picking;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0
-Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;117;608,-144;Float;False;True;-1;2;ASEMaterialInspector;0;15;Soullies/TrackShader;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit;0;0;Sprite Unlit;4;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=Universal2D;False;False;0;Hidden/InternalErrorShader;0;0;Standard;3;Vertex Position;1;0;Debug Display;0;0;External Alpha;0;0;0;4;True;True;True;True;False;;False;0
+Node;AmplifyShaderEditor.TemplateMultiPassMasterNode;117;608,-144;Float;False;True;-1;2;ASEMaterialInspector;0;15;Soullies/TrackShader;cf964e524c8e69742b1d21fbe2ebcc4a;True;Sprite Unlit;0;0;Sprite Unlit;4;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;3;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;True;True;2;True;_ZWrite;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=Universal2D;False;False;0;Hidden/InternalErrorShader;0;0;Standard;3;Vertex Position;1;0;Debug Display;0;0;External Alpha;0;0;0;4;True;True;True;True;False;;False;0
WireConnection;10;0;6;0
WireConnection;74;0;75;0
WireConnection;74;2;10;0
@@ -598,4 +598,4 @@ WireConnection;21;0;14;0
WireConnection;21;1;88;0
WireConnection;117;1;21;0
ASEEND*/
-//CHKSM=D3EAFA73E676605688D2276ACED0FDE9B5D62424
\ No newline at end of file
+//CHKSM=8DEFFB8C934FE2E4AE5B0C44F80993219B1BC6D1
\ No newline at end of file
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/Android b/Assets/StreamingAssets/ThemeBundles/Android/Android
index 18158af8..9600912f 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Android/Android and b/Assets/StreamingAssets/ThemeBundles/Android/Android differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/Android.manifest b/Assets/StreamingAssets/ThemeBundles/Android/Android.manifest
index a061f166..6801b3f9 100644
--- a/Assets/StreamingAssets/ThemeBundles/Android/Android.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Android/Android.manifest
@@ -1,5 +1,5 @@
ManifestFileVersion: 0
-CRC: 3595225844
+CRC: 2390517000
AssetBundleManifest:
AssetBundleInfos:
Info_0:
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/basic b/Assets/StreamingAssets/ThemeBundles/Android/basic
index a62109a0..b0390ea6 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Android/basic and b/Assets/StreamingAssets/ThemeBundles/Android/basic differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/basic.manifest b/Assets/StreamingAssets/ThemeBundles/Android/basic.manifest
index c5c89b41..e5c08201 100644
--- a/Assets/StreamingAssets/ThemeBundles/Android/basic.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Android/basic.manifest
@@ -1,15 +1,15 @@
ManifestFileVersion: 0
-CRC: 2249597766
+CRC: 1523139742
Hashes:
AssetFileHash:
serializedVersion: 2
- Hash: 2ba69d6515f13209e710909d6846be18
+ Hash: cd078157b2d84041bc257d5383173b07
TypeTreeHash:
serializedVersion: 2
- Hash: 2fac9fa6ccd769aaec5cb21c4eae7330
+ Hash: f708a8f284dce7b5eb457597bce9300b
IncrementalBuildHash:
serializedVersion: 2
- Hash: 2ba69d6515f13209e710909d6846be18
+ Hash: cd078157b2d84041bc257d5383173b07
HashAppended: 0
ClassTypes:
- Class: 1
@@ -50,6 +50,8 @@ ClassTypes:
Script: {fileID: 11500000, guid: 0def5156137c6d14082064fa7b5d5247, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 9a7a990728bad4e9ba201e72267e7eca, type: 3}
+- Class: 114
+ Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
- Class: 114
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse b/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse
index ea9ef9ee..2e3e72ce 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse and b/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse.manifest b/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse.manifest
index 697f20f1..1c9fd3c7 100644
--- a/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Android/departure_to_multiverse.manifest
@@ -1,15 +1,15 @@
ManifestFileVersion: 0
-CRC: 1225735764
+CRC: 1338213537
Hashes:
AssetFileHash:
serializedVersion: 2
- Hash: d1aeae75c7506489cb922a113bd04ed5
+ Hash: e3e3c9de0b69a787ec8fc1d459d7197a
TypeTreeHash:
serializedVersion: 2
Hash: 44e0932c854fd38032b0ffaad72c6cbc
IncrementalBuildHash:
serializedVersion: 2
- Hash: d1aeae75c7506489cb922a113bd04ed5
+ Hash: e3e3c9de0b69a787ec8fc1d459d7197a
HashAppended: 0
ClassTypes:
- Class: 1
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit b/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit
index 8759f9bd..863b2436 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit and b/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit.manifest b/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit.manifest
index 879a2e66..d641e6da 100644
--- a/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Android/metropolis_on_orbit.manifest
@@ -1,15 +1,15 @@
ManifestFileVersion: 0
-CRC: 2394985873
+CRC: 1347338007
Hashes:
AssetFileHash:
serializedVersion: 2
- Hash: 1010c0ed6746a5afc3fad44431c04924
+ Hash: b937e2a98087c9e0ce663ee6949d2a43
TypeTreeHash:
serializedVersion: 2
Hash: 3472206654487b82c27a7fa108d66b8b
IncrementalBuildHash:
serializedVersion: 2
- Hash: 1010c0ed6746a5afc3fad44431c04924
+ Hash: b937e2a98087c9e0ce663ee6949d2a43
HashAppended: 0
ClassTypes:
- Class: 1
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64
index 5436d9d4..90b44a06 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 and b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest
index 842b3f4f..a0d86cc2 100644
--- a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest
@@ -1,5 +1,5 @@
ManifestFileVersion: 0
-CRC: 3526957379
+CRC: 3422794678
AssetBundleManifest:
AssetBundleInfos:
Info_0:
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/basic b/Assets/StreamingAssets/ThemeBundles/Windows64/basic
index 1ca10311..aff2510b 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Windows64/basic and b/Assets/StreamingAssets/ThemeBundles/Windows64/basic differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/basic.manifest b/Assets/StreamingAssets/ThemeBundles/Windows64/basic.manifest
index 654a29ee..dc438b8d 100644
--- a/Assets/StreamingAssets/ThemeBundles/Windows64/basic.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Windows64/basic.manifest
@@ -1,15 +1,15 @@
ManifestFileVersion: 0
-CRC: 191812374
+CRC: 1301441084
Hashes:
AssetFileHash:
serializedVersion: 2
- Hash: 82cbc3d754f10257de1f408d6adaa676
+ Hash: 8f2c80b3577135c65be7a1e001967d86
TypeTreeHash:
serializedVersion: 2
- Hash: 2fac9fa6ccd769aaec5cb21c4eae7330
+ Hash: 29a77041670e82941819ca75fd4187a4
IncrementalBuildHash:
serializedVersion: 2
- Hash: 82cbc3d754f10257de1f408d6adaa676
+ Hash: 8f2c80b3577135c65be7a1e001967d86
HashAppended: 0
ClassTypes:
- Class: 1
@@ -42,6 +42,8 @@ ClassTypes:
Script: {fileID: 11500000, guid: 9541d86e2fd84c1d9990edf0852d74ab, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: e90e53c61dbed234e90f7b745fc89ba1, type: 3}
+- Class: 114
+ Script: {fileID: 11500000, guid: d96a6c3ea7d28744aacc367115a71af5, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
- Class: 114
@@ -68,6 +70,8 @@ ClassTypes:
Script: {fileID: 11500000, guid: f92b9b8f89de544adaa001ccfdf7eae4, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 344445a89b4f74a0e9a0a766903df87e, type: 3}
+- Class: 114
+ Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 212
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse
index cd0b5ea5..30744177 100644
Binary files a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse and b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse differ
diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest
index cc361dfd..9d91f159 100644
--- a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest
+++ b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest
@@ -1,15 +1,15 @@
ManifestFileVersion: 0
-CRC: 2683956028
+CRC: 1346824209
Hashes:
AssetFileHash:
serializedVersion: 2
- Hash: 69862e7ccc66697f9100c39b1ad9f9d2
+ Hash: c013be4b20870a0ecb430cb25c9c408e
TypeTreeHash:
serializedVersion: 2
Hash: 44e0932c854fd38032b0ffaad72c6cbc
IncrementalBuildHash:
serializedVersion: 2
- Hash: 69862e7ccc66697f9100c39b1ad9f9d2
+ Hash: c013be4b20870a0ecb430cb25c9c408e
HashAppended: 0
ClassTypes:
- Class: 1
diff --git a/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat
new file mode 100644
index 00000000..6abf634f
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat
@@ -0,0 +1,142 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+ serializedVersion: 8
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: PseudoShadow
+ m_Shader: {fileID: 4800000, guid: c021be98004cdbc488ba46d630d8c33b, type: 3}
+ m_Parent: {fileID: 0}
+ m_ModifiedSerializedProperties: 0
+ m_ValidKeywords: []
+ m_InvalidKeywords:
+ - USE_RIM
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 1
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: -1
+ stringTagMap: {}
+ disabledShaderPasses: []
+ m_LockedProperties:
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _BaseMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailAlbedoMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailNormalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 5392668a037c8bf49b4479948ee1f3fd, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicGlossMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OcclusionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _SpecGlossMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - unity_Lightmaps:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - unity_LightmapsInd:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - unity_ShadowMasks:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Ints: []
+ m_Floats:
+ - _AlphaClip: 0
+ - _AlphaToMask: 0
+ - _Blend: 0
+ - _BlendModePreserveSpecular: 1
+ - _BumpScale: 1
+ - _ClearCoatMask: 0
+ - _ClearCoatSmoothness: 0
+ - _Cull: 2
+ - _Cutoff: 0.5
+ - _DetailAlbedoMapScale: 1
+ - _DetailNormalMapScale: 1
+ - _DstBlend: 0
+ - _DstBlendAlpha: 0
+ - _EnvironmentReflections: 1
+ - _GlossMapScale: 0
+ - _Glossiness: 0
+ - _GlossyReflections: 0
+ - _Metallic: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.005
+ - _QueueOffset: 0
+ - _ReceiveShadows: 1
+ - _RimPower: 3
+ - _ShadowSmoothness: 0.74
+ - _ShadowStrength: 1
+ - _ShadowThreshold: 0.11
+ - _Smoothness: 0.5
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _SrcBlendAlpha: 1
+ - _Surface: 0
+ - _UseRim: 1
+ - _UseWorldLight: 0
+ - _WorkflowMode: 1
+ - _ZWrite: 1
+ m_Colors:
+ - _BaseColor: {r: 1, g: 1, b: 1, a: 1}
+ - _Color: {r: 0.6698113, g: 0.609781, b: 0.609781, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+ - _FakeLightDir: {r: 0.23, g: 0.24, b: 0.24, a: 0}
+ - _RimColor: {r: 1, g: 1, b: 1, a: 1}
+ - _ShadowColor: {r: 0.22961909, g: 0.22961909, b: 0.299, a: 1}
+ - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
+ m_BuildTextureStacks: []
+--- !u!114 &1391350818744910211
+MonoBehaviour:
+ m_ObjectHideFlags: 11
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ version: 7
diff --git a/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat.meta b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat.meta
new file mode 100644
index 00000000..541e4ff9
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7a6fc2b30c0629b4588a962feb20e76e
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader
new file mode 100644
index 00000000..21b3381d
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader
@@ -0,0 +1,104 @@
+Shader "Custom/ImprovedPseudoShadow" {
+ Properties {
+ [Header(Base)]
+ _MainTex ("Texture", 2D) = "white" {}
+ _Color ("Main Color", Color) = (1,1,1,1)
+
+ [Header(Shadow)]
+ _ShadowColor ("Shadow Color", Color) = (0.2, 0.2, 0.3, 1) // 默认偏蓝的阴影
+ _ShadowThreshold ("Shadow Threshold", Range(-1,1)) = 0.0
+ _ShadowSmoothness ("Shadow Smoothness", Range(0,1)) = 0.1
+
+ [Header(Lighting Mode)]
+ _UseWorldLight ("Use Fixed World Light?", Range(0,1)) = 0
+ _FakeLightDir ("Fake Light Dir (XYZ)", Vector) = (0.5, 1, 0.5, 0) // 模拟从右上方来的光
+ }
+
+ SubShader {
+ Tags { "RenderType"="Transparent" }
+ LOD 100
+
+ Pass {
+ CGPROGRAM
+ #pragma vertex vert
+ #pragma fragment frag
+ // 开启 GPU Instancing 支持
+ #pragma multi_compile_instancing
+ #include "UnityCG.cginc"
+
+ struct appdata {
+ float4 vertex : POSITION;
+ float3 normal : NORMAL;
+ float2 uv : TEXCOORD0;
+ UNITY_VERTEX_INPUT_INSTANCE_ID // Instancing ID
+ };
+
+ struct v2f {
+ float2 uv : TEXCOORD0;
+ float4 vertex : SV_POSITION;
+ float lightFactor : TEXCOORD1; // 传递光照因子
+ UNITY_VERTEX_INPUT_INSTANCE_ID // Instancing ID
+ };
+
+ sampler2D _MainTex;
+ float4 _MainTex_ST;
+
+ // 声明 Instancing 属性变量
+ UNITY_INSTANCING_BUFFER_START(Props)
+ UNITY_DEFINE_INSTANCED_PROP(fixed4, _Color)
+ UNITY_DEFINE_INSTANCED_PROP(fixed4, _ShadowColor)
+ UNITY_DEFINE_INSTANCED_PROP(float4, _FakeLightDir)
+ UNITY_DEFINE_INSTANCED_PROP(float, _ShadowThreshold)
+ UNITY_DEFINE_INSTANCED_PROP(float, _ShadowSmoothness)
+ UNITY_DEFINE_INSTANCED_PROP(float, _UseWorldLight)
+ UNITY_INSTANCING_BUFFER_END(Props)
+
+ v2f vert (appdata v) {
+ v2f o;
+ UNITY_SETUP_INSTANCE_ID(v);
+ UNITY_TRANSFER_INSTANCE_ID(o, v);
+
+ o.vertex = UnityObjectToClipPos(v.vertex);
+ o.uv = TRANSFORM_TEX(v.uv, _MainTex);
+
+ float3 normalWorld = UnityObjectToWorldNormal(v.normal);
+ float3 lightDir;
+
+ float useWorldLight = UNITY_ACCESS_INSTANCED_PROP(Props, _UseWorldLight);
+ float3 fakeDir = normalize(UNITY_ACCESS_INSTANCED_PROP(Props, _FakeLightDir).xyz);
+ float3 viewDir = normalize(WorldSpaceViewDir(v.vertex));
+ // 用lerp实现分支
+ lightDir = normalize(lerp(viewDir, fakeDir, useWorldLight));
+
+ float dotProduct = dot(normalWorld, lightDir);
+ o.lightFactor = dotProduct;
+ return o;
+ }
+
+ fixed4 frag (v2f i) : SV_Target {
+ UNITY_SETUP_INSTANCE_ID(i);
+
+ // 获取属性
+ fixed4 mainColor = UNITY_ACCESS_INSTANCED_PROP(Props, _Color);
+ fixed4 shadowColor = UNITY_ACCESS_INSTANCED_PROP(Props, _ShadowColor);
+ float threshold = UNITY_ACCESS_INSTANCED_PROP(Props, _ShadowThreshold);
+ float smoothness = UNITY_ACCESS_INSTANCED_PROP(Props, _ShadowSmoothness);
+
+ fixed4 texCol = tex2D(_MainTex, i.uv) * mainColor;
+
+ // 改进2:更平滑且可控的阈值计算 (Smoothstep)
+ // lightFactor 越大说明越直接面对光源
+ float lightIntensity = smoothstep(threshold, threshold + smoothness, i.lightFactor);
+
+ // 改进3:基于光照强度的颜色插值 (Lerp)
+ // 0 (背光) -> ShadowColor
+ // 1 (受光) -> Texture Color
+ fixed3 finalRGB = lerp(shadowColor.rgb * texCol.rgb, texCol.rgb, lightIntensity);
+
+ return fixed4(finalRGB, texCol.a);
+ }
+ ENDCG
+ }
+ }
+ FallBack "VertexLit"
+}
\ No newline at end of file
diff --git a/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader.meta b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader.meta
new file mode 100644
index 00000000..c81995e6
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Materials/PseudoShadow.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: c021be98004cdbc488ba46d630d8c33b
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ThemeBundles/Basic/Prefabs/Capsule.prefab b/Assets/ThemeBundles/Basic/Prefabs/Capsule.prefab
index bd88a1b5..a7f05f95 100644
--- a/Assets/ThemeBundles/Basic/Prefabs/Capsule.prefab
+++ b/Assets/ThemeBundles/Basic/Prefabs/Capsule.prefab
@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 7526262760779641485}
- component: {fileID: 8960768024022624885}
- component: {fileID: 6324027245704733737}
- - component: {fileID: 4483402955796276491}
+ - component: {fileID: 3704386079632660708}
m_Layer: 0
m_Name: Capsule
m_TagString: Untagged
@@ -62,7 +62,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
+ - {fileID: 2100000, guid: 7a6fc2b30c0629b4588a962feb20e76e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@@ -84,7 +84,7 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
---- !u!114 &4483402955796276491
+--- !u!114 &3704386079632660708
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -93,7 +93,7 @@ MonoBehaviour:
m_GameObject: {fileID: 4776931580326963019}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
+ m_Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
@@ -124,8 +124,12 @@ MonoBehaviour:
elementName:
tags: []
parentElement: {fileID: 0}
- connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
isStatic: 0
+ shadowRenderer: {fileID: 6324027245704733737}
+ shadowThreshold: 0.2
+ shadowSmoothness: 0.5
+ useWorldLight: 0
+ fakeLightDir: {x: 0.5, y: 1, z: 0.5}
diff --git a/Assets/ThemeBundles/Basic/Prefabs/Cube.prefab b/Assets/ThemeBundles/Basic/Prefabs/Cube.prefab
index c0c714b7..fe500731 100644
--- a/Assets/ThemeBundles/Basic/Prefabs/Cube.prefab
+++ b/Assets/ThemeBundles/Basic/Prefabs/Cube.prefab
@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 8326979962366963383}
- component: {fileID: 5066471978068241793}
- component: {fileID: 4412636128543054888}
- - component: {fileID: 4567346259325766961}
+ - component: {fileID: 3289815003423494910}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
@@ -62,7 +62,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
+ - {fileID: 2100000, guid: 7a6fc2b30c0629b4588a962feb20e76e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@@ -84,7 +84,7 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
---- !u!114 &4567346259325766961
+--- !u!114 &3289815003423494910
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -93,7 +93,7 @@ MonoBehaviour:
m_GameObject: {fileID: 8979559337900216953}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
+ m_Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
@@ -124,8 +124,12 @@ MonoBehaviour:
elementName:
tags: []
parentElement: {fileID: 0}
- connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
isStatic: 0
+ shadowRenderer: {fileID: 4412636128543054888}
+ shadowThreshold: 0.2
+ shadowSmoothness: 0.5
+ useWorldLight: 0
+ fakeLightDir: {x: 0.5, y: 1, z: 0.5}
diff --git a/Assets/ThemeBundles/Basic/Prefabs/Cylinder.prefab b/Assets/ThemeBundles/Basic/Prefabs/Cylinder.prefab
index 4bc60d99..caa56fae 100644
--- a/Assets/ThemeBundles/Basic/Prefabs/Cylinder.prefab
+++ b/Assets/ThemeBundles/Basic/Prefabs/Cylinder.prefab
@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 2900861413064581388}
- component: {fileID: 2026692739104920914}
- component: {fileID: 5197224235337463214}
- - component: {fileID: 8321289235289763712}
+ - component: {fileID: 3515272920379503278}
m_Layer: 0
m_Name: Cylinder
m_TagString: Untagged
@@ -62,7 +62,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
+ - {fileID: 2100000, guid: 7a6fc2b30c0629b4588a962feb20e76e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@@ -84,7 +84,7 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
---- !u!114 &8321289235289763712
+--- !u!114 &3515272920379503278
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -93,7 +93,7 @@ MonoBehaviour:
m_GameObject: {fileID: 3921473257109109097}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
+ m_Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
@@ -124,8 +124,12 @@ MonoBehaviour:
elementName:
tags: []
parentElement: {fileID: 0}
- connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
isStatic: 0
+ shadowRenderer: {fileID: 5197224235337463214}
+ shadowThreshold: 0.2
+ shadowSmoothness: 0.5
+ useWorldLight: 0
+ fakeLightDir: {x: 0.5, y: 1, z: 0.5}
diff --git a/Assets/ThemeBundles/Basic/Prefabs/Plane.prefab b/Assets/ThemeBundles/Basic/Prefabs/Plane.prefab
index b89c364b..70db64eb 100644
--- a/Assets/ThemeBundles/Basic/Prefabs/Plane.prefab
+++ b/Assets/ThemeBundles/Basic/Prefabs/Plane.prefab
@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 7354592236656138398}
- component: {fileID: 6487775561638814823}
- component: {fileID: 366093218188168963}
- - component: {fileID: 3744871356660366508}
+ - component: {fileID: 4672126916262746676}
m_Layer: 0
m_Name: Plane
m_TagString: Untagged
@@ -62,7 +62,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
+ - {fileID: 2100000, guid: 7a6fc2b30c0629b4588a962feb20e76e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@@ -84,7 +84,7 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
---- !u!114 &3744871356660366508
+--- !u!114 &4672126916262746676
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -93,7 +93,7 @@ MonoBehaviour:
m_GameObject: {fileID: 1806162637330541972}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
+ m_Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
@@ -124,8 +124,12 @@ MonoBehaviour:
elementName:
tags: []
parentElement: {fileID: 0}
- connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
isStatic: 0
+ shadowRenderer: {fileID: 366093218188168963}
+ shadowThreshold: 0.2
+ shadowSmoothness: 0.5
+ useWorldLight: 0
+ fakeLightDir: {x: 0.5, y: 1, z: 0.5}
diff --git a/Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab b/Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab
index 5fe78e32..a625ef1c 100644
--- a/Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab
+++ b/Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab
@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 1384644069406249078}
- component: {fileID: 7001667112651328718}
- component: {fileID: 6336689653934561026}
- - component: {fileID: 8389141473485471111}
+ - component: {fileID: 6450138934524257130}
m_Layer: 0
m_Name: Sphere
m_TagString: Untagged
@@ -62,7 +62,7 @@ MeshRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
+ - {fileID: 2100000, guid: 7a6fc2b30c0629b4588a962feb20e76e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@@ -84,7 +84,7 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
---- !u!114 &8389141473485471111
+--- !u!114 &6450138934524257130
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -93,7 +93,7 @@ MonoBehaviour:
m_GameObject: {fileID: 4338808605130404764}
m_Enabled: 1
m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
+ m_Script: {fileID: 11500000, guid: 23b337068935c374fbb29aae9e944d7b, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
@@ -124,8 +124,12 @@ MonoBehaviour:
elementName:
tags: []
parentElement: {fileID: 0}
- connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
isStatic: 0
+ shadowRenderer: {fileID: 6336689653934561026}
+ shadowThreshold: 0.2
+ shadowSmoothness: 0.5
+ useWorldLight: 0
+ fakeLightDir: {x: 0.5, y: 1, z: 0.5}
diff --git a/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs b/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs
new file mode 100644
index 00000000..013a4383
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs
@@ -0,0 +1,90 @@
+using System;
+using UnityEngine;
+using Ichni.RhythmGame;
+using Ichni.RhythmGame.Beatmap;
+using System.Collections.Generic;
+using Beatmap;
+
+namespace Ichni.RhythmGame
+{
+ // 以EnvironmentObject为基底,支持伪阴影shader参数刷新
+ public class BasicEnvironmentObject : EnvironmentObject
+ {
+ [Header("Pseudo Shadow Settings")]
+ public Renderer shadowRenderer; // 指向带有伪阴影shader的Renderer
+
+ [Range(-1, 1)] public float shadowThreshold = 0.2f;
+ [Range(0, 1)] public float shadowSmoothness = 0.5f;
+ public bool useWorldLight = false;
+ public Vector3 fakeLightDir = new Vector3(0.5f, 1, 0.5f);
+ public override bool haveEmission => true;
+ public static BasicEnvironmentObject GenerateElement(string elementName, Guid id, List tags,
+ bool isFirstGenerated, string themeBundleName, string objectName, GameElement parentElement,
+ bool isStatic,
+ float shadowThreshold, float shadowSmoothness, bool useWorldLight, Vector3 fakeLightDir)
+ {
+ BasicEnvironmentObject basicEnvObj = EnvironmentObject.GenerateElement(elementName, id, tags,
+ isFirstGenerated, themeBundleName, objectName, parentElement, isStatic).GetComponent();
+
+
+ basicEnvObj.shadowThreshold = shadowThreshold;
+ basicEnvObj.shadowSmoothness = shadowSmoothness;
+ basicEnvObj.useWorldLight = useWorldLight;
+ basicEnvObj.fakeLightDir = fakeLightDir;
+ return basicEnvObj;
+ }
+ public override void Refresh()
+ {
+ base.Refresh();
+ if (shadowRenderer == null || shadowRenderer.material == null) return;
+ var mat = shadowRenderer.material;
+ mat.SetColor("_Color", colorSubmodule.currentBaseColor);
+ mat.SetColor("_ShadowColor", colorSubmodule.currentEmissionColor);
+ mat.SetFloat("_ShadowThreshold", shadowThreshold);
+ mat.SetFloat("_ShadowSmoothness", shadowSmoothness);
+ mat.SetVector("_FakeLightDir", new Vector4(fakeLightDir.x, fakeLightDir.y, fakeLightDir.z, 0));
+ mat.SetFloat("_UseWorldLight", useWorldLight ? 1 : 0);
+ }
+
+ public override void SaveBM()
+ {
+ base.SaveBM();
+ matchedBM = new BasicEnvironmentObject_BM(elementName, elementGuid, tags, parentElement.matchedBM as GameElement_BM,
+ themeBundleName, objectName, isStatic,
+ shadowThreshold, shadowSmoothness, useWorldLight, fakeLightDir);
+ }
+ }
+}
+
+namespace Beatmap
+{
+ public class BasicEnvironmentObject_BM : EnvironmentObject_BM
+ {
+
+ public float shadowThreshold;
+ public float shadowSmoothness;
+ public bool useWorldLight;
+ public Vector3 fakeLightDir;
+
+ public BasicEnvironmentObject_BM() { }
+
+ public BasicEnvironmentObject_BM(string elementName, Guid elementGuid, List tags, GameElement_BM parentElement,
+ string themeBundleName, string objectName, bool isStatic,
+ float shadowThreshold, float shadowSmoothness, bool useWorldLight, Vector3 fakeLightDir)
+ : base(elementName, elementGuid, tags, parentElement, themeBundleName, objectName, isStatic)
+ {
+
+ this.shadowThreshold = shadowThreshold;
+ this.shadowSmoothness = shadowSmoothness;
+ this.useWorldLight = useWorldLight;
+ this.fakeLightDir = fakeLightDir;
+ }
+
+ public override void ExecuteBM()
+ {
+ matchedElement = BasicEnvironmentObject.GenerateElement(elementName, elementGuid, tags, false,
+ themeBundleName, objectName, GetElement(attachedElementGuid), isStatic,
+ shadowThreshold, shadowSmoothness, useWorldLight, fakeLightDir);
+ }
+ }
+}
diff --git a/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs.meta b/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs.meta
new file mode 100644
index 00000000..1c9e63f5
--- /dev/null
+++ b/Assets/ThemeBundles/Basic/Scripts/EnvironmentObjects/BasicEnvironmentObject.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 23b337068935c374fbb29aae9e944d7b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ThemeBundles/DepartureToMultiverse/Scripts/DTMTrail.cs b/Assets/ThemeBundles/DepartureToMultiverse/Scripts/DTMTrail.cs
index dfce62a1..2ace40bf 100644
--- a/Assets/ThemeBundles/DepartureToMultiverse/Scripts/DTMTrail.cs
+++ b/Assets/ThemeBundles/DepartureToMultiverse/Scripts/DTMTrail.cs
@@ -71,8 +71,8 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
base.WhenStart();
trailRenderer.emitting = true;
trailRenderer.Clear();
- headPoint.gameObject.SetActive(false);
- headCircle.gameObject.SetActive(false);
+ //headPoint.gameObject.SetActive(false);
+ //headCircle.gameObject.SetActive(false);
}
public override void Refresh()
@@ -129,8 +129,8 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
enableHeadSequence.Join(headCircle.transform.DOScale(headSize, enableProcessTime).SetEase(Ease.OutQuad));
enableHeadSequence.OnStart(() =>
{
- headPoint.gameObject.SetActive(true);
- headCircle.gameObject.SetActive(true);
+ //headPoint.gameObject.SetActive(true);
+ //headCircle.gameObject.SetActive(true);
});
enableHeadSequence.Play();
}
@@ -145,8 +145,8 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
disableHeadSequence.Join(headCircle.transform.DOScale(0, enableProcessTime).SetEase(Ease.OutQuad));
disableHeadSequence.OnComplete(() =>
{
- headPoint.gameObject.SetActive(false);
- headCircle.gameObject.SetActive(false);
+ //headPoint.gameObject.SetActive(false);
+ //headCircle.gameObject.SetActive(false);
});
disableHeadSequence.Play();
}
diff --git a/UserSettings/Layouts/CurrentMaximizeLayout.dwlt b/UserSettings/Layouts/CurrentMaximizeLayout.dwlt
index 0d6a4a83..48cc379c 100644
--- a/UserSettings/Layouts/CurrentMaximizeLayout.dwlt
+++ b/UserSettings/Layouts/CurrentMaximizeLayout.dwlt
@@ -19,286 +19,14 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 30
- width: 1706.6667
- height: 819.3334
+ width: 1706.6666
+ height: 819.3333
m_MinSize: {x: 300, y: 100}
m_MaxSize: {x: 24288, y: 16192}
vertical: 0
- controlID: 8959
+ controlID: 17109
draggingID: 0
--- !u!114 &2
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_MinSize: {x: 200, y: 200}
- m_MaxSize: {x: 4000, y: 4000}
- m_TitleContent:
- m_Text: Game
- m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000,
- type: 0}
- m_Tooltip:
- m_Pos:
- serializedVersion: 2
- x: 265.33334
- y: 72.66667
- width: 926.6666
- height: 535
- m_SerializedDataModeController:
- m_DataMode: 0
- m_PreferredDataMode: 0
- m_SupportedDataModes:
- isAutomatic: 1
- m_ViewDataDictionary: {fileID: 0}
- m_OverlayCanvas:
- m_LastAppliedPresetName: Default
- m_SaveData: []
- m_OverlaysVisible: 1
- m_SerializedViewNames:
- - UnityEditor.DeviceSimulation.SimulatorWindow
- m_SerializedViewValues:
- - D:\Projects\ichni Official\Library\PlayModeViewStates\fcf862737d27629438090c00190a3d53
- m_PlayModeViewName: GameView
- m_ShowGizmos: 0
- m_TargetDisplay: 0
- m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
- m_TargetSize: {x: 1920, y: 1080}
- m_TextureFilterMode: 0
- m_TextureHideFlags: 61
- m_RenderIMGUI: 1
- m_EnterPlayModeBehavior: 0
- m_UseMipMap: 0
- m_VSyncEnabled: 0
- m_Gizmos: 0
- m_Stats: 0
- m_SelectedSizes: 03000000000000000000000006000000000000000000000000000000000000000000000000000000
- m_ZoomArea:
- m_HRangeLocked: 0
- m_VRangeLocked: 0
- hZoomLockedByDefault: 0
- vZoomLockedByDefault: 0
- m_HBaseRangeMin: -640
- m_HBaseRangeMax: 640
- m_VBaseRangeMin: -360
- m_VBaseRangeMax: 360
- m_HAllowExceedBaseRangeMin: 1
- m_HAllowExceedBaseRangeMax: 1
- m_VAllowExceedBaseRangeMin: 1
- m_VAllowExceedBaseRangeMax: 1
- m_ScaleWithWindow: 0
- m_HSlider: 0
- m_VSlider: 0
- m_IgnoreScrollWheelUntilClicked: 0
- m_EnableMouseInput: 0
- m_EnableSliderZoomHorizontal: 0
- m_EnableSliderZoomVertical: 0
- m_UniformScale: 1
- m_UpDirection: 1
- m_DrawArea:
- serializedVersion: 2
- x: 0
- y: 21
- width: 926.6666
- height: 514
- m_Scale: {x: 0.7138889, y: 0.7138889}
- m_Translation: {x: 463.3333, y: 257}
- m_MarginLeft: 0
- m_MarginRight: 0
- m_MarginTop: 0
- m_MarginBottom: 0
- m_LastShownAreaInsideMargins:
- serializedVersion: 2
- x: -649.0272
- y: -360
- width: 1298.0544
- height: 720
- m_MinimalGUI: 1
- m_defaultScale: 0.7138889
- m_LastWindowPixelSize: {x: 1390, y: 802.5}
- m_ClearInEditMode: 1
- m_NoCameraWarning: 1
- m_LowResolutionForAspectRatios: 00000000000000000000
- m_XRRenderMode: 0
- m_RenderTexture: {fileID: 0}
- m_showToolbar: 1
---- !u!114 &3
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_Children:
- - {fileID: 4}
- - {fileID: 10}
- m_Position:
- serializedVersion: 2
- x: 0
- y: 0
- width: 1194
- height: 819.3334
- m_MinSize: {x: 200, y: 100}
- m_MaxSize: {x: 16192, y: 16192}
- vertical: 1
- controlID: 8960
- draggingID: 0
---- !u!114 &4
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_Children:
- - {fileID: 5}
- - {fileID: 7}
- m_Position:
- serializedVersion: 2
- x: 0
- y: 0
- width: 1194
- height: 556
- m_MinSize: {x: 200, y: 50}
- m_MaxSize: {x: 16192, y: 8096}
- vertical: 0
- controlID: 8961
- draggingID: 0
---- !u!114 &5
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_Children: []
- m_Position:
- serializedVersion: 2
- x: 0
- y: 0
- width: 265.33334
- height: 556
- m_MinSize: {x: 201, y: 221}
- m_MaxSize: {x: 4001, y: 4021}
- m_ActualView: {fileID: 6}
- m_Panes:
- - {fileID: 6}
- m_Selected: 0
- m_LastSelected: 0
---- !u!114 &6
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_MinSize: {x: 200, y: 200}
- m_MaxSize: {x: 4000, y: 4000}
- m_TitleContent:
- m_Text: Hierarchy
- m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000,
- type: 0}
- m_Tooltip:
- m_Pos:
- serializedVersion: 2
- x: 0
- y: 72.66667
- width: 264.33334
- height: 535
- m_SerializedDataModeController:
- m_DataMode: 0
- m_PreferredDataMode: 0
- m_SupportedDataModes:
- isAutomatic: 1
- m_ViewDataDictionary: {fileID: 0}
- m_OverlayCanvas:
- m_LastAppliedPresetName: Default
- m_SaveData: []
- m_OverlaysVisible: 1
- m_SceneHierarchy:
- m_TreeViewState:
- scrollPos: {x: 0, y: 0}
- m_SelectedIDs:
- m_LastClickedID: 0
- m_ExpandedIDs: 4248f2ff60b8f2ff6cbef2ffc043f3ffa40ef4ff0261f4ff56e6f4ff5450f5ff52bff5ffc4eaf5fff4aff6fff424f8ff0adaf8ff0edaf8ff14daf8ff1cdaf8ff12e4f8ff22cef9ff8c4bfbff2cc3fdffea06feffb0b1ffffb8b1ffffa2b7ffff62b9ffff66b9ffff6cb9ffff74b9ffffdcc2ffffaceeffff42f1fffff0fafffff4ffffff9a500100
- m_RenameOverlay:
- m_UserAcceptedRename: 0
- m_Name:
- m_OriginalName:
- m_EditFieldRect:
- serializedVersion: 2
- x: 0
- y: 0
- width: 0
- height: 0
- m_UserData: 0
- m_IsWaitingForDelay: 0
- m_IsRenaming: 0
- m_OriginalEventType: 11
- m_IsRenamingFilename: 0
- m_ClientGUIView: {fileID: 5}
- m_SearchString:
- m_ExpandedScenes: []
- m_CurrenRootInstanceID: 0
- m_LockTracker:
- m_IsLocked: 0
- m_CurrentSortingName: TransformSorting
- m_WindowGUID: 4c969a2b90040154d917609493e03593
---- !u!114 &7
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
- m_Name: GameView
- m_EditorClassIdentifier:
- m_Children: []
- m_Position:
- serializedVersion: 2
- x: 265.33334
- y: 0
- width: 928.6666
- height: 556
- m_MinSize: {x: 202, y: 221}
- m_MaxSize: {x: 4002, y: 4021}
- m_ActualView: {fileID: 2}
- m_Panes:
- - {fileID: 8}
- - {fileID: 9}
- - {fileID: 2}
- m_Selected: 2
- m_LastSelected: 0
---- !u!114 &8
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@@ -322,7 +50,7 @@ MonoBehaviour:
x: 265.33334
y: 72.66667
width: 926.6666
- height: 535
+ height: 540.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -720,9 +448,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
- m_Target: {x: 288.77197, y: -7.729402, z: -7.68663}
+ m_Target: {x: 13.102425, y: -33.58494, z: 413.31577}
speed: 2
- m_Value: {x: 288.77197, y: -7.729402, z: -7.68663}
+ m_Value: {x: 13.102425, y: -33.58494, z: 413.31577}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@@ -768,13 +496,13 @@ MonoBehaviour:
m_GridAxis: 1
m_gridOpacity: 0.5
m_Rotation:
- m_Target: {x: -0.06900473, y: -0.927394, z: 0.21303548, w: -0.30020672}
+ m_Target: {x: -0.31153548, y: -0.01798, z: 0.0057953945, w: -0.9502247}
speed: 2
- m_Value: {x: 0.06900473, y: 0.927394, z: -0.2130355, w: 0.30020672}
+ m_Value: {x: -0.31145713, y: -0.021777071, z: 0.0070402985, w: -0.9499846}
m_Size:
- m_Target: 3.7162945
+ m_Target: 63.325985
speed: 2
- m_Value: 3.7162945
+ m_Value: 63.325985
m_Ortho:
m_Target: 0
speed: 2
@@ -792,14 +520,184 @@ MonoBehaviour:
m_FarClip: 1000
m_DynamicClip: 1
m_OcclusionCulling: 0
- m_LastSceneViewRotation: {x: -0.039927594, y: 0.94078374, z: -0.118977636, w: -0.31543952}
+ m_LastSceneViewRotation: {x: -0.06900473, y: -0.927394, z: 0.21303548, w: -0.30020672}
m_LastSceneViewOrtho: 0
m_ReplacementShader: {fileID: 0}
m_ReplacementString:
m_SceneVisActive: 1
m_LastLockedObject: {fileID: 0}
m_ViewIsLockedToObject: 0
---- !u!114 &9
+--- !u!114 &3
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Children:
+ - {fileID: 4}
+ - {fileID: 10}
+ m_Position:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 1194
+ height: 819.3333
+ m_MinSize: {x: 200, y: 100}
+ m_MaxSize: {x: 16192, y: 16192}
+ vertical: 1
+ controlID: 17110
+ draggingID: 0
+--- !u!114 &4
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Children:
+ - {fileID: 5}
+ - {fileID: 7}
+ m_Position:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 1194
+ height: 561.3333
+ m_MinSize: {x: 200, y: 50}
+ m_MaxSize: {x: 16192, y: 8096}
+ vertical: 0
+ controlID: 17111
+ draggingID: 0
+--- !u!114 &5
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Children: []
+ m_Position:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 265.33334
+ height: 561.3333
+ m_MinSize: {x: 201, y: 221}
+ m_MaxSize: {x: 4001, y: 4021}
+ m_ActualView: {fileID: 6}
+ m_Panes:
+ - {fileID: 6}
+ m_Selected: 0
+ m_LastSelected: 0
+--- !u!114 &6
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_MinSize: {x: 200, y: 200}
+ m_MaxSize: {x: 4000, y: 4000}
+ m_TitleContent:
+ m_Text: Hierarchy
+ m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000,
+ type: 0}
+ m_Tooltip:
+ m_Pos:
+ serializedVersion: 2
+ x: 0
+ y: 72.66667
+ width: 264.33334
+ height: 540.3333
+ m_SerializedDataModeController:
+ m_DataMode: 0
+ m_PreferredDataMode: 0
+ m_SupportedDataModes:
+ isAutomatic: 1
+ m_ViewDataDictionary: {fileID: 0}
+ m_OverlayCanvas:
+ m_LastAppliedPresetName: Default
+ m_SaveData: []
+ m_OverlaysVisible: 1
+ m_SceneHierarchy:
+ m_TreeViewState:
+ scrollPos: {x: 0, y: 0}
+ m_SelectedIDs: ccc1f8ff
+ m_LastClickedID: -474676
+ m_ExpandedIDs: 2ec2f8ff2ee3f8ff36e3f8ff542af9ffc640f9ff4a41f9ff6e4cf9ff6254f9ff7840faff4e61faff7861faff8061faffa0a8faff9eb9faffdec3fafffac8faff02c9faff6ed8faff74dafaff9edafaffa6dafaffc621fbff8286fbffd286fbff4a90fbff50f6fbffa0f6fbff1000fcffeef8feff3ef9feff4ef9feff56f9feffb602ffffc887ffffe48cffff728fffff7a8fffff0092ffff0892ffff9694ffff2c97ffff98a6ffff9ea8ffffc8a8ffffd0a8ffff28e6ffff78e6ffffe8efffffccfaffff
+ m_RenameOverlay:
+ m_UserAcceptedRename: 0
+ m_Name:
+ m_OriginalName:
+ m_EditFieldRect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ m_UserData: 0
+ m_IsWaitingForDelay: 0
+ m_IsRenaming: 0
+ m_OriginalEventType: 11
+ m_IsRenamingFilename: 0
+ m_ClientGUIView: {fileID: 5}
+ m_SearchString:
+ m_ExpandedScenes: []
+ m_CurrenRootInstanceID: 0
+ m_LockTracker:
+ m_IsLocked: 0
+ m_CurrentSortingName: TransformSorting
+ m_WindowGUID: 4c969a2b90040154d917609493e03593
+--- !u!114 &7
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name: SceneView
+ m_EditorClassIdentifier:
+ m_Children: []
+ m_Position:
+ serializedVersion: 2
+ x: 265.33334
+ y: 0
+ width: 928.6666
+ height: 561.3333
+ m_MinSize: {x: 202, y: 221}
+ m_MaxSize: {x: 4002, y: 4021}
+ m_ActualView: {fileID: 2}
+ m_Panes:
+ - {fileID: 2}
+ - {fileID: 8}
+ - {fileID: 9}
+ m_Selected: 0
+ m_LastSelected: 2
+--- !u!114 &8
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@@ -823,7 +721,7 @@ MonoBehaviour:
x: 265.33334
y: 72.66667
width: 926.6666
- height: 535
+ height: 540.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -906,6 +804,108 @@ MonoBehaviour:
m_CurrentEditor: 0
m_LayerEditor:
m_SelectedLayerIndex: 0
+--- !u!114 &9
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_MinSize: {x: 200, y: 200}
+ m_MaxSize: {x: 4000, y: 4000}
+ m_TitleContent:
+ m_Text: Game
+ m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000,
+ type: 0}
+ m_Tooltip:
+ m_Pos:
+ serializedVersion: 2
+ x: 265.33334
+ y: 72.66667
+ width: 926.6666
+ height: 540.3333
+ m_SerializedDataModeController:
+ m_DataMode: 0
+ m_PreferredDataMode: 0
+ m_SupportedDataModes:
+ isAutomatic: 1
+ m_ViewDataDictionary: {fileID: 0}
+ m_OverlayCanvas:
+ m_LastAppliedPresetName: Default
+ m_SaveData: []
+ m_OverlaysVisible: 1
+ m_SerializedViewNames:
+ - UnityEditor.DeviceSimulation.SimulatorWindow
+ m_SerializedViewValues:
+ - D:\Projects\ichni Official\Library\PlayModeViewStates\fcf862737d27629438090c00190a3d53
+ m_PlayModeViewName: GameView
+ m_ShowGizmos: 0
+ m_TargetDisplay: 0
+ m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
+ m_TargetSize: {x: 1920, y: 1080}
+ m_TextureFilterMode: 0
+ m_TextureHideFlags: 61
+ m_RenderIMGUI: 1
+ m_EnterPlayModeBehavior: 0
+ m_UseMipMap: 0
+ m_VSyncEnabled: 0
+ m_Gizmos: 0
+ m_Stats: 0
+ m_SelectedSizes: 03000000000000000000000006000000000000000000000000000000000000000000000000000000
+ m_ZoomArea:
+ m_HRangeLocked: 0
+ m_VRangeLocked: 0
+ hZoomLockedByDefault: 0
+ vZoomLockedByDefault: 0
+ m_HBaseRangeMin: -640
+ m_HBaseRangeMax: 640
+ m_VBaseRangeMin: -360
+ m_VBaseRangeMax: 360
+ m_HAllowExceedBaseRangeMin: 1
+ m_HAllowExceedBaseRangeMax: 1
+ m_VAllowExceedBaseRangeMin: 1
+ m_VAllowExceedBaseRangeMax: 1
+ m_ScaleWithWindow: 0
+ m_HSlider: 0
+ m_VSlider: 0
+ m_IgnoreScrollWheelUntilClicked: 0
+ m_EnableMouseInput: 0
+ m_EnableSliderZoomHorizontal: 0
+ m_EnableSliderZoomVertical: 0
+ m_UniformScale: 1
+ m_UpDirection: 1
+ m_DrawArea:
+ serializedVersion: 2
+ x: 0
+ y: 21
+ width: 926.6666
+ height: 519.3333
+ m_Scale: {x: 0.72129625, y: 0.72129625}
+ m_Translation: {x: 463.3333, y: 259.66666}
+ m_MarginLeft: 0
+ m_MarginRight: 0
+ m_MarginTop: 0
+ m_MarginBottom: 0
+ m_LastShownAreaInsideMargins:
+ serializedVersion: 2
+ x: -642.362
+ y: -360
+ width: 1284.724
+ height: 720
+ m_MinimalGUI: 1
+ m_defaultScale: 0.72129625
+ m_LastWindowPixelSize: {x: 1390, y: 810.5}
+ m_ClearInEditMode: 1
+ m_NoCameraWarning: 1
+ m_LowResolutionForAspectRatios: 00000000000000000000
+ m_XRRenderMode: 0
+ m_RenderTexture: {fileID: 0}
+ m_showToolbar: 1
--- !u!114 &10
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -916,25 +916,25 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 1
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
- m_Name: ConsoleWindow
+ m_Name: ProjectBrowser
m_EditorClassIdentifier:
m_Children: []
m_Position:
serializedVersion: 2
x: 0
- y: 556
+ y: 561.3333
width: 1194
- height: 263.33337
- m_MinSize: {x: 101, y: 121}
- m_MaxSize: {x: 4001, y: 4021}
- m_ActualView: {fileID: 12}
+ height: 258
+ m_MinSize: {x: 231, y: 271}
+ m_MaxSize: {x: 10001, y: 10021}
+ m_ActualView: {fileID: 11}
m_Panes:
- {fileID: 11}
- {fileID: 12}
- {fileID: 13}
- {fileID: 14}
- m_Selected: 1
- m_LastSelected: 0
+ m_Selected: 0
+ m_LastSelected: 1
--- !u!114 &11
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -957,9 +957,9 @@ MonoBehaviour:
m_Pos:
serializedVersion: 2
x: 0
- y: 628.6667
- width: 1196.3334
- height: 242.33331
+ y: 634
+ width: 1193
+ height: 237
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -981,7 +981,7 @@ MonoBehaviour:
m_SkipHidden: 0
m_SearchArea: 1
m_Folders:
- - Assets/Scenes
+ - Assets/Scripts/Game/GameElements/Track/TrackSubmodules
m_Globs: []
m_OriginalText:
m_ImportLogFlags: 0
@@ -989,16 +989,16 @@ MonoBehaviour:
m_ViewMode: 1
m_StartGridSize: 96
m_LastFolders:
- - Assets/Scenes
+ - Assets/Scripts/Game/GameElements/Track/TrackSubmodules
m_LastFoldersGridSize: 96
m_LastProjectPath: D:\Projects\ichni Official
m_LockTracker:
m_IsLocked: 0
m_FolderTreeState:
- scrollPos: {x: 0, y: 517.6667}
- m_SelectedIDs: a6a90000
- m_LastClickedID: 43430
- m_ExpandedIDs: 000000000aa900000ca900000ea9000010a9000012a9000014a9000016a9000018a900001aa900001ca900001ea9000020a9000022a9000024a9000026a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000042a9000000ca9a3b
+ scrollPos: {x: 0, y: 471}
+ m_SelectedIDs: eab80000
+ m_LastClickedID: 47338
+ m_ExpandedIDs: 0000000026a9000028a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000040a9000042a9000044a9000046a9000048a900004aa900004ca900004ea9000050a9000052a9000054a9000056a9000058a900005aa90000b4a90000cca9000006b9000014b9000000ca9a3b
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -1026,7 +1026,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
- m_ExpandedIDs: 000000000aa900000ca900000ea9000010a9000012a9000014a9000016a9000018a900001aa900001ca900001ea9000020a9000022a9000024a9000026a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000042a9000000ca9a3b
+ m_ExpandedIDs: 0000000026a9000028a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca9000040a9000042a9000044a9000046a9000048a900004aa900004ca900004ea9000050a9000052a9000054a9000056a9000058a900005aa90000aea90000b0a90000cca9000006b9000000ca9a3b
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -1051,9 +1051,9 @@ MonoBehaviour:
m_Icon: {fileID: 0}
m_ResourceFile:
m_ListAreaState:
- m_SelectedInstanceIDs:
- m_LastClickedInstanceID: 0
- m_HadKeyboardFocusLastEvent: 1
+ m_SelectedInstanceIDs: ccc1f8ff
+ m_LastClickedInstanceID: -474676
+ m_HadKeyboardFocusLastEvent: 0
m_ExpandedInstanceIDs: c6230000d2c101005ac60100bec80100b6c80100000000000cd901003ada010074b30100d4a10600f8a300000e8e00003e91000044900000e8920000c6d400005aa10000909600007ca300009a9d00004ab90000fa9e0000aaab00006ea6000014ab000022e0000028e0000064d20000
m_RenameOverlay:
m_UserAcceptedRename: 0
@@ -1104,9 +1104,9 @@ MonoBehaviour:
m_Pos:
serializedVersion: 2
x: 0
- y: 628.6667
+ y: 634
width: 1193
- height: 242.33337
+ height: 237
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1154,7 +1154,7 @@ MonoBehaviour:
m_OverlaysVisible: 1
m_LockTracker:
m_IsLocked: 0
- m_LastSelectedObjectID: -660800
+ m_LastSelectedObjectID: -345886
--- !u!114 &14
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -1228,10 +1228,10 @@ MonoBehaviour:
serializedVersion: 2
x: 1194
y: 0
- width: 512.66675
- height: 819.3334
- m_MinSize: {x: 276, y: 71}
- m_MaxSize: {x: 4001, y: 4021}
+ width: 512.6666
+ height: 819.3333
+ m_MinSize: {x: 275, y: 50}
+ m_MaxSize: {x: 4000, y: 4000}
m_ActualView: {fileID: 16}
m_Panes:
- {fileID: 16}
@@ -1263,8 +1263,8 @@ MonoBehaviour:
serializedVersion: 2
x: 1194
y: 72.66667
- width: 511.66675
- height: 798.3334
+ width: 511.66663
+ height: 798.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1278,7 +1278,7 @@ MonoBehaviour:
m_ObjectsLockedBeforeSerialization: []
m_InstanceIDsLockedBeforeSerialization:
m_PreviewResizer:
- m_CachedPref: 181.66656
+ m_CachedPref: -181.66656
m_ControlHash: -371814159
m_PrefName: Preview_InspectorPreview
m_LastInspectedObjectInstanceID: -1
diff --git a/UserSettings/Layouts/default-2022.dwlt b/UserSettings/Layouts/default-2022.dwlt
index 1283ca25..f7625120 100644
--- a/UserSettings/Layouts/default-2022.dwlt
+++ b/UserSettings/Layouts/default-2022.dwlt
@@ -19,7 +19,7 @@ MonoBehaviour:
width: 1706.6667
height: 869.3334
m_ShowMode: 4
- m_Title: Inspector
+ m_Title: Project
m_RootView: {fileID: 2}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
@@ -44,8 +44,8 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
- width: 1706.6667
- height: 869.3334
+ width: 1706.6666
+ height: 869.3333
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
m_UseTopView: 1
@@ -69,7 +69,7 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
- width: 1706.6667
+ width: 1706.6666
height: 30
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@@ -90,8 +90,8 @@ MonoBehaviour:
m_Position:
serializedVersion: 2
x: 0
- y: 849.3334
- width: 1706.6667
+ y: 849.3333
+ width: 1706.6666
height: 20
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
@@ -114,12 +114,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 30
- width: 1706.6667
- height: 819.3334
+ width: 1706.6666
+ height: 819.3333
m_MinSize: {x: 300, y: 100}
m_MaxSize: {x: 24288, y: 16192}
vertical: 0
- controlID: 9260
+ controlID: 238
draggingID: 0
--- !u!114 &6
MonoBehaviour:
@@ -141,11 +141,11 @@ MonoBehaviour:
x: 0
y: 0
width: 1194
- height: 819.3334
+ height: 819.3333
m_MinSize: {x: 200, y: 100}
m_MaxSize: {x: 16192, y: 16192}
vertical: 1
- controlID: 9180
+ controlID: 275
draggingID: 0
--- !u!114 &7
MonoBehaviour:
@@ -167,11 +167,11 @@ MonoBehaviour:
x: 0
y: 0
width: 1194
- height: 556
+ height: 561.3333
m_MinSize: {x: 200, y: 50}
m_MaxSize: {x: 16192, y: 8096}
vertical: 0
- controlID: 9181
+ controlID: 179
draggingID: 0
--- !u!114 &8
MonoBehaviour:
@@ -191,7 +191,7 @@ MonoBehaviour:
x: 0
y: 0
width: 265.33334
- height: 556
+ height: 561.3333
m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 13}
@@ -209,7 +209,7 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 1
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
- m_Name: SceneView
+ m_Name: GameView
m_EditorClassIdentifier:
m_Children: []
m_Position:
@@ -217,16 +217,16 @@ MonoBehaviour:
x: 265.33334
y: 0
width: 928.6666
- height: 556
+ height: 561.3333
m_MinSize: {x: 202, y: 221}
m_MaxSize: {x: 4002, y: 4021}
- m_ActualView: {fileID: 14}
+ m_ActualView: {fileID: 15}
m_Panes:
+ - {fileID: 12}
- {fileID: 14}
- {fileID: 15}
- - {fileID: 12}
- m_Selected: 0
- m_LastSelected: 2
+ m_Selected: 2
+ m_LastSelected: 0
--- !u!114 &10
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -243,9 +243,9 @@ MonoBehaviour:
m_Position:
serializedVersion: 2
x: 0
- y: 556
+ y: 561.3333
width: 1194
- height: 263.33337
+ height: 258
m_MinSize: {x: 231, y: 271}
m_MaxSize: {x: 10001, y: 10021}
m_ActualView: {fileID: 16}
@@ -273,8 +273,8 @@ MonoBehaviour:
serializedVersion: 2
x: 1194
y: 0
- width: 512.66675
- height: 819.3334
+ width: 512.6666
+ height: 819.3333
m_MinSize: {x: 276, y: 71}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 20}
@@ -286,172 +286,6 @@ MonoBehaviour:
m_Selected: 0
m_LastSelected: 3
--- !u!114 &12
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_MinSize: {x: 200, y: 200}
- m_MaxSize: {x: 4000, y: 4000}
- m_TitleContent:
- m_Text: Game
- m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000,
- type: 0}
- m_Tooltip:
- m_Pos:
- serializedVersion: 2
- x: 265.33334
- y: 72.66667
- width: 926.6666
- height: 535
- m_SerializedDataModeController:
- m_DataMode: 0
- m_PreferredDataMode: 0
- m_SupportedDataModes:
- isAutomatic: 1
- m_ViewDataDictionary: {fileID: 0}
- m_OverlayCanvas:
- m_LastAppliedPresetName: Default
- m_SaveData: []
- m_OverlaysVisible: 1
- m_SerializedViewNames:
- - UnityEditor.DeviceSimulation.SimulatorWindow
- m_SerializedViewValues:
- - D:\Projects\ichni Official\Library\PlayModeViewStates\fcf862737d27629438090c00190a3d53
- m_PlayModeViewName: GameView
- m_ShowGizmos: 0
- m_TargetDisplay: 0
- m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
- m_TargetSize: {x: 1920, y: 1080}
- m_TextureFilterMode: 0
- m_TextureHideFlags: 61
- m_RenderIMGUI: 1
- m_EnterPlayModeBehavior: 0
- m_UseMipMap: 0
- m_VSyncEnabled: 0
- m_Gizmos: 0
- m_Stats: 0
- m_SelectedSizes: 03000000000000000000000006000000000000000000000000000000000000000000000000000000
- m_ZoomArea:
- m_HRangeLocked: 0
- m_VRangeLocked: 0
- hZoomLockedByDefault: 0
- vZoomLockedByDefault: 0
- m_HBaseRangeMin: -640
- m_HBaseRangeMax: 640
- m_VBaseRangeMin: -360
- m_VBaseRangeMax: 360
- m_HAllowExceedBaseRangeMin: 1
- m_HAllowExceedBaseRangeMax: 1
- m_VAllowExceedBaseRangeMin: 1
- m_VAllowExceedBaseRangeMax: 1
- m_ScaleWithWindow: 0
- m_HSlider: 0
- m_VSlider: 0
- m_IgnoreScrollWheelUntilClicked: 0
- m_EnableMouseInput: 1
- m_EnableSliderZoomHorizontal: 0
- m_EnableSliderZoomVertical: 0
- m_UniformScale: 1
- m_UpDirection: 1
- m_DrawArea:
- serializedVersion: 2
- x: 0
- y: 21
- width: 926.6666
- height: 514
- m_Scale: {x: 0.7138889, y: 0.7138889}
- m_Translation: {x: 463.3333, y: 257}
- m_MarginLeft: 0
- m_MarginRight: 0
- m_MarginTop: 0
- m_MarginBottom: 0
- m_LastShownAreaInsideMargins:
- serializedVersion: 2
- x: -649.0272
- y: -360
- width: 1298.0544
- height: 720
- m_MinimalGUI: 1
- m_defaultScale: 0.7138889
- m_LastWindowPixelSize: {x: 1390, y: 802.5}
- m_ClearInEditMode: 1
- m_NoCameraWarning: 1
- m_LowResolutionForAspectRatios: 00000000000000000000
- m_XRRenderMode: 0
- m_RenderTexture: {fileID: 0}
- m_showToolbar: 1
---- !u!114 &13
-MonoBehaviour:
- m_ObjectHideFlags: 52
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 0}
- m_Enabled: 1
- m_EditorHideFlags: 1
- m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
- m_Name:
- m_EditorClassIdentifier:
- m_MinSize: {x: 200, y: 200}
- m_MaxSize: {x: 4000, y: 4000}
- m_TitleContent:
- m_Text: Hierarchy
- m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000,
- type: 0}
- m_Tooltip:
- m_Pos:
- serializedVersion: 2
- x: 0
- y: 72.66667
- width: 264.33334
- height: 535
- m_SerializedDataModeController:
- m_DataMode: 0
- m_PreferredDataMode: 0
- m_SupportedDataModes:
- isAutomatic: 1
- m_ViewDataDictionary: {fileID: 0}
- m_OverlayCanvas:
- m_LastAppliedPresetName: Default
- m_SaveData: []
- m_OverlaysVisible: 1
- m_SceneHierarchy:
- m_TreeViewState:
- scrollPos: {x: 0, y: 0}
- m_SelectedIDs:
- m_LastClickedID: 0
- m_ExpandedIDs: c498f0ff7cddf0ff8e24f1ff52b9f1ff4248f2ff60b8f2ff6cbef2ffc043f3ffa40ef4ff0261f4ff56e6f4ff5450f5ff52bff5ffc4eaf5fff4aff6fff424f8ff0adaf8ff0edaf8ff14daf8ff1cdaf8ff12e4f8ff22cef9ff8c4bfbff2cc3fdffea06feffb0b1ffffb8b1ffffa2b7ffff62b9ffff66b9ffff6cb9ffff74b9ffffdcc2ffffaceeffff42f1fffff0fafffff4ffffff9a500100
- m_RenameOverlay:
- m_UserAcceptedRename: 0
- m_Name: NoteMain
- m_OriginalName: NoteMain
- m_EditFieldRect:
- serializedVersion: 2
- x: 0
- y: 0
- width: 0
- height: 0
- m_UserData: 219028
- m_IsWaitingForDelay: 0
- m_IsRenaming: 0
- m_OriginalEventType: 0
- m_IsRenamingFilename: 0
- m_ClientGUIView: {fileID: 8}
- m_SearchString:
- m_ExpandedScenes: []
- m_CurrenRootInstanceID: 0
- m_LockTracker:
- m_IsLocked: 0
- m_CurrentSortingName: TransformSorting
- m_WindowGUID: 4c969a2b90040154d917609493e03593
---- !u!114 &14
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@@ -475,7 +309,7 @@ MonoBehaviour:
x: 265.33334
y: 72.66667
width: 926.6666
- height: 535
+ height: 540.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -873,9 +707,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
- m_Target: {x: 288.77197, y: -7.729402, z: -7.68663}
+ m_Target: {x: 0.4319974, y: 2.307617, z: 478.2139}
speed: 2
- m_Value: {x: 0, y: 0, z: 0}
+ m_Value: {x: 0.4319974, y: 2.307617, z: 478.2139}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@@ -921,13 +755,13 @@ MonoBehaviour:
m_GridAxis: 1
m_gridOpacity: 0.5
m_Rotation:
- m_Target: {x: -0.06900473, y: -0.927394, z: 0.21303548, w: -0.30020672}
+ m_Target: {x: 0.048798885, y: 0.0022965744, z: -0.000018332017, w: 0.9989788}
speed: 2
- m_Value: {x: -0.044084605, y: 0.7801827, z: -0.05533693, w: -0.62153774}
+ m_Value: {x: 0.048790462, y: 0.0022961781, z: -0.000018328854, w: 0.99880636}
m_Size:
- m_Target: 3.7162945
+ m_Target: 12.029685
speed: 2
- m_Value: 1.1277905
+ m_Value: 12.029685
m_Ortho:
m_Target: 0
speed: 2
@@ -945,14 +779,78 @@ MonoBehaviour:
m_FarClip: 1000
m_DynamicClip: 1
m_OcclusionCulling: 0
- m_LastSceneViewRotation: {x: -0.039927594, y: 0.94078374, z: -0.118977636, w: -0.31543952}
+ m_LastSceneViewRotation: {x: -0.06900473, y: -0.927394, z: 0.21303548, w: -0.30020672}
m_LastSceneViewOrtho: 0
m_ReplacementShader: {fileID: 0}
m_ReplacementString:
m_SceneVisActive: 1
m_LastLockedObject: {fileID: 0}
m_ViewIsLockedToObject: 0
---- !u!114 &15
+--- !u!114 &13
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_MinSize: {x: 200, y: 200}
+ m_MaxSize: {x: 4000, y: 4000}
+ m_TitleContent:
+ m_Text: Hierarchy
+ m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000,
+ type: 0}
+ m_Tooltip:
+ m_Pos:
+ serializedVersion: 2
+ x: 0
+ y: 72.66667
+ width: 264.33334
+ height: 540.3333
+ m_SerializedDataModeController:
+ m_DataMode: 0
+ m_PreferredDataMode: 0
+ m_SupportedDataModes:
+ isAutomatic: 1
+ m_ViewDataDictionary: {fileID: 0}
+ m_OverlayCanvas:
+ m_LastAppliedPresetName: Default
+ m_SaveData: []
+ m_OverlaysVisible: 1
+ m_SceneHierarchy:
+ m_TreeViewState:
+ scrollPos: {x: 0, y: 0}
+ m_SelectedIDs:
+ m_LastClickedID: 0
+ m_ExpandedIDs: d45effff585fffff0e6affff0272ffff3ceefffffcfaffff
+ m_RenameOverlay:
+ m_UserAcceptedRename: 0
+ m_Name:
+ m_OriginalName:
+ m_EditFieldRect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ m_UserData: 0
+ m_IsWaitingForDelay: 0
+ m_IsRenaming: 0
+ m_OriginalEventType: 11
+ m_IsRenamingFilename: 0
+ m_ClientGUIView: {fileID: 8}
+ m_SearchString:
+ m_ExpandedScenes: []
+ m_CurrenRootInstanceID: 0
+ m_LockTracker:
+ m_IsLocked: 0
+ m_CurrentSortingName: TransformSorting
+ m_WindowGUID: 4c969a2b90040154d917609493e03593
+--- !u!114 &14
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@@ -976,7 +874,7 @@ MonoBehaviour:
x: 265.33334
y: 72.66667
width: 926.6666
- height: 535
+ height: 540.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1059,6 +957,108 @@ MonoBehaviour:
m_CurrentEditor: 0
m_LayerEditor:
m_SelectedLayerIndex: 0
+--- !u!114 &15
+MonoBehaviour:
+ m_ObjectHideFlags: 52
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 1
+ m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_MinSize: {x: 200, y: 200}
+ m_MaxSize: {x: 4000, y: 4000}
+ m_TitleContent:
+ m_Text: Game
+ m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000,
+ type: 0}
+ m_Tooltip:
+ m_Pos:
+ serializedVersion: 2
+ x: 265.33334
+ y: 72.66667
+ width: 926.6666
+ height: 540.3333
+ m_SerializedDataModeController:
+ m_DataMode: 0
+ m_PreferredDataMode: 0
+ m_SupportedDataModes:
+ isAutomatic: 1
+ m_ViewDataDictionary: {fileID: 0}
+ m_OverlayCanvas:
+ m_LastAppliedPresetName: Default
+ m_SaveData: []
+ m_OverlaysVisible: 1
+ m_SerializedViewNames:
+ - UnityEditor.DeviceSimulation.SimulatorWindow
+ m_SerializedViewValues:
+ - D:\Projects\ichni Official\Library\PlayModeViewStates\fcf862737d27629438090c00190a3d53
+ m_PlayModeViewName: GameView
+ m_ShowGizmos: 0
+ m_TargetDisplay: 0
+ m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
+ m_TargetSize: {x: 1920, y: 1080}
+ m_TextureFilterMode: 0
+ m_TextureHideFlags: 61
+ m_RenderIMGUI: 1
+ m_EnterPlayModeBehavior: 0
+ m_UseMipMap: 0
+ m_VSyncEnabled: 0
+ m_Gizmos: 0
+ m_Stats: 0
+ m_SelectedSizes: 03000000000000000000000006000000000000000000000000000000000000000000000000000000
+ m_ZoomArea:
+ m_HRangeLocked: 0
+ m_VRangeLocked: 0
+ hZoomLockedByDefault: 0
+ vZoomLockedByDefault: 0
+ m_HBaseRangeMin: -640
+ m_HBaseRangeMax: 640
+ m_VBaseRangeMin: -360
+ m_VBaseRangeMax: 360
+ m_HAllowExceedBaseRangeMin: 1
+ m_HAllowExceedBaseRangeMax: 1
+ m_VAllowExceedBaseRangeMin: 1
+ m_VAllowExceedBaseRangeMax: 1
+ m_ScaleWithWindow: 0
+ m_HSlider: 0
+ m_VSlider: 0
+ m_IgnoreScrollWheelUntilClicked: 0
+ m_EnableMouseInput: 1
+ m_EnableSliderZoomHorizontal: 0
+ m_EnableSliderZoomVertical: 0
+ m_UniformScale: 1
+ m_UpDirection: 1
+ m_DrawArea:
+ serializedVersion: 2
+ x: 0
+ y: 21
+ width: 926.6666
+ height: 519.3333
+ m_Scale: {x: 0.72129625, y: 0.72129625}
+ m_Translation: {x: 463.3333, y: 259.66666}
+ m_MarginLeft: 0
+ m_MarginRight: 0
+ m_MarginTop: 0
+ m_MarginBottom: 0
+ m_LastShownAreaInsideMargins:
+ serializedVersion: 2
+ x: -642.362
+ y: -360
+ width: 1284.724
+ height: 720
+ m_MinimalGUI: 1
+ m_defaultScale: 0.72129625
+ m_LastWindowPixelSize: {x: 1390, y: 810.5}
+ m_ClearInEditMode: 1
+ m_NoCameraWarning: 1
+ m_LowResolutionForAspectRatios: 00000000000000000000
+ m_XRRenderMode: 0
+ m_RenderTexture: {fileID: 0}
+ m_showToolbar: 1
--- !u!114 &16
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -1081,9 +1081,9 @@ MonoBehaviour:
m_Pos:
serializedVersion: 2
x: 0
- y: 628.6667
+ y: 634
width: 1193
- height: 242.33337
+ height: 237
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1105,7 +1105,7 @@ MonoBehaviour:
m_SkipHidden: 0
m_SearchArea: 1
m_Folders:
- - Assets/ThemeBundles/DepartureToMultiverse/Prefabs
+ - Assets/Dreamteck
m_Globs: []
m_OriginalText:
m_ImportLogFlags: 0
@@ -1113,16 +1113,16 @@ MonoBehaviour:
m_ViewMode: 1
m_StartGridSize: 96
m_LastFolders:
- - Assets/ThemeBundles/DepartureToMultiverse/Prefabs
+ - Assets/Dreamteck
m_LastFoldersGridSize: 96
m_LastProjectPath: D:\Projects\ichni Official
m_LockTracker:
m_IsLocked: 0
m_FolderTreeState:
- scrollPos: {x: 0, y: 240}
- m_SelectedIDs: d2a90000
- m_LastClickedID: 43474
- m_ExpandedIDs: 000000000aa900000ca900000ea9000010a9000012a9000014a9000016a9000018a900001aa900001ca900001ea9000020a9000022a9000024a9000026a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca90000d2a9000000ca9a3b
+ scrollPos: {x: 0, y: 0}
+ m_SelectedIDs: a0a90000
+ m_LastClickedID: 43424
+ m_ExpandedIDs: 000000002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000040a9000042a9000044a9000046a9000048a900004aa900004ca900004ea9000050a9000052a9000054a9000056a9000058a900005aa900005ca900005ea9000060a9000000ca9a3b
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -1150,7 +1150,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
- m_ExpandedIDs: 000000000aa900000ca900000ea9000010a9000012a9000014a9000016a9000018a900001aa900001ca900001ea9000020a9000022a9000024a9000026a900002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000042a9000000ca9a3b
+ m_ExpandedIDs: 000000002aa900002ca900002ea9000030a9000032a9000034a9000036a9000038a900003aa900003ca900003ea9000040a9000042a9000044a9000046a9000048a900004aa900004ca900004ea9000050a9000052a9000054a9000056a9000058a900005aa900005ca900005ea9000060a90000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@@ -1228,9 +1228,9 @@ MonoBehaviour:
m_Pos:
serializedVersion: 2
x: 0
- y: 628.6667
+ y: 634
width: 1193
- height: 242.33337
+ height: 237
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1278,7 +1278,7 @@ MonoBehaviour:
m_OverlaysVisible: 1
m_LockTracker:
m_IsLocked: 0
- m_LastSelectedObjectID: -660800
+ m_LastSelectedObjectID: -474676
--- !u!114 &19
MonoBehaviour:
m_ObjectHideFlags: 52
@@ -1358,8 +1358,8 @@ MonoBehaviour:
serializedVersion: 2
x: 1194
y: 72.66667
- width: 511.66675
- height: 798.3334
+ width: 511.66663
+ height: 798.3333
m_SerializedDataModeController:
m_DataMode: 0
m_PreferredDataMode: 0
@@ -1373,7 +1373,7 @@ MonoBehaviour:
m_ObjectsLockedBeforeSerialization: []
m_InstanceIDsLockedBeforeSerialization:
m_PreviewResizer:
- m_CachedPref: 181.66656
+ m_CachedPref: -181.66656
m_ControlHash: -371814159
m_PrefName: Preview_InspectorPreview
m_LastInspectedObjectInstanceID: -1