Repository: kirurobo/UniWindowController Branch: main Commit: d9d03bdc687b Files: 242 Total size: 1.7 MB Directory structure: gitextract_ik_wzm75/ ├── .github/ │ └── workflows/ │ ├── main.yml │ └── upm.yml ├── .gitignore ├── LICENSE.txt ├── README-ja.md ├── README.md ├── UniWinC/ │ ├── .gitignore │ ├── .vscode/ │ │ ├── extensions.json │ │ ├── launch.json │ │ └── settings.json │ ├── Assets/ │ │ ├── InputSystem.inputsettings.asset │ │ ├── InputSystem.inputsettings.asset.meta │ │ ├── Kirurobo/ │ │ │ ├── UniWindowController/ │ │ │ │ ├── .gitignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CHANGELOG.md.meta │ │ │ │ ├── Editor/ │ │ │ │ │ ├── Kirurobo.UniWindowController.Editor.asmdef │ │ │ │ │ ├── Kirurobo.UniWindowController.Editor.asmdef.meta │ │ │ │ │ ├── Scripts/ │ │ │ │ │ │ ├── UniWindowControllerBatch.cs │ │ │ │ │ │ ├── UniWindowControllerBatch.cs.meta │ │ │ │ │ │ ├── UniWindowControllerEditor.cs │ │ │ │ │ │ └── UniWindowControllerEditor.cs.meta │ │ │ │ │ └── Scripts.meta │ │ │ │ ├── Editor.meta │ │ │ │ ├── LICENSE.md │ │ │ │ ├── LICENSE.md.meta │ │ │ │ ├── README-ja.md │ │ │ │ ├── README-ja.md.meta │ │ │ │ ├── README.md │ │ │ │ ├── README.md.meta │ │ │ │ ├── Runtime/ │ │ │ │ │ ├── Kirurobo.UniWindowController.asmdef │ │ │ │ │ ├── Kirurobo.UniWindowController.asmdef.meta │ │ │ │ │ ├── Plugins/ │ │ │ │ │ │ ├── MacOS/ │ │ │ │ │ │ │ ├── LibUniWinC.bundle/ │ │ │ │ │ │ │ │ └── Contents/ │ │ │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ │ │ ├── MacOS/ │ │ │ │ │ │ │ │ │ └── LibUniWinC │ │ │ │ │ │ │ │ └── _CodeSignature/ │ │ │ │ │ │ │ │ └── CodeResources │ │ │ │ │ │ │ └── LibUniWinC.bundle.meta │ │ │ │ │ │ ├── MacOS.meta │ │ │ │ │ │ ├── Windows/ │ │ │ │ │ │ │ ├── x64/ │ │ │ │ │ │ │ │ └── LibUniWinC.dll.meta │ │ │ │ │ │ │ ├── x64.meta │ │ │ │ │ │ │ ├── x86/ │ │ │ │ │ │ │ │ └── LibUniWinC.dll.meta │ │ │ │ │ │ │ └── x86.meta │ │ │ │ │ │ └── Windows.meta │ │ │ │ │ ├── Plugins.meta │ │ │ │ │ ├── Prefabs/ │ │ │ │ │ │ ├── DragMoveCanvas.prefab │ │ │ │ │ │ ├── DragMoveCanvas.prefab.meta │ │ │ │ │ │ ├── UniWindowController.prefab │ │ │ │ │ │ └── UniWindowController.prefab.meta │ │ │ │ │ ├── Prefabs.meta │ │ │ │ │ ├── Scripts/ │ │ │ │ │ │ ├── LowLevel/ │ │ │ │ │ │ │ ├── FilePanel.cs │ │ │ │ │ │ │ ├── FilePanel.cs.meta │ │ │ │ │ │ │ ├── UniWinCore.cs │ │ │ │ │ │ │ └── UniWinCore.cs.meta │ │ │ │ │ │ ├── LowLevel.meta │ │ │ │ │ │ ├── UniWindowController.cs │ │ │ │ │ │ ├── UniWindowController.cs.meta │ │ │ │ │ │ ├── UniWindowMoveHandle.cs │ │ │ │ │ │ └── UniWindowMoveHandle.cs.meta │ │ │ │ │ └── Scripts.meta │ │ │ │ ├── Runtime.meta │ │ │ │ ├── Samples/ │ │ │ │ │ ├── 00_Menu/ │ │ │ │ │ │ ├── SampleManager.cs │ │ │ │ │ │ ├── SampleManager.cs.meta │ │ │ │ │ │ ├── SampleMenu.unity │ │ │ │ │ │ ├── SampleMenu.unity.meta │ │ │ │ │ │ ├── SampleMenuSettings.lighting │ │ │ │ │ │ └── SampleMenuSettings.lighting.meta │ │ │ │ │ ├── 00_Menu.meta │ │ │ │ │ ├── 01_SimpleSample/ │ │ │ │ │ │ ├── SimpleSample.unity │ │ │ │ │ │ └── SimpleSample.unity.meta │ │ │ │ │ ├── 01_SimpleSample.meta │ │ │ │ │ ├── 02_UiSample/ │ │ │ │ │ │ ├── UiSample.unity │ │ │ │ │ │ ├── UiSample.unity.meta │ │ │ │ │ │ ├── UiSampleCanvas.prefab │ │ │ │ │ │ ├── UiSampleCanvas.prefab.meta │ │ │ │ │ │ ├── UiSampleController.cs │ │ │ │ │ │ └── UiSampleController.cs.meta │ │ │ │ │ ├── 02_UiSample.meta │ │ │ │ │ ├── 03_Fullscreen/ │ │ │ │ │ │ ├── FullscreenSample.cs │ │ │ │ │ │ ├── FullscreenSample.cs.meta │ │ │ │ │ │ ├── FullscreenSample.unity │ │ │ │ │ │ ├── FullscreenSample.unity.meta │ │ │ │ │ │ ├── FullscreenSampleSettings.lighting │ │ │ │ │ │ ├── FullscreenSampleSettings.lighting.meta │ │ │ │ │ │ ├── SnowParticle.mat │ │ │ │ │ │ ├── SnowParticle.mat.meta │ │ │ │ │ │ ├── SnowmanArm.mat │ │ │ │ │ │ ├── SnowmanArm.mat.meta │ │ │ │ │ │ ├── SnowmanBody.mat │ │ │ │ │ │ ├── SnowmanBody.mat.meta │ │ │ │ │ │ ├── SnowmanFace.mat │ │ │ │ │ │ └── SnowmanFace.mat.meta │ │ │ │ │ ├── 03_Fullscreen.meta │ │ │ │ │ ├── 04_FileDialog/ │ │ │ │ │ │ ├── FileDialogSample.cs │ │ │ │ │ │ ├── FileDialogSample.cs.meta │ │ │ │ │ │ ├── FileDialogSample.unity │ │ │ │ │ │ ├── FileDialogSample.unity.meta │ │ │ │ │ │ ├── FileDialogSampleSettings.lighting │ │ │ │ │ │ └── FileDialogSampleSettings.lighting.meta │ │ │ │ │ ├── 04_FileDialog.meta │ │ │ │ │ ├── Common/ │ │ │ │ │ │ ├── AutoRotator.cs │ │ │ │ │ │ ├── AutoRotator.cs.meta │ │ │ │ │ │ ├── CollisionBorder.png.meta │ │ │ │ │ │ ├── GreenBorder.png.meta │ │ │ │ │ │ ├── InputModuleProxy.cs │ │ │ │ │ │ ├── InputModuleProxy.cs.meta │ │ │ │ │ │ ├── InputProxy.cs │ │ │ │ │ │ ├── InputProxy.cs.meta │ │ │ │ │ │ ├── ModelController.cs │ │ │ │ │ │ ├── ModelController.cs.meta │ │ │ │ │ │ ├── UiMaterial.mat │ │ │ │ │ │ └── UiMaterial.mat.meta │ │ │ │ │ └── Common.meta │ │ │ │ ├── Samples.meta │ │ │ │ ├── package.json │ │ │ │ └── package.json.meta │ │ │ └── UniWindowController.meta │ │ └── Kirurobo.meta │ ├── Packages/ │ │ ├── manifest.json │ │ └── packages-lock.json │ └── ProjectSettings/ │ ├── AudioManager.asset │ ├── ClusterInputManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── MemorySettings.asset │ ├── NavMeshAreas.asset │ ├── NetworkManager.asset │ ├── PackageManagerSettings.asset │ ├── Physics2DSettings.asset │ ├── PresetManager.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── SceneTemplateSettings.json │ ├── TagManager.asset │ ├── TimeManager.asset │ ├── UnityConnectSettings.asset │ ├── VFXManager.asset │ ├── VersionControlSettings.asset │ └── XRSettings.asset ├── VisualStudio/ │ ├── .gitignore │ ├── LibUniWinC/ │ │ ├── LibUniWinC.vcxproj │ │ ├── LibUniWinC.vcxproj.filters │ │ ├── Resource.rc │ │ ├── dllmain.cpp │ │ ├── framework.h │ │ ├── libuniwinc.cpp │ │ ├── libuniwinc.h │ │ ├── pch.cpp │ │ ├── pch.h │ │ └── resource.h │ ├── LibUniWinC.sln │ └── TestLibUniWinC/ │ ├── Additional/ │ │ ├── WindowInfo.cs │ │ └── WindowList.cs │ ├── App.config │ ├── FormMain.Designer.cs │ ├── FormMain.cs │ ├── FormMain.resx │ ├── LowLevel/ │ │ ├── FilePanel.cs │ │ └── UniWinCore.cs │ ├── Program.cs │ ├── Properties/ │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ ├── TestLibUniWinC.csproj │ └── UnityEmulation/ │ ├── AOT.cs │ └── UnityEngine.cs ├── Xcode/ │ ├── .gitignore │ ├── DebugUniWinC/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AccentColor.colorset/ │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── ContentView.swift │ │ ├── DebugUniWinC.entitlements │ │ ├── DebugUniWinCApp.swift │ │ └── Preview Content/ │ │ └── Preview Assets.xcassets/ │ │ └── Contents.json │ └── LibUniWinC/ │ ├── CustomPanelHelper.swift │ ├── LibUniWinC.swift │ ├── OverlayView.swift │ ├── README.md │ └── UnityInterface.swift └── docs/ └── reference/ └── html/ ├── annotated.html ├── annotated_dup.js ├── class_kirurobo_1_1_bool_property_attribute.html ├── class_kirurobo_1_1_file_panel-members.html ├── class_kirurobo_1_1_file_panel.html ├── class_kirurobo_1_1_file_panel.js ├── class_kirurobo_1_1_file_panel_1_1_filter-members.html ├── class_kirurobo_1_1_file_panel_1_1_filter.html ├── class_kirurobo_1_1_file_panel_1_1_filter.js ├── class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c-members.html ├── class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c.html ├── class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c.js ├── class_kirurobo_1_1_read_only_attribute.html ├── class_kirurobo_1_1_uni_win_core_1_1_lib_uni_win_c-members.html ├── class_kirurobo_1_1_uni_win_core_1_1_lib_uni_win_c.html ├── class_kirurobo_1_1_uni_window_controller-members.html ├── class_kirurobo_1_1_uni_window_controller.html ├── class_kirurobo_1_1_uni_window_controller.js ├── class_kirurobo_1_1_uni_window_move_handle-members.html ├── class_kirurobo_1_1_uni_window_move_handle.html ├── class_kirurobo_1_1_uni_window_move_handle.js ├── classes.html ├── dir_0e718f53d4d08174de87a4996d0abd84.html ├── dir_1168cf2394713e5b88a61dc9b39953d6.html ├── dir_4db8f2e691505777dda71083a7488821.html ├── dir_4e895f04d87c71be14ec988997553c7b.html ├── dir_51678baafa3da7bcbbacfbc079e72355.html ├── dir_8d1ea225d71cf43ce7bb9f8bd477064e.html ├── dir_9422bc27ad0eb84eb9766082ef3d355d.html ├── dir_a0d8a0ff27d847f01310e1251fc46482.html ├── dir_a545219465fede22cd758cef02b8764c.html ├── doxygen.css ├── dynsections.js ├── functions.html ├── functions_enum.html ├── functions_evnt.html ├── functions_func.html ├── functions_prop.html ├── functions_vars.html ├── hierarchy.html ├── hierarchy.js ├── index.html ├── jquery.js ├── menu.js ├── menudata.js ├── namespace_kirurobo.html ├── namespace_kirurobo.js ├── namespaces.html ├── namespaces_dup.js ├── navtree.css ├── navtree.js ├── navtreedata.js ├── navtreeindex0.js ├── resize.js ├── struct_kirurobo_1_1_file_panel_1_1_lib_uni_win_c_1_1_panel_settings-members.html ├── struct_kirurobo_1_1_file_panel_1_1_lib_uni_win_c_1_1_panel_settings.html ├── struct_kirurobo_1_1_file_panel_1_1_settings-members.html ├── struct_kirurobo_1_1_file_panel_1_1_settings.html └── tabs.css ================================================ FILE CONTENTS ================================================ ================================================ FILE: .github/workflows/main.yml ================================================ name: Generate preview-upm branches # Reference # - https://tips.hecomi.com/entry/2021/10/29/001304 on: push: branches: - main workflow_dispatch: env: MAIN_BRANCH: main UPM_BRANCH: preview-upm PKG_ROOT_DIR: UniWinC/Assets/Kirurobo/UniWindowController SAMPLES_DIR: Samples DOC_FILES: jobs: update: runs-on: ubuntu-latest steps: # 最新のリリースバージョンを取得 - name: Checkout uses: actions/checkout@v2 with: fetch-depth: 0 - run: git checkout "$MAIN_BRANCH" # 生成者の名前を設定 - name: Git config run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" # UPM 用のブランチを作成 - name: Create preview UPM branches run: | # 古いブランチを削除 git branch -D "$UPM_BRANCH" &> /dev/null || echo "$UPM_BRANCH" branch is not found # アセットの中身を UPM ブランチに切り出す git subtree split -P "$PKG_ROOT_DIR" -b "$UPM_BRANCH" # 切り出したブランチに移動 git checkout "$UPM_BRANCH" # サンプルディレクトリを ~ 付きに改名 git mv "$SAMPLES_DIR" "$SAMPLES_DIR~" &> /dev/null || echo "$SAMPLES_DIR" is not found # サンプルディレクトリの .meta は削除 rm "$SAMPLES_DIR.meta" # タグ名とともにコミット git commit -am "Update preview UPM." # GitHubへプッシュ git push -f origin "$UPM_BRANCH" ================================================ FILE: .github/workflows/upm.yml ================================================ name: Generate upm branches # Reference # - https://tips.hecomi.com/entry/2021/10/29/001304 on: push: # main ブランチが更新されたときではなく、'v*' というタグが push されたときにのみ実行させる tags: - v* workflow_dispatch: env: MAIN_BRANCH: main UPM_BRANCH: upm PKG_ROOT_DIR: UniWinC/Assets/Kirurobo/UniWindowController SAMPLES_DIR: Samples DOC_FILES: jobs: update: runs-on: ubuntu-latest steps: # 最新のリリースバージョンを取得 - name: Checkout uses: actions/checkout@v2 with: fetch-depth: 0 - run: git checkout "$MAIN_BRANCH" # イベントを起動したタグを steps.tag.outputs.name に格納 - name: Tag name id: tag run: echo ::set-output name=name::${GITHUB_REF#refs/tags/v} # 生成者の名前を設定 - name: Git config run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" # UPM 用のブランチを作成 - name: Create UPM branches run: | # 古いブランチを削除 git branch -D "$UPM_BRANCH" &> /dev/null || echo "$UPM_BRANCH" branch is not found # アセットの中身を UPM ブランチに切り出す git subtree split -P "$PKG_ROOT_DIR" -b "$UPM_BRANCH" # 切り出したブランチに移動 git checkout "$UPM_BRANCH" ## メインブランチにあった README などをインポート #for file in "$DOC_FILES"; do # git checkout "$MAIN_BRANCH" $file &> /dev/null || echo "$file" is not found #done # サンプルディレクトリを ~ 付きに改名 git mv "$SAMPLES_DIR" "$SAMPLES_DIR~" &> /dev/null || echo "$SAMPLES_DIR" is not found # サンプルディレクトリの .meta は削除 rm "$SAMPLES_DIR.meta" ## package.json のバージョンを置換 # sed -i -e "s/\"version\":.*$\"version\": \"$TAG\",/" package.json || echo package.json is not found # タグ名とともにコミット git commit -am "release $TAG." # GitHubへプッシュ git push -f origin "$UPM_BRANCH" # タグ付きのブランチも作成してプッシュ git checkout -b "$UPM_BRANCH@$TAG" git push -f origin "$UPM_BRANCH@$TAG" env: TAG: ${{ steps.tag.outputs.name }} ================================================ FILE: .gitignore ================================================ /.vs/ .DS_Store ================================================ FILE: LICENSE.txt ================================================ MIT License Copyright (c) 2020 Kirurobo 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. ================================================ FILE: README-ja.md ================================================ # UniWindowController Unified window controller for macOS and Windows 略称:UniWinC(ユニウィンク) [![license](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/kirurobo/UniWindowController/blob/master/LICENSE) ### README - [Japanese (日本語での説明)](README-ja.md) - [English](README.md) ## 概要 Unity の Windows / macOS 向けビルドで、自ウィンドウの位置、サイズ、透過、枠非表示などをコントロールします。 また、ファイル、フォルダのドロップも受け付け可能にできます。 Windows、macOS それぞれではコード例やアセットが見つかりましたが、統一的に扱えるものが無さそうだったため作成しました。 ![uniwinc](https://user-images.githubusercontent.com/1019117/96070514-5284e580-0edb-11eb-8a4d-d990a0a028a8.gif) https://twitter.com/i/status/1314440790945361920 ## デモ [UniWinC_VRM](https://github.com/kirurobo/UniWinC_VRM) にはビルドしたVRMファイルビューアーのサンプルを置いてあります。 ## インストール UPMの方法ですと、バージョンアップもUPMから行えるようになります。 A. Unity Package Manager (UPM) を利用する手順 1. Unity エディタの [Window]メニューから [Package Manager] を開く 2. [+] から [Add package from git URL...] を選択 ![image](https://user-images.githubusercontent.com/1019117/234160406-f041bda9-262c-4d3f-b41c-45e11c3a94ce.png) 3. https://github.com/kirurobo/UniWindowController.git#upm を入力して [Add] する ![image](https://user-images.githubusercontent.com/1019117/234160520-35447b67-dd44-4af6-9c7c-ab71577a4c17.png) B. UnityPackage を利用する手順 1. [Release のページ](https://github.com/kirurobo/UniWindowController/releases) から .unitypackage ファイルをダウンロード 2. Unity エディタでインポート ## Unity プロジェクトでの利用 1. Runtime/Prefabs にある `UniWindowController` プレハブをシーンに追加 2. そこで配置された `UniWindowController` をインスペクターで確認 - Player Settings を適切に直す(緑のボタンでまとめて設定が変更されます) - `IsTransparent` 等、設定をお好みに合わせる 3. 左ドラッグでウィンドウ自体を動かしたい場合、 Runtime/Prefabs の `DragMoveCanvas` プレハブも追加 - 動作には EventSystem が必要です。もしシーンに無ければ UI → Event System を追加してください。 4. PC / Mac スタンドアローンでビルドする 5. ビルドしたものを起動 ### URP 利用時の設定 背景を透明にするためには、アルファチャンネルを維持する必要があります。 そのためにいくつかの条件があります。 - HDR は無効にする [参考](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2507577260) - Main Camera (GameObject) > Camera (Component) > Output > HDR: Off - AlphaProcessing は有効にする [図](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2601063168) ## 制限事項 - Direct3D12 では背景透過が有効となりません。Direct3D11 では `Use DXGI flip model swapchain for D3D11` を無効にすることで透過が可能です。 - Unityエディタ上では透過はできません。ビルドをしてお試しください。 - 常に最前面やウィンドウ移動等は動作しますが、実行中にゲームビューを閉じたりドッキングの配置を変えることはお勧めしません。一応、ゲームビューにフォーカスを移すとウィンドウを再取得はします。 - マウスでは良いのですが、タッチ操作には適切な対応がまだ定まっていません。 - Windows の場合、`TransparentType` を Alpha から ColorKey にすると、半透明の表現が失われる代わりにタッチ操作は自然になります。 - 複数ウィンドウには対応していません。 - 完全に動作検証ができている訳ではなく、不安定な動作もあるかもしれません。 既知の問題については [Issues](https://github.com/kirurobo/UniWindowController/issues) もご覧ください。 ## 動作環境 - Unity: 2019 4.31f1 or later - Scripting Runtime: .NET 4.x or later - OS: Windows 10, Windows 11 or macOS 開発は Unity 2022.3.22f1, Windows 11 / macOS 15.3 で行っています ## 補足情報 ### ヒットテストについて 正常にウィンドウを透過できると、あたかも長方形ではないウィンドウのように見えます。 ですがそれは見た目だけで、実は長方形のウィンドウとして存在しています。 そこで、マウスカーソルの直下を見て、透明ならばマウス操作を下のウィンドウに受け流す(クリックスルー)状態とし、不透明なら通常に戻す、という"ヒットテスト"を常に行なうことで、 あたかも見える部分しか存在しないように見せています。 このヒットテストについては2種類用意してあります。(自動ヒットテストを無効にして、自分で制御する、またはしないという選択も可能です。) | Name | Method | Note | |:-----|:-----|:------------| |Opacity|透明度を見る|見た目と一致して自然だが、処理が重い| |Raycast|Coliderを見る|より動作が軽いが、Coliderの用意が必要| Raycastの方法の方がパフォーマンス的に推奨ですが、Coliderを忘れると触れなくなるため、デフォルトでは Opacity としています。 また注意として、タッチ操作だとあらかじめ指の下の色を確認できないため、操作に違和感を感じると思います。 どのように対応すべきかベストの解決策が見つかっていないため、タッチ対応に関してはすみませんが後回しとなっています。 ### 透過方法について(Windowsのみ選択可) タッチ操作に対応する一つの方法として、layered window の単色透過を選択できるようにしてあります。 これを選ぶと半透明が表現できず、パフォーマンスも落ちますが、ヒットテストをWindowsに任せるためタッチ操作に対しては感覚に一致するはずです。 | Name | Description | Note | |:-----|:-----|:------------| |Alpha|レンダリング結果の透明度を反映|こちらが標準| |ColorKey|RGBが一致する一色のみ透過|パフォーマンス悪いが、タッチは自然| ### C# スクリプト Unityで他のスクリプトから操作できるものです。 仕様は固まってはいないため、変更される場合があります。 #### UniWindowController.cs 本体です。 他のスクリプトから操作できるプロパティとして下記があります。(他にも追加されたりします。) | Name | Type | Description | |:-----|:-----|:------------| |isTransparent|bool| 透過(非矩形)ウィンドウに設定/解除します| |isTopmost |bool| 常に最前面に設定/解除します| |isZoomed |bool| 最大化/解除をします。また現在の状態を取得します | |isHitTestEnabled|bool| 自動ヒットテストを有効/無効にします。有効だとマウスカーソル位置により isClickThrough が自動で変化します。 | |isClickThrough|bool| クリックスルー状態に設定/解除します| |windowPosition|Vector2| ウインドウ位置を取得/設定できます。※メインモニタ左下が原点で上向き正の座標系で、ウィンドウ左下座標です | |windowSize|Vector2| ウインドウサイズを取得/設定できます | #### UniWindowMoveHandler.cs このスクリプトをUI要素(Raycast Targetとなるもの)にアタッチしておくと、そのUI要素のドラッグでウィンドウを移動できるようになります。 例えば「ここを掴んで移動できます」というハンドルの画像にアタッチする想定です。 DragMoveCanvas というプレハブ内では、透明な全画面を覆うPanelを使っています。 このとき Layer を「Ignore Raycast」にすることで、自動ヒットテストが Raycast の場合でも対象外となります。 これにより画面のどこでもドラッグできるようになります。 ただし他のUI上の操作はドラッグでの移動より優先されます。(DragMoveCanvas で Sort Order を小さくしているため。) #### LowLevel/FilePanel.cs ファイル選択ダイアログを開く static メソッドがあります。 UniWindowController のインスタンスがなくても使えますが、その場合は呼んだ時点のウィンドウを親として開きます。 - FilePanel.OpenFilePanel() - ファイルを開く場合の選択ダイアログ。複数選択も可能。 - FilePanel.SaveFilePanel() - ファイルを保存する際の選択ダイアログ。 ### ソースのフォルダ構成 利用するだけならば、Release にある unitypackage をダウンロードしていただけばよく、このリポジトリをクローンする必要はありません。 ソースを見たい/ビルドしたい場合は、このようになっていますので参照ください。 - UniWinC - Unity のプロジェクトです。 - ビルド済みの DLL、bundle も既に含みます。 - ここの内容が unitypackage としてリリースにあります。 - VisualStudio - Windows版 x86, x64 の LibUniWinC.dll を生成するソリューションがあります。 - Release でビルドすると Unity フォルダ下の DLL が上書きされます。 - テスト用Windowsフォームアプリのプロジェクトも含まれます。 - Xcode - macOS版 LibUniWinC.bundle を生成するプロジェクトがあります。 - ビルドすると Unity フォルダ下の .bundle が上書きされます。 ## 謝辞 - macOS側のコードは かりばぁ さんの [Unity + Mac + Swift で透過最前面ウィンドウを作る](https://qiita.com/KRiver1/items/9ecf65759cf1349f56af) をベースにさせていただきました。 - GitHub Actions での UPM ブランチ生成は hecomi さんの [Unity で .unitypackage で配布していたアセットを Package Manager 対応してみた](https://tips.hecomi.com/entry/2021/10/29/001304) を参考にしました。 この場を借りて感謝を申し上げます。 ================================================ FILE: README.md ================================================ # UniWindowController Unified window controller for macOS and Windows Abbreviation:UniWinC [![license](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/kirurobo/UniWindowController/blob/master/LICENSE) ### README - [Japanese (日本語での説明)](README-ja.md) - [English](README.md) ## Overview This is a library for apps built for Windows / macOS standalone with Unity. This library controls transparency, borderless, position, size, etc. of its own window. And it allows also accept file and folder drops. ![uniwinc](https://user-images.githubusercontent.com/1019117/96070514-5284e580-0edb-11eb-8a4d-d990a0a028a8.gif) https://twitter.com/i/status/1314440790945361920 ## Demo You can find a sample VRM viewer via [UniWinC_VRM](https://github.com/kirurobo/UniWinC_VRM). ## Installation If you use the UPM, you can also perform version upgrades from UPM. A. Using the Unity Package Manager (UPM) 1. Open [Package Manager] from the [Window] menu of the Unity Editor. 2. Select [+] and then select [Add package from git URL...]. ![image](https://user-images.githubusercontent.com/1019117/234160406-f041bda9-262c-4d3f-b41c-45e11c3a94ce.png) 3. Enter https://github.com/kirurobo/UniWindowController.git#upm and [Add]. ![image](https://user-images.githubusercontent.com/1019117/234160520-35447b67-dd44-4af6-9c7c-ab71577a4c17.png) B. Using an UnityPackage 1. Download an .unitypackage file from the [Release page](https://github.com/kirurobo/UniWindowController/releases). 2. Import the asset in the Unity Editor. ## Use in your Unity project 1. Add the `UniWindowController` prefab in the Runtime/Prefabs to your scene. 2. Select the `UniWindowController` placed scene, and watch the inspector. - Fix the Player Settings appropriately (the green button will change all settings at once) - Adjust the settings such as `IsTransparent` to your liking 3. Add `DragMoveCanvas` prefab in the Runtime/Prefabs if you want to move the window by mouse dragging. - An EventSystem is required for this to work. If it is not present in your scene, add UI → Event System. 4. Build for PC / Mac standalone 5. Launch the build ### Settings when using URP To make the background transparent, the alpha channel must be maintained. There are some conditions for this. - HDR must be disabled [Reference](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2507577260) - Main Camera (GameObject) > Camera (Component) > Output > HDR: Off - AlphaProcessing must be enabled [Figure](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2601063168) ## Limitations - Background transparency is not enabled in Direct3D12; in Direct3D11, transparency can be enabled by disabling `Use DXGI flip model swapchain for D3D11`. - Transparency is not available on the Unity Editor. Please build and try it. - It works for topmost, moving windows, etc., but I do not recommend closing the game view or changing the docking arrangement while it is running. In the meantime, the window will reacquire when the focus is shifted to the game view. - The proper support for touch operations has not yet been determined. - On Windows, if you change the `TransparentType` from Alpha to ColorKey, you will lose the beautiful translucency, but the touch operation will be natural. - Multiple windows are not supported. - This has not been fully tested and there may be unstable behavior. See also [Issues](https://github.com/kirurobo/UniWindowController/issues) for known issues. ## System requirements - Unity: 2019 4.31f1 or later - Scripting Runtime: .NET 4.x or later - OS: Windows 10, Windows 11 or macOS Development environment is Unity 2022.3.22f1, Windows 11 / macOS 15.3 ## Additional information ### About the hit test When the window is successfully made transparent, it looks as if it is a non-rectangular window. However, this is only an appearance, and the window actually exists as a rectangular window. Therefore, by looking directly under the mouse cursor, if it is transparent, the mouse operation is passed to the window below (click-through), and if it is opaque, the mouse operation is returned to normal, If it is opaque, it returns to normal. Two types of hit tests are available. (You can also choose to disable the automatic hit test and control it yourself or not.) | Name | Method | Note | |:-----|:-----|:------------| |Opacity|Check transparency|Matches appearance and is natural, but heavy processing| |Raycast|Check colider|Lightweight, but requires coliders| The Raycast method is recommended in terms of performance, but if you forget colider, you will not be able to touch the screen, so the default is Opacity. Also, note that touch operation may feel uncomfortable because you cannot see the color under your finger in advance. Since we have not found the best solution for this, I'm sorry to say that touch support has been put on the back burner. ### About the transparency method (Seceltable only on Windows) One way to support touch operation is to select monochromatic transparency for layered windows. If this is selected, semi-transparency cannot be expressed and performance will be reduced, but since the hit test is left to Windows, it should match your senses for touch operation. | Name | Description | Note | |:-----|:-----|:------------| |Alpha|Reflects transparency of rendering results|This is standard| |ColorKey|Only one color with matching RGB is transparent|Poor performance, but touch is natural| ### C# scripting This is something that can be manipulated from other scripts in Unity. Specifications are not finalized and are subject to change. #### UniWindowController.cs This is the main script. The following properties can be manipulated from other scripts. (Other properties may be added.) | Name | Type | Description | |:-----|:-----|:------------| |isTransparent|bool| Set/unset for transparent (non-rectangular) windows| |isTopmost |bool| Always set/unset to topmost| |isZoomed |bool| Maximize/unmaximize the window. Also, get the current state | |isHitTestEnabled|bool| Enables/disables the automatic hit test. If enabled, isClickThrough will automatically change depending on the mouse cursor position. | |isClickThrough|bool| Sets/unset the click-through state.| |windowPosition|Vector2| Allows you to get/set the window position. The lower left corner of the main monitor is the origin and the coordinate system is positive upward, and the lower left corner of the window is the coordinate system.| |windowSize|Vector2| You can get/set the window size.| #### UniWindowMoveHandler.cs If you attach this script to a UI element (which will be the Raycast Target), you can move the window by dragging that UI element. For example, it is assumed to be attached to an image with a handle that says, "You can move by grabbing here. Within the prefab called DragMoveCanvas, we use a Panel that covers the entire transparent screen. By setting the Layer to "Ignore Raycast", the automatic hit test will be excluded even if the panel is a Raycast. This allows dragging anywhere on the screen. However, other UI operations will take precedence over dragging. (This is due to the smaller Sort Order in DragMoveCanvas.) ### Source folder hierarchy If you just want to use this library, you can download .unitypackage in Release and do not need to clone this repository. If you want to see/build the source, please refer to this. - UniWinC - This is a Unity project. - It already contains built DLLs and bundles. - The contents of this project are in the release as the .unitypackage. - VisualStudio - There is a solution to generate LibUniWinC.dll for Windows x86 and x64. - Building with Release will overwrite the DLL under the Unity folder. - A Windows Forms app project for testing is also included. - Xcode - There is a project to generate LibUniWinC.bundle for macOS. - Building it will overwrite the .bundle under the Unity folder. ## Acknowledgements - The macOS code is based on [Unity + Mac + Swift で透過最前面ウィンドウを作る](https://qiita.com/KRiver1/items/9ecf65759cf1349f56af) by かりばぁ. - I used hecomi's [Unity で .unitypackage で配布していたアセットを Package Manager 対応してみた](https://tips.hecomi.com/entry/2021/10/29/001304) for generating UPM branches in GitHub Actions. I would like to thank them. ================================================ FILE: UniWinC/.gitignore ================================================ # This .gitignore file should be placed at the root of your Unity project directory # # Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore # /[Ll]ibrary/ /[Tt]emp/ /[Oo]bj/ /[Bb]uild/ /[Bb]uilds/ /[Ll]ogs/ /[Uu]ser[Ss]ettings/ # MemoryCaptures can get excessive in size. # They also could contain extremely sensitive data /[Mm]emoryCaptures/ # Asset meta data should only be ignored when the corresponding asset is also ignored !/[Aa]ssets/**/*.meta # Uncomment this line if you wish to ignore the asset store tools plugin # /[Aa]ssets/AssetStoreTools* # Autogenerated Jetbrains Rider plugin /[Aa]ssets/Plugins/Editor/JetBrains* # Visual Studio cache directory .vs/ # Gradle cache directory .gradle/ # Autogenerated VS/MD/Consulo solution and project files ExportedObj/ .consulo/ *.csproj *.unityproj *.sln *.slnx *.suo *.tmp *.user *.userprefs *.pidb *.booproj *.svd *.pdb *.mdb *.opendb *.VC.db *.vsconfig # Unity3D generated meta files *.pidb.meta *.pdb.meta *.mdb.meta # Unity3D generated file on crash reports sysinfo.txt # Builds *.apk *.aab *.unitypackage # Crashlytics generated file crashlytics-build.properties # Packed Addressables /[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin* # Temporary auto-generated Android Assets /[Aa]ssets/[Ss]treamingAssets/aa.meta /[Aa]ssets/[Ss]treamingAssets/aa/* # JetBrains /.idea/ /Assets/Plugins/ /Assets/Plugins.meta /Assets/Plugins/Editor/ /Assets/Plugins/Editor.meta # for this project !/Assets/Kirurobo/UniWindowController/Plugins/* ================================================ FILE: UniWinC/.vscode/extensions.json ================================================ { "recommendations": [ "visualstudiotoolsforunity.vstuc" ] } ================================================ FILE: UniWinC/.vscode/launch.json ================================================ { "version": "0.2.0", "configurations": [ { "name": "Attach to Unity", "type": "vstuc", "request": "attach" } ] } ================================================ FILE: UniWinC/.vscode/settings.json ================================================ { "files.exclude": { "**/.DS_Store": true, "**/.git": true, "**/.vs": true, "**/.gitmodules": true, "**/.vsconfig": true, "**/*.booproj": true, "**/*.pidb": true, "**/*.suo": true, "**/*.user": true, "**/*.userprefs": true, "**/*.unityproj": true, "**/*.dll": true, "**/*.exe": true, "**/*.pdf": true, "**/*.mid": true, "**/*.midi": true, "**/*.wav": true, "**/*.gif": true, "**/*.ico": true, "**/*.jpg": true, "**/*.jpeg": true, "**/*.png": true, "**/*.psd": true, "**/*.tga": true, "**/*.tif": true, "**/*.tiff": true, "**/*.3ds": true, "**/*.3DS": true, "**/*.fbx": true, "**/*.FBX": true, "**/*.lxo": true, "**/*.LXO": true, "**/*.ma": true, "**/*.MA": true, "**/*.obj": true, "**/*.OBJ": true, "**/*.asset": true, "**/*.cubemap": true, "**/*.flare": true, "**/*.mat": true, "**/*.meta": true, "**/*.prefab": true, "**/*.unity": true, "build/": true, "Build/": true, "Library/": true, "library/": true, "obj/": true, "Obj/": true, "Logs/": true, "logs/": true, "ProjectSettings/": true, "UserSettings/": true, "temp/": true, "Temp/": true }, "dotnet.defaultSolution": "UniWinC.slnx" } ================================================ FILE: UniWinC/Assets/InputSystem.inputsettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 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: c46f07b5ed07e4e92aa78254188d3d10, type: 3} m_Name: InputSystem.inputsettings m_EditorClassIdentifier: m_SupportedDevices: [] m_UpdateMode: 1 m_MaxEventBytesPerUpdate: 5242880 m_MaxQueuedEventsPerUpdate: 1000 m_CompensateForScreenOrientation: 1 m_BackgroundBehavior: 0 m_EditorInputBehaviorInPlayMode: 0 m_DefaultDeadzoneMin: 0.125 m_DefaultDeadzoneMax: 0.925 m_DefaultButtonPressPoint: 0.5 m_ButtonReleaseThreshold: 0.75 m_DefaultTapTime: 0.2 m_DefaultSlowTapTime: 0.5 m_DefaultHoldTime: 0.4 m_TapRadius: 5 m_MultiTapDelayTime: 0.75 m_DisableRedundantEventsMerging: 0 m_ShortcutKeysConsumeInputs: 0 m_iOSSettings: m_MotionUsage: m_Enabled: 0 m_Description: ================================================ FILE: UniWinC/Assets/InputSystem.inputsettings.asset.meta ================================================ fileFormatVersion: 2 guid: dc660a2a123d34488abe1d07904475f4 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/.gitignore ================================================ # Includes DLLs !Plugins/Windows/*/*.dll !Plugins/MacOS/*.bundle !Plugins/MacOS/*.bundle/* ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/CHANGELOG.md ================================================ # Changelog UniWindowController (UniWinC) https://github.com/kirurobo/UniWindowController ## [v0.9.8] - 2025-11-18 ### Added - Added IsFreePositioningEnabled property for macOS. - Changed .bundle's signing to adhoc for macOS. ## [v0.9.7] - 2025-03-07 ### Fixed - Improved stability on macOS. ## [v0.9.6] - 2025-02-20 ### Changed - Replaced FindObjectOfType with FindAnyObjectByType. ### Fixed - Fixed coordinate misalignment with Retina support on macOS. ## [v0.9.5] - 2025-02-18 ### Changed - Renamed asmdef Unity.UniWindowController to Kirurobo.UniWindowController. - Renamed asmdef Unity.UniWindowController.Editor to Kirurobo.UniWindowController.Editor. - Please remove if there are old files in the project. ### Fixed - Fixed for support both of New Input System and Legacy Input Manager. - Fixed wrong name "LeftCtrl" and "RightCtrl" in the code. ### Added - Added GetClientRectangle() in the native plugins. ## [v0.9.4] - 2025-02-06 ### Changed - Support New Input System. ### Fixed - Remember main camera's clear flags and background color before applying automatic camera background switch. - To prevent errors on macOS, the save dialogue no longer displays a file type drop-down. - Fixed a crash when setting the window to borderless on macOS if the screen was initially in full screen mode. ## [v0.9.3] - 2024-05-06 ### Changed - Rewrote the .bundle in Swift ## [v0.9.2] - 2023-09-18 ### Fixed - DllNotFoundException in the Unity Apple Silicon Editor ### Changed - Added client size display to the UI sample ## [v0.9.1] - 2023-05-03 ### Fixed - Position of file type selection box on macOS - GetClientSize() on macOS ## [v0.9.0] - 2023-04-22 ### Changed - The development environment has been updated to Unity 2020.3.43 ### Fixed - Fixed size shift when window frame is hidden in Unity 2020 on Windows ## [v0.8.6] - 2022-06-18 ### Fixed - Window shadow in macOS ## [v0.8.5] - 2021-12-12 ### Fixed - File type selection in macOS ## [v0.8.4] - 2021-11-27 ### Changed - Made the class singleton. - All samples are bundled for package manager. ### Added - File type selection in macOS ## [v0.8.3] - 2021-11-27 ### Added - SetAlphaValue ## [v0.8.2] - 2021-10-15 ### Added - FilePanel.OpenFilePanel() - FilePanel.SaveFilePanel ### Fixed - M1 may also be supported in macOS. (Not tested) - Minor improvements to an issue of lost keystrokes when the window is transparent. ## [v0.8.1] - 2021-09-13 ### Changed - ***Renamed "Unity" folder to "UniWinC".*** for macOS. - Use screen.frame intead of screen.visibleFrame. - Use NSWindow.Level.popUpMenu instead of Level.floating to bring the window to the front of the menu bar. ## [v0.8.0] - 2020-12-27 ### Added - Fullscreen demo. - Set to bottommost. (Experimental) ## [v0.7.0] - 2020-12-07 ### Added - Support Unity Package Manager. ### Changed - Restructured folders. ## [v0.6.0] - 2020-12-06 ### Added - Files dropping for Mac and Windows. - Prepare fit to monitor property. ### Changed - macOS 10.12 and below is no longer supported. - "Maximized" keyword was renamed to "Zoomed". ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/CHANGELOG.md.meta ================================================ fileFormatVersion: 2 guid: 2a3fc0316b219b443a628c9942d8615c TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Kirurobo.UniWindowController.Editor.asmdef ================================================ { "name": "Kirurobo.UniWindowController.Editor", "rootNamespace": "", "references": [ "GUID:785f71526b4175240bb8e068347cab84" ], "includePlatforms": [ "Editor" ], "excludePlatforms": [], "allowUnsafeCode": false, "overrideReferences": false, "precompiledReferences": [], "autoReferenced": true, "defineConstraints": [], "versionDefines": [], "noEngineReferences": false } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Kirurobo.UniWindowController.Editor.asmdef.meta ================================================ fileFormatVersion: 2 guid: 4379ff61160dc9f44a938ad4192f6dca AssemblyDefinitionImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Scripts/UniWindowControllerBatch.cs ================================================ using UnityEngine; using UnityEditor; using UnityEditor.Build; using UnityEditor.Build.Reporting; // ReSharper disable UnusedMember.Local namespace Kirurobo { class UniWindowControllerBatch { //[MenuItem("Build/Build OSX")] static void PerformBuild() { // コマンドライン引数の最後が出力パスだとする //string outputPath = System.Environment.GetCommandLineArgs().Last(); // var buildPlayerOptions = new BuildPlayerOptions(); // buildPlayerOptions.scenes = sceneList.ToArray(); // buildPlayerOptions.locationPathName = outputPath; // buildPlayerOptions.target = BuildTarget.StandaloneOSX; // buildPlayerOptions.options = BuildOptions.None; // 事前にエディタから設定したビルド設定を利用 var scenes = EditorBuildSettings.scenes; var buildTarget = EditorUserBuildSettings.activeBuildTarget; var locationPath = EditorUserBuildSettings.GetBuildLocation(buildTarget); // ビルド対象は環境に合わせて上書き #if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX buildTarget = BuildTarget.StandaloneOSX; locationPath = "Builds/macOS/" + Application.productName; #elif UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN buildTarget = BuildTarget.StandaloneWindows64; locationPath = "Builds/Win64/" + Application.productName; #endif var buildPlayerOptions = new BuildPlayerOptions { scenes = EditorBuildSettingsScene.GetActiveSceneList(scenes), locationPathName = locationPath, target = buildTarget, options = BuildOptions.None }; // // 内容チェック用 // foreach (var scene in buildPlayerOptions.scenes) // { // Debug.Log(scene); // } // Debug.Log(buildPlayerOptions.locationPathName); // return; var report = BuildPipeline.BuildPlayer(buildPlayerOptions); var summary = report.summary; if (summary.result == BuildResult.Succeeded) { Debug.Log("Build succeeded"); } else if (summary.result == BuildResult.Failed) { Debug.Log("Build failed"); //EditorApplication.Exit(1); throw new BuildFailedException(report.summary.ToString()); } } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Scripts/UniWindowControllerBatch.cs.meta ================================================ fileFormatVersion: 2 guid: 2014dd28aebdf44169eed3f90f3ab550 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Scripts/UniWindowControllerEditor.cs ================================================ /* * UniWindowControllerEditor.cs * * Author: Kirurobo http://x.com/kirurobo * License: MIT */ // Assembry Definition を有効にしてから、ビルド時に Editor クラスがないとエラーが出る。 // そこで丸ごと UNITY_EDITOR が無い場合は無視するものとした #if UNITY_EDITOR using System.Linq; using UnityEngine; using UnityEditor; using System.Reflection; using UnityEngine.Rendering; namespace Kirurobo { /// /// UniWindowControllerのためのエディタカスタマイズ部分 /// [CustomEditor(typeof(UniWindowController))] public class UniWindowControllerEditor : Editor { /// /// カーソル下の色を表示するためのプロパティ /// SerializedProperty pickedColor; /// /// ゲームビューのウィンドウ /// private EditorWindow gameViewWindow; /// /// プロジェクト設定に関する警告を閉じておくか private bool isWarningDismissed = false; /// /// URP に関する警告を閉じておくか /// private bool isUrpWarningDismissed = true; /// /// URP が有効かどうか /// private bool hasUrp = false; void OnEnable() { LoadSettings(); pickedColor = serializedObject.FindProperty("pickedColor"); // URP が有効か否かを判定 hasUrp = GetUrpSettings(); } void OnDisable() { SaveSettings(); } /// /// URPが有効か否かを検出 /// /// private bool GetUrpSettings() { var renderPipelineAsset = GraphicsSettings.defaultRenderPipeline; if (renderPipelineAsset == null || renderPipelineAsset.GetType().Name != "UniversalRenderPipelineAsset") { // URP が設定されていない return false; } return true; } private void LoadSettings() { isWarningDismissed = EditorUserSettings.GetConfigValue("WindowController_IS_WARNING DISMISSED") == "1"; } private void SaveSettings() { EditorUserSettings.SetConfigValue("WindowController_IS_WARNING DISMISSED", isWarningDismissed ? "1" : "0"); } /// /// インスペクタでの表示をカスタマイズ /// /// /// 参考情報および、推奨設定の変更欄を表示します。 /// public override void OnInspectorGUI() { base.OnInspectorGUI(); // カーソル下の色が得られていれば、その透明度を参考として表示 if (pickedColor != null) { EditorGUI.BeginDisabledGroup(true); EditorGUILayout.LabelField("Picked Alpha", pickedColor.colorValue.a.ToString("P0")); EditorGUI.EndDisabledGroup(); } // Project Settings の推奨設定を表示 isWarningDismissed = ShowPlayerSettingsValidation(isWarningDismissed); // URP 関連の推奨設定を表示 isUrpWarningDismissed = ShowUrpSettingsValidation(isUrpWarningDismissed); } /// /// Project Settings に関する推奨設定の自動設定欄を表示 /// private bool ShowPlayerSettingsValidation(bool dismissed) { // 以下は Project Settings 関連 EditorGUILayout.Space(); bool enableValidation = EditorGUILayout.Foldout(!dismissed, "Player Settings validation"); // チェックするかどうかを記憶 if (enableValidation == dismissed) { dismissed = !enableValidation; } // 推奨設定のチェック //if (!isWarningDismissed) if (enableValidation) { if (ValidateSettings(false)) { // Apply all recommendation GUI.backgroundColor = Color.green; if (GUILayout.Button( "✔ Fix all settings to recommended values", GUILayout.MinHeight(25f) )) { ValidateSettings(true); } // Dismiss the validation GUI.backgroundColor = Color.yellow; if (GUILayout.Button( "✘ Dismiss this validation", GUILayout.MinHeight(25f) )) { dismissed = true; //SaveSettings(); // Uncomment this if save you want to save immediately } EditorGUILayout.Space(); } else { GUI.color = Color.green; GUILayout.Label("OK!"); } // Open the player settings page EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUI.color = Color.white; GUI.backgroundColor = Color.white; if (GUILayout.Button( "Open Player Settings", GUILayout.MinHeight(25f), GUILayout.Width(200f) )) { SettingsService.OpenProjectSettings("Project/Player"); } GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); } return dismissed; } /// /// URP に関する推奨設定の自動設定欄を表示 /// private bool ShowUrpSettingsValidation(bool dismissed) { // URP が無効ならば何もしない if (!hasUrp) return dismissed; // 以下は URP 関連の自動設定 EditorGUILayout.Space(); bool enableValidation = EditorGUILayout.Foldout(!dismissed, "URP Settings validation"); // チェックするかどうかを記憶 if (enableValidation == dismissed) { dismissed = !enableValidation; } // 推奨設定のチェック //if (!isWarningDismissed) if (enableValidation) { if (ValidateUrpSettings(false)) { // Apply all recommendation GUI.backgroundColor = Color.green; if (GUILayout.Button( "✔ Fix all settings to recommended values", GUILayout.MinHeight(25f) )) { ValidateUrpSettings(true); } // Dismiss the validation GUI.backgroundColor = Color.yellow; if (GUILayout.Button( "✘ Dismiss this validation", GUILayout.MinHeight(25f) )) { dismissed = true; } EditorGUILayout.Space(); } else { GUI.color = Color.green; GUILayout.Label("OK!"); } EditorGUILayout.Space(); } return dismissed; } private delegate void FixMethod(); /// /// Show or fix the setting /// /// Warning message /// /// false: show warning and fix button, true: fix without showing private void FixSetting(string message, FixMethod fixAction, bool silentFix = false) { if (silentFix) { // Fix fixAction.Invoke(); } else { // Show the message and a fix button EditorGUILayout.BeginHorizontal(); EditorGUILayout.HelpBox(message, MessageType.Warning, true); GUILayout.FlexibleSpace(); EditorGUILayout.BeginVertical(); EditorGUILayout.Space(); if (GUILayout.Button("Fix", GUILayout.Width(60f))) { fixAction.Invoke(); } //GUILayout.FlexibleSpace(); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } } /// /// Show the recommendation only /// /// Warning message private void ShowInfo(string message, Object target = null) { // Show the message and a fix button EditorGUILayout.BeginHorizontal(); EditorGUILayout.HelpBox(message, MessageType.Info, true); GUILayout.FlexibleSpace(); // 自動設定できない対象は、プロジェクトウィンドウで示すのみ if (target != null) { EditorGUILayout.BeginVertical(); EditorGUILayout.Space(); if (GUILayout.Button("Ping", GUILayout.Width(60f))) { EditorGUIUtility.PingObject(target); } //GUILayout.FlexibleSpace(); EditorGUILayout.EndVertical(); } EditorGUILayout.EndHorizontal(); } /// /// Validate player settings /// /// false: show warning and fix button, true: fix without showing /// true if there are any invalid items private bool ValidateSettings(bool silentFix = false) { bool invalid = false; // バックグラウンドでも実行する。クリックスルー切替などで必要 if (!PlayerSettings.runInBackground) { invalid = true; FixSetting( "'Run in background' is highly recommended.", () => PlayerSettings.runInBackground = true, silentFix ); } // サイズ変更可能なウィンドウとする。必須ではないがウィンドウ枠無効時にサイズも変わるので変更可能である方が自然 if (!PlayerSettings.resizableWindow) { invalid = true; FixSetting( "'Resizable window' is recommended.", () => PlayerSettings.resizableWindow = true, silentFix ); } // フルスクリーンでなくウィンドウとする #if UNITY_2018_1_OR_NEWER // Unity 2018 からはフルスクリーン指定の仕様が変わった if (PlayerSettings.fullScreenMode != FullScreenMode.Windowed) { invalid = true; FixSetting( "Chose 'Windowed' in 'Fullscreen Mode'.", () => PlayerSettings.fullScreenMode = FullScreenMode.Windowed, silentFix ); } #else if (PlayerSettings.defaultIsFullScreen) { invalid = true; FixSetting( "'Default is full screen' is not recommended.", () => PlayerSettings.defaultIsFullScreen = false, silentFix ); } #endif // フルスクリーンとウィンドウの切替を無効とする if (PlayerSettings.allowFullscreenSwitch) { invalid = true; FixSetting( "Disallow fullscreen switch.", () => PlayerSettings.allowFullscreenSwitch = false, silentFix ); } // Windowsでは Use DXGI Flip Mode Swapchain を無効にしないと透過できない // ↓Unity 2019.1.6未満だと useFlipModelSwapchain は無いはず // なので除外のため書き連ねてあるが、ここまでサポートしなくて良い気もする。 #if UNITY_2019_1_6 #elif UNITY_2019_1_5 #elif UNITY_2019_1_4 #elif UNITY_2019_1_3 #elif UNITY_2019_1_2 #elif UNITY_2019_1_1 #elif UNITY_2019_1_0 #elif UNITY_2019_1_OR_NEWER // Unity 2019.1.7 以降であれば、Player 設定 の Use DXGI Flip... 無効化を推奨 if (PlayerSettings.useFlipModelSwapchain) { invalid = true; FixSetting( "Disable 'Use DXGI Flip Mode Swapchain' to make the window transparent.", () => PlayerSettings.useFlipModelSwapchain = false, silentFix ); } // Direct3D12 は透過ウィンドウに対応していないので、Graphics APIs for Windows から除外することを推奨 if (PlayerSettings.GetUseDefaultGraphicsAPIs(BuildTarget.StandaloneWindows)) { // 自動の場合も警告を出す ShowInfo( "Direct3D12 is not supported for transparent window. " + "Please consider using Direct3D11 instead of the 'Auto Graphics API for Windows' setting in Player Settings.", null ); } else if (PlayerSettings.GetGraphicsAPIs(BuildTarget.StandaloneWindows).Contains(GraphicsDeviceType.Direct3D12)) { // Graphhics APIs for Windows に Direct3D12 が含まれている場合は警告を出す ShowInfo( "Direct3D12 is not supported for transparent window. " + "Please remove Direct3D12 from 'Graphics APIs for Windows' in Player Settings.", null ); } #endif return invalid; } /// /// Validate player settings /// /// false: show warning and fix button, true: fix without showing /// true if there are any invalid items private bool ValidateUrpSettings(bool silentFix = false) { bool invalid = false; // Universal Render Pipelineが有効ならば、HDRの無効化を推奨 foreach (var cam in Camera.allCameras) { if (cam.allowHDR) { string name = cam.name; invalid = true; FixSetting( $"{name}: Disable 'HDR' in the camera to make the window transparent.", () => cam.allowHDR = false, silentFix ); } if (cam.allowMSAA) { string name = cam.name; invalid = true; FixSetting( $"{name}: Disable 'MSAA' in the camera to make the window transparent.", () => cam.allowMSAA = false, silentFix ); } } var urpAsset = GraphicsSettings.defaultRenderPipeline; if (hasUrp && urpAsset != null) { // hasUrp == true の時点で urpAsset は UniversalRenderPipelineAsset であるはず。そのため allowPostProcessAlphaOutput があるはず var alphaProcessingProperty = urpAsset.GetType().GetProperty("allowPostProcessAlphaOutput", BindingFlags.Public | BindingFlags.Instance); if (alphaProcessingProperty != null) { var alphaProcessing = alphaProcessingProperty.GetValue(urpAsset); if (!(bool)alphaProcessing) { invalid = true; ShowInfo( "Turn on 'Alpha Processing' in the URP asset", urpAsset ); } } } return invalid; } } [CustomPropertyDrawer(typeof(ReadOnlyAttribute))] public class UniWindowControllerReadOnlyDrawer : PropertyDrawer { public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) { GUI.enabled = false; EditorGUI.PropertyField(position, property, label, true); GUI.enabled = true; } } /// /// Set a bool property editable /// Reference: http://ponkotsu-hiyorin.hateblo.jp/entry/2015/10/20/003042 /// Reference: https://forum.unity.com/threads/c-class-property-with-reflection-in-propertydrawer-not-saving-to-prefab.473942/ /// [CustomPropertyDrawer(typeof(EditablePropertyAttribute))] public class UniWindowControllerDrawer : PropertyDrawer { public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) { //base.OnGUI(position, property, label); Object obj = property.serializedObject.targetObject; // Range(min, max) が設定されていれば取得 FieldInfo fieldInfo = obj.GetType().GetField( property.name, BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static ); var rangeAttrs = fieldInfo?.GetCustomAttributes(typeof(RangeAttribute), true) as RangeAttribute[]; RangeAttribute range = (rangeAttrs?.Length > 0 ? rangeAttrs.First() : null); if (EditorApplication.isPlayingOrWillChangePlaymode) { // 変数の先頭が '_' であることが動作の条件 if (property.name[0] == '_') { string propertyName = property.name.Substring(1); // '_' なしをプロパティ名として取得 PropertyInfo info = obj.GetType().GetProperty(propertyName); MethodInfo getMethod = default(MethodInfo); MethodInfo setMethod = default(MethodInfo); if (info.CanRead) { getMethod = info.GetGetMethod(); } if (info.CanWrite) { setMethod = info.GetSetMethod(); } if (property.type == "bool") { var oldValue = property.boolValue; if (getMethod != null) { oldValue = (bool)getMethod.Invoke(obj, null); } GUI.enabled = (setMethod != null); EditorGUI.PropertyField(position, property, label, true); GUI.enabled = true; var newValue = property.boolValue; if ((setMethod != null) && (oldValue != newValue)) { setMethod.Invoke(obj, new[] { (object)newValue }); } } else if (property.type == "float") { var oldValue = property.floatValue; if (getMethod != null) { oldValue = (float) getMethod.Invoke(obj, null); } GUI.enabled = (setMethod != null); if (range != null) { EditorGUI.Slider(position, property, range.min, range.max, label); } else { EditorGUI.PropertyField(position, property, label, true); } GUI.enabled = true; var newValue = property.floatValue; if ((setMethod != null) && (oldValue != newValue)) { setMethod.Invoke(obj, new[] {(object) newValue}); } } else { // bool, float 以外は今のところ非対応で Readonly とする GUI.enabled = false; EditorGUI.PropertyField(position, property, label, true); GUI.enabled = true; } } else { // Readonly GUI.enabled = false; EditorGUI.PropertyField(position, property, label, true); GUI.enabled = true; } } else { // Range 指定があればスライダー if (range != null) { EditorGUI.Slider(position, property, range.min, range.max, label); } else { EditorGUI.PropertyField(position, property, label, true); } } } public override float GetPropertyHeight(SerializedProperty property, GUIContent label) { return EditorGUI.GetPropertyHeight(property, label, true); } } } #endif ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Scripts/UniWindowControllerEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 168ecf5237c13ad4bb159250b8844a4f timeCreated: 1545989238 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor/Scripts.meta ================================================ fileFormatVersion: 2 guid: 6b954f68e26eeb84bbd93cec0bcc9339 folderAsset: yes DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Editor.meta ================================================ fileFormatVersion: 2 guid: dad4816674a57b84dba9fe5f0426e850 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/LICENSE.md ================================================ MIT License Copyright (c) 2020 Kirurobo 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. ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/LICENSE.md.meta ================================================ fileFormatVersion: 2 guid: 1dc8c66666c365440a7da6a4f311f249 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/README-ja.md ================================================ # UniWindowController Unified window controller for macOS and Windows 略称:UniWinC(ユニウィンク) [![license](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/kirurobo/UniWindowController/blob/master/LICENSE) ### README - [Japanese (日本語での説明)](README-ja.md) - [English](README.md) ## 概要 Unity の Windows / macOS 向けビルドで、自ウィンドウの位置、サイズ、透過、枠非表示などをコントロールします。 また、ファイル、フォルダのドロップも受け付け可能にできます。 Windows、macOS それぞれではコード例やアセットが見つかりましたが、統一的に扱えるものが無さそうだったため作成しました。 ![uniwinc](https://user-images.githubusercontent.com/1019117/96070514-5284e580-0edb-11eb-8a4d-d990a0a028a8.gif) https://twitter.com/i/status/1314440790945361920 ## デモ [UniWinC_VRM](https://github.com/kirurobo/UniWinC_VRM) にはビルドしたVRMファイルビューアーのサンプルを置いてあります。 ## インストール UPMの方法ですと、バージョンアップもUPMから行えるようになります。 A. Unity Package Manager (UPM) を利用する手順 1. Unity エディタの [Window]メニューから [Package Manager] を開く 2. [+] から [Add package from git URL...] を選択 ![image](https://user-images.githubusercontent.com/1019117/234160406-f041bda9-262c-4d3f-b41c-45e11c3a94ce.png) 3. https://github.com/kirurobo/UniWindowController.git#upm を入力して [Add] する ![image](https://user-images.githubusercontent.com/1019117/234160520-35447b67-dd44-4af6-9c7c-ab71577a4c17.png) B. UnityPackage を利用する手順 1. [Release のページ](https://github.com/kirurobo/UniWindowController/releases) から .unitypackage ファイルをダウンロード 2. Unity エディタでインポート ## Unity プロジェクトでの利用 1. Runtime/Prefabs にある `UniWindowController` プレハブをシーンに追加 2. そこで配置された `UniWindowController` をインスペクターで確認 - Player Settings を適切に直す(緑のボタンでまとめて設定が変更されます) - `IsTransparent` 等、設定をお好みに合わせる 3. 左ドラッグでウィンドウ自体を動かしたい場合、 Runtime/Prefabs の `DragMoveCanvas` プレハブも追加 - 動作には EventSystem が必要です。もしシーンに無ければ UI → Event System を追加してください。 4. PC / Mac スタンドアローンでビルドする 5. ビルドしたものを起動 ### URP 利用時の設定 背景を透明にするためには、アルファチャンネルを維持する必要があります。 そのためにいくつかの条件があります。 - HDR は無効にする [参考](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2507577260) - Main Camera (GameObject) > Camera (Component) > Output > HDR: Off - AlphaProcessing は有効にする [図](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2601063168) ## 制限事項 - Direct3D12 では背景透過が有効となりません。Direct3D11 では `Use DXGI flip model swapchain for D3D11` を無効にすることで透過が可能です。 - Unityエディタ上では透過はできません。ビルドをしてお試しください。 - 常に最前面やウィンドウ移動等は動作しますが、実行中にゲームビューを閉じたりドッキングの配置を変えることはお勧めしません。一応、ゲームビューにフォーカスを移すとウィンドウを再取得はします。 - マウスでは良いのですが、タッチ操作には適切な対応がまだ定まっていません。 - Windows の場合、`TransparentType` を Alpha から ColorKey にすると、半透明の表現が失われる代わりにタッチ操作は自然になります。 - 複数ウィンドウには対応していません。 - 完全に動作検証ができている訳ではなく、不安定な動作もあるかもしれません。 既知の問題については [Issues](https://github.com/kirurobo/UniWindowController/issues) もご覧ください。 ## 動作環境 - Unity: 2019 4.31f1 or later - Scripting Runtime: .NET 4.x or later - OS: Windows 10, Windows 11 or macOS 開発は Unity 2022.3.22f1, Windows 11 / macOS 15.3 で行っています ## 補足情報 ### ヒットテストについて 正常にウィンドウを透過できると、あたかも長方形ではないウィンドウのように見えます。 ですがそれは見た目だけで、実は長方形のウィンドウとして存在しています。 そこで、マウスカーソルの直下を見て、透明ならばマウス操作を下のウィンドウに受け流す(クリックスルー)状態とし、不透明なら通常に戻す、という"ヒットテスト"を常に行なうことで、 あたかも見える部分しか存在しないように見せています。 このヒットテストについては2種類用意してあります。(自動ヒットテストを無効にして、自分で制御する、またはしないという選択も可能です。) | Name | Method | Note | |:-----|:-----|:------------| |Opacity|透明度を見る|見た目と一致して自然だが、処理が重い| |Raycast|Coliderを見る|より動作が軽いが、Coliderの用意が必要| Raycastの方法の方がパフォーマンス的に推奨ですが、Coliderを忘れると触れなくなるため、デフォルトでは Opacity としています。 また注意として、タッチ操作だとあらかじめ指の下の色を確認できないため、操作に違和感を感じると思います。 どのように対応すべきかベストの解決策が見つかっていないため、タッチ対応に関してはすみませんが後回しとなっています。 ### 透過方法について(Windowsのみ選択可) タッチ操作に対応する一つの方法として、layered window の単色透過を選択できるようにしてあります。 これを選ぶと半透明が表現できず、パフォーマンスも落ちますが、ヒットテストをWindowsに任せるためタッチ操作に対しては感覚に一致するはずです。 | Name | Description | Note | |:-----|:-----|:------------| |Alpha|レンダリング結果の透明度を反映|こちらが標準| |ColorKey|RGBが一致する一色のみ透過|パフォーマンス悪いが、タッチは自然| ### C# スクリプト Unityで他のスクリプトから操作できるものです。 仕様は固まってはいないため、変更される場合があります。 #### UniWindowController.cs 本体です。 他のスクリプトから操作できるプロパティとして下記があります。(他にも追加されたりします。) | Name | Type | Description | |:-----|:-----|:------------| |isTransparent|bool| 透過(非矩形)ウィンドウに設定/解除します| |isTopmost |bool| 常に最前面に設定/解除します| |isZoomed |bool| 最大化/解除をします。また現在の状態を取得します | |isHitTestEnabled|bool| 自動ヒットテストを有効/無効にします。有効だとマウスカーソル位置により isClickThrough が自動で変化します。 | |isClickThrough|bool| クリックスルー状態に設定/解除します| |windowPosition|Vector2| ウインドウ位置を取得/設定できます。※メインモニタ左下が原点で上向き正の座標系で、ウィンドウ左下座標です | |windowSize|Vector2| ウインドウサイズを取得/設定できます | #### UniWindowMoveHandler.cs このスクリプトをUI要素(Raycast Targetとなるもの)にアタッチしておくと、そのUI要素のドラッグでウィンドウを移動できるようになります。 例えば「ここを掴んで移動できます」というハンドルの画像にアタッチする想定です。 DragMoveCanvas というプレハブ内では、透明な全画面を覆うPanelを使っています。 このとき Layer を「Ignore Raycast」にすることで、自動ヒットテストが Raycast の場合でも対象外となります。 これにより画面のどこでもドラッグできるようになります。 ただし他のUI上の操作はドラッグでの移動より優先されます。(DragMoveCanvas で Sort Order を小さくしているため。) #### LowLevel/FilePanel.cs ファイル選択ダイアログを開く static メソッドがあります。 UniWindowController のインスタンスがなくても使えますが、その場合は呼んだ時点のウィンドウを親として開きます。 - FilePanel.OpenFilePanel() - ファイルを開く場合の選択ダイアログ。複数選択も可能。 - FilePanel.SaveFilePanel() - ファイルを保存する際の選択ダイアログ。 ### ソースのフォルダ構成 利用するだけならば、Release にある unitypackage をダウンロードしていただけばよく、このリポジトリをクローンする必要はありません。 ソースを見たい/ビルドしたい場合は、このようになっていますので参照ください。 - UniWinC - Unity のプロジェクトです。 - ビルド済みの DLL、bundle も既に含みます。 - ここの内容が unitypackage としてリリースにあります。 - VisualStudio - Windows版 x86, x64 の LibUniWinC.dll を生成するソリューションがあります。 - Release でビルドすると Unity フォルダ下の DLL が上書きされます。 - テスト用Windowsフォームアプリのプロジェクトも含まれます。 - Xcode - macOS版 LibUniWinC.bundle を生成するプロジェクトがあります。 - ビルドすると Unity フォルダ下の .bundle が上書きされます。 ## 謝辞 - macOS側のコードは かりばぁ さんの [Unity + Mac + Swift で透過最前面ウィンドウを作る](https://qiita.com/KRiver1/items/9ecf65759cf1349f56af) をベースにさせていただきました。 - GitHub Actions での UPM ブランチ生成は hecomi さんの [Unity で .unitypackage で配布していたアセットを Package Manager 対応してみた](https://tips.hecomi.com/entry/2021/10/29/001304) を参考にしました。 この場を借りて感謝を申し上げます。 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/README-ja.md.meta ================================================ fileFormatVersion: 2 guid: 21cabbd334da95f4880bd34e4e08ddf8 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/README.md ================================================ # UniWindowController Unified window controller for macOS and Windows Abbreviation:UniWinC [![license](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/kirurobo/UniWindowController/blob/master/LICENSE) ### README - [Japanese (日本語での説明)](README-ja.md) - [English](README.md) ## Overview This is a library for apps built for Windows / macOS standalone with Unity. This library controls transparency, borderless, position, size, etc. of its own window. And it allows also accept file and folder drops. ![uniwinc](https://user-images.githubusercontent.com/1019117/96070514-5284e580-0edb-11eb-8a4d-d990a0a028a8.gif) https://twitter.com/i/status/1314440790945361920 ## Demo You can find a sample VRM viewer via [UniWinC_VRM](https://github.com/kirurobo/UniWinC_VRM). ## Installation If you use the UPM, you can also perform version upgrades from UPM. A. Using the Unity Package Manager (UPM) 1. Open [Package Manager] from the [Window] menu of the Unity Editor. 2. Select [+] and then select [Add package from git URL...]. ![image](https://user-images.githubusercontent.com/1019117/234160406-f041bda9-262c-4d3f-b41c-45e11c3a94ce.png) 3. Enter https://github.com/kirurobo/UniWindowController.git#upm and [Add]. ![image](https://user-images.githubusercontent.com/1019117/234160520-35447b67-dd44-4af6-9c7c-ab71577a4c17.png) B. Using an UnityPackage 1. Download an .unitypackage file from the [Release page](https://github.com/kirurobo/UniWindowController/releases). 2. Import the asset in the Unity Editor. ## Use in your Unity project 1. Add the `UniWindowController` prefab in the Runtime/Prefabs to your scene. 2. Select the `UniWindowController` placed scene, and watch the inspector. - Fix the Player Settings appropriately (the green button will change all settings at once) - Adjust the settings such as `IsTransparent` to your liking 3. Add `DragMoveCanvas` prefab in the Runtime/Prefabs if you want to move the window by mouse dragging. - An EventSystem is required for this to work. If it is not present in your scene, add UI → Event System. 4. Build for PC / Mac standalone 5. Launch the build ### Settings when using URP To make the background transparent, the alpha channel must be maintained. There are some conditions for this. - HDR must be disabled [Reference](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2507577260) - Main Camera (GameObject) > Camera (Component) > Output > HDR: Off - AlphaProcessing must be enabled [Figure](https://github.com/kirurobo/UniWindowController/issues/42#issuecomment-2601063168) ## Limitations - Background transparency is not enabled in Direct3D12; in Direct3D11, transparency can be enabled by disabling `Use DXGI flip model swapchain for D3D11`. - Transparency is not available on the Unity Editor. Please build and try it. - It works for topmost, moving windows, etc., but I do not recommend closing the game view or changing the docking arrangement while it is running. In the meantime, the window will reacquire when the focus is shifted to the game view. - The proper support for touch operations has not yet been determined. - On Windows, if you change the `TransparentType` from Alpha to ColorKey, you will lose the beautiful translucency, but the touch operation will be natural. - Multiple windows are not supported. - This has not been fully tested and there may be unstable behavior. See also [Issues](https://github.com/kirurobo/UniWindowController/issues) for known issues. ## System requirements - Unity: 2019 4.31f1 or later - Scripting Runtime: .NET 4.x or later - OS: Windows 10, Windows 11 or macOS Development environment is Unity 2022.3.22f1, Windows 11 / macOS 15.3 ## Additional information ### About the hit test When the window is successfully made transparent, it looks as if it is a non-rectangular window. However, this is only an appearance, and the window actually exists as a rectangular window. Therefore, by looking directly under the mouse cursor, if it is transparent, the mouse operation is passed to the window below (click-through), and if it is opaque, the mouse operation is returned to normal, If it is opaque, it returns to normal. Two types of hit tests are available. (You can also choose to disable the automatic hit test and control it yourself or not.) | Name | Method | Note | |:-----|:-----|:------------| |Opacity|Check transparency|Matches appearance and is natural, but heavy processing| |Raycast|Check colider|Lightweight, but requires coliders| The Raycast method is recommended in terms of performance, but if you forget colider, you will not be able to touch the screen, so the default is Opacity. Also, note that touch operation may feel uncomfortable because you cannot see the color under your finger in advance. Since we have not found the best solution for this, I'm sorry to say that touch support has been put on the back burner. ### About the transparency method (Seceltable only on Windows) One way to support touch operation is to select monochromatic transparency for layered windows. If this is selected, semi-transparency cannot be expressed and performance will be reduced, but since the hit test is left to Windows, it should match your senses for touch operation. | Name | Description | Note | |:-----|:-----|:------------| |Alpha|Reflects transparency of rendering results|This is standard| |ColorKey|Only one color with matching RGB is transparent|Poor performance, but touch is natural| ### C# scripting This is something that can be manipulated from other scripts in Unity. Specifications are not finalized and are subject to change. #### UniWindowController.cs This is the main script. The following properties can be manipulated from other scripts. (Other properties may be added.) | Name | Type | Description | |:-----|:-----|:------------| |isTransparent|bool| Set/unset for transparent (non-rectangular) windows| |isTopmost |bool| Always set/unset to topmost| |isZoomed |bool| Maximize/unmaximize the window. Also, get the current state | |isHitTestEnabled|bool| Enables/disables the automatic hit test. If enabled, isClickThrough will automatically change depending on the mouse cursor position. | |isClickThrough|bool| Sets/unset the click-through state.| |windowPosition|Vector2| Allows you to get/set the window position. The lower left corner of the main monitor is the origin and the coordinate system is positive upward, and the lower left corner of the window is the coordinate system.| |windowSize|Vector2| You can get/set the window size.| #### UniWindowMoveHandler.cs If you attach this script to a UI element (which will be the Raycast Target), you can move the window by dragging that UI element. For example, it is assumed to be attached to an image with a handle that says, "You can move by grabbing here. Within the prefab called DragMoveCanvas, we use a Panel that covers the entire transparent screen. By setting the Layer to "Ignore Raycast", the automatic hit test will be excluded even if the panel is a Raycast. This allows dragging anywhere on the screen. However, other UI operations will take precedence over dragging. (This is due to the smaller Sort Order in DragMoveCanvas.) ### Source folder hierarchy If you just want to use this library, you can download .unitypackage in Release and do not need to clone this repository. If you want to see/build the source, please refer to this. - UniWinC - This is a Unity project. - It already contains built DLLs and bundles. - The contents of this project are in the release as the .unitypackage. - VisualStudio - There is a solution to generate LibUniWinC.dll for Windows x86 and x64. - Building with Release will overwrite the DLL under the Unity folder. - A Windows Forms app project for testing is also included. - Xcode - There is a project to generate LibUniWinC.bundle for macOS. - Building it will overwrite the .bundle under the Unity folder. ## Acknowledgements - The macOS code is based on [Unity + Mac + Swift で透過最前面ウィンドウを作る](https://qiita.com/KRiver1/items/9ecf65759cf1349f56af) by かりばぁ. - I used hecomi's [Unity で .unitypackage で配布していたアセットを Package Manager 対応してみた](https://tips.hecomi.com/entry/2021/10/29/001304) for generating UPM branches in GitHub Actions. I would like to thank them. ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/README.md.meta ================================================ fileFormatVersion: 2 guid: fb4787470f32f94428acbaf4cd01875d TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Kirurobo.UniWindowController.asmdef ================================================ { "name": "Kirurobo.UniWindowController", "rootNamespace": "", "references": [ "GUID:75469ad4d38634e559750d17036d5f7c" ], "includePlatforms": [ "Editor", "macOSStandalone", "WindowsStandalone32", "WindowsStandalone64" ], "excludePlatforms": [], "allowUnsafeCode": false, "overrideReferences": false, "precompiledReferences": [], "autoReferenced": true, "defineConstraints": [], "versionDefines": [], "noEngineReferences": false } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Kirurobo.UniWindowController.asmdef.meta ================================================ fileFormatVersion: 2 guid: 785f71526b4175240bb8e068347cab84 AssemblyDefinitionImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/MacOS/LibUniWinC.bundle/Contents/Info.plist ================================================ BuildMachineOSBuild 25C56 CFBundleDevelopmentRegion en CFBundleExecutable LibUniWinC CFBundleIdentifier com.kirurobo.LibUniWinC CFBundleInfoDictionaryVersion 6.0 CFBundleName LibUniWinC CFBundlePackageType BNDL CFBundleShortVersionString 0.9.8 CFBundleSupportedPlatforms MacOSX CFBundleVersion 1 DTCompiler com.apple.compilers.llvm.clang.1_0 DTPlatformBuild 25B74 DTPlatformName macosx DTPlatformVersion 26.1 DTSDKBuild 25B74 DTSDKName macosx26.1 DTXcode 2610 DTXcodeBuild 17B55 LSMinimumSystemVersion 11.0 NSHumanReadableCopyright Copyright © 2019-2025 kirurobo. All rights reserved. ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/MacOS/LibUniWinC.bundle/Contents/_CodeSignature/CodeResources ================================================ files files2 rules ^Resources/ ^Resources/.*\.lproj/ optional weight 1000 ^Resources/.*\.lproj/locversion.plist$ omit weight 1100 ^Resources/Base\.lproj/ weight 1010 ^version.plist$ rules2 .*\.dSYM($|/) weight 11 ^(.*/)?\.DS_Store$ omit weight 2000 ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ nested weight 10 ^.* ^Info\.plist$ omit weight 20 ^PkgInfo$ omit weight 20 ^Resources/ weight 20 ^Resources/.*\.lproj/ optional weight 1000 ^Resources/.*\.lproj/locversion.plist$ omit weight 1100 ^Resources/Base\.lproj/ weight 1010 ^[^/]+$ nested weight 10 ^embedded\.provisionprofile$ weight 20 ^version\.plist$ weight 20 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/MacOS/LibUniWinC.bundle.meta ================================================ fileFormatVersion: 2 guid: fe2ad2bcb94714ffc888f3e1f03ccdec PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 0 settings: {} - first: Editor: Editor second: enabled: 1 settings: DefaultValueInitialized: true - first: Standalone: OSXUniversal second: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/MacOS.meta ================================================ fileFormatVersion: 2 guid: d748bcfa85c1348c28b564cd6ac37b19 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/Windows/x64/LibUniWinC.dll.meta ================================================ fileFormatVersion: 2 guid: c6c54ba480bd9a849b4ac7726fd0e0b8 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: '': Any second: enabled: 0 settings: Exclude Editor: 0 Exclude Linux: 0 Exclude Linux64: 0 Exclude LinuxUniversal: 0 Exclude OSXUniversal: 0 Exclude Win: 1 Exclude Win64: 0 - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 1 settings: CPU: AnyCPU DefaultValueInitialized: true OS: AnyOS - first: Facebook: Win second: enabled: 0 settings: CPU: None - first: Facebook: Win64 second: enabled: 0 settings: CPU: AnyCPU - first: Standalone: Linux second: enabled: 1 settings: CPU: x86 - first: Standalone: Linux64 second: enabled: 1 settings: CPU: x86_64 - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: OSXUniversal second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Win second: enabled: 0 settings: CPU: None - first: Standalone: Win64 second: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/Windows/x64.meta ================================================ fileFormatVersion: 2 guid: 8993db1768570f54ba2e55c434fcbba6 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/Windows/x86/LibUniWinC.dll.meta ================================================ fileFormatVersion: 2 guid: 56ecac4e2cbf9ee47a811187740e0cd7 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 0 settings: CPU: x86 DefaultValueInitialized: true - first: Facebook: Win second: enabled: 1 settings: CPU: AnyCPU - first: Facebook: Win64 second: enabled: 0 settings: CPU: None - first: Standalone: Linux second: enabled: 1 settings: CPU: x86 - first: Standalone: Linux64 second: enabled: 0 settings: CPU: None - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: x86 - first: Standalone: OSXUniversal second: enabled: 0 settings: CPU: x86 - first: Standalone: Win second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Win64 second: enabled: 0 settings: CPU: None userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/Windows/x86.meta ================================================ fileFormatVersion: 2 guid: 3237602cc6b253f46a849323dedb9710 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins/Windows.meta ================================================ fileFormatVersion: 2 guid: d6bda42304b999c4abbc168be20f11bf folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Plugins.meta ================================================ fileFormatVersion: 2 guid: 1b2fb2965b4b647beb75e5d55e9c8d6b folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Prefabs/DragMoveCanvas.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &9167954367597434767 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 9167954367597434766} - component: {fileID: 9167954367597434803} - component: {fileID: 9167954367597434764} - component: {fileID: 9167954367597434765} m_Layer: 2 m_Name: WindowMoveHandle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &9167954367597434766 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367597434767} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 9167954367673589915} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &9167954367597434803 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367597434767} m_CullTransparentMesh: 0 --- !u!114 &9167954367597434764 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367597434767} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!114 &9167954367597434765 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367597434767} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e7879148f4ed9cc42aa2ef8f22bf92c0, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &9167954367673589911 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 9167954367673589915} - component: {fileID: 9167954367673589908} - component: {fileID: 9167954367673589909} - component: {fileID: 9167954367673589910} m_Layer: 5 m_Name: DragMoveCanvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &9167954367673589915 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367673589911} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 9167954367597434766} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!223 &9167954367673589908 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367673589911} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: -99 m_TargetDisplay: 0 --- !u!114 &9167954367673589909 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367673589911} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!114 &9167954367673589910 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 9167954367673589911} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Prefabs/DragMoveCanvas.prefab.meta ================================================ fileFormatVersion: 2 guid: d7dcf50428b152040847878685fe0746 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Prefabs/UniWindowController.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &2416199871598626844 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2416199871598626842} - component: {fileID: 2416199871598626845} m_Layer: 0 m_Name: UniWindowController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2416199871598626842 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2416199871598626844} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2416199871598626845 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2416199871598626844} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: eb951500192d2430eb3e306480cc2f31, type: 3} m_Name: m_EditorClassIdentifier: _isTransparent: 0 _isTopmost: 0 _isZoomed: 0 isHitTestEnabled: 1 hitTestType: 1 opacityThreshold: 0.1 forceWindowed: 0 transparentType: 1 keyColor: serializedVersion: 2 rgba: 65537 onObject: 1 pickedColor: {r: 0, g: 0, b: 0, a: 0} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Prefabs/UniWindowController.prefab.meta ================================================ fileFormatVersion: 2 guid: e893aefd93740714b999573b02916984 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Prefabs.meta ================================================ fileFormatVersion: 2 guid: be7b28427840aa54ba08d1727ca5503b folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/LowLevel/FilePanel.cs ================================================ using AOT; using System; using System.Runtime.InteropServices; using System.Text; namespace Kirurobo { /// /// Provides static methods to open native file dialog /// public class FilePanel { protected class LibUniWinC { [DllImport("LibUniWinC", CharSet = CharSet.Unicode)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool OpenFilePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize); [DllImport("LibUniWinC", CharSet = CharSet.Unicode)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool OpenSavePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize); [StructLayout(LayoutKind.Sequential, Pack = 1)] public struct PanelSettings : IDisposable { public Int32 structSize; public Int32 flags; public IntPtr lpszTitle; public IntPtr lpszFilter; public IntPtr lpszInitialFile; public IntPtr lpszInitialDir; public IntPtr lpszDefaultExt; public PanelSettings(Settings settings) { this.structSize = 0; //this.structSize = 4 * 2 + Marshal.SizeOf() * 3; this.flags = (Int32)settings.flags; //this.lpTitleText = IntPtr.Zero; //this.lpFilterText = IntPtr.Zero; //this.lpDefaultPath = IntPtr.Zero; this.lpszTitle = Marshal.StringToHGlobalUni(settings.title); this.lpszFilter = Marshal.StringToHGlobalUni(Filter.Join(settings.filters)); this.lpszInitialFile = Marshal.StringToHGlobalUni(settings.initialFile); this.lpszInitialDir = Marshal.StringToHGlobalUni(settings.initialDirectory); //this.lpszDefaultExt = Marshal.StringToHGlobalUni(settings.defaultExtension); this.lpszDefaultExt = IntPtr.Zero; //this.structSize = Marshal.SizeOf(this); this.structSize = Marshal.SizeOf(this); } public void Dispose() { if (this.lpszTitle != IntPtr.Zero) { Marshal.FreeHGlobal(lpszTitle); this.lpszTitle = IntPtr.Zero; } if (this.lpszFilter!= IntPtr.Zero) { Marshal.FreeHGlobal(lpszFilter); this.lpszFilter= IntPtr.Zero; } if (this.lpszInitialFile!= IntPtr.Zero) { Marshal.FreeHGlobal(lpszInitialFile); this.lpszInitialFile= IntPtr.Zero; } if (this.lpszInitialDir != IntPtr.Zero) { Marshal.FreeHGlobal(lpszInitialDir); this.lpszInitialDir = IntPtr.Zero; } if (this.lpszDefaultExt != IntPtr.Zero) { Marshal.FreeHGlobal(lpszDefaultExt); this.lpszDefaultExt = IntPtr.Zero; } } } } /// /// ダイアログの設定フラグ /// [Flags] public enum Flag { None = 0, FileMustExist = 1, // Windows only FolderMustExist = 2, // Windows only AllowMultipleSelection = 4, CanCreateDirectories = 16, OverwritePrompt = 256, // Always enabled on macOS CreatePrompt = 512, // Always enabled on macOS ShowHiddenFiles = 4096, RetrieveLink = 8192, } /// /// Parameters for file dialog /// public struct Settings { public string title; public Filter[] filters; public string initialDirectory; public string initialFile; public string defaultExtension; // Not implemented public Flag flags; } /// /// File filter /// public class Filter { protected string title; protected string[] extensions; /// /// /// /// Filter title. (Not available on macOS yet) /// Extensions like ["png", "jpg", "txt"] public Filter(string title, params string[] extensions) { this.title = title; this.extensions = extensions; } public override string ToString() { return title + "\t" + String.Join("\t", extensions); } /// /// Returns converted string from Filter array /// /// /// public static string Join(Filter[] filters) { if (filters == null) return ""; string result = ""; bool isFirstItem = true; foreach (var filter in filters) { if (!isFirstItem) result += "\n"; result += filter.ToString(); isFirstItem = false; } return result; } } /// /// ファイルやフォルダ―のパス受け渡しUTF-16バッファの文字数 /// 複数パスが改行区切りで入るため 260 では少ない。 /// private const int pathBufferSize = 2560; /// /// Open file selection dialog /// /// /// public static void OpenFilePanel(Settings settings, Action action) { LibUniWinC.PanelSettings ps = new LibUniWinC.PanelSettings(settings); StringBuilder sb = new StringBuilder(pathBufferSize); if (LibUniWinC.OpenFilePanel(in ps, sb, (uint)sb.Capacity)) { string[] files = UniWinCore.parsePaths(sb.ToString()); action.Invoke(files); } ps.Dispose(); // Settings を渡したコンストラクタでメモリが確保されるため、解放が必要 } /// /// Open save-file selection dialog /// /// /// public static void SaveFilePanel(Settings settings, Action action) { LibUniWinC.PanelSettings ps = new LibUniWinC.PanelSettings(settings); StringBuilder sb = new StringBuilder(pathBufferSize); if (LibUniWinC.OpenSavePanel(in ps, sb, (uint)sb.Capacity)) { string[] files = UniWinCore.parsePaths(sb.ToString()); action.Invoke(files); } ps.Dispose(); // Settings を渡したコンストラクタでメモリが確保されるため、解放が必要 } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/LowLevel/FilePanel.cs.meta ================================================ fileFormatVersion: 2 guid: 176fb446df68d42f48d87354c9ef27d4 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/LowLevel/UniWinCore.cs ================================================ /* * UniWinCore.cs * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using System.Runtime.InteropServices; using AOT; using UnityEngine; using System.Text; #if UNITY_EDITOR using UnityEditor; #endif namespace Kirurobo { /// /// Native plugin wrapper for LibUniWinC /// internal class UniWinCore : IDisposable { /// /// Type of transparent method for Windows only /// public enum TransparentType : int { None = 0, Alpha = 1, ColorKey = 2, } /// /// State changed event type (Experimental) /// [Flags] public enum WindowStateEventType : int { None = 0, StyleChanged = 1, Resized = 2, // 以降は仕様変更もありえる TopMostEnabled = 16 + 1 + 8, TopMostDisabled = 16 + 1, BottomMostEnabled = 32 + 1 + 8, BottomMostDisabled = 32 + 1, WallpaperModeEnabled = 64 + 1 + 8, WallpaperModeDisabled = 64 + 1, }; #region Native functions protected class LibUniWinC { [UnmanagedFunctionPointer(CallingConvention.Winapi)] public delegate void StringCallback([MarshalAs(UnmanagedType.LPWStr)] string returnString); [UnmanagedFunctionPointer((CallingConvention.Winapi))] public delegate void IntCallback([MarshalAs(UnmanagedType.I4)] int value); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsActive(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsTransparent(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsBorderless(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsTopmost(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsBottommost(); [DllImport("LibUniWinC", CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsMaximized(); [DllImport("LibUniWinC", CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsFreePositioningEnabled(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyWindow(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyOwnerWindow(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyActiveWindow(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool DetachWindow(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void Update(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetTransparent([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetBorderless([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetAlphaValue(float alpha); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetClickThrough([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetTopmost([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetBottommost([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC", CallingConvention = CallingConvention.Winapi)] public static extern void SetMaximized([MarshalAs(UnmanagedType.U1)] bool bZoomed); [DllImport("LibUniWinC", CallingConvention = CallingConvention.Winapi)] public static extern void EnableFreePositioning([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetPosition(float x, float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetPosition(out float x, out float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetSize(float x, float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetSize(out float x, out float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetClientSize(out float width, out float height); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetClientRectangle(out float x, out float y, out float width, out float height); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterDropFilesCallback([MarshalAs(UnmanagedType.FunctionPtr)] StringCallback callback); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterDropFilesCallback(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterMonitorChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterMonitorChangedCallback(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterWindowStyleChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterWindowStyleChangedCallback(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool SetAllowDrop([MarshalAs(UnmanagedType.U1)] bool enabled); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern int GetCurrentMonitor(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern int GetMonitorCount(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetMonitorRectangle(int index, out float x, out float y, out float width, out float height); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetCursorPosition(float x, float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetCursorPosition(out float x, out float y); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern int GetMouseButtons(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern int GetModifierKeys(); #region Working on Windows only [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetTransparentType(int type); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern void SetKeyColor(uint colorref); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] public static extern int GetDebugInfo(); [DllImport("LibUniWinC",CallingConvention=CallingConvention.Winapi)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachWindowHandle(IntPtr hWnd); #endregion } #endregion static string[] lastDroppedFiles; static bool wasDropped = false; static bool wasMonitorChanged = false; static bool wasWindowStyleChanged = false; static WindowStateEventType windowStateEventType = WindowStateEventType.None; #if UNITY_EDITOR /// /// Get the Unity editor window /// /// /// public static EditorWindow GetGameView() { var assembly = typeof(EditorWindow).Assembly; var type = assembly.GetType("UnityEditor.GameView"); var gameView = EditorWindow.GetWindow(type); return gameView; } #endif /// /// Determines whether a window is attached and available /// /// true if this instance is active; otherwise, false. public bool IsActive { get; private set; } = false; /// /// Determines whether the attached window is always on the front /// public bool IsTopmost { get { return (IsActive && _isTopmost); } } private bool _isTopmost = false; /// /// Determines whether the attached window is always on the bottom /// public bool IsBottommost { get { return (IsActive && _isBottommost); } } private bool _isBottommost = false; /// /// Determines whether the attached window is transparent /// public bool IsTransparent { get { return (IsActive && _isTransparent); } } private bool _isTransparent = false; /// /// Determines whether the attached window is click-through (i.e., does not receive any mouse action) /// public bool IsClickThrough { get { return (IsActive && _isClickThrough); } } private bool _isClickThrough = false; /// /// Determines whether the attached window is borderless (no title bar and borders) /// public bool IsBorderless { get { return (IsActive && _isBorderless); } } private bool _isBorderless = false; /// /// Determines whether the attached window can be freely positioned (macOS only) /// public bool IsFreePositioningEnabled { get { return (IsActive && _isFreePositioningEnabled); } } private bool _isFreePositioningEnabled = false; /// /// Type of transparent method for Windows /// private TransparentType transparentType = TransparentType.Alpha; /// /// The color to use for transparency when the transparentType is ColorKey /// private Color32 keyColor = new Color32(1, 0, 1, 0); #region Constructor or destructor /// /// ウィンドウ制御のコンストラクタ /// public UniWinCore() { IsActive = false; } /// /// デストラクタ /// ~UniWinCore() { Dispose(); } /// /// 終了時の処理 /// public void Dispose() { // 最後にウィンドウ状態を戻すとそれが目についてしまうので、あえて戻さないことにしてみるためコメントアウト //DetachWindow(); // Instead of DetachWindow() LibUniWinC.UnregisterDropFilesCallback(); LibUniWinC.UnregisterMonitorChangedCallback(); LibUniWinC.UnregisterWindowStyleChangedCallback(); } #endregion #region Callbacks /// /// モニタまたは解像度が変化したときのコールバック /// この中での処理は最低限にするため、フラグを立てるのみ /// /// [MonoPInvokeCallback(typeof(LibUniWinC.IntCallback))] private static void _monitorChangedCallback([MarshalAs(UnmanagedType.I4)] int monitorCount) { wasMonitorChanged = true; } /// /// ウィンドウスタイルや最大化、最小化等で呼ばれるコールバック /// この中での処理は最低限にするため、フラグを立てるのみ /// /// [MonoPInvokeCallback(typeof(LibUniWinC.IntCallback))] private static void _windowStyleChangedCallback([MarshalAs(UnmanagedType.I4)] int e) { wasWindowStyleChanged = true; windowStateEventType = (WindowStateEventType)e; } /// /// ファイル、フォルダがドロップされた時に呼ばれるコールバック /// 文字列を配列に直すことと、フラグを立てるまで行う /// /// [MonoPInvokeCallback(typeof(LibUniWinC.StringCallback))] private static void _dropFilesCallback([MarshalAs(UnmanagedType.LPWStr)] string paths) { // LF 区切りで届いた文字列を分割してパスの配列に直す //char[] delimiters = { '\n', '\0' }; //string[] files = paths.Split(delimiters).Where(s => s != "").ToArray(); string[] files = parsePaths(paths); if (files.Length > 0) { lastDroppedFiles = new string[files.Length]; files.CopyTo(lastDroppedFiles, 0); wasDropped = true; } } /// /// ダブルクオーテーション囲み、LF(またはnull)区切りの文字列を配列に直して返す /// /// /// internal static string[] parsePaths(string text) { System.Collections.Generic.List list = new System.Collections.Generic.List(); bool inEscaped = false; int len = text.Length; StringBuilder sb = new StringBuilder(); for (int i = 0; i < len; i++) { char c = text[i]; if (c == '"') { if (inEscaped) { if (((i + 1) < len) && text[i + 1] == '"') { i++; sb.Append(c); // 連続ダブルクォーテーションは1つのダブルクオーテーションとする continue; } } inEscaped = !inEscaped; // 連続でなければ囲み内か否かの切り替え } else if (c == '\n') { if (inEscaped) { // 囲み内ならパスの一部とする sb.Append(c); } else { // 囲み内でなければ、区切りとして、次のパスに移る if (sb.Length > 0) { list.Add(sb.ToString()); //sb.Clear(); // for .NET 4 or later sb.Length = 0; // for .NET 2 } } } else if (c == '\0') { // ヌル文字は、常に区切りとして、次のパスに移る if (sb.Length > 0) { list.Add(sb.ToString()); //sb.Clear(); // for .NET 4 or later sb.Length = 0; // for .NET 2 } } else { sb.Append(c); } } if (sb.Length > 0) { list.Add(sb.ToString()); } // 空文字列の要素は除去 list.RemoveAll(v => v.Length == 0); return list.ToArray(); } #endregion #region Find, attach or detach /// /// ウィンドウ状態を最初に戻して操作対象から解除 /// public void DetachWindow() { #if UNITY_EDITOR // エディタの場合、ウィンドウスタイルでは常に最前面と得られていない可能性があるため、 // 最前面ではないのが本来と決め打ちで、デタッチ時無効化する EnableTopmost(false); #endif LibUniWinC.DetachWindow(); } /// /// 自分のウィンドウ(ゲームビューが独立ウィンドウならそれ)を探して操作対象とする /// /// public bool AttachMyWindow() { #if UNITY_EDITOR_WIN // 確実にゲームビューを得る方法がなさそうなので、フォーカスを与えて直後にアクティブなウィンドウを取得 var gameView = GetGameView(); if (gameView) { gameView.Focus(); LibUniWinC.AttachMyActiveWindow(); } #else LibUniWinC.AttachMyWindow(); #endif // Add event handlers LibUniWinC.RegisterDropFilesCallback(_dropFilesCallback); LibUniWinC.RegisterMonitorChangedCallback(_monitorChangedCallback); LibUniWinC.RegisterWindowStyleChangedCallback(_windowStyleChangedCallback); IsActive = LibUniWinC.IsActive(); return IsActive; } public bool AttachWindowHandle(IntPtr hWnd) { LibUniWinC.AttachWindowHandle(hWnd); IsActive = LibUniWinC.IsActive(); return IsActive; } /// /// 自分のプロセスで現在アクティブなウィンドウを選択 /// エディタの場合、ウィンドウが閉じたりドッキングしたりするため、フォーカス時に呼ぶ /// /// public bool AttachMyActiveWindow() { LibUniWinC.AttachMyActiveWindow(); IsActive = LibUniWinC.IsActive(); return IsActive; } #endregion #region About window status /// /// Call this periodically to maintain window style /// public void Update() { LibUniWinC.Update(); } string GetDebubgWindowSizeInfo() { float x, y, cx, cy; LibUniWinC.GetSize(out x, out y); LibUniWinC.GetClientSize(out cx, out cy); return $"W:{x},H:{y} CW:{cx},CH:{cy}"; } /// /// 透過を設定/解除 /// /// public void EnableTransparent(bool isTransparent) { // エディタは透過できなかったり、枠が通常と異なるのでスキップ #if !UNITY_EDITOR LibUniWinC.SetTransparent(isTransparent); LibUniWinC.SetBorderless(isTransparent); #endif this._isTransparent = isTransparent; } /// /// Set the window alpha /// /// 0.0 - 1.0 public void SetAlphaValue(float alpha) { // Windowsのエディタでは、一度半透明にしてしまうと表示が更新されなくなるため無効化。MacならOK #if !UNITY_EDITOR_WIN LibUniWinC.SetAlphaValue(alpha); #endif } /// /// Set the window z-order (Topmost or not). /// /// If set to true is top. public void EnableTopmost(bool isTopmost) { LibUniWinC.SetTopmost(isTopmost); this._isTopmost = isTopmost; this._isBottommost = false; // Exclusive } /// /// Set the window z-order (Bottommost or not). /// /// If set to true is bottom. public void EnableBottommost(bool isBottommost) { LibUniWinC.SetBottommost(isBottommost); this._isBottommost = isBottommost; this._isTopmost = false; // Exclusive } /// /// クリックスルーを設定/解除 /// /// public void EnableClickThrough(bool isThrough) { // エディタでクリックスルーされると操作できなくなる可能性があるため、スキップ #if !UNITY_EDITOR LibUniWinC.SetClickThrough(isThrough); #endif this._isClickThrough = isThrough; } /// /// ウィンドウを最大化(Macではズーム)する /// 最大化された後にサイズ変更がされることもあり、現状、確実には動作しない可能性があります /// public void SetZoomed(bool isZoomed) { LibUniWinC.SetMaximized(isZoomed); } /// /// ウィンドウが最大化(Macではズーム)されているかを取得 /// 最大化された後にサイズ変更がされることもあり、現状、確実には動作しない可能性があります /// public bool GetZoomed() { return LibUniWinC.IsMaximized(); } /// /// Set the window position. /// /// Position. public void SetWindowPosition(Vector2 position) { LibUniWinC.SetPosition(position.x, position.y); } /// /// Get the window position. /// /// The position. public Vector2 GetWindowPosition() { Vector2 pos = Vector2.zero; LibUniWinC.GetPosition(out pos.x, out pos.y); return pos; } /// /// Set the window size. /// /// x is width and y is height public void SetWindowSize(Vector2 size) { LibUniWinC.SetSize(size.x, size.y); } /// /// Get the window Size. /// /// x is width and y is height public Vector2 GetWindowSize() { Vector2 size = Vector2.zero; LibUniWinC.GetSize(out size.x, out size.y); return size; } /// /// Get the client area ize. /// /// x is width and y is height public Vector2 GetClientSize() { Vector2 size = Vector2.zero; LibUniWinC.GetClientSize(out size.x, out size.y); return size; } /// /// Get the client area ize. /// /// x is width and y is height public Rect GetClientRectangle() { Vector2 pos = Vector2.zero; Vector2 size = Vector2.zero; LibUniWinC.GetClientRectangle(out pos.x, out pos.y, out size.x, out size.y); return new Rect(pos.x, pos.y, size.x, size.y); } #endregion #region File opening public void SetAllowDrop(bool enabled) { LibUniWinC.SetAllowDrop(enabled); } #endregion #region Event observers /// /// Check files dropping and unset the dropped flag /// /// /// true if files were dropped public bool ObserveDroppedFiles(out string[] files) { files = lastDroppedFiles; if (!wasDropped || files == null) return false; wasDropped = false; return true; } /// /// Check the numbers of display or resolution changing, and unset the flag /// /// true if changed public bool ObserveMonitorChanged() { if (!wasMonitorChanged) return false; wasMonitorChanged = false; return true; } /// /// Check window style was changed, and unset the flag /// /// True if window styel was changed public bool ObserveWindowStyleChanged() { if (!wasWindowStyleChanged) return false; windowStateEventType = WindowStateEventType.None; wasWindowStyleChanged = false; return true; } /// /// Check window style was changed, and unset the flag /// /// True if window styel was changed public bool ObserveWindowStyleChanged(out WindowStateEventType type) { if (!wasWindowStyleChanged) { type = WindowStateEventType.None; return false; } type = windowStateEventType; windowStateEventType = WindowStateEventType.None; wasWindowStyleChanged = false; return true; } #endregion #region About mouse cursor /// /// Set the mouse pointer position. /// /// Position. public static void SetCursorPosition(Vector2 position) { LibUniWinC.SetCursorPosition(position.x, position.y); } /// /// Get the mouse pointer position. /// /// The position. public static Vector2 GetCursorPosition() { Vector2 pos = Vector2.zero; LibUniWinC.GetCursorPosition(out pos.x, out pos.y); return pos; } /// /// Get pressed mouse buttons. /// /// Bit flags of pressed buttons public static int GetMouseButtons() { return LibUniWinC.GetMouseButtons(); } /// /// Get pressed modifier keys. /// /// Bit flags of pressed keys public static int GetModifierKeys() { return LibUniWinC.GetModifierKeys(); } // Not implemented public static bool GetCursorVisible() { return true; } #endregion #region for Windows only /// /// 透過方法を指定(Windowsのみ対応) /// /// public void SetTransparentType(TransparentType type) { LibUniWinC.SetTransparentType((Int32)type); transparentType = type; } /// /// 単色透過の場合の透明色を指定(Windowsのみ対応) /// /// public void SetKeyColor(Color32 color) { LibUniWinC.SetKeyColor((UInt32)(color.b * 0x10000 + color.g * 0x100 + color.r)); keyColor = color; } #endregion #region for macOS only /// /// ウィンドウの自由配置を設定/解除(macOSのみ対応) /// /// public void EnableFreePositioning(bool enabled) { LibUniWinC.EnableFreePositioning(enabled); _isFreePositioningEnabled = LibUniWinC.IsFreePositioningEnabled(); } #endregion #region About monitors /// /// Get the monitor index where the window is located /// /// Monitor index public int GetCurrentMonitor() { return LibUniWinC.GetCurrentMonitor(); } /// /// Get the number of connected monitors /// /// Count public static int GetMonitorCount() { return LibUniWinC.GetMonitorCount(); } /// /// Get monitor position and size /// /// /// /// /// public static bool GetMonitorRectangle(int index, out Vector2 position, out Vector2 size) { return LibUniWinC.GetMonitorRectangle(index, out position.x, out position.y, out size.x, out size.y); } /// /// Fit the window to specified monitor /// /// /// public bool FitToMonitor(int monitorIndex) { float dx, dy, dw, dh; if (LibUniWinC.GetMonitorRectangle(monitorIndex, out dx, out dy, out dw, out dh)) { // 最大化状態なら一度戻す if (LibUniWinC.IsMaximized()) LibUniWinC.SetMaximized(false); // 指定モニタ中央座標 float cx = dx + (dw / 2); float cy = dy + (dh / 2); // ウィンドウ中央を指定モニタ中央に移動 float ww, wh; LibUniWinC.GetSize(out ww, out wh); float wx = cx - (ww / 2); float wy = cy - (wh / 2); LibUniWinC.SetPosition(wx, wy); // 最大化 LibUniWinC.SetMaximized(true); //Debug.Log(String.Format("Monitor {4} : {0},{1} - {2},{3}", dx, dy, dw, dh, monitorIndex)); return true; } return false; } /// /// Print monitor list /// [Obsolete] public static void DebugMonitorInfo() { int monitors = LibUniWinC.GetMonitorCount(); int currentMonitorIndex = LibUniWinC.GetCurrentMonitor(); string message = "Current monitor: " + currentMonitorIndex + "\r\n"; for (int i = 0; i < monitors; i++) { float x, y, w, h; bool result = LibUniWinC.GetMonitorRectangle(i, out x, out y, out w, out h); message += String.Format( "Monitor {0}: X:{1}, Y:{2} - W:{3}, H:{4}\r\n", i, x, y, w, h ); } Debug.Log(message); } /// /// Receive information for debugging /// /// [Obsolete] public static int GetDebugInfo() { return LibUniWinC.GetDebugInfo(); } #endregion } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/LowLevel/UniWinCore.cs.meta ================================================ fileFormatVersion: 2 guid: 5990f0f19dd4343d09391aa4b153be76 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/LowLevel.meta ================================================ fileFormatVersion: 2 guid: b632a42ce16994953841ea9d9301ce0d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/UniWindowController.cs ================================================ /* * UniWindowController.cs * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; #if UNITY_EDITOR using UnityEditor; using System.Reflection; using UnityEngine.Events; using System.Linq; #endif #if ENABLE_INPUT_SYSTEM using UnityEngine.InputSystem; #endif namespace Kirurobo { /// @cond DOXYGEN_SHOW_INTERNAL_CLASSES /// /// Set editable a bool property /// [System.AttributeUsage(System.AttributeTargets.Field, Inherited = true, AllowMultiple = false)] public class EditablePropertyAttribute : UnityEngine.PropertyAttribute { } /// /// Set an attribute as readonly /// [System.AttributeUsage(System.AttributeTargets.Field, Inherited = true, AllowMultiple = false)] public class ReadOnlyAttribute : UnityEngine.PropertyAttribute { } /// @endcond /// /// Unified window controller for Windows / Mac /// public class UniWindowController : MonoBehaviour { /// /// The same as UniWinCore.TransparentType /// public enum TransparentType : int { None = 0, Alpha = 1, ColorKey = 2, } /// /// Scecifies method to hit-test (i.e., switching click-through) /// public enum HitTestType : int { None = 0, Opacity = 1, Raycast = 2, } /// /// Identifies the type of OnStateChanged event when it occurs /// [Flags] public enum WindowStateEventType : int { None = 0, StyleChanged = 1, Resized = 2, // 以降は仕様変更もありえる TopMostEnabled = 16 + 1 + 8, TopMostDisabled = 16 + 1, BottomMostEnabled = 32 + 1 + 8, BottomMostDisabled = 32 + 1, WallpaperModeEnabled = 64 + 1 + 8, WallpaperModeDisabled = 64 + 1, }; /// /// Mouse buttons /// [Flags] public enum MouseButton : int { None = 0, Left = 1, Right = 2, Middle = 4, } /// /// Modifier keys /// [Flags] public enum ModifierKey : int { None = 0, Alt = 1, Control = 2, Shift = 4, Command = 8, } /// /// Get the current instance of UniWindowController /// public static UniWindowController current => _current ? _current : FindOrCreateInstance(); private static UniWindowController _current; /// /// Low level class /// private UniWinCore _uniWinCore = null; /// /// Is this window receives mouse events /// public bool isClickThrough { get { return _isClickThrough; } set { SetClickThrough(value); } } private bool _isClickThrough = false; /// /// Is this window transparent /// public bool isTransparent { get { return _isTransparent; } set { SetTransparent(value); } } [SerializeField, EditableProperty, Tooltip("Check to set transparent on startup")] private bool _isTransparent = false; /// /// Window alpha (0.0 to 1.0) /// public float alphaValue { get { return _alphaValue; } set { SetAlphaValue(value); } } [SerializeField, EditableProperty, Tooltip("Window alpha"), Range(0f, 1f)] private float _alphaValue = 1.0f; /// /// Is this window topmost /// public bool isTopmost { get { return ((_uniWinCore == null) ? _isTopmost : _isTopmost = _uniWinCore.IsTopmost); } set { SetTopmost(value); } } [SerializeField, EditableProperty, Tooltip("Check to set topmost on startup")] private bool _isTopmost = false; /// /// Is this window bottommost /// public bool isBottommost { get { return ((_uniWinCore == null) ? _isBottommost : _isBottommost = _uniWinCore.IsBottommost); } set { SetBottommost(value); } } [SerializeField, EditableProperty, Tooltip("Check to set bottommost on startup")] private bool _isBottommost = false; /// /// Is this window minimized /// public bool isZoomed { get { return ((_uniWinCore == null) ? _isZoomed : _isZoomed = _uniWinCore.GetZoomed()); } set { SetZoomed(value); } } [SerializeField, EditableProperty, Tooltip("Check to set zoomed on startup")] private bool _isZoomed = false; /// /// This window will fit to the monitor or not /// public bool shouldFitMonitor { get { return _shouldFitMonitor; } set { FitToMonitor(value, _monitorToFit); } } [SerializeField, EditableProperty, Tooltip("Check to fit the window to the monitor")] private bool _shouldFitMonitor = false; /// /// Target monitor index to fit the window (0, 1, ...) /// public int monitorToFit { get { return _monitorToFit; } set { FitToMonitor(_shouldFitMonitor, value); } } private int _monitorToFit = 0; /// /// Enable / disable accepting file drop /// public bool allowDropFiles { get { return _allowDropFiles; } set { SetAllowDrop(value); } } [SerializeField, EditableProperty, Tooltip("Enable file or folder dropping")] private bool _allowDropFiles = false; /// /// クリックスルー自動判定を行うか /// 行なわない場合は isClickThrough を自分で変更可 /// public bool isHitTestEnabled = true; /// /// クリックスルー自動判定の方法 /// [Tooltip("Select the method")] public HitTestType hitTestType = HitTestType.Opacity; /// /// クリックスルー判定方法が不透明度の場合に使うしきい値 /// カーソル下のアルファがこの値以上ならヒットとなる /// [Tooltip("Available on the hit test type is Opacity"), RangeAttribute(0f, 1f)] public float opacityThreshold = 0.1f; /// /// クリックスルー判定方法が raycast の場合の最遠値 /// private float raycastMaxDepth = 100.0f; /// /// trueにしておくと、ウィンドウ透過時にカメラ背景を単色の黒透明に自動で変更します /// [Header("Advanced settings")] [Tooltip("Change camera background when the window is transparent")] public bool autoSwitchCameraBackground = true; /// /// trueにしておくと、起動時にフルスクリーンだった場合は強制的に解除します /// /// 起動時のダイアログでフルスクリーンにしてしまった場合でもウィンドウモードにするためのものです /// 起動時のみ働きます /// Macの場合、フルスクリーン状態を強制解除しても別画面になったままであまり有効ではなさそうです /// [Tooltip("Force windowed on startup")] public bool forceWindowed = false; /// /// カメラのインスタンス /// [Tooltip("Main camera is used if None")] public Camera currentCamera; /// /// 透過方式の指定 /// [Header("For Windows only")] [Tooltip("Select the method. *Only available on Windows")] public TransparentType transparentType = TransparentType.Alpha; /// /// Key color used when the transparent-type is ColorKey /// [Tooltip("Will be used the next time the window becomes transparent")] public Color32 keyColor = new Color32(0x01, 0x00, 0x01, 0x00); /// /// macOSで、メニューバーより上にウィンドウを配置できるようにするか /// public bool isFreePositioningEnabled { get { return ((_uniWinCore == null) ? _isFreePositioningEnabled : _isFreePositioningEnabled = _uniWinCore.IsFreePositioningEnabled); } set { SetFreePositioning(value); } } [Header("For macOS only")] [Tooltip("Disable constrainFrameRect() *Only available on macOS")] [SerializeField, EditableProperty] private bool _isFreePositioningEnabled = false; /// /// Is the mouse pointer on an opaque pixel or an object /// [Header("State")] [SerializeField, ReadOnly, Tooltip("Is the mouse pointer on an opaque pixel? (Read only)")] private bool onObject = true; /// /// Pixel color under the mouse pointer. (Read only) /// [SerializeField, ReadOnly, Tooltip("Pixel color under the mouse pointer. (Read only)")] public Color pickedColor; /// /// ウィンドウ座標を取得・設定 /// public Vector2 windowPosition { get { return (_uniWinCore != null ? _uniWinCore.GetWindowPosition() : Vector2.zero); } set { _uniWinCore?.SetWindowPosition(value); } } /// /// ウィンドウ座標を取得・設定 /// public Vector2 windowSize { get { return (_uniWinCore != null ? _uniWinCore.GetWindowSize() : Vector2.zero); } set { _uniWinCore?.SetWindowSize(value); } } /// /// クライアント領域のサイズを取得 /// public Vector2 clientSize { get { return (_uniWinCore != null ? _uniWinCore.GetClientSize() : Vector2.zero); } } /// /// マウスカーソル座標を取得・設定 /// public Vector2 cursorPosition { get { return UniWinCore.GetCursorPosition(); } set { UniWinCore.SetCursorPosition(value); } } /// /// 初期状態でのウィンドウ位置、サイズ /// private Rect originalWindowRectangle; // カメラの背景をアルファゼロの黒に置き換えるため、本来の背景を保存しておく変数 private CameraClearFlags originalCameraClearFlags; private Color originalCameraBackground; /// /// カーソル下1px分の色が入るテクスチャ /// private Texture2D colorPickerTexture = null; /// /// Raycastで使うマウスイベント情報 /// private PointerEventData pointerEventData; /// /// Raycast 時のレイヤーマスク /// private int hitTestLayerMask; /// /// Occurs when the window style changed /// public event OnStateChangedDelegate OnStateChanged; public delegate void OnStateChangedDelegate(WindowStateEventType type); public delegate void FilesDelegate(string[] files); /// /// Occurs after files or folders were dropped /// public event FilesDelegate OnDropFiles; /// /// Occurs when the monitor settings or resolution changed /// public event OnMonitorChangedDelegate OnMonitorChanged; public delegate void OnMonitorChangedDelegate(); // Use this for initialization void Awake() { // シングルトンとする。既にインスタンスがあれば自分を破棄 if (this != current) { Destroy(this.gameObject); return; } else { _current = this; } // フルスクリーン強制解除。エディタでは何もしない #if !UNITY_EDITOR if (forceWindowed && Screen.fullScreen) { Screen.fullScreen = false; } #endif if (!currentCamera) { // メインカメラを探す currentCamera = Camera.main; //// もしメインカメラが見つからなければ、Findで探す //if (!currentCamera) //{ // currentCamera = GameObject.FindAnyObjectByType(); //} } // カメラの元の背景を記憶 if (currentCamera) { originalCameraClearFlags = currentCamera.clearFlags; originalCameraBackground = currentCamera.backgroundColor; } // マウスイベント情報 pointerEventData = new PointerEventData(EventSystem.current); // Ignore Raycast 以外を有効とするマスク hitTestLayerMask = ~LayerMask.GetMask("Ignore Raycast"); // マウス下描画色抽出用テクスチャを準備 colorPickerTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); // ウィンドウ制御用のインスタンス作成 _uniWinCore = new UniWinCore(); } /// /// Fit to specified monitor /// private void UpdateMonitorFitting() { if (!_shouldFitMonitor) return; int monitors = UniWinCore.GetMonitorCount(); int targetMonitorIndex = _monitorToFit; if (targetMonitorIndex < 0) { targetMonitorIndex = 0; } if (monitors <= targetMonitorIndex) { targetMonitorIndex = monitors - 1; } if (targetMonitorIndex >= 0) { _uniWinCore.FitToMonitor(targetMonitorIndex); } } /// /// Find existing instance or create new instance /// /// private static UniWindowController FindOrCreateInstance() { var instance = GameObject.FindAnyObjectByType(); // 勝手に生成するのは今のところ無効としてみる // // シーンに見つからなければ新規作成 // if (!instance) // { // var obj = new GameObject(nameof(UniWindowController)); // obj.AddComponent(); // } return instance; } void Start() { //// New Input System で支障があったため検証用に出力 // #if ENABLE_LEGACY_INPUT_MANAGER // Debug.Log("Use legacy input manager."); // #elif ENABLE_INPUT_SYSTEM // Debug.Log("Use new input system."); // Debug.Log("Run In Background " + Mouse.current.canRunInBackground); // #else // Debug.Log("Mouse position is not available."); // #endif // マウスカーソル直下の色を取得するコルーチンを開始 StartCoroutine(HitTestCoroutine()); // Get the initial window size and position StoreOriginalWindowRectangle(); // Fit to the selected monitor OnMonitorChanged += UpdateMonitorFitting; UpdateMonitorFitting(); } void OnDestroy() { if (_uniWinCore != null) { _uniWinCore.Dispose(); } // Instance も破棄 if (this == current) { _current = null; } } void StoreOriginalWindowRectangle() { if (_uniWinCore != null) { var size = _uniWinCore.GetWindowSize(); var pos = _uniWinCore.GetWindowPosition(); originalWindowRectangle = new Rect(pos, size); } } // Update is called once per frame void Update() { // 自ウィンドウ取得ができていなければ、取得 if (_uniWinCore == null || !_uniWinCore.IsActive) { UpdateTargetWindow(); } else { _uniWinCore.Update(); } // Process events UpdateEvents(); // キー、マウス操作の下ウィンドウへの透過状態を更新 UpdateClickThrough(); } /// /// Check and process UniWinCore events /// private void UpdateEvents() { if (_uniWinCore == null) return; if (_uniWinCore.ObserveDroppedFiles(out var droppedFiles)) { OnDropFiles?.Invoke(droppedFiles); } if (_uniWinCore.ObserveMonitorChanged()) { OnMonitorChanged?.Invoke(); } if (_uniWinCore.ObserveWindowStyleChanged(out var type)) { // // モニタへのフィット指定がある状態で最大化解除された場合 // if (shouldFitMonitor && !uniWinCore.GetZoomed()) // { // //StartCoroutine("ForceZoomed"); // 時間差で最大化を強制 // //SetZoomed(true); // 強制的に最大化 ←必ずしも働かない // //shouldFitMonitor = false; // フィットを無効化 // } if (_shouldFitMonitor) StartCoroutine("ForceZoomed"); // 時間差で最大化を強制 OnStateChanged?.Invoke((WindowStateEventType)type); } } IEnumerator ForceZoomed() { yield return new WaitForSeconds(0.5f); if (_shouldFitMonitor && !_uniWinCore.GetZoomed()) SetZoomed(true); yield return null; } /// /// カメラを指定。以前のカメラがあれば背景を戻す /// /// public void SetCamera(Camera newCamera) { // カメラが変更された場合、設定を戻す if (newCamera != currentCamera) { SetCameraBackground(false); } currentCamera = newCamera; // カメラの元の背景を記憶 if (currentCamera) { originalCameraClearFlags = currentCamera.clearFlags; originalCameraBackground = currentCamera.backgroundColor; SetCameraBackground(_isTransparent); } } /// /// マウス・タッチ操作を下のウィンドウに透過させる /// /// void SetClickThrough(bool isThrough) { _uniWinCore?.EnableClickThrough(isThrough); _isClickThrough = isThrough; } /// /// 画素の色を基に操作受付を切り替える /// void UpdateClickThrough() { // 自動ヒットテスト無しならば終了 if (!isHitTestEnabled || hitTestType == HitTestType.None) return; // マウスカーソル非表示状態ならば透明画素上と同扱い bool hit = (onObject); if (_isClickThrough) { // ここまでクリックスルー状態だったら、ヒットしたときだけ戻す if (hit) { SetClickThrough(false); } } else { // ここまでクリックスルーでなければ、透明かつヒットしなかったときだけクリックスルーとする if (isTransparent && !hit) { SetClickThrough(true); } } } /// /// コルーチンでカーソル下の色、またはRaycastによるヒットテストを繰り返す /// WaitForEndOfFrame() を使うためにコルーチンとしている /// /// private IEnumerator HitTestCoroutine() { while (Application.isPlaying) { yield return new WaitForEndOfFrame(); // Windowsの場合、単色での透過ならばヒットテストはOSに任せるため、常にヒット #if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN if (transparentType == TransparentType.ColorKey) { onObject = true; } else #endif if (hitTestType == HitTestType.Opacity) { HitTestByOpaquePixel(); } else if (hitTestType == HitTestType.Raycast) { HitTestByRaycast(); } else { // ヒットテスト無しの場合は常にtrue onObject = true; } } yield return null; } /// /// 画面上のマウス座標を Unity のスクリーン座標系に換算して取得 /// private Vector2 GetClientCursorPosition() { // New Input System ではフォーカスが無い場合にマウス座標が取得できないため独自に計算する Vector2 mousePos = UniWinCore.GetCursorPosition(); Vector2 winPos = windowPosition; Rect clientRect = _uniWinCore.GetClientRectangle(); Vector2 unityPos = new Vector2( (mousePos.x - winPos.x - clientRect.x) * Screen.width / clientRect.width, (mousePos.y - winPos.y - clientRect.y) * Screen.height / clientRect.height ); // // デバッグ用 // // Unityで取得した値と比較 // #if ENABLE_LEGACY_INPUT_MANAGER // Vector2 position = Input.mousePosition; // #elif ENABLE_INPUT_SYSTEM // Vector2 position = Mouse.current.position.ReadValue(); // #endif // if (!position.Equals(unityPos)) // { // Debug.LogWarning("Mouse position diff : " + position + " / " + unityPos); // } // エディターの場合は常にUnityの機能でマウス座標を取得 // Gameウィンドウ単体ではなかったり、Scaleが異なる場合があるため単純計算では求まらない #if UNITY_EDITOR #if ENABLE_LEGACY_INPUT_MANAGER return Input.mousePosition; #elif UNITY_EDITOR && ENABLE_INPUT_SYSTEM return Mouse.current.position.ReadValue(); #else return unityPos; #endif #else return unityPos; #endif } /// /// マウス下の画素があるかどうかを確認 /// private void HitTestByOpaquePixel() { Vector2 mousePos = GetClientCursorPosition(); // マウス座標を調べる if (GetOnOpaquePixel(mousePos)) { //Debug.Log("Mouse " + mousePos); onObject = true; //activeFingerId = -1; // タッチ追跡は解除 return; } else { onObject = false; } } /// /// 指定座標の画素が透明か否かを返す /// /// 座標[px]。必ず描画範囲内であること。 /// private bool GetOnOpaquePixel(Vector2 mousePos) { float w = Screen.width; float h = Screen.height; //Debug.Log(w + ", " + h); // 画面外であれば透明と同様 if ( mousePos.x < 0 || mousePos.x >= w || mousePos.y < 0 || mousePos.y >= h ) { return false; } // 透過状態でなければ、範囲内なら不透過扱いとする if (!_isTransparent) return true; // LayeredWindowならばクリックスルーはOSに任せるため、ウィンドウ内ならtrueを返しておく if (transparentType == TransparentType.ColorKey) return true; // 指定座標の描画結果を見て判断 try // WaitForEndOfFrame のタイミングで実行すればtryは無くても大丈夫な気はする { // Reference http://tsubakit1.hateblo.jp/entry/20131203/1386000440 colorPickerTexture.ReadPixels(new Rect(mousePos, Vector2.one), 0, 0); Color color = colorPickerTexture.GetPixels32()[0]; pickedColor = color; return (color.a >= opacityThreshold); // αがしきい値以上ならば不透過とする } catch (System.Exception ex) { Debug.LogError(ex.Message); return false; } } /// /// マウス下にオブジェクトがあるかどうかを確認 /// private void HitTestByRaycast() { Vector2 position = GetClientCursorPosition(); // // uGUIの上か否かを判定 var raycastResults = new List(); pointerEventData.position = position; EventSystem.current.RaycastAll(pointerEventData, raycastResults); foreach (var result in raycastResults) { // レイヤーマスクを考慮(Ignore Raycast 以外ならヒット) if (((1 << result.gameObject.layer) & hitTestLayerMask) > 0) { onObject = true; return; } } // レイヤーに関わらずヒットさせる場合は下記でよい // // uGUIの上と判定されれば、終了 // if (EventSystem.current.IsPointerOverGameObject()) // { // onObject = true; // return; // } if (currentCamera && currentCamera.isActiveAndEnabled) { Ray ray = currentCamera.ScreenPointToRay(position); // 3Dオブジェクトの上か否かを判定 if (Physics.Raycast(ray, out _, raycastMaxDepth)) { onObject = true; return; } // 2Dオブジェクトの上か判定 var rayHit2D = Physics2D.GetRayIntersection(ray); Debug.DrawRay(ray.origin, ray.direction, Color.blue, 2f, false); if (rayHit2D.collider != null) { onObject = true; return; } } else { // カメラが有効でなければメインカメラを取得 currentCamera = Camera.main; } // いずれもヒットしなければオブジェクト上ではないと判断 onObject = false; } /// /// 自分のウィンドウハンドルが不確かならば探しなおす /// private void UpdateTargetWindow() { if (_uniWinCore == null) { _uniWinCore = new UniWinCore(); } // ウィンドウがまだ取得できていなければ、取得の処理を行う if (!_uniWinCore.IsActive) { _uniWinCore.AttachMyWindow(); // ウィンドウを取得できたら最初の値を設定 if (_uniWinCore.IsActive) { _uniWinCore.SetTransparentType((UniWinCore.TransparentType)transparentType); _uniWinCore.SetKeyColor(keyColor); _uniWinCore.SetAlphaValue(_alphaValue); SetTransparent(_isTransparent); if (_isBottommost) { SetBottommost(_isBottommost); } else { SetTopmost(_isTopmost); } SetZoomed(_isZoomed); SetClickThrough(_isClickThrough); SetAllowDrop(_allowDropFiles); SetFreePositioning(_isFreePositioningEnabled); // ウィンドウ取得時にはモニタ変更と同等の処理を行う OnMonitorChanged?.Invoke(); } } else { #if UNITY_EDITOR // エディタではゲームビューが閉じられたりドッキングされたりするため、変化していれば対象ウィンドウを変更 // アクティブウィンドウが現在の対象と同じならばなにもおこらない _uniWinCore.AttachMyActiveWindow(); #endif } } /// /// ウィンドウへのフォーカスが変化したときに呼ばれる /// /// private void OnApplicationFocus(bool focus) { if (focus) { UpdateTargetWindow(); // フォーカスが当たった瞬間には、強制的にクリックスルーはオフにする if (_isTransparent && isHitTestEnabled && transparentType != TransparentType.ColorKey) { SetClickThrough(false); } } } /// /// ウィンドウ透過状態になった際、自動的に背景を透明単色に変更する /// /// void SetCameraBackground(bool transparent) { // カメラが特定できていないか、自動切替をしない場合は、何もしない if (!currentCamera || !autoSwitchCameraBackground) return; // 透過するならカメラの背景を透明色に変更 if (transparent) { // 透明化される前ならば、現時点のカメラ情報を記憶 if (!isTransparent) { originalCameraClearFlags = currentCamera.clearFlags; originalCameraBackground = currentCamera.backgroundColor; } currentCamera.clearFlags = CameraClearFlags.SolidColor; if (transparentType == TransparentType.ColorKey) { currentCamera.backgroundColor = keyColor; } else { currentCamera.backgroundColor = Color.clear; } } else { currentCamera.clearFlags = originalCameraClearFlags; currentCamera.backgroundColor = originalCameraBackground; } } /// /// 透明化状態を切替 /// /// private void SetTransparent(bool transparent) { SetCameraBackground(transparent); _isTransparent = transparent; #if !UNITY_EDITOR if (_uniWinCore != null) { _uniWinCore.EnableTransparent(transparent); } #endif UpdateClickThrough(); } /// /// 透過方法を変更 /// /// public void SetTransparentType(TransparentType type) { if (_uniWinCore != null) { // 透過中だったなら、一度解除して再透過 if (_isTransparent) { SetTransparent(false); _uniWinCore.SetTransparentType((UniWinCore.TransparentType)type); transparentType = type; SetTransparent(true); } else { _uniWinCore.SetTransparentType((UniWinCore.TransparentType)type); transparentType = type; } } } /// /// Set window alpha /// /// 0.0 to 1.0 private void SetAlphaValue(float alpha) { _alphaValue = alpha; _uniWinCore?.SetAlphaValue(_alphaValue); } /// /// 最前面を切替 /// /// private void SetTopmost(bool topmost) { //if (_isTopmost == topmost) return; if (_uniWinCore == null) return; _uniWinCore.EnableTopmost(topmost); _isTopmost = _uniWinCore.IsTopmost; _isBottommost = _uniWinCore.IsBottommost; } /// /// 常に最背面を切替 /// /// private void SetBottommost(bool bottommost) { if (_uniWinCore == null) return; _uniWinCore.EnableBottommost(bottommost); _isBottommost = _uniWinCore.IsBottommost; _isTopmost = _uniWinCore.IsTopmost; } /// /// 最大化する /// /// private void SetZoomed(bool zoomed) { if (_uniWinCore == null) return; _uniWinCore.SetZoomed(zoomed); _isZoomed = _uniWinCore.GetZoomed(); } private void SetAllowDrop(bool enabled) { if (_uniWinCore == null) return; _uniWinCore.SetAllowDrop(enabled); _allowDropFiles = enabled; } /// /// macOSで、メニューバーより上を含む自由な位置ウィンドウを配置できるようにする /// /// private void SetFreePositioning(bool enabled) { if (_uniWinCore == null) return; _uniWinCore.EnableFreePositioning(enabled); _isFreePositioningEnabled = _uniWinCore.IsFreePositioningEnabled; } /// /// Get the number of connected monitors /// /// public static int GetMonitorCount() { //if (uniWinCore == null) return 0; return UniWinCore.GetMonitorCount(); } /// /// Get monitor position and size /// /// /// public static Rect GetMonitorRect(int index) { if (UniWinCore.GetMonitorRectangle(index, out Vector2 position, out Vector2 size)) { return new Rect(position, size); } return Rect.zero; } /// /// Fit to the specified monitor /// /// private bool FitToMonitor(bool shouldFit, int monitorIndex) { if (_uniWinCore == null) { _shouldFitMonitor = shouldFit; _monitorToFit = monitorIndex; return false; } if (shouldFit) { if (!_shouldFitMonitor) { // 直前はフィットしない状態だった場合 _monitorToFit = monitorIndex; _shouldFitMonitor = shouldFit; UpdateMonitorFitting(); } else { if (_monitorToFit != monitorIndex) { // フィット先モニタが変化した場合 _monitorToFit = monitorIndex; UpdateMonitorFitting(); } } } else { if (_shouldFitMonitor) { // 直前はフィット状態で、解除された場合 _monitorToFit = monitorIndex; _shouldFitMonitor = shouldFit; UpdateMonitorFitting(); _uniWinCore.SetZoomed(false); //uniWinCore.SetWindowSize(originalWindowRectangle.size); //uniWinCore.SetWindowPosition(originalWindowRectangle.position); } else { // フィット中でなければ選択を変えるのみ _monitorToFit = monitorIndex; } } return true; } /// /// Get mouse cursor position /// /// Cursor position public static Vector2 GetCursorPosition() { return UniWinCore.GetCursorPosition(); } /// /// Set mouse cursor position /// /// public static void SetCursorPosition(Vector2 position) { UniWinCore.SetCursorPosition(position); } /// /// Get mouse buttons /// /// public static MouseButton GetMouseButtons() { int buttons = UniWinCore.GetMouseButtons(); return (MouseButton)buttons; } /// /// Get pressed modifier keys /// /// public static ModifierKey GetModifierKeys() { int mod = UniWinCore.GetModifierKeys(); return (ModifierKey)mod; } /// /// 終了時にはウィンドウ状態を戻す処理が必要 /// void OnApplicationQuit() { if (Application.isPlaying) { if (_uniWinCore != null) { // エディタだとウィンドウ状態を戻す // スタンドアローンだと戻した姿が見えてしまうためスキップ #if UNITY_EDITOR _uniWinCore.SetWindowSize(originalWindowRectangle.size); _uniWinCore.SetWindowPosition(originalWindowRectangle.position); _uniWinCore.DetachWindow(); #endif _uniWinCore.Dispose(); } } } /// /// 自分のウィンドウにフォーカスを与える /// public void Focus() { if (_uniWinCore != null) { //uniWin.SetFocus(); } } /// /// デバッグ専用。その都度参考となる情報を受けるための関数 /// /// [Obsolete] public int GetDebugInfo() { if (_uniWinCore != null) { return UniWinCore.GetDebugInfo(); } return 0; } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/UniWindowController.cs.meta ================================================ fileFormatVersion: 2 guid: eb951500192d2430eb3e306480cc2f31 timeCreated: 1545989238 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/UniWindowMoveHandle.cs ================================================ /* * UniWindowDragMove.cs * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEngine; using UnityEngine.EventSystems; #if ENABLE_LEGACY_INPUT_MANAGER #elif ENABLE_INPUT_SYSTEM using UnityEngine.InputSystem; #endif namespace Kirurobo { public class UniWindowMoveHandle : MonoBehaviour, IDragHandler, IBeginDragHandler, IEndDragHandler, IPointerUpHandler { private UniWindowController _uniwinc; /// /// ウィンドウが最大化されているときは移動を無効にするか /// [Tooltip("Disable drag-move when the window is zoomed (maximized).")] public bool disableOnZoomed = true; /// /// ドラッグ中なら true /// public bool IsDragging { get { return _isDragging; } } private bool _isDragging = false; /// /// ドラッグを行なうか否か /// private bool IsEnabled { get { return enabled && (!disableOnZoomed || !IsZoomed); } } /// /// モニタにフィットさせるか、最大化している /// private bool IsZoomed { get { return (_uniwinc && (_uniwinc.shouldFitMonitor || _uniwinc.isZoomed)); } } /// /// ドラッグ前には自動ヒットテストが有効だったかを記憶 /// private bool _isHitTestEnabled; /// /// ドラッグ開始時のウィンドウ内座標[px] /// private Vector2 _dragStartedPosition; // Start is called before the first frame update void Start() { // シーン中の UniWindowController を取得 _uniwinc = GameObject.FindAnyObjectByType(); if (_uniwinc) _isHitTestEnabled = _uniwinc.isHitTestEnabled; //// ↓なくても良さそうなので勝手に変更しないようコメントアウト //Input.simulateMouseWithTouches = false; } /// /// ドラッグ開始時の処理 /// public void OnBeginDrag(PointerEventData eventData) { if (!IsEnabled) { return; } // マウス左ボタンでのみドラッグ if (eventData.button != PointerEventData.InputButton.Left) return; // Macだと挙動を変える // 実際はRetinaサポートが有効のときだけだが、 // eventData.position の系と、ウィンドウ座標系でスケールが一致しなくなってしまう #if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX _dragStartedPosition = _uniwinc.windowPosition - _uniwinc.cursorPosition; #else _dragStartedPosition = eventData.position; #endif // _isDragging が false ならこれからドラッグ開始と判断 if (!_isDragging) { // ドラッグ中はヒットテストを無効にする _isHitTestEnabled = _uniwinc.isHitTestEnabled; _uniwinc.isHitTestEnabled = false; _uniwinc.isClickThrough = false; } _isDragging = true; } /// /// ドラッグ終了時の処理 /// public void OnEndDrag(PointerEventData eventData) { EndDragging(); } /// /// マウスが上がった際もドラッグ終了とみなす /// /// public void OnPointerUp(PointerEventData eventData) { EndDragging(); } /// /// ドラッグ終了とする /// private void EndDragging() { if (_isDragging) { _uniwinc.isHitTestEnabled = _isHitTestEnabled; } _isDragging = false; } /// /// 最大化時以外なら、マウスドラッグによってウィンドウを移動 /// public void OnDrag(PointerEventData eventData) { if (!_uniwinc || !_isDragging) return; // ドラッグでの移動が無効化されていた場合はドラッグ終了 if (!IsEnabled) { EndDragging(); return; } // // マウス左ボタンが押されていなければドラッグ終了 // if (eventData.button != PointerEventData.InputButton.Left) return; // [Shift]、[Ctrl]、[Alt]、[Command] キーが押されている間はドラッグとして扱わない var modifiers = UniWindowController.GetModifierKeys(); if (modifiers != UniWindowController.ModifierKey.None) return; // マウスボタンが離されていればドラッグ終了 var buttons = UniWindowController.GetMouseButtons(); if ((buttons & UniWindowController.MouseButton.Left) == UniWindowController.MouseButton.None) { EndDragging(); return; } // #if ENABLE_LEGACY_INPUT_MANAGER // // Macの場合、マルチモニター間を移動するとEventSystemのOnEndDragが正しく呼ばれないため、マウスボタンを常に監視 // if (!Input.Mouse.Button(0).IsPressed) { // EndDragging(); // return; // } // if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift) // || Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.RightControl) // || Input.GetKey(KeyCode.LeftAlt) || Input.GetKey(KeyCode.RightAlt)) return; // #elif ENABLE_INPUT_SYSTEM // // Macの場合、マルチモニター間を移動するとEventSystemのOnEndDragが正しく呼ばれないため、マウスボタンを常に監視 // if (!Mouse.current.leftButton.isPressed) { // EndDragging(); // return; // } // if (Keyboard.current[Key.LeftShift].isPressed || Keyboard.current[Key.RightShift].isPressed // || Keyboard.current[Key.LeftCtrl].isPressed || Keyboard.current[Key.RightCtrl].isPressed // || Keyboard.current[Key.LeftAlt].isPressed || Keyboard.current[Key.RightAlt].isPressed) return; // #endif // フルスクリーンならウィンドウ移動は行わない // エディタだと true になってしまうようなので、エディタ以外でのみ確認 #if !UNITY_EDITOR if (Screen.fullScreen) { EndDragging(); return; } #endif #if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX // Macの場合、ネイティブプラグインでのカーソル位置取得・設定 _uniwinc.windowPosition = _uniwinc.cursorPosition + _dragStartedPosition; //Debug.Log("Drag start: " + _dragStartedPosition); #else // Windowsなら、タッチ操作も対応させるために eventData.position を使用する // スクリーンポジションが開始時の位置と一致させる分だけウィンドウを移動 _uniwinc.windowPosition += eventData.position - _dragStartedPosition; #endif } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts/UniWindowMoveHandle.cs.meta ================================================ fileFormatVersion: 2 guid: e7879148f4ed9cc42aa2ef8f22bf92c0 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime/Scripts.meta ================================================ fileFormatVersion: 2 guid: a28eccdfd160f4047a67697fd467aaf5 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Runtime.meta ================================================ fileFormatVersion: 2 guid: 008c9523bda467543b8bfc78c255fccc folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleManager.cs ================================================ using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UIElements; namespace Kirurobo { public class SampleManager : MonoBehaviour { private static SampleManager _instance; public static SampleManager Instance => _instance ?? (_instance = GameObject.FindAnyObjectByType() ?? new SampleManager()); public Canvas canvas; private void Awake() { // シングルトンとする。既にインスタンスがあれば自分を破棄 if (this != Instance) { Destroy(this.gameObject); return; } DontDestroyOnLoad(Instance); DontDestroyOnLoad(UniWindowController.current); SceneManager.sceneLoaded += SceneManager_sceneLoaded; } /// /// シーンロード時にメインカメラを記憶 /// /// /// private void SceneManager_sceneLoaded(Scene arg0, LoadSceneMode arg1) { UniWindowController.current.SetCamera(Camera.main); } /// /// 指定の名前のシーンを開く /// /// シーン名 public void LoadScene(string name) { if (name == "SimpleSample") { // SimpleSample の場合はスクリプトでの制御がないため、ここで透明化 UniWindowController.current.isTransparent = true; } else if (name == "FullScreenSample") { // FullScreenSample の場合は強制的に最大化 UniWindowController.current.shouldFitMonitor = true; } SceneManager.LoadScene(name); } /// /// 終了 /// public void Quit() { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleManager.cs.meta ================================================ fileFormatVersion: 2 guid: c83c7f09afe53854b909aed0ea55a3cd MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleMenu.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0.44657815, g: 0.49641186, b: 0.57481647, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 0 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 1 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 2 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 4890085278179872738, guid: 970bccad986844364a272b0245fed77e, type: 2} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &52431802 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 52431803} - component: {fileID: 52431805} - component: {fileID: 52431804} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &52431803 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 52431802} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 726204352} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &52431804 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 52431802} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: QUIT --- !u!222 &52431805 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 52431802} m_CullTransparentMesh: 1 --- !u!1 &726204351 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 726204352} - component: {fileID: 726204355} - component: {fileID: 726204354} - component: {fileID: 726204353} m_Layer: 5 m_Name: Button_Quit m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &726204352 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 726204351} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 52431803} m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 40, y: -150} m_SizeDelta: {x: 100, y: 30} m_Pivot: {x: 0, y: 1} --- !u!114 &726204353 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 726204351} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 726204354} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 4973827625486595095} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: Quit m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: FileDialogSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &726204354 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 726204351} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &726204355 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 726204351} m_CullTransparentMesh: 1 --- !u!1 &841290929 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 841290932} - component: {fileID: 841290931} - component: {fileID: 841290930} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &841290930 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841290929} m_Enabled: 1 --- !u!20 &841290931 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841290929} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_Iso: 200 m_ShutterSpeed: 0.005 m_Aperture: 16 m_FocusDistance: 10 m_FocalLength: 50 m_BladeCount: 5 m_Curvature: {x: 2, y: 11} m_BarrelClipping: 0.25 m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 5 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &841290932 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841290929} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1342301556 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1342301558} - component: {fileID: 1342301557} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1342301557 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1342301556} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.802082 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1342301558 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1342301556} serializedVersion: 2 m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!1001 &1345228756 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626844, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Name value: UniWindowController objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e893aefd93740714b999573b02916984, type: 3} --- !u!1 &1538147870 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1538147873} - component: {fileID: 1538147872} - component: {fileID: 1538147874} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1538147872 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1538147870} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &1538147873 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1538147870} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1538147874 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1538147870} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ce6b387a66b0e654d9eb8712d70fff48, type: 3} m_Name: m_EditorClassIdentifier: m_SendPointerHoverToParent: 1 m_MoveRepeatDelay: 0.5 m_MoveRepeatRate: 0.1 m_XRTrackingOrigin: {fileID: 0} m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 m_CursorLockBehavior: 0 --- !u!1 &2131922306 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2131922307} - component: {fileID: 2131922309} - component: {fileID: 2131922308} m_Layer: 5 m_Name: Text_Title m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2131922307 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2131922306} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -5} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0.5, y: 1} --- !u!114 &2131922308 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2131922306} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: UniWinC Samples --- !u!222 &2131922309 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2131922306} m_CullTransparentMesh: 1 --- !u!224 &4973827623532684056 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623532684060} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827624905143188} m_Father: {fileID: 4973827625486595088} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!1 &4973827623532684060 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827623532684056} - component: {fileID: 4973827623532684063} - component: {fileID: 4973827623532684062} - component: {fileID: 4973827623532684061} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &4973827623532684061 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623532684060} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &4973827623532684062 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623532684060} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 m_PresetInfoIsWorld: 0 --- !u!223 &4973827623532684063 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623532684060} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 0 m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &4973827623563776332 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827623563776333} - component: {fileID: 4973827623563776335} - component: {fileID: 4973827623563776334} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827623563776333 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623563776332} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4973827623968596337} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &4973827623563776334 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623563776332} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: FileDialogSample --- !u!222 &4973827623563776335 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623563776332} m_CullTransparentMesh: 1 --- !u!222 &4973827623732084736 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623732084741} m_CullTransparentMesh: 1 --- !u!1 &4973827623732084741 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827623732084742} - component: {fileID: 4973827623732084736} - component: {fileID: 4973827623732084743} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827623732084742 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623732084741} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4973827625230031803} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &4973827623732084743 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623732084741} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: FullScreenSample --- !u!222 &4973827623968596300 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623968596336} m_CullTransparentMesh: 1 --- !u!1 &4973827623968596336 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827623968596337} - component: {fileID: 4973827623968596300} - component: {fileID: 4973827623968596339} - component: {fileID: 4973827623968596338} m_Layer: 5 m_Name: Button04 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827623968596337 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623968596336} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827623563776333} m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -115} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 1} --- !u!114 &4973827623968596338 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623968596336} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4973827623968596339} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 4973827625486595095} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: FileDialogSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &4973827623968596339 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827623968596336} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!224 &4973827624634908516 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624634908523} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4973827625597203749} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &4973827624634908517 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624634908523} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: UiSample --- !u!222 &4973827624634908518 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624634908523} m_CullTransparentMesh: 1 --- !u!1 &4973827624634908523 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827624634908516} - component: {fileID: 4973827624634908518} - component: {fileID: 4973827624634908517} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827624689451920 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624689451927} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827625135635069} m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -25} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 1} --- !u!114 &4973827624689451921 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624689451927} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4973827624689451922} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 4973827625486595095} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: SimpleSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &4973827624689451922 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624689451927} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &4973827624689451923 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624689451927} m_CullTransparentMesh: 1 --- !u!1 &4973827624689451927 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827624689451920} - component: {fileID: 4973827624689451923} - component: {fileID: 4973827624689451922} - component: {fileID: 4973827624689451921} m_Layer: 5 m_Name: Button01 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827624905143188 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624905143195} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 2131922307} - {fileID: 4973827624689451920} - {fileID: 4973827625597203749} - {fileID: 4973827625230031803} - {fileID: 4973827623968596337} - {fileID: 726204352} m_Father: {fileID: 4973827623532684056} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 5, y: 5} m_SizeDelta: {x: 180, y: 185} m_Pivot: {x: 0, y: 0} --- !u!114 &4973827624905143189 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624905143195} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.392} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &4973827624905143190 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827624905143195} m_CullTransparentMesh: 1 --- !u!1 &4973827624905143195 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827624905143188} - component: {fileID: 4973827624905143190} - component: {fileID: 4973827624905143189} m_Layer: 5 m_Name: Panel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &4973827625135635068 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827625135635069} - component: {fileID: 4973827625135635071} - component: {fileID: 4973827625135635070} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827625135635069 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625135635068} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4973827624689451920} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &4973827625135635070 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625135635068} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: SimpleSample --- !u!222 &4973827625135635071 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625135635068} m_CullTransparentMesh: 1 --- !u!114 &4973827625230031796 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625230031802} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4973827625230031797} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 4973827625486595095} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: FullScreenSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &4973827625230031797 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625230031802} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &4973827625230031798 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625230031802} m_CullTransparentMesh: 1 --- !u!1 &4973827625230031802 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827625230031803} - component: {fileID: 4973827625230031798} - component: {fileID: 4973827625230031797} - component: {fileID: 4973827625230031796} m_Layer: 5 m_Name: Button03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827625230031803 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625230031802} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827623732084742} m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -85} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 1} --- !u!4 &4973827625486595088 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625486595094} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827623532684056} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &4973827625486595094 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827625486595088} - component: {fileID: 4973827625486595095} m_Layer: 0 m_Name: SampleManager m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &4973827625486595095 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625486595094} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c83c7f09afe53854b909aed0ea55a3cd, type: 3} m_Name: m_EditorClassIdentifier: canvas: {fileID: 0} --- !u!222 &4973827625597203744 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625597203748} m_CullTransparentMesh: 1 --- !u!1 &4973827625597203748 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4973827625597203749} - component: {fileID: 4973827625597203744} - component: {fileID: 4973827625597203751} - component: {fileID: 4973827625597203750} m_Layer: 5 m_Name: Button02 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4973827625597203749 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625597203748} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4973827624634908516} m_Father: {fileID: 4973827624905143188} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -55} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 1} --- !u!114 &4973827625597203750 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625597203748} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4973827625597203751} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 4973827625486595095} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: UiSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &4973827625597203751 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4973827625597203748} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 841290932} - {fileID: 1342301558} - {fileID: 4973827625486595088} - {fileID: 1345228756} - {fileID: 1538147873} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleMenu.unity.meta ================================================ fileFormatVersion: 2 guid: bca881472b6085049ad37ab0ad8fe61e DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleMenuSettings.lighting ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!850595691 &4890085278179872738 LightingSettings: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: SampleMenuSettings serializedVersion: 3 m_GIWorkflowMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 1 m_RealtimeEnvironmentLighting: 1 m_BounceScale: 1 m_AlbedoBoost: 1 m_IndirectOutputScale: 1 m_UsingShadowmask: 1 m_BakeBackend: 1 m_LightmapMaxSize: 1024 m_BakeResolution: 40 m_Padding: 2 m_TextureCompression: 1 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAO: 0 m_MixedBakeMode: 2 m_LightmapsBakeMode: 1 m_FilterMode: 1 m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_RealtimeResolution: 2 m_ForceWhiteAlbedo: 0 m_ForceUpdates: 0 m_FinalGather: 0 m_FinalGatherRayCount: 256 m_FinalGatherFiltering: 1 m_PVRCulling: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_LightProbeSampleCountMultiplier: 4 m_PVRBounces: 2 m_PVRMinBounces: 2 m_PVREnvironmentMIS: 0 m_PVRFilteringMode: 2 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleMenuSettings.lighting.meta ================================================ fileFormatVersion: 2 guid: 970bccad986844364a272b0245fed77e NativeFormatImporter: externalObjects: {} mainObjectFileID: 4890085278179872738 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/00_Menu.meta ================================================ fileFormatVersion: 2 guid: 1088fe88129fe924f87536f7903b19ff folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/01_SimpleSample/SimpleSample.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0.44657815, g: 0.49641186, b: 0.57481647, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &4 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 1 m_BakeResolution: 50 m_AtlasSize: 1024 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 0 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 2074312002} --- !u!196 &5 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666666 manualTileSize: 0 tileSize: 256 buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &144805234 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 144805236} - component: {fileID: 144805235} m_Layer: 0 m_Name: Directional light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &144805235 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 0 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &144805236 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} serializedVersion: 2 m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &269992499 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 9167954367673589911, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Name value: DragMoveCanvas objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: d7dcf50428b152040847878685fe0746, type: 3} --- !u!1 &452327621 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 452327624} - component: {fileID: 452327623} - component: {fileID: 452327625} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &452327623 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 452327621} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &452327624 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 452327621} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &452327625 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 452327621} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ce6b387a66b0e654d9eb8712d70fff48, type: 3} m_Name: m_EditorClassIdentifier: m_SendPointerHoverToParent: 1 m_MoveRepeatDelay: 0.5 m_MoveRepeatRate: 0.1 m_XRTrackingOrigin: {fileID: 0} m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 m_CursorLockBehavior: 0 --- !u!1001 &1158200202 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTopmost value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTransparent value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626844, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Name value: UniWindowController objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTopmost value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTransparent value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e893aefd93740714b999573b02916984, type: 3} --- !u!850595691 &2074312002 LightingSettings: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Settings.lighting serializedVersion: 6 m_GIWorkflowMode: 1 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_RealtimeEnvironmentLighting: 1 m_BounceScale: 1 m_AlbedoBoost: 1 m_IndirectOutputScale: 1 m_UsingShadowmask: 0 m_BakeBackend: 2 m_LightmapMaxSize: 1024 m_BakeResolution: 50 m_Padding: 2 m_LightmapCompression: 0 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAO: 0 m_MixedBakeMode: 1 m_LightmapsBakeMode: 1 m_FilterMode: 1 m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_RealtimeResolution: 1 m_ForceWhiteAlbedo: 0 m_ForceUpdates: 0 m_FinalGather: 0 m_FinalGatherRayCount: 256 m_FinalGatherFiltering: 1 m_PVRCulling: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVREnvironmentSampleCount: 512 m_PVREnvironmentReferencePointCount: 2048 m_LightProbeSampleCountMultiplier: 4 m_PVRBounces: 2 m_PVRMinBounces: 2 m_PVREnvironmentImportanceSampling: 0 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_PVRTiledBaking: 0 m_NumRaysToShootPerTexel: -1 m_RespectSceneVisibilityWhenBakingGI: 0 --- !u!1 &2084589444 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2084589449} - component: {fileID: 2084589448} - component: {fileID: 2084589445} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &2084589445 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 --- !u!20 &2084589448 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_Iso: 200 m_ShutterSpeed: 0.005 m_Aperture: 16 m_FocusDistance: 10 m_FocalLength: 50 m_BladeCount: 5 m_Curvature: {x: 2, y: 11} m_BarrelClipping: 0.25 m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 30 orthographic: 0 orthographic size: 5 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &2084589449 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2124152612 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2124152616} - component: {fileID: 2124152615} - component: {fileID: 2124152614} - component: {fileID: 2124152613} m_Layer: 0 m_Name: Cube m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!23 &2124152613 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!65 &2124152614 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!33 &2124152615 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!4 &2124152616 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} serializedVersion: 2 m_LocalRotation: {x: 0.35355338, y: 0.35355338, z: -0.1464466, w: 0.8535535} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 45, y: 45.000004, z: 0} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 144805236} - {fileID: 2084589449} - {fileID: 2124152616} - {fileID: 1158200202} - {fileID: 269992499} - {fileID: 452327624} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/01_SimpleSample/SimpleSample.unity.meta ================================================ fileFormatVersion: 2 guid: b650a883366376446b7db29169c59420 timeCreated: 1545989238 licenseType: Pro DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/01_SimpleSample.meta ================================================ fileFormatVersion: 2 guid: 75021477fb650c14f89208889b19f269 folderAsset: yes timeCreated: 1535845558 licenseType: Pro DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSample.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_UseRadianceAmbientProbe: 0 --- !u!157 &4 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 1 m_BakeResolution: 50 m_AtlasSize: 1024 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 0 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 196371240} --- !u!196 &5 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666666 manualTileSize: 0 tileSize: 256 buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &54706533 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 54706534} - component: {fileID: 54706536} - component: {fileID: 54706535} m_Layer: 0 m_Name: TextWithCollider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &54706534 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 54706533} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -0.00999999} m_LocalScale: {x: 0.20000021, y: 0.20000021, z: 0.2} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1923367067} m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} --- !u!102 &54706535 TextMesh: serializedVersion: 3 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 54706533} m_Text: Box with collider m_OffsetZ: 0 m_CharacterSize: 1 m_LineSpacing: 1 m_Anchor: 4 m_Alignment: 1 m_TabSize: 4 m_FontSize: 0 m_FontStyle: 0 m_RichText: 1 m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_Color: serializedVersion: 2 rgba: 4294967295 --- !u!23 &54706536 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 54706533} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &144805234 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 144805236} - component: {fileID: 144805235} m_Layer: 0 m_Name: Directional light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &144805235 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 0 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 1 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &144805236 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} serializedVersion: 2 m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!850595691 &196371240 LightingSettings: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Settings.lighting serializedVersion: 6 m_GIWorkflowMode: 1 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_RealtimeEnvironmentLighting: 1 m_BounceScale: 1 m_AlbedoBoost: 1 m_IndirectOutputScale: 1 m_UsingShadowmask: 0 m_BakeBackend: 2 m_LightmapMaxSize: 1024 m_BakeResolution: 50 m_Padding: 2 m_LightmapCompression: 0 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAO: 0 m_MixedBakeMode: 1 m_LightmapsBakeMode: 1 m_FilterMode: 1 m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_RealtimeResolution: 1 m_ForceWhiteAlbedo: 0 m_ForceUpdates: 0 m_FinalGather: 0 m_FinalGatherRayCount: 256 m_FinalGatherFiltering: 1 m_PVRCulling: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVREnvironmentSampleCount: 512 m_PVREnvironmentReferencePointCount: 2048 m_LightProbeSampleCountMultiplier: 4 m_PVRBounces: 2 m_PVRMinBounces: 2 m_PVREnvironmentImportanceSampling: 0 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_PVRTiledBaking: 0 m_NumRaysToShootPerTexel: -1 m_RespectSceneVisibilityWhenBakingGI: 0 --- !u!1 &254831460 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 254831463} - component: {fileID: 254831462} - component: {fileID: 254831464} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &254831462 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 254831460} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &254831463 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 254831460} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &254831464 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 254831460} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ce6b387a66b0e654d9eb8712d70fff48, type: 3} m_Name: m_EditorClassIdentifier: m_SendPointerHoverToParent: 1 m_MoveRepeatDelay: 0.5 m_MoveRepeatRate: 0.1 m_XRTrackingOrigin: {fileID: 0} m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 m_CursorLockBehavior: 0 m_ScrollDeltaPerTick: 6 --- !u!114 &305005405 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 7299255619972666376, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} m_PrefabInstance: {fileID: 369730483} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &369730483 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 3495602533982766105, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 3495602533982766105, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 3681922073531368127, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_Name value: BorderlinePanel objectReference: {fileID: 0} - target: {fileID: 4912867810029457074, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4912867810029457074, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4912867810029457074, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643040, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_Name value: UiSampleCanvas objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643044, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 8301087647732643051, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} propertyPath: clientSizeText value: objectReference: {fileID: 305005405} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 38b9db02f63429f49bd117e7f988d985, type: 3} --- !u!1 &422271044 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 422271046} - component: {fileID: 422271045} m_Layer: 0 m_Name: RotatorBase m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &422271045 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 422271044} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f985bf036f5416a45b9dd4e31bc85075, type: 3} m_Name: m_EditorClassIdentifier: angularVelocity: 90 --- !u!4 &422271046 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 422271044} serializedVersion: 2 m_LocalRotation: {x: -0.19134173, y: -0.46193978, z: -0.19134173, w: 0.84462327} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 460515805} m_Father: {fileID: 2124152616} m_LocalEulerAnglesHint: {x: 0, y: 0, z: -45} --- !u!1 &460515801 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 460515805} - component: {fileID: 460515804} - component: {fileID: 460515803} - component: {fileID: 460515802} m_Layer: 0 m_Name: Sphere m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!23 &460515802 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 460515801} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 1 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!135 &460515803 SphereCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 460515801} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Radius: 0.5 m_Center: {x: 0, y: 0, z: 0} --- !u!33 &460515804 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 460515801} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} --- !u!4 &460515805 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 460515801} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.5, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 422271046} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &908847678 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 908847679} - component: {fileID: 908847680} m_Layer: 0 m_Name: SpriteWithoutCollider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &908847679 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 908847678} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1.5, y: 2, z: 2} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1160745002} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &908847680 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 908847678} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 0 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 2b5d2690e20d6584e909fd2bdfd93579, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 1 m_Size: {x: 2.5, y: 0.5} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &1160745001 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1160745002} - component: {fileID: 1160745004} - component: {fileID: 1160745003} m_Layer: 0 m_Name: TextWithoutCollider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1160745002 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1160745001} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -0.00999999} m_LocalScale: {x: 0.20000021, y: 0.20000021, z: 0.2} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 908847679} m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} --- !u!102 &1160745003 TextMesh: serializedVersion: 3 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1160745001} m_Text: Box without collider m_OffsetZ: 0 m_CharacterSize: 1 m_LineSpacing: 1 m_Anchor: 4 m_Alignment: 1 m_TabSize: 4 m_FontSize: 0 m_FontStyle: 0 m_RichText: 1 m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_Color: serializedVersion: 2 rgba: 4294967295 --- !u!23 &1160745004 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1160745001} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 0 m_DynamicOccludee: 0 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &1923367064 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1923367067} - component: {fileID: 1923367066} - component: {fileID: 1923367065} m_Layer: 0 m_Name: SpriteWithCollider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!61 &1923367065 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1923367064} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_ForceSendLayers: serializedVersion: 2 m_Bits: 4294967295 m_ForceReceiveLayers: serializedVersion: 2 m_Bits: 4294967295 m_ContactCaptureLayers: serializedVersion: 2 m_Bits: 4294967295 m_CallbackLayers: serializedVersion: 2 m_Bits: 4294967295 m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0.08, y: 0.08, z: 0.08, w: 0.08} pivot: {x: 0.5, y: 0.5} oldSize: {x: 1.28, y: 1.28} newSize: {x: 2.5, y: 0.5} adaptiveTilingThreshold: 0.5 drawMode: 1 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 2.5, y: 0.5} m_EdgeRadius: 0 --- !u!212 &1923367066 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1923367064} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 0 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 2b5d2690e20d6584e909fd2bdfd93579, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 1 m_Size: {x: 2.5, y: 0.5} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1923367067 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1923367064} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -1.5, y: 2, z: 2} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 54706534} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2084589444 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2084589449} - component: {fileID: 2084589448} - component: {fileID: 2084589446} - component: {fileID: 2084589445} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &2084589445 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 --- !u!124 &2084589446 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 --- !u!20 &2084589448 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_Iso: 200 m_ShutterSpeed: 0.005 m_Aperture: 16 m_FocusDistance: 10 m_FocalLength: 50 m_BladeCount: 5 m_Curvature: {x: 2, y: 11} m_BarrelClipping: 0.25 m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 15 orthographic: 0 orthographic size: 5 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &2084589449 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -15} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2124152612 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2124152616} - component: {fileID: 2124152615} - component: {fileID: 2124152614} - component: {fileID: 2124152613} m_Layer: 0 m_Name: Cube m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!23 &2124152613 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!65 &2124152614 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!33 &2124152615 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!4 &2124152616 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124152612} serializedVersion: 2 m_LocalRotation: {x: 0.35355338, y: 0.35355338, z: -0.1464466, w: 0.8535535} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 422271046} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 45, y: 45.000004, z: 0} --- !u!1001 &2416199871960456806 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Enabled value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626844, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Name value: UniWindowController objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: hitTestType value: 2 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _allowDropFile value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTransparent value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isFreePositioningEnabled value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e893aefd93740714b999573b02916984, type: 3} --- !u!1001 &9167954365961333715 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 9167954367673589910, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_BlockingMask.m_Bits value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589911, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Name value: DragMoveCanvas objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 9167954367673589915, guid: d7dcf50428b152040847878685fe0746, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: d7dcf50428b152040847878685fe0746, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 144805236} - {fileID: 2084589449} - {fileID: 254831463} - {fileID: 2416199871960456806} - {fileID: 9167954365961333715} - {fileID: 1923367067} - {fileID: 908847679} - {fileID: 2124152616} - {fileID: 369730483} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSample.unity.meta ================================================ fileFormatVersion: 2 guid: c4f4adeee10bff845b320d93a6b82f54 timeCreated: 1545989238 licenseType: Pro DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSampleCanvas.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &27501302672405218 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 979630129373806559} - component: {fileID: 2113958862755613192} - component: {fileID: 7188331024327637467} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &979630129373806559 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 27501302672405218} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 7385175265762102206} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.2} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2113958862755613192 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 27501302672405218} m_CullTransparentMesh: 0 --- !u!114 &7188331024327637467 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 27501302672405218} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &429512758678232429 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3495602533982766105} - component: {fileID: 6619267795243223582} - component: {fileID: 7961442711317133164} m_Layer: 5 m_Name: Fill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3495602533982766105 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 429512758678232429} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3355786023256746371} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 10, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6619267795243223582 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 429512758678232429} m_CullTransparentMesh: 0 --- !u!114 &7961442711317133164 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 429512758678232429} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &476394833389148992 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7167941008405507706} - component: {fileID: 5619002572192043061} - component: {fileID: 4428812286016303205} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7167941008405507706 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 476394833389148992} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1038686995119662246} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -7.5, y: -0.5} m_SizeDelta: {x: -35, y: -13} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5619002572192043061 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 476394833389148992} m_CullTransparentMesh: 0 --- !u!114 &4428812286016303205 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 476394833389148992} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Normal Window --- !u!1 &554481158479377783 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7535744454922185973} - component: {fileID: 5887835156373268845} - component: {fileID: 7299255619972666376} m_Layer: 5 m_Name: ClientSizeText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7535744454922185973 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 554481158479377783} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648573266373} m_RootOrder: 18 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0.5, y: 0} --- !u!222 &5887835156373268845 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 554481158479377783} m_CullTransparentMesh: 1 --- !u!114 &7299255619972666376 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 554481158479377783} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 12 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: --- !u!1 &766640275527885003 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4912867810029457074} - component: {fileID: 8237045072212468963} - component: {fileID: 5483413117868674114} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4912867810029457074 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 766640275527885003} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2816400527948159874} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8237045072212468963 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 766640275527885003} m_CullTransparentMesh: 0 --- !u!114 &5483413117868674114 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 766640275527885003} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &891013054755010174 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7917448578037625397} - component: {fileID: 7312255362762578133} - component: {fileID: 4758665421720253843} - component: {fileID: 2670643421518402125} m_Layer: 5 m_Name: Scrollbar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7917448578037625397 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891013054755010174} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 7385175265762102206} m_Father: {fileID: 5249162465806621705} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 1, y: 1} --- !u!222 &7312255362762578133 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891013054755010174} m_CullTransparentMesh: 0 --- !u!114 &4758665421720253843 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891013054755010174} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &2670643421518402125 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891013054755010174} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 7188331024327637467} m_HandleRect: {fileID: 979630129373806559} m_Direction: 2 m_Value: 0 m_Size: 0.2 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &1387806858951518203 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6531892847994174951} - component: {fileID: 1409187920515286343} - component: {fileID: 7298800920319926735} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6531892847994174951 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1387806858951518203} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1050555454237697638} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1409187920515286343 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1387806858951518203} m_CullTransparentMesh: 0 --- !u!114 &7298800920319926735 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1387806858951518203} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &1724603657063747862 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8156529321704238172} - component: {fileID: 1950884532416584240} m_Layer: 5 m_Name: ToggleAllowDrop m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8156529321704238172 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1724603657063747862} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1050555454237697638} - {fileID: 4792683713548984631} m_Father: {fileID: 8301087648573266373} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -170} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &1950884532416584240 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1724603657063747862} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 4560780738256070835} toggleTransition: 1 graphic: {fileID: 7298800920319926735} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &2129053857722534149 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5249162465806621705} - component: {fileID: 5487377348629388800} - component: {fileID: 245993307808494124} - component: {fileID: 5006563221762588744} m_Layer: 5 m_Name: Template m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &5249162465806621705 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2129053857722534149} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 7397999560884078202} - {fileID: 7917448578037625397} m_Father: {fileID: 1038686995119662246} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 2} m_SizeDelta: {x: 0, y: 150} m_Pivot: {x: 0.5, y: 1} --- !u!222 &5487377348629388800 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2129053857722534149} m_CullTransparentMesh: 0 --- !u!114 &245993307808494124 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2129053857722534149} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &5006563221762588744 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2129053857722534149} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 8305761222272593588} m_Horizontal: 0 m_Vertical: 1 m_MovementType: 2 m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 m_ScrollSensitivity: 1 m_Viewport: {fileID: 7397999560884078202} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 2670643421518402125} m_HorizontalScrollbarVisibility: 0 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: 0 m_VerticalScrollbarSpacing: -3 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &2247698929560055346 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1050555454237697638} - component: {fileID: 1078885036933485994} - component: {fileID: 4560780738256070835} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1050555454237697638 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2247698929560055346} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 6531892847994174951} m_Father: {fileID: 8156529321704238172} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1078885036933485994 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2247698929560055346} m_CullTransparentMesh: 0 --- !u!114 &4560780738256070835 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2247698929560055346} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &2714832548327755875 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6930042248623708220} - component: {fileID: 496626406232357410} m_Layer: 5 m_Name: ToggleShowBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6930042248623708220 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2714832548327755875} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8056533132187743747} - {fileID: 83376943506405002} m_Father: {fileID: 8301087648573266373} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 260} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &496626406232357410 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2714832548327755875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 6710456049341036208} toggleTransition: 1 graphic: {fileID: 530466831996057009} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &2745007278365586030 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7397999560884078202} - component: {fileID: 7335980165102774530} - component: {fileID: 2095189968504838114} - component: {fileID: 7023228208577882829} m_Layer: 5 m_Name: Viewport m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7397999560884078202 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2745007278365586030} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8305761222272593588} m_Father: {fileID: 5249162465806621705} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -18, y: 0} m_Pivot: {x: 0, y: 1} --- !u!114 &7335980165102774530 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2745007278365586030} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!222 &2095189968504838114 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2745007278365586030} m_CullTransparentMesh: 0 --- !u!114 &7023228208577882829 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2745007278365586030} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &3191451993710330060 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 83376943506405002} - component: {fileID: 1304298533069023605} - component: {fileID: 4106095027183827551} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &83376943506405002 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3191451993710330060} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6930042248623708220} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1304298533069023605 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3191451993710330060} m_CullTransparentMesh: 0 --- !u!114 &4106095027183827551 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3191451993710330060} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Show borderline --- !u!1 &3576130714968883877 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1725975331981271422} - component: {fileID: 5763981642338755891} - component: {fileID: 4875456152632725456} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1725975331981271422 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3576130714968883877} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 5235052954133037534} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 80, y: 0} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5763981642338755891 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3576130714968883877} m_CullTransparentMesh: 0 --- !u!114 &4875456152632725456 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3576130714968883877} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Alpha --- !u!1 &3681922073531368127 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5794488985506424007} - component: {fileID: 5868081435377018961} - component: {fileID: 2095705060014051295} m_Layer: 2 m_Name: BorderlinePanel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &5794488985506424007 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3681922073531368127} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647732643044} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5868081435377018961 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3681922073531368127} m_CullTransparentMesh: 0 --- !u!114 &2095705060014051295 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3681922073531368127} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.392} m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 4713fc586389c694f9e384c7f3a02289, type: 3} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &3687721031033184875 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5890046916711316146} - component: {fileID: 2078015485889993432} - component: {fileID: 2740794415216696422} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &5890046916711316146 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3687721031033184875} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 5881912631562061985} m_Father: {fileID: 7885993712940998046} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2078015485889993432 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3687721031033184875} m_CullTransparentMesh: 0 --- !u!114 &2740794415216696422 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3687721031033184875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &3794664035084052109 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3652868255156332152} - component: {fileID: 8783544999592312028} - component: {fileID: 8040849086399719688} m_Layer: 5 m_Name: Arrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3652868255156332152 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3794664035084052109} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1038686995119662246} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: -15, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8783544999592312028 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3794664035084052109} m_CullTransparentMesh: 0 --- !u!114 &8040849086399719688 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3794664035084052109} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10915, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &4879519335796485982 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6351245481987764080} - component: {fileID: 7791471166238964027} - component: {fileID: 6684055763804895562} m_Layer: 5 m_Name: Item Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6351245481987764080 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4879519335796485982} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6320906691954080616} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7791471166238964027 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4879519335796485982} m_CullTransparentMesh: 0 --- !u!114 &6684055763804895562 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4879519335796485982} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &5151769193182838921 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 451061265002619429} - component: {fileID: 1851706686201556060} - component: {fileID: 1079472192945794957} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &451061265002619429 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5151769193182838921} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 5235052954133037534} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.25} m_AnchorMax: {x: 1, y: 0.75} m_AnchoredPosition: {x: 25, y: 0} m_SizeDelta: {x: -50, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1851706686201556060 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5151769193182838921} m_CullTransparentMesh: 0 --- !u!114 &1079472192945794957 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5151769193182838921} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &5415188626383956489 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7885993712940998046} - component: {fileID: 8645897188470804731} m_Layer: 5 m_Name: ToggleBotommost m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7885993712940998046 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5415188626383956489} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 5890046916711316146} - {fileID: 732295005343865931} m_Father: {fileID: 8301087648573266373} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -100} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8645897188470804731 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5415188626383956489} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 2740794415216696422} toggleTransition: 1 graphic: {fileID: 3509347444287014047} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &5557245556874450554 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 4792683713548984631} - component: {fileID: 7899343836580343253} - component: {fileID: 3499490860246619609} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &4792683713548984631 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5557245556874450554} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8156529321704238172} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7899343836580343253 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5557245556874450554} m_CullTransparentMesh: 0 --- !u!114 &3499490860246619609 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5557245556874450554} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Allow drop files --- !u!1 &5732060341223088156 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6930808912133665567} - component: {fileID: 2342861818510521445} - component: {fileID: 3169618313521835835} m_Layer: 5 m_Name: ImageSeparator1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6930808912133665567 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5732060341223088156} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648573266373} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 285} m_SizeDelta: {x: 176, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2342861818510521445 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5732060341223088156} m_CullTransparentMesh: 0 --- !u!114 &3169618313521835835 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5732060341223088156} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.6, g: 0.6, b: 0.6, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &5760135338534386061 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1038686995119662246} - component: {fileID: 8013989120499612831} - component: {fileID: 8561045238347526882} - component: {fileID: 7306745419463754632} m_Layer: 5 m_Name: DropdownFitMonitor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1038686995119662246 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5760135338534386061} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 7167941008405507706} - {fileID: 3652868255156332152} - {fileID: 5249162465806621705} m_Father: {fileID: 8301087648573266373} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -150} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 0} --- !u!222 &8013989120499612831 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5760135338534386061} m_CullTransparentMesh: 0 --- !u!114 &8561045238347526882 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5760135338534386061} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &7306745419463754632 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5760135338534386061} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d0b652f32a2cc243917e4028fa0f046, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8561045238347526882} m_Template: {fileID: 5249162465806621705} m_CaptionText: {fileID: 4428812286016303205} m_CaptionImage: {fileID: 0} m_ItemText: {fileID: 5748006404922447889} m_ItemImage: {fileID: 0} m_Value: 0 m_Options: m_Options: - m_Text: Normal Window m_Image: {fileID: 0} m_OnValueChanged: m_PersistentCalls: m_Calls: [] m_AlphaFadeSpeed: 0.15 --- !u!1 &5910048150021110974 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8056533132187743747} - component: {fileID: 4499066591220399557} - component: {fileID: 6710456049341036208} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8056533132187743747 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5910048150021110974} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 5910181289536073751} m_Father: {fileID: 6930042248623708220} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &4499066591220399557 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5910048150021110974} m_CullTransparentMesh: 0 --- !u!114 &6710456049341036208 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5910048150021110974} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &6141412924608998790 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8305761222272593588} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8305761222272593588 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6141412924608998790} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 6320906691954080616} m_Father: {fileID: 7397999560884078202} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 28} m_Pivot: {x: 0.5, y: 1} --- !u!1 &6497749026642682417 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2816400527948159874} m_Layer: 5 m_Name: Handle Slide Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2816400527948159874 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6497749026642682417} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4912867810029457074} m_Father: {fileID: 5235052954133037534} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 25, y: 0} m_SizeDelta: {x: -70, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &6523109510228930080 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2176647348441241815} - component: {fileID: 5343313218793111429} - component: {fileID: 5748006404922447889} m_Layer: 5 m_Name: Item Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2176647348441241815 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6523109510228930080} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6320906691954080616} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: -0.5} m_SizeDelta: {x: -30, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5343313218793111429 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6523109510228930080} m_CullTransparentMesh: 0 --- !u!114 &5748006404922447889 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6523109510228930080} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Option A --- !u!1 &6784711176644749797 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7385175265762102206} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7385175265762102206 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6784711176644749797} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 979630129373806559} m_Father: {fileID: 7917448578037625397} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &6834721879967900503 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5391893669397798592} - component: {fileID: 2274831341743231667} - component: {fileID: 6113027400342046284} m_Layer: 5 m_Name: Item Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &5391893669397798592 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6834721879967900503} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6320906691954080616} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 10, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2274831341743231667 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6834721879967900503} m_CullTransparentMesh: 0 --- !u!114 &6113027400342046284 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6834721879967900503} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &7641311035403108604 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6320906691954080616} - component: {fileID: 2443957974815978613} m_Layer: 5 m_Name: Item m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6320906691954080616 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7641311035403108604} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 6351245481987764080} - {fileID: 5391893669397798592} - {fileID: 2176647348441241815} m_Father: {fileID: 8305761222272593588} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2443957974815978613 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7641311035403108604} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 6684055763804895562} toggleTransition: 1 graphic: {fileID: 6113027400342046284} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: [] m_IsOn: 1 --- !u!1 &7840907710447694479 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5910181289536073751} - component: {fileID: 2940094801281175672} - component: {fileID: 530466831996057009} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &5910181289536073751 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7840907710447694479} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8056533132187743747} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &2940094801281175672 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7840907710447694479} m_CullTransparentMesh: 0 --- !u!114 &530466831996057009 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7840907710447694479} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8135458630977603145 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3355786023256746371} m_Layer: 5 m_Name: Fill Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3355786023256746371 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8135458630977603145} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3495602533982766105} m_Father: {fileID: 5235052954133037534} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.25} m_AnchorMax: {x: 1, y: 0.75} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: -70, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &8183892971516610195 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 732295005343865931} - component: {fileID: 1806115430672200965} - component: {fileID: 8929655306148657922} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &732295005343865931 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8183892971516610195} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 7885993712940998046} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1806115430672200965 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8183892971516610195} m_CullTransparentMesh: 0 --- !u!114 &8929655306148657922 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8183892971516610195} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Bottommost [B] --- !u!1 &8301087647529909540 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647529909547} - component: {fileID: 8301087647529909545} - component: {fileID: 8301087647529909546} - component: {fileID: 8301087647529909544} m_Layer: 5 m_Name: ButtonWidthUp m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647529909547 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647529909540} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087647788813240} m_Father: {fileID: 8301087647643569866} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 110, y: 8} m_SizeDelta: {x: 60, y: 24} m_Pivot: {x: 0, y: 0.5} --- !u!222 &8301087647529909545 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647529909540} m_CullTransparentMesh: 0 --- !u!114 &8301087647529909546 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647529909540} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087647529909544 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647529909540} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087647529909546} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087647590639544 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647590639551} - component: {fileID: 8301087647590639549} - component: {fileID: 8301087647590639550} - component: {fileID: 8301087647590639548} m_Layer: 5 m_Name: ButtonHeightUp m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647590639551 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647590639544} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649223388180} m_Father: {fileID: 8301087648105124675} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 110, y: 8} m_SizeDelta: {x: 60, y: 24} m_Pivot: {x: 0, y: 0.5} --- !u!222 &8301087647590639549 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647590639544} m_CullTransparentMesh: 0 --- !u!114 &8301087647590639550 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647590639544} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087647590639548 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647590639544} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087647590639550} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087647605638007 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647605638006} - component: {fileID: 8301087647605638004} - component: {fileID: 8301087647605638005} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647605638006 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647605638007} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647703215749} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647605638004 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647605638007} m_CullTransparentMesh: 0 --- !u!114 &8301087647605638005 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647605638007} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Enable drag move --- !u!1 &8301087647615873786 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647615873785} - component: {fileID: 8301087647615873791} - component: {fileID: 8301087647615873784} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647615873785 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647615873786} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648215504819} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647615873791 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647615873786} m_CullTransparentMesh: 0 --- !u!114 &8301087647615873784 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647615873786} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Transparent [T] --- !u!1 &8301087647621619055 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647621619054} - component: {fileID: 8301087647621619052} - component: {fileID: 8301087647621619053} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647621619054 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647621619055} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648583404340} m_Father: {fileID: 8301087648139979436} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647621619052 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647621619055} m_CullTransparentMesh: 0 --- !u!114 &8301087647621619053 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647621619055} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087647636036022 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647636036021} - component: {fileID: 8301087647636036027} - component: {fileID: 8301087647636036020} m_Layer: 5 m_Name: Item Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647636036021 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647636036022} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648038317132} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: -0.5} m_SizeDelta: {x: -30, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647636036027 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647636036022} m_CullTransparentMesh: 0 --- !u!114 &8301087647636036020 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647636036022} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Option A --- !u!1 &8301087647643569867 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647643569866} - component: {fileID: 8301087647643569864} - component: {fileID: 8301087647643569865} m_Layer: 5 m_Name: TextWindowWidth m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647643569866 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647643569867} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649473292153} - {fileID: 8301087647529909547} m_Father: {fileID: 8301087648573266373} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 225} m_SizeDelta: {x: 60, y: 30} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087647643569864 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647643569867} m_CullTransparentMesh: 0 --- !u!114 &8301087647643569865 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647643569867} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Width --- !u!1 &8301087647703215750 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647703215749} - component: {fileID: 8301087647703215748} m_Layer: 5 m_Name: ToggleDragMove m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647703215749 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647703215750} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649501092117} - {fileID: 8301087647605638006} m_Father: {fileID: 8301087648573266373} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -190} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8301087647703215748 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647703215750} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087649501092116} toggleTransition: 1 graphic: {fileID: 8301087648579829696} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &8301087647732643040 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647732643044} - component: {fileID: 8301087647732643045} - component: {fileID: 8301087647732643046} - component: {fileID: 8301087647732643047} - component: {fileID: 8301087647732643051} m_Layer: 5 m_Name: UiSampleCanvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647732643044 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647732643040} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 5794488985506424007} - {fileID: 8301087648573266373} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!223 &8301087647732643045 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647732643040} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 5 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!114 &8301087647732643046 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647732643040} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 m_PresetInfoIsWorld: 0 --- !u!114 &8301087647732643047 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647732643040} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &8301087647732643051 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647732643040} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 3b335a5bc9945c9469568d1aba1b14e8, type: 3} m_Name: m_EditorClassIdentifier: transparentToggle: {fileID: 8301087648215504818} alphaSlider: {fileID: 6660205299401658529} topmostToggle: {fileID: 8301087648139979443} bottommostToggle: {fileID: 8645897188470804731} zoomedToggle: {fileID: 8301087649217621216} dragMoveToggle: {fileID: 8301087647703215748} allowDropToggle: {fileID: 1950884532416584240} fitWindowDropdown: {fileID: 7306745419463754632} showBorderlineToggle: {fileID: 496626406232357410} widthDownButton: {fileID: 8301087649473292158} widthUpButton: {fileID: 8301087647529909544} heightDownButton: {fileID: 8301087648024868002} heightUpButton: {fileID: 8301087647590639548} transparentTypeDropdown: {fileID: 8301087648545161358} hitTestTypeDropdown: {fileID: 8301087647885115618} clickThroughToggle: {fileID: 8301087648355076776} pickedColorImage: {fileID: 8301087648683279908} pickedColorText: {fileID: 8301087648609896641} messageText: {fileID: 8301087648754482228} clientSizeText: {fileID: 0} menuCloseButton: {fileID: 8301087648256411237} menuPanel: {fileID: 8301087648573266373} borderlinePanel: {fileID: 5794488985506424007} --- !u!1 &8301087647788813241 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647788813240} - component: {fileID: 8301087647788813246} - component: {fileID: 8301087647788813247} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647788813240 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647788813241} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647529909547} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647788813246 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647788813241} m_CullTransparentMesh: 0 --- !u!114 &8301087647788813247 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647788813241} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: +100px --- !u!1 &8301087647871816046 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647871816045} - component: {fileID: 8301087647871816051} - component: {fileID: 8301087647871816044} m_Layer: 5 m_Name: Item Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647871816045 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647871816046} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649171761009} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 10, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647871816051 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647871816046} m_CullTransparentMesh: 0 --- !u!114 &8301087647871816044 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647871816046} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087647885115612 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647885115619} - component: {fileID: 8301087647885115616} - component: {fileID: 8301087647885115617} - component: {fileID: 8301087647885115618} m_Layer: 5 m_Name: DropdownHitTestType m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647885115619 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647885115612} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648835586155} - {fileID: 8301087648124753995} - {fileID: 8301087649639791782} m_Father: {fileID: 8301087648573266373} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 185} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087647885115616 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647885115612} m_CullTransparentMesh: 0 --- !u!114 &8301087647885115617 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647885115612} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087647885115618 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647885115612} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d0b652f32a2cc243917e4028fa0f046, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087647885115617} m_Template: {fileID: 8301087649639791782} m_CaptionText: {fileID: 8301087648835586154} m_CaptionImage: {fileID: 0} m_ItemText: {fileID: 8301087647636036020} m_ItemImage: {fileID: 0} m_Value: 0 m_Options: m_Options: - m_Text: (No Hit test) m_Image: {fileID: 0} - m_Text: Hit test by opacity m_Image: {fileID: 0} - m_Text: Hit test by raycast m_Image: {fileID: 0} m_OnValueChanged: m_PersistentCalls: m_Calls: [] m_AlphaFadeSpeed: 0.15 --- !u!1 &8301087647940479274 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087647940479273} - component: {fileID: 8301087647940479279} - component: {fileID: 8301087647940479272} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087647940479273 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647940479274} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648002320026} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087647940479279 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647940479274} m_CullTransparentMesh: 0 --- !u!114 &8301087647940479272 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087647940479274} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648002320027 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648002320026} - component: {fileID: 8301087648002320024} - component: {fileID: 8301087648002320025} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648002320026 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648002320027} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087647940479273} m_Father: {fileID: 8301087649217621217} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648002320024 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648002320027} m_CullTransparentMesh: 0 --- !u!114 &8301087648002320025 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648002320027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648024867998 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648024867997} - component: {fileID: 8301087648024868003} - component: {fileID: 8301087648024867996} - component: {fileID: 8301087648024868002} m_Layer: 5 m_Name: ButtonHeightDown m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648024867997 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648024867998} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648966048036} m_Father: {fileID: 8301087648105124675} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 50, y: 8} m_SizeDelta: {x: 60, y: 24} m_Pivot: {x: 0, y: 0.5} --- !u!222 &8301087648024868003 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648024867998} m_CullTransparentMesh: 0 --- !u!114 &8301087648024867996 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648024867998} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087648024868002 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648024867998} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648024867996} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087648038317133 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648038317132} - component: {fileID: 8301087648038317139} m_Layer: 5 m_Name: Item m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648038317132 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648038317133} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648130342775} - {fileID: 8301087648676933791} - {fileID: 8301087647636036021} m_Father: {fileID: 8301087649543007114} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &8301087648038317139 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648038317133} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648130342774} toggleTransition: 1 graphic: {fileID: 8301087648676933790} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: [] m_IsOn: 1 --- !u!1 &8301087648105124796 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648105124675} - component: {fileID: 8301087648105124673} - component: {fileID: 8301087648105124674} m_Layer: 5 m_Name: TextWindowHeight m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648105124675 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648105124796} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648024867997} - {fileID: 8301087647590639551} m_Father: {fileID: 8301087648573266373} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 205} m_SizeDelta: {x: 60, y: 30} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087648105124673 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648105124796} m_CullTransparentMesh: 0 --- !u!114 &8301087648105124674 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648105124796} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "Height\t" --- !u!1 &8301087648124753988 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648124753995} - component: {fileID: 8301087648124753993} - component: {fileID: 8301087648124753994} m_Layer: 5 m_Name: Arrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648124753995 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648124753988} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647885115619} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: -15, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648124753993 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648124753988} m_CullTransparentMesh: 0 --- !u!114 &8301087648124753994 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648124753988} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10915, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648130342768 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648130342775} - component: {fileID: 8301087648130342773} - component: {fileID: 8301087648130342774} m_Layer: 5 m_Name: Item Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648130342775 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648130342768} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648038317132} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648130342773 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648130342768} m_CullTransparentMesh: 0 --- !u!114 &8301087648130342774 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648130342768} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648139979437 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648139979436} - component: {fileID: 8301087648139979443} m_Layer: 5 m_Name: ToggleTopmost m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648139979436 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648139979437} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087647621619054} - {fileID: 8301087649481315364} m_Father: {fileID: 8301087648573266373} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -80} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8301087648139979443 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648139979437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087647621619053} toggleTransition: 1 graphic: {fileID: 8301087648583404347} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_isTopmost m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &8301087648171359330 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648171359329} - component: {fileID: 8301087648171359335} - component: {fileID: 8301087648171359328} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648171359329 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648171359330} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649473292153} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648171359335 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648171359330} m_CullTransparentMesh: 0 --- !u!114 &8301087648171359328 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648171359330} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: -100px --- !u!1 &8301087648199151584 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648199151591} - component: {fileID: 8301087648199151588} - component: {fileID: 8301087648199151589} - component: {fileID: 8301087648199151590} m_Layer: 5 m_Name: Template m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &8301087648199151591 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648199151584} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648842808072} - {fileID: 8301087649376458009} m_Father: {fileID: 8301087648545161359} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 2} m_SizeDelta: {x: 0, y: 150} m_Pivot: {x: 0.5, y: 1} --- !u!222 &8301087648199151588 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648199151584} m_CullTransparentMesh: 0 --- !u!114 &8301087648199151589 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648199151584} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087648199151590 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648199151584} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 8301087648285021868} m_Horizontal: 0 m_Vertical: 1 m_MovementType: 2 m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 m_ScrollSensitivity: 1 m_Viewport: {fileID: 8301087648842808072} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 8301087649376458008} m_HorizontalScrollbarVisibility: 0 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: 0 m_VerticalScrollbarSpacing: -3 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087648215504812 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648215504819} - component: {fileID: 8301087648215504818} m_Layer: 5 m_Name: ToggleTransparent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648215504819 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648215504812} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648510231913} - {fileID: 8301087647615873785} m_Father: {fileID: 8301087648573266373} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -30} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8301087648215504818 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648215504812} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648510231912} toggleTransition: 1 graphic: {fileID: 8301087648782352437} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_isTransparent m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &8301087648256411239 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648256411238} - component: {fileID: 8301087648256411243} - component: {fileID: 8301087648256411236} - component: {fileID: 8301087648256411237} m_Layer: 5 m_Name: ButtonCloseMenu m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648256411238 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648256411239} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649394772507} m_Father: {fileID: 8301087648573266373} m_RootOrder: 19 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 30, y: 30} m_Pivot: {x: 1, y: 1} --- !u!222 &8301087648256411243 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648256411239} m_CullTransparentMesh: 0 --- !u!114 &8301087648256411236 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648256411239} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.8, g: 0.8, b: 0.8, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087648256411237 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648256411239} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648256411236} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087648285021869 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648285021868} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648285021868 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648285021869} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649171761009} m_Father: {fileID: 8301087648842808072} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 28} m_Pivot: {x: 0.5, y: 1} --- !u!1 &8301087648298695618 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648298695617} - component: {fileID: 8301087648298695623} - component: {fileID: 8301087648298695616} m_Layer: 5 m_Name: Item Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648298695617 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648298695618} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649171761009} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: -0.5} m_SizeDelta: {x: -30, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648298695623 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648298695618} m_CullTransparentMesh: 0 --- !u!114 &8301087648298695616 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648298695618} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Option A --- !u!1 &8301087648355076778 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648355076777} - component: {fileID: 8301087648355076776} m_Layer: 5 m_Name: ToggleClickThrough m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648355076777 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648355076778} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648629996355} - {fileID: 8301087649669520883} m_Father: {fileID: 8301087648573266373} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 165} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8301087648355076776 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648355076778} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 0 m_TargetGraphic: {fileID: 8301087648629996354} toggleTransition: 1 graphic: {fileID: 8301087648529682515} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_isMinimized m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &8301087648510231914 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648510231913} - component: {fileID: 8301087648510231919} - component: {fileID: 8301087648510231912} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648510231913 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648510231914} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648782352438} m_Father: {fileID: 8301087648215504819} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648510231919 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648510231914} m_CullTransparentMesh: 0 --- !u!114 &8301087648510231912 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648510231914} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648529682509 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648529682508} - component: {fileID: 8301087648529682514} - component: {fileID: 8301087648529682515} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648529682508 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648529682509} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648629996355} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648529682514 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648529682509} m_CullTransparentMesh: 0 --- !u!114 &8301087648529682515 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648529682509} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648545161352 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648545161359} - component: {fileID: 8301087648545161356} - component: {fileID: 8301087648545161357} - component: {fileID: 8301087648545161358} m_Layer: 5 m_Name: DropdownTransparentType m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648545161359 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648545161352} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648689699183} - {fileID: 8301087649198702896} - {fileID: 8301087648199151591} m_Father: {fileID: 8301087648573266373} m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 135} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087648545161356 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648545161352} m_CullTransparentMesh: 0 --- !u!114 &8301087648545161357 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648545161352} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087648545161358 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648545161352} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d0b652f32a2cc243917e4028fa0f046, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648545161357} m_Template: {fileID: 8301087648199151591} m_CaptionText: {fileID: 8301087648689699182} m_CaptionImage: {fileID: 0} m_ItemText: {fileID: 8301087648298695616} m_ItemImage: {fileID: 0} m_Value: 0 m_Options: m_Options: - m_Text: (Not Transparent) m_Image: {fileID: 0} - m_Text: Alpha m_Image: {fileID: 0} - m_Text: ColorKey m_Image: {fileID: 0} m_OnValueChanged: m_PersistentCalls: m_Calls: [] m_AlphaFadeSpeed: 0.15 --- !u!1 &8301087648573266374 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648573266373} - component: {fileID: 8301087648573266379} - component: {fileID: 8301087648573266372} m_Layer: 5 m_Name: MainPanel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648573266373 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648573266374} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648215504819} - {fileID: 5235052954133037534} - {fileID: 8301087648139979436} - {fileID: 7885993712940998046} - {fileID: 8301087649217621217} - {fileID: 1038686995119662246} - {fileID: 8156529321704238172} - {fileID: 8301087647703215749} - {fileID: 6930808912133665567} - {fileID: 6930042248623708220} - {fileID: 8301087647643569866} - {fileID: 8301087648105124675} - {fileID: 8301087647885115619} - {fileID: 8301087648355076777} - {fileID: 8301087648545161359} - {fileID: 8301087648720202037} - {fileID: 8301087648683279909} - {fileID: 8301087649347049708} - {fileID: 7535744454922185973} - {fileID: 8301087648256411238} m_Father: {fileID: 8301087647732643044} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 300, y: 240} m_SizeDelta: {x: 190, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648573266379 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648573266374} m_CullTransparentMesh: 0 --- !u!114 &8301087648573266372 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648573266374} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 2100000, guid: 57c048a21c6552643bb464f9bcd0cf1a, type: 2} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648579829698 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648579829697} - component: {fileID: 8301087648579829703} - component: {fileID: 8301087648579829696} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648579829697 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648579829698} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649501092117} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648579829703 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648579829698} m_CullTransparentMesh: 0 --- !u!114 &8301087648579829696 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648579829698} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648583404341 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648583404340} - component: {fileID: 8301087648583404346} - component: {fileID: 8301087648583404347} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648583404340 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648583404341} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647621619054} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648583404346 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648583404341} m_CullTransparentMesh: 0 --- !u!114 &8301087648583404347 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648583404341} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648609896643 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648609896642} - component: {fileID: 8301087648609896640} - component: {fileID: 8301087648609896641} m_Layer: 5 m_Name: TextPickedColor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648609896642 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648609896643} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648683279909} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 1} --- !u!222 &8301087648609896640 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648609896643} m_CullTransparentMesh: 0 --- !u!114 &8301087648609896641 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648609896643} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "Color under the cursor\t" --- !u!1 &8301087648629996476 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648629996355} - component: {fileID: 8301087648629996353} - component: {fileID: 8301087648629996354} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648629996355 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648629996476} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648529682508} m_Father: {fileID: 8301087648355076777} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648629996353 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648629996476} m_CullTransparentMesh: 0 --- !u!114 &8301087648629996354 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648629996476} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648676933784 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648676933791} - component: {fileID: 8301087648676933789} - component: {fileID: 8301087648676933790} m_Layer: 5 m_Name: Item Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648676933791 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648676933784} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648038317132} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 10, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648676933789 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648676933784} m_CullTransparentMesh: 0 --- !u!114 &8301087648676933790 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648676933784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648683279910 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648683279909} - component: {fileID: 8301087648683279915} - component: {fileID: 8301087648683279908} m_Layer: 5 m_Name: ImagePickedColor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648683279909 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648683279910} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648609896642} m_Father: {fileID: 8301087648573266373} m_RootOrder: 16 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 12, y: 110} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087648683279915 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648683279910} m_CullTransparentMesh: 0 --- !u!114 &8301087648683279908 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648683279910} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648689699176 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648689699183} - component: {fileID: 8301087648689699181} - component: {fileID: 8301087648689699182} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648689699183 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648689699176} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648545161359} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -7.5, y: -0.5} m_SizeDelta: {x: -35, y: -13} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648689699181 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648689699176} m_CullTransparentMesh: 0 --- !u!114 &8301087648689699182 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648689699176} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: (Not Transparent) --- !u!1 &8301087648720202038 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648720202037} - component: {fileID: 8301087648720202043} - component: {fileID: 8301087648720202036} m_Layer: 5 m_Name: ImageSeparator2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648720202037 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648720202038} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648573266373} m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 130} m_SizeDelta: {x: 176, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648720202043 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648720202038} m_CullTransparentMesh: 0 --- !u!114 &8301087648720202036 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648720202038} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.6, g: 0.6, b: 0.6, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648754482230 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648754482229} - component: {fileID: 8301087648754482235} - component: {fileID: 8301087648754482228} m_Layer: 5 m_Name: MessageText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648754482229 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648754482230} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649347049708} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: -5} m_SizeDelta: {x: -10, y: -10} m_Pivot: {x: 0, y: 1} --- !u!222 &8301087648754482235 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648754482230} m_CullTransparentMesh: 0 --- !u!114 &8301087648754482228 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648754482230} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 12 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: --- !u!1 &8301087648782352439 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648782352438} - component: {fileID: 8301087648782352436} - component: {fileID: 8301087648782352437} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648782352438 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648782352439} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648510231913} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648782352436 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648782352439} m_CullTransparentMesh: 0 --- !u!114 &8301087648782352437 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648782352439} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648835586148 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648835586155} - component: {fileID: 8301087648835586153} - component: {fileID: 8301087648835586154} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648835586155 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648835586148} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647885115619} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -7.5, y: -0.5} m_SizeDelta: {x: -35, y: -13} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648835586153 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648835586148} m_CullTransparentMesh: 0 --- !u!114 &8301087648835586154 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648835586148} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: (No Hit test) --- !u!1 &8301087648842808073 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648842808072} - component: {fileID: 8301087648842808077} - component: {fileID: 8301087648842808078} - component: {fileID: 8301087648842808079} m_Layer: 5 m_Name: Viewport m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648842808072 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648842808073} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648285021868} m_Father: {fileID: 8301087648199151591} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -18, y: 0} m_Pivot: {x: 0, y: 1} --- !u!114 &8301087648842808077 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648842808073} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!222 &8301087648842808078 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648842808073} m_CullTransparentMesh: 0 --- !u!114 &8301087648842808079 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648842808073} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087648946615389 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648946615388} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648946615388 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648946615389} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649560838808} m_Father: {fileID: 8301087649376458009} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &8301087648966048037 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087648966048036} - component: {fileID: 8301087648966048042} - component: {fileID: 8301087648966048043} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087648966048036 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648966048037} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648024867997} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087648966048042 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648966048037} m_CullTransparentMesh: 0 --- !u!114 &8301087648966048043 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087648966048037} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: -100px --- !u!1 &8301087649090486971 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649090486970} - component: {fileID: 8301087649090486968} - component: {fileID: 8301087649090486969} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649090486970 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649090486971} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649217621217} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649090486968 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649090486971} m_CullTransparentMesh: 0 --- !u!114 &8301087649090486969 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649090486971} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Zoomed [Z] --- !u!1 &8301087649171761010 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649171761009} - component: {fileID: 8301087649171761008} m_Layer: 5 m_Name: Item m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649171761009 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649171761010} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649441864506} - {fileID: 8301087647871816045} - {fileID: 8301087648298695617} m_Father: {fileID: 8301087648285021868} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &8301087649171761008 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649171761010} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087649441864505} toggleTransition: 1 graphic: {fileID: 8301087647871816044} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: [] m_IsOn: 1 --- !u!1 &8301087649198702897 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649198702896} - component: {fileID: 8301087649198702902} - component: {fileID: 8301087649198702903} m_Layer: 5 m_Name: Arrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649198702896 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649198702897} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648545161359} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: -15, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649198702902 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649198702897} m_CullTransparentMesh: 0 --- !u!114 &8301087649198702903 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649198702897} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10915, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649206193348 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649206193355} - component: {fileID: 8301087649206193352} - component: {fileID: 8301087649206193353} - component: {fileID: 8301087649206193354} m_Layer: 5 m_Name: Scrollbar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649206193355 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649206193348} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649469256474} m_Father: {fileID: 8301087649639791782} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 1, y: 1} --- !u!222 &8301087649206193352 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649206193348} m_CullTransparentMesh: 0 --- !u!114 &8301087649206193353 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649206193348} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087649206193354 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649206193348} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087649299743023} m_HandleRect: {fileID: 8301087649299743016} m_Direction: 2 m_Value: 0 m_Size: 0.2 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087649217621218 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649217621217} - component: {fileID: 8301087649217621216} m_Layer: 5 m_Name: ToggleZoomed m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649217621217 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649217621218} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648002320026} - {fileID: 8301087649090486970} m_Father: {fileID: 8301087648573266373} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -120} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &8301087649217621216 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649217621218} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087648002320025} toggleTransition: 1 graphic: {fileID: 8301087647940479272} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &8301087649223388181 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649223388180} - component: {fileID: 8301087649223388186} - component: {fileID: 8301087649223388187} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649223388180 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649223388181} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087647590639551} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649223388186 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649223388181} m_CullTransparentMesh: 0 --- !u!114 &8301087649223388187 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649223388181} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: +100px --- !u!1 &8301087649299743017 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649299743016} - component: {fileID: 8301087649299743022} - component: {fileID: 8301087649299743023} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649299743016 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649299743017} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649469256474} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.2} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649299743022 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649299743017} m_CullTransparentMesh: 0 --- !u!114 &8301087649299743023 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649299743017} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649347049709 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649347049708} - component: {fileID: 8301087649347049714} - component: {fileID: 8301087649347049715} m_Layer: 5 m_Name: MessagePanel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649347049708 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649347049709} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648754482229} m_Father: {fileID: 8301087648573266373} m_RootOrder: 17 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 10, y: 25} m_SizeDelta: {x: -20, y: 85} m_Pivot: {x: 0, y: 0} --- !u!222 &8301087649347049714 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649347049709} m_CullTransparentMesh: 0 --- !u!114 &8301087649347049715 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649347049709} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.8014706, g: 0.8014706, b: 0.8014706, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649376458010 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649376458009} - component: {fileID: 8301087649376458014} - component: {fileID: 8301087649376458015} - component: {fileID: 8301087649376458008} m_Layer: 5 m_Name: Scrollbar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649376458009 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649376458010} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648946615388} m_Father: {fileID: 8301087648199151591} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 1, y: 1} --- !u!222 &8301087649376458014 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649376458010} m_CullTransparentMesh: 0 --- !u!114 &8301087649376458015 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649376458010} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087649376458008 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649376458010} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087649560838815} m_HandleRect: {fileID: 8301087649560838808} m_Direction: 2 m_Value: 0 m_Size: 0.2 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087649394772500 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649394772507} - component: {fileID: 8301087649394772505} - component: {fileID: 8301087649394772506} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649394772507 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649394772500} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648256411238} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649394772505 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649394772500} m_CullTransparentMesh: 0 --- !u!114 &8301087649394772506 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649394772500} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: X --- !u!1 &8301087649441864507 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649441864506} - component: {fileID: 8301087649441864504} - component: {fileID: 8301087649441864505} m_Layer: 5 m_Name: Item Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649441864506 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649441864507} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087649171761009} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649441864504 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649441864507} m_CullTransparentMesh: 0 --- !u!114 &8301087649441864505 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649441864507} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649469256475 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649469256474} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649469256474 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649469256475} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649299743016} m_Father: {fileID: 8301087649206193355} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &8301087649473292154 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649473292153} - component: {fileID: 8301087649473292159} - component: {fileID: 8301087649473292152} - component: {fileID: 8301087649473292158} m_Layer: 5 m_Name: ButtonWidthDown m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649473292153 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649473292154} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648171359329} m_Father: {fileID: 8301087647643569866} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 50, y: 8} m_SizeDelta: {x: 60, y: 24} m_Pivot: {x: 0, y: 0.5} --- !u!222 &8301087649473292159 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649473292154} m_CullTransparentMesh: 0 --- !u!114 &8301087649473292152 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649473292154} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087649473292158 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649473292154} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8301087649473292152} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087649481315365 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649481315364} - component: {fileID: 8301087649481315370} - component: {fileID: 8301087649481315371} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649481315364 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649481315365} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648139979436} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649481315370 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649481315365} m_CullTransparentMesh: 0 --- !u!114 &8301087649481315371 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649481315365} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Topmost [F] --- !u!1 &8301087649501092118 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649501092117} - component: {fileID: 8301087649501092123} - component: {fileID: 8301087649501092116} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649501092117 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649501092118} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648579829697} m_Father: {fileID: 8301087647703215749} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649501092123 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649501092118} m_CullTransparentMesh: 0 --- !u!114 &8301087649501092116 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649501092118} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649543007115 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649543007114} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649543007114 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649543007115} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087648038317132} m_Father: {fileID: 8301087649647889462} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 28} m_Pivot: {x: 0.5, y: 1} --- !u!1 &8301087649560838809 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649560838808} - component: {fileID: 8301087649560838814} - component: {fileID: 8301087649560838815} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649560838808 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649560838809} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648946615388} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.2} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649560838814 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649560838809} m_CullTransparentMesh: 0 --- !u!114 &8301087649560838815 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649560838809} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649639791783 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649639791782} - component: {fileID: 8301087649639791787} - component: {fileID: 8301087649639791780} - component: {fileID: 8301087649639791781} m_Layer: 5 m_Name: Template m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &8301087649639791782 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649639791783} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649647889462} - {fileID: 8301087649206193355} m_Father: {fileID: 8301087647885115619} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 2} m_SizeDelta: {x: 0, y: 150} m_Pivot: {x: 0.5, y: 1} --- !u!222 &8301087649639791787 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649639791783} m_CullTransparentMesh: 0 --- !u!114 &8301087649639791780 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649639791783} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!114 &8301087649639791781 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649639791783} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 8301087649543007114} m_Horizontal: 0 m_Vertical: 1 m_MovementType: 2 m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 m_ScrollSensitivity: 1 m_Viewport: {fileID: 8301087649647889462} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 8301087649206193354} m_HorizontalScrollbarVisibility: 0 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: 0 m_VerticalScrollbarSpacing: -3 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!1 &8301087649647889463 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649647889462} - component: {fileID: 8301087649647889467} - component: {fileID: 8301087649647889460} - component: {fileID: 8301087649647889461} m_Layer: 5 m_Name: Viewport m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649647889462 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649647889463} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8301087649543007114} m_Father: {fileID: 8301087649639791782} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -18, y: 0} m_Pivot: {x: 0, y: 1} --- !u!114 &8301087649647889467 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649647889463} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!222 &8301087649647889460 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649647889463} m_CullTransparentMesh: 0 --- !u!114 &8301087649647889461 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649647889463} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8301087649669520876 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8301087649669520883} - component: {fileID: 8301087649669520881} - component: {fileID: 8301087649669520882} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &8301087649669520883 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649669520876} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8301087648355076777} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8301087649669520881 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649669520876} m_CullTransparentMesh: 0 --- !u!114 &8301087649669520882 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8301087649669520876} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Click through --- !u!1 &8746993635713251504 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5881912631562061985} - component: {fileID: 659588347114955383} - component: {fileID: 3509347444287014047} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &5881912631562061985 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8746993635713251504} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 5890046916711316146} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &659588347114955383 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8746993635713251504} m_CullTransparentMesh: 0 --- !u!114 &3509347444287014047 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8746993635713251504} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!1 &8754817984095401885 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5235052954133037534} - component: {fileID: 6660205299401658529} m_Layer: 5 m_Name: SliderAlphaValue m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &5235052954133037534 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8754817984095401885} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 451061265002619429} - {fileID: 3355786023256746371} - {fileID: 2816400527948159874} - {fileID: 1725975331981271422} m_Father: {fileID: 8301087648573266373} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 90, y: -45} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &6660205299401658529 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8754817984095401885} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 5483413117868674114} m_FillRect: {fileID: 3495602533982766105} m_HandleRect: {fileID: 4912867810029457074} m_Direction: 0 m_MinValue: 0.5 m_MaxValue: 1 m_WholeNumbers: 0 m_Value: 1 m_OnValueChanged: m_PersistentCalls: m_Calls: [] ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSampleCanvas.prefab.meta ================================================ fileFormatVersion: 2 guid: 38b9db02f63429f49bd117e7f988d985 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSampleController.cs ================================================ /** * A sample script of UniWindowContoller * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using UnityEngine; using UnityEngine.Serialization; using UnityEngine.UI; namespace Kirurobo { /// /// WindowControllerの設定をToggleでオン/オフするサンプル /// public class UiSampleController : MonoBehaviour { private UniWindowController uniwinc; private UniWindowMoveHandle uniWinMoveHandle; private RectTransform canvasRect; private float mouseMoveSS = 0f; // Sum of mouse trajectory squares. [px^2] private float mouseMoveSSThreshold = 36f; // Click (not dragging) threshold. [px^2] private Vector3 lastMousePosition; // Right clicked position. private float lastEventOccurredTime = -5f; // Timestamp the last event occurred [s] private float eventMessageTimeout = 1f; // Show event message while this period [s] #if ENABLE_LEGACY_INPUT_MANAGER private float touchDuration = 0f; private float touchDurationThreshold = 0.5f; // Long tap time threshold. [s] #endif public Toggle transparentToggle; public Slider alphaSlider; public Toggle topmostToggle; public Toggle bottommostToggle; [FormerlySerializedAs("maximizedToggle")] public Toggle zoomedToggle; public Toggle dragMoveToggle; public Toggle allowDropToggle; public Dropdown fitWindowDropdown; public Toggle showBorderlineToggle; public Button widthDownButton; public Button widthUpButton; public Button heightDownButton; public Button heightUpButton; public Dropdown transparentTypeDropdown; public Dropdown hitTestTypeDropdown; public Toggle clickThroughToggle; public Image pickedColorImage; public Text pickedColorText; public Text messageText; public Text clientSizeText; public Button menuCloseButton; public RectTransform menuPanel; public RectTransform borderlinePanel; /// /// 初期化 /// void Start() { // UniWindowController を探す uniwinc = UniWindowController.current; // UniWindowDragMove を探す uniWinMoveHandle = GameObject.FindAnyObjectByType(); // CanvasのRectTransform取得 if (menuPanel) canvasRect = menuPanel.GetComponentInParent().GetComponent(); // 有効なモニタ数に合わせて選択肢を作成 UpdateMonitorDropdown(); // Toggleのチェック状態を、現在の状態に合わせる UpdateUI(); if (uniwinc) { // UIを操作された際にはウィンドウに反映されるようにする transparentToggle?.onValueChanged.AddListener(val => uniwinc.isTransparent = val); alphaSlider?.onValueChanged.AddListener(val => uniwinc.alphaValue = val); topmostToggle?.onValueChanged.AddListener(val => uniwinc.isTopmost = val); bottommostToggle?.onValueChanged.AddListener(val => uniwinc.isBottommost = val); zoomedToggle?.onValueChanged.AddListener(val => uniwinc.isZoomed = val); allowDropToggle?.onValueChanged.AddListener(val => uniwinc.allowDropFiles = val); fitWindowDropdown?.onValueChanged.AddListener(val => SetFitToMonitor(val)); widthDownButton?.onClick.AddListener(() => uniwinc.windowSize += new Vector2(-100, 0)); widthUpButton?.onClick.AddListener(() => uniwinc.windowSize += new Vector2(+100, 0)); heightDownButton?.onClick.AddListener(() => uniwinc.windowSize += new Vector2(0, -100)); heightUpButton?.onClick.AddListener(() => uniwinc.windowSize += new Vector2(0, +100)); clickThroughToggle?.onValueChanged.AddListener(val => uniwinc.isClickThrough = val); transparentTypeDropdown?.onValueChanged.AddListener(val => uniwinc.SetTransparentType((UniWindowController.TransparentType)val)); hitTestTypeDropdown?.onValueChanged.AddListener(val => uniwinc.hitTestType = (UniWindowController.HitTestType)val); menuCloseButton?.onClick.AddListener(CloseMenu); if (uniWinMoveHandle) dragMoveToggle?.onValueChanged.AddListener(val => uniWinMoveHandle.enabled = val); #if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX // Windows でなければ、透過方法の選択は無効とする //if (transparentTypeDropdown) transparentTypeDropdown.interactable = false; //if (transparentTypeDropdown) transparentTypeDropdown.enabled = false; if (transparentTypeDropdown) transparentTypeDropdown.gameObject.SetActive(false); #endif // Add events uniwinc.OnStateChanged += (type) => { UpdateUI(); //Debug.Log("Window state changed: " + type); ShowEventMessage("State changed: " + type); //ShowEventMessage("State changed: " + type + "4:isKey 2:canBecomeKey, 1:canBecomeMain : " + uniwinc.GetDebugInfo().ToString()); ShowClientSize(); }; uniwinc.OnMonitorChanged += () => { UpdateMonitorDropdown(); UpdateUI(); ShowEventMessage("Resolution changed!"); ShowClientSize(); }; uniwinc.OnDropFiles += files => { ShowEventMessage(string.Join(Environment.NewLine, files)); }; } // UinWinCが準備できてなくても動くListener showBorderlineToggle?.onValueChanged.AddListener(val => borderlinePanel.gameObject.SetActive(val)); } /// /// Show the message with timeout /// /// private void ShowEventMessage(string message) { lastEventOccurredTime = Time.time; if (messageText) messageText.text = message; Debug.Log(message); } /// /// 毎フレーム行う処理 /// private void Update() { // ヒットテスト関連の表示を更新 UpdateHitTestUI(); // 動作確認のためウィンドウ位置・サイズを表示 if ((lastEventOccurredTime + eventMessageTimeout) < Time.time) { ShowWindowMetrics(); } // マウス右ボタンクリックでメニューを表示させる。閾値以下の移動ならクリックとみなす。 if (InputProxy.GetMouseButtonDown(1)) { lastMousePosition = InputProxy.mousePosition; ResetTouchDuration(); } if (InputProxy.GetMouseButton(1)) { mouseMoveSS += (InputProxy.mousePosition - lastMousePosition).sqrMagnitude; } if (InputProxy.GetMouseButtonUp(1)) { if (mouseMoveSS < mouseMoveSSThreshold) { ShowMenu(lastMousePosition); } mouseMoveSS = 0f; ResetTouchDuration(); } #if ENABLE_LEGACY_INPUT_MANAGER // ロングタッチでもメニューを表示させる if (Input.touchSupported && (Input.touchCount > 0)) { Touch touch = Input.GetTouch(0); if (touch.phase == TouchPhase.Began) { lastMousePosition = Input.mousePosition; ResetTouchDuration(); } if (touch.phase == TouchPhase.Moved || touch.phase == TouchPhase.Stationary) { mouseMoveSS += touch.deltaPosition.sqrMagnitude; touchDuration += touch.deltaTime; } if (touch.phase == TouchPhase.Ended) { if ((mouseMoveSS < mouseMoveSSThreshold) && (touchDuration >= touchDurationThreshold)) { ShowMenu(lastMousePosition); } mouseMoveSS = 0f; ResetTouchDuration(); } } #elif ENABLE_INPUT_SYSTEM // 現状、New Input System ではタッチ対応は無し // EnhancedTouch は InputAction と併用不可? #endif // キーでも設定変更 if (uniwinc) { // Toggle transparent if (InputProxy.GetKeyUp("t")) { uniwinc.isTransparent = !uniwinc.isTransparent; } // Toggle always on the front if (InputProxy.GetKeyUp("f")) { uniwinc.isTopmost = !uniwinc.isTopmost; } // Toggle always on the bottom if (InputProxy.GetKeyUp("b")) { uniwinc.isBottommost = !uniwinc.isBottommost; } // Toggle zoom if (InputProxy.GetKeyUp("z")) { uniwinc.isZoomed = !uniwinc.isZoomed; } // Toggle free positioning if (InputProxy.GetKeyUp("p")) { uniwinc.isFreePositioningEnabled = !uniwinc.isFreePositioningEnabled; } } // Test for OpenFilePanel if (InputProxy.GetKeyUp("o")) { FilePanel.Settings ds = new FilePanel.Settings { flags = FilePanel.Flag.AllowMultipleSelection, title = "Open!", filters = new FilePanel.Filter[]{ new FilePanel.Filter("Image files", "png", "jpg", "jpeg"), new FilePanel.Filter("All files", "*"), }, initialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures), initialFile = "test.png", }; FilePanel.OpenFilePanel(ds, (files) => ShowEventMessage(string.Join(Environment.NewLine, files))); } // Test for SaveFilePanel if (InputProxy.GetKeyUp("s")) { FilePanel.Settings ds = new FilePanel.Settings { flags = FilePanel.Flag.AllowMultipleSelection, title = "Save!", filters = new FilePanel.Filter[]{ //// TODO: ファイル種類指定があると、macOSの保存ダイアログを開くことに失敗する //// NSSavePanel.accessoryView に何か指定すると発生する。 //// それが継承された NSOpenPanel では発生しない。 // new FilePanel.Filter("Shell script", "sh"), // new FilePanel.Filter("Log", "log"), // new FilePanel.Filter("Plain text", "txt"), // new FilePanel.Filter("All files", "*"), }, initialFile = "Test.txt", initialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), }; FilePanel.SaveFilePanel(ds, (files) => ShowEventMessage(string.Join(Environment.NewLine, files))); } // Quit or stop playing when pressed [ESC] if (InputProxy.GetKeyUp("escape")) { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif } } /// /// タッチされ続けている時間の記録をリセット /// 警告が出ないように Legacy Input Manager でのみ処理している /// void ResetTouchDuration() { #if ENABLE_LEGACY_INPUT_MANAGER touchDuration = 0f; #endif } /// /// フィット対象モニタドロップダウンが変更された時の処理 /// /// void SetFitToMonitor(int val) { if (!uniwinc) return; if (val < 1) { // ドロップダウンの先頭は、フィット無し uniwinc.shouldFitMonitor = false; // 最大化を変更できるようにする if (zoomedToggle) zoomedToggle.interactable = true; } else { // 次からなので、モニタ番号は1を引く uniwinc.monitorToFit = val - 1; uniwinc.shouldFitMonitor = true; // これがfalseからtrueにしたタイミングで移動されるため、モニタ番号を指定してから変更 // 最大化を変更不可にする if (zoomedToggle) zoomedToggle.interactable = false; } } /// /// ウィンドウ位置と座標を表示 /// void ShowWindowMetrics() { if (uniwinc) { var winPos = uniwinc.windowPosition; //var curPos = uniwinc.GetClientCursorPosition(); OutputMessage( "Pos.: " + winPos + "\nSize: " + uniwinc.windowSize + "\nRel. Cur.:" + (uniwinc.cursorPosition - winPos) //+ "\nScr. Cur.:" + curPos + "\nUnity Cur.:" + (Vector2)InputProxy.mousePosition ); ShowClientSize(); } } /// /// Refresh UI on focused /// /// private void OnApplicationFocus(bool hasFocus) { if (hasFocus) { UpdateUI(); if (uniwinc) { OutputMessage("Focused"); } else { OutputMessage("No UniWindowController"); } } } /// /// 指定した座標にコンテキストメニューを表示する /// /// 中心座標指定 private void ShowMenu(Vector2 position) { if (menuPanel) { Vector2 pos = position * (canvasRect.sizeDelta.x / Screen.width); float w = menuPanel.rect.width; float h = menuPanel.rect.height; // 指定座標に中心が来る前提で位置調整 pos.y = Mathf.Max(Mathf.Min(pos.y, Screen.height - h / 2f), h / 2f); // はみ出していれば上に寄せる pos.x = Mathf.Max(Mathf.Min(pos.x, Screen.width - w / 2f), w / 2f); // 右にはみ出していれば左に寄せる menuPanel.pivot = Vector2.one * 0.5f; // Set the center menuPanel.anchorMin = Vector2.zero; menuPanel.anchorMax = Vector2.zero; menuPanel.anchoredPosition = pos; menuPanel.gameObject.SetActive(true); } } /// /// コンテキストメニューを閉じる /// private void CloseMenu() { if (menuPanel) { menuPanel.gameObject.SetActive(false); } } /// /// 実際の状態をUI表示に反映 /// private void UpdateUI() { if (uniwinc) { if (transparentToggle) { transparentToggle.SetIsOnWithoutNotify(uniwinc.isTransparent); } if (alphaSlider) { alphaSlider.SetValueWithoutNotify(uniwinc.alphaValue); } if (topmostToggle) { topmostToggle.SetIsOnWithoutNotify(uniwinc.isTopmost); } if (bottommostToggle) { bottommostToggle.SetIsOnWithoutNotify(uniwinc.isBottommost); } if (zoomedToggle) { zoomedToggle.SetIsOnWithoutNotify(uniwinc.isZoomed); } if (allowDropToggle) { allowDropToggle.SetIsOnWithoutNotify(uniwinc.allowDropFiles); } if (dragMoveToggle) { dragMoveToggle.isOn = (uniWinMoveHandle && uniWinMoveHandle.isActiveAndEnabled); } if (fitWindowDropdown) { if (uniwinc.shouldFitMonitor) { fitWindowDropdown.value = uniwinc.monitorToFit + 1; if (zoomedToggle) zoomedToggle.interactable = false; } else { fitWindowDropdown.value = 0; if (zoomedToggle) zoomedToggle.interactable = true; } fitWindowDropdown.RefreshShownValue(); } if (transparentTypeDropdown) { transparentTypeDropdown.value = (int)uniwinc.transparentType; transparentTypeDropdown.RefreshShownValue(); } if (hitTestTypeDropdown) { hitTestTypeDropdown.value = (int)uniwinc.hitTestType; hitTestTypeDropdown.RefreshShownValue(); } // ヒットテスト部分の表示も更新 UpdateHitTestUI(); } // UniWinC 無しでも動作する部分 if (showBorderlineToggle && borderlinePanel) { borderlinePanel.gameObject.SetActive(showBorderlineToggle.isOn); } } /// /// ヒットテスト関連のUI更新 /// 自動で変化するため UpdateUI() よりも高頻度で更新の必要がある /// public void UpdateHitTestUI() { if (uniwinc) { if (clickThroughToggle) { clickThroughToggle.SetIsOnWithoutNotify(uniwinc.isClickThrough); if (uniwinc.hitTestType == UniWindowController.HitTestType.None) { clickThroughToggle.interactable = true; } else { clickThroughToggle.interactable = false; } } if (uniwinc.hitTestType == UniWindowController.HitTestType.Opacity && uniwinc.isTransparent) { if (pickedColorImage) { pickedColorImage.color = uniwinc.pickedColor; } if (pickedColorText) { pickedColorText.text = $"Alpha:{uniwinc.pickedColor.a:P0}"; pickedColorText.color = Color.black; } } else { if (pickedColorImage) { pickedColorImage.color = Color.gray; } if (pickedColorText) { pickedColorText.text = $"Color picker is disabled"; pickedColorText.color = Color.gray; } } } } /// /// モニタ選択ドロップダウンの選択肢を更新 /// この後にUpdateUI()を呼ぶこと /// void UpdateMonitorDropdown() { if (!fitWindowDropdown) return; // 先頭以外の選択肢を削除 fitWindowDropdown.options.RemoveRange(1, fitWindowDropdown.options.Count - 1); if (!uniwinc) { fitWindowDropdown.value = 0; } else { int count = UniWindowController.GetMonitorCount(); for (int i = 0; i < count; i++) { fitWindowDropdown.options.Add(new Dropdown.OptionData("Fit to Monitor " + i)); } if (uniwinc.monitorToFit >= count) { uniwinc.monitorToFit = count - 1; } } } /// /// テキスト枠がUIにあれば、そこにメッセージを出す。無ければコンソールに出力 /// /// public void OutputMessage(string text) { if (messageText) { messageText.text = text; } else { Debug.Log(text); } } /// /// クライアントサイズ用テキスト枠がUIにあれば、そこにメッセージを出す。無ければコンソールに出力 /// public void ShowClientSize() { if (!uniwinc) return; string text = "Client " + uniwinc.clientSize; if (clientSizeText) { clientSizeText.text = text; } else { Debug.Log(text); } } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSampleController.cs.meta ================================================ fileFormatVersion: 2 guid: 3b335a5bc9945c9469568d1aba1b14e8 timeCreated: 1545989238 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/02_UiSample.meta ================================================ fileFormatVersion: 2 guid: 42e7f77b3665a71469611d98715321c1 folderAsset: yes timeCreated: 1535845558 licenseType: Pro DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSample.cs ================================================ /** * UI controller for the fullscreen sample * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using UnityEngine; using UnityEngine.UI; namespace Kirurobo { /// /// WindowControllerの設定をToggleでオン/オフするサンプル /// public class FullscreenSample : MonoBehaviour { private UniWindowController uniwinc; private RectTransform canvasRect; private float mouseMoveSS = 0f; // Sum of mouse trajectory squares. [px^2] private float mouseMoveSSThreshold = 36f; // Click (not dragging) threshold. [px^2] private Vector3 lastMousePosition; // Right clicked position. private float touchDuration = 0f; private float touchDurationThreshold = 0.5f; // Long tap time threshold. [s] public Toggle transparentToggle; public Toggle topmostToggle; public Toggle bottommostToggle; public Dropdown fitWindowDropdown; public Button quitButton; public Button menuCloseButton; public RectTransform menuPanel; /// /// Setup /// void Start() { // UniWindowController を探す uniwinc = GameObject.FindAnyObjectByType(); // CanvasのRectTransform取得 if (menuPanel) canvasRect = menuPanel.GetComponentInParent().GetComponent(); // 有効なモニタ数に合わせて選択肢を作成 UpdateMonitorDropdown(); // Toggleのチェック状態を、現在の状態に合わせる UpdateUI(); // 初期状態ではメニューを閉じておく CloseMenu(); if (uniwinc) { // UIを操作された際にはウィンドウに反映されるようにする transparentToggle?.onValueChanged.AddListener(val => uniwinc.isTransparent = val); topmostToggle?.onValueChanged.AddListener(val => uniwinc.isTopmost = val); bottommostToggle?.onValueChanged.AddListener(val => uniwinc.isBottommost = val); fitWindowDropdown?.onValueChanged.AddListener(val => SetFitToMonitor(val)); quitButton?.onClick.AddListener(Quit); menuCloseButton?.onClick.AddListener(CloseMenu); // Add events uniwinc.OnStateChanged += (type) => { UpdateUI(); //ShowEventMessage("Window state changed: " + type); }; uniwinc.OnMonitorChanged += () => { UpdateMonitorDropdown(); UpdateUI(); //ShowEventMessage("Resolution changed!"); }; } } /// /// Perform every frame /// private void Update() { // Show the context menu when right clicked. // If mouse movement is closer than a threshold, it is considered a click if (InputProxy.GetMouseButtonDown(1)) { lastMousePosition = InputProxy.mousePosition; touchDuration = 0f; } if (InputProxy.GetMouseButton(1)) { mouseMoveSS += (InputProxy.mousePosition - lastMousePosition).sqrMagnitude; } if (InputProxy.GetMouseButtonUp(1)) { if (mouseMoveSS < mouseMoveSSThreshold) { ShowMenu(lastMousePosition); } mouseMoveSS = 0f; touchDuration = 0f; } // ひとまず Legacy Input Manager でのみタッチ処理を扱う #if ENABLE_LEGACY_INPUT_MANAGER // Show the menu also when long touched if (Input.touchSupported && (Input.touchCount > 0)) { Touch touch = Input.GetTouch(0); if (touch.phase == TouchPhase.Began) { lastMousePosition = Input.mousePosition; touchDuration = 0f; } if (touch.phase == TouchPhase.Moved || touch.phase == TouchPhase.Stationary) { mouseMoveSS += touch.deltaPosition.sqrMagnitude; touchDuration += touch.deltaTime; } if (touch.phase == TouchPhase.Ended) { if ((mouseMoveSS < mouseMoveSSThreshold) && (touchDuration >= touchDurationThreshold)) { ShowMenu(lastMousePosition); } mouseMoveSS = 0f; touchDuration = 0f; } } #endif // Show the menu also when pressed [Space] key if (InputProxy.GetKeyUp("space")) { if (menuPanel) { if (menuPanel.gameObject.activeSelf) { CloseMenu(); } else { Vector2 pos = new Vector2(Screen.width / 2, Screen.height / 2); ShowMenu(pos); } } } // Quit or stop playing when pressed [ESC] if (InputProxy.GetKeyUp("escape")) { Quit(); } } void Quit() { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif } /// /// フィット対象モニタドロップダウンが変更された時の処理 /// /// void SetFitToMonitor(int val) { if (!uniwinc) return; if (val < 1) { // ドロップダウンの先頭は、フィット無し uniwinc.shouldFitMonitor = false; } else { // 次からなので、モニタ番号は1を引く uniwinc.monitorToFit = val - 1; uniwinc.shouldFitMonitor = true; // これがfalseからtrueにしたタイミングで移動されるため、モニタ番号を指定してから変更 } } /// /// 指定した座標にコンテキストメニューを表示する /// /// 中心座標指定 private void ShowMenu(Vector2 position) { if (menuPanel) { Vector2 pos = position * (canvasRect.sizeDelta.x / Screen.width); float w = menuPanel.rect.width; float h = menuPanel.rect.height; // 指定座標に中心が来る前提で位置調整 pos.y = Mathf.Max(Mathf.Min(pos.y, Screen.height - h / 2f), h / 2f); // はみ出していれば上に寄せる pos.x = Mathf.Max(Mathf.Min(pos.x, Screen.width - w / 2f), w / 2f); // 右にはみ出していれば左に寄せる menuPanel.pivot = Vector2.one * 0.5f; // Set the center menuPanel.anchorMin = Vector2.zero; menuPanel.anchorMax = Vector2.zero; menuPanel.anchoredPosition = pos; menuPanel.gameObject.SetActive(true); } } /// /// コンテキストメニューを閉じる /// private void CloseMenu() { if (menuPanel) { menuPanel.gameObject.SetActive(false); } } /// /// 実際の状態をUI表示に反映 /// private void UpdateUI() { if (uniwinc) { if (transparentToggle) { transparentToggle.isOn = uniwinc.isTransparent; } if (topmostToggle) { topmostToggle.isOn = uniwinc.isTopmost; } if (bottommostToggle) { bottommostToggle.isOn = uniwinc.isBottommost; } if (fitWindowDropdown) { if (uniwinc.shouldFitMonitor) { fitWindowDropdown.value = uniwinc.monitorToFit + 1; } else { fitWindowDropdown.value = 0; } fitWindowDropdown.RefreshShownValue(); } } } /// /// モニタ選択ドロップダウンの選択肢を更新 /// この後にUpdateUI()を呼ぶこと /// void UpdateMonitorDropdown() { if (!fitWindowDropdown) return; // 先頭以外の選択肢を削除 fitWindowDropdown.options.RemoveRange(1, fitWindowDropdown.options.Count - 1); if (!uniwinc) { fitWindowDropdown.value = 0; } else { int count = UniWindowController.GetMonitorCount(); for (int i = 0; i < count; i++) { fitWindowDropdown.options.Add(new Dropdown.OptionData("Fit to Monitor " + i)); } if (uniwinc.monitorToFit >= count) { uniwinc.monitorToFit = count - 1; } } } /// /// Show the message with timeout /// /// private void ShowEventMessage(string message) { Debug.Log(message); } /// /// テキスト枠がUIにあれば、そこにメッセージを出す。無ければコンソールに出力 /// /// public void OutputMessage(string text) { Debug.Log(text); } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSample.cs.meta ================================================ fileFormatVersion: 2 guid: d027a988a73c645949379ea67c528652 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSample.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientEquatorColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientGroundColor: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0.44657815, g: 0.49641186, b: 0.57481647, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &4 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 1 m_BakeResolution: 50 m_AtlasSize: 1024 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 0 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 4890085278179872738, guid: b5563f201a09e4d65a6987f796daf7ac, type: 2} --- !u!196 &5 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666666 manualTileSize: 0 tileSize: 256 buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &2141044 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2141045} - component: {fileID: 2141047} - component: {fileID: 2141046} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2141045 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2141044} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 590008294} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2141046 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2141044} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &2141047 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2141044} m_CullTransparentMesh: 0 --- !u!1 &93328579 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 93328580} - component: {fileID: 93328581} m_Layer: 5 m_Name: ToggleTopmost m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &93328580 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 93328579} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1123335009} - {fileID: 545956518} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -50} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &93328581 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 93328579} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1123335010} toggleTransition: 1 graphic: {fileID: 945445682} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_isTopmost m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &126142907 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 126142908} - component: {fileID: 126142910} m_Layer: 0 m_Name: Snowman m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &126142908 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 126142907} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -1.25, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1504631273} - {fileID: 267738218} m_Father: {fileID: 1624933113} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &126142910 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 126142907} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 035ad1913e9c28f4492641ca36127790, type: 3} m_Name: m_EditorClassIdentifier: axes: 3 yawSensitivity: 1 pitchSensitvity: 1 scaleSensitivity: 0.5 minimumAngles: {x: -90, y: -360} maximumAngles: {x: 90, y: 360} confineTranslation: 1 centerTransform: {fileID: 0} currentCamera: {fileID: 0} --- !u!1 &144805234 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 144805236} - component: {fileID: 144805235} m_Layer: 0 m_Name: Directional light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &144805235 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 1, b: 1, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.802082 m_CookieSize: 10 m_Shadows: m_Type: 0 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 1 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &144805236 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 144805234} serializedVersion: 2 m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &160615647 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 160615648} - component: {fileID: 160615651} - component: {fileID: 160615650} - component: {fileID: 160615649} m_Layer: 5 m_Name: DropdownFitMonitor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &160615648 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 160615647} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 793701299} - {fileID: 278290700} - {fileID: 1968749080} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -105} m_SizeDelta: {x: 160, y: 30} m_Pivot: {x: 0, y: 0} --- !u!114 &160615649 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 160615647} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d0b652f32a2cc243917e4028fa0f046, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 160615650} m_Template: {fileID: 1968749080} m_CaptionText: {fileID: 793701300} m_CaptionImage: {fileID: 0} m_ItemText: {fileID: 666302059} m_ItemImage: {fileID: 0} m_Value: 0 m_Options: m_Options: - m_Text: Normal Window m_Image: {fileID: 0} m_OnValueChanged: m_PersistentCalls: m_Calls: [] m_AlphaFadeSpeed: 0.15 --- !u!114 &160615650 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 160615647} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &160615651 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 160615647} m_CullTransparentMesh: 0 --- !u!1 &261406605 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 261406606} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &261406606 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 261406605} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 840221662} m_Father: {fileID: 778517713} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 28} m_Pivot: {x: 0.5, y: 1} --- !u!1 &267738217 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 267738218} - component: {fileID: 267738221} - component: {fileID: 267738220} - component: {fileID: 267738219} m_Layer: 0 m_Name: Body m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &267738218 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 267738217} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 877710232} - {fileID: 1740979659} m_Father: {fileID: 126142908} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!135 &267738219 SphereCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 267738217} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Radius: 0.5 m_Center: {x: 0, y: 0, z: 0} --- !u!23 &267738220 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 267738217} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 4184b0617c337434892dafbd45a3e5ce, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &267738221 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 267738217} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &278290699 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 278290700} - component: {fileID: 278290702} - component: {fileID: 278290701} m_Layer: 5 m_Name: Arrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &278290700 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 278290699} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 160615648} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: -15, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &278290701 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 278290699} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10915, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &278290702 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 278290699} m_CullTransparentMesh: 0 --- !u!1 &315168420 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 315168421} - component: {fileID: 315168423} - component: {fileID: 315168422} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &315168421 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 315168420} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1022236894} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &315168422 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 315168420} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Quit --- !u!222 &315168423 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 315168420} m_CullTransparentMesh: 0 --- !u!1 &505944867 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 505944868} - component: {fileID: 505944870} - component: {fileID: 505944869} m_Layer: 5 m_Name: Item Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &505944868 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 505944867} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 840221662} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 10, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &505944869 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 505944867} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &505944870 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 505944867} m_CullTransparentMesh: 0 --- !u!1 &532717811 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 532717812} - component: {fileID: 532717814} - component: {fileID: 532717813} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &532717812 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 532717811} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1154389380} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &532717813 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 532717811} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: X --- !u!222 &532717814 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 532717811} m_CullTransparentMesh: 0 --- !u!1 &541166399 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 541166400} - component: {fileID: 541166402} - component: {fileID: 541166401} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &541166400 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 541166399} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1062629115} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &541166401 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 541166399} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Transparent --- !u!222 &541166402 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 541166399} m_CullTransparentMesh: 0 --- !u!1 &545956517 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 545956518} - component: {fileID: 545956520} - component: {fileID: 545956519} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &545956518 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 545956517} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 93328580} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &545956519 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 545956517} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Topmost ' --- !u!222 &545956520 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 545956517} m_CullTransparentMesh: 0 --- !u!1 &571950693 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 571950694} - component: {fileID: 571950696} - component: {fileID: 571950695} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &571950694 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 571950693} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1884151413} m_Father: {fileID: 1980326759} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &571950695 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 571950693} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &571950696 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 571950693} m_CullTransparentMesh: 0 --- !u!1 &590008293 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 590008294} - component: {fileID: 590008296} - component: {fileID: 590008295} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &590008294 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590008293} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 2141045} m_Father: {fileID: 1062629115} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &590008295 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590008293} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &590008296 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590008293} m_CullTransparentMesh: 0 --- !u!1 &666302057 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 666302058} - component: {fileID: 666302060} - component: {fileID: 666302059} m_Layer: 5 m_Name: Item Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &666302058 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666302057} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 840221662} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: -0.5} m_SizeDelta: {x: -30, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &666302059 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666302057} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Option A --- !u!222 &666302060 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666302057} m_CullTransparentMesh: 0 --- !u!1 &744028391 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 744028392} - component: {fileID: 744028395} - component: {fileID: 744028394} - component: {fileID: 744028393} m_Layer: 0 m_Name: LeftEyebrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &744028392 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 744028391} serializedVersion: 2 m_LocalRotation: {x: 0.012113088, y: -0.17322525, z: -0.06869671, w: 0.9824088} m_LocalPosition: {x: 0.21, y: 0.243, z: -0.38} m_LocalScale: {x: 0.25, y: 0.1, z: 0.1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1504631273} m_LocalEulerAnglesHint: {x: 0, y: -20, z: -8} --- !u!65 &744028393 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 744028391} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &744028394 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 744028391} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b9e9365bee95a4312b88783e135b628c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &744028395 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 744028391} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &769652253 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 769652254} - component: {fileID: 769652256} - component: {fileID: 769652255} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &769652254 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 769652253} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1406574156} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0.2} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &769652255 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 769652253} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &769652256 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 769652253} m_CullTransparentMesh: 0 --- !u!1 &778517712 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 778517713} - component: {fileID: 778517716} - component: {fileID: 778517715} - component: {fileID: 778517714} m_Layer: 5 m_Name: Viewport m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &778517713 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778517712} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 261406606} m_Father: {fileID: 1968749080} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -18, y: 0} m_Pivot: {x: 0, y: 1} --- !u!114 &778517714 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778517712} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &778517715 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778517712} m_CullTransparentMesh: 0 --- !u!114 &778517716 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778517712} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!1 &793701298 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 793701299} - component: {fileID: 793701301} - component: {fileID: 793701300} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &793701299 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 793701298} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 160615648} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -7.5, y: -0.5} m_SizeDelta: {x: -35, y: -13} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &793701300 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 793701298} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Normal Window --- !u!222 &793701301 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 793701298} m_CullTransparentMesh: 0 --- !u!1 &809009806 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 809009807} - component: {fileID: 809009809} - component: {fileID: 809009808} m_Layer: 5 m_Name: MainPanel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &809009807 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 809009806} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1062629115} - {fileID: 93328580} - {fileID: 1980326759} - {fileID: 160615648} - {fileID: 1154389380} - {fileID: 1022236894} m_Father: {fileID: 1184587778} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 205, y: 242.5} m_SizeDelta: {x: 190, y: 160} m_Pivot: {x: 0, y: 0} --- !u!114 &809009808 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 809009806} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 2100000, guid: 57c048a21c6552643bb464f9bcd0cf1a, type: 2} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &809009809 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 809009806} m_CullTransparentMesh: 0 --- !u!1 &840221661 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 840221662} - component: {fileID: 840221663} m_Layer: 5 m_Name: Item m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &840221662 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 840221661} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1715954526} - {fileID: 505944868} - {fileID: 666302058} m_Father: {fileID: 261406606} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &840221663 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 840221661} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1715954527} toggleTransition: 1 graphic: {fileID: 505944869} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: [] m_IsOn: 1 --- !u!1 &877710231 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 877710232} - component: {fileID: 877710235} - component: {fileID: 877710234} - component: {fileID: 877710233} m_Layer: 0 m_Name: RightArm m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &877710232 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877710231} serializedVersion: 2 m_LocalRotation: {x: -0.24321033, y: 0.08852131, z: 0.33036605, w: 0.9076734} m_LocalPosition: {x: -0.47, y: 0.28999993, z: 0} m_LocalScale: {x: 0.10000001, y: 0.39999998, z: 0.100000024} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 267738218} m_LocalEulerAnglesHint: {x: -30, y: 0, z: 40} --- !u!136 &877710233 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877710231} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 2 m_Radius: 0.5000001 m_Height: 2 m_Direction: 1 m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &877710234 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877710231} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 0208720e8ee7e413abe0abd9e4497fba, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &877710235 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877710231} m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &945445680 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 945445681} - component: {fileID: 945445683} - component: {fileID: 945445682} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &945445681 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 945445680} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1123335009} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &945445682 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 945445680} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &945445683 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 945445680} m_CullTransparentMesh: 0 --- !u!1 &1022236893 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1022236894} - component: {fileID: 1022236897} - component: {fileID: 1022236896} - component: {fileID: 1022236895} m_Layer: 5 m_Name: ButtonQuit m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1022236894 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1022236893} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 315168421} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 40} m_SizeDelta: {x: 80, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1022236895 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1022236893} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1022236896} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &1022236896 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1022236893} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.93333334, g: 0.93333334, b: 0.93333334, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1022236897 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1022236893} m_CullTransparentMesh: 0 --- !u!1 &1062629114 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1062629115} - component: {fileID: 1062629116} m_Layer: 5 m_Name: ToggleTransparent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1062629115 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1062629114} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 590008294} - {fileID: 541166400} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -30} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &1062629116 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1062629114} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 590008295} toggleTransition: 1 graphic: {fileID: 2141046} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_isTransparent m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &1082581154 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1082581155} - component: {fileID: 1082581158} - component: {fileID: 1082581157} - component: {fileID: 1082581156} m_Layer: 5 m_Name: Scrollbar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1082581155 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1082581154} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1406574156} m_Father: {fileID: 1968749080} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 1, y: 1} --- !u!114 &1082581156 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1082581154} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 769652255} m_HandleRect: {fileID: 769652254} m_Direction: 2 m_Value: 0 m_Size: 0.2 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!114 &1082581157 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1082581154} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1082581158 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1082581154} m_CullTransparentMesh: 0 --- !u!1 &1123335008 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1123335009} - component: {fileID: 1123335011} - component: {fileID: 1123335010} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1123335009 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1123335008} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 945445681} m_Father: {fileID: 93328580} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1123335010 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1123335008} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1123335011 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1123335008} m_CullTransparentMesh: 0 --- !u!1 &1154389379 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1154389380} - component: {fileID: 1154389383} - component: {fileID: 1154389382} - component: {fileID: 1154389381} m_Layer: 5 m_Name: ButtonCloseMenu m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1154389380 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1154389379} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 532717812} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 30, y: 30} m_Pivot: {x: 1, y: 1} --- !u!114 &1154389381 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1154389379} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1154389382} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &1154389382 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1154389379} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.8, g: 0.8, b: 0.8, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1154389383 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1154389379} m_CullTransparentMesh: 0 --- !u!1 &1184587774 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1184587778} - component: {fileID: 1184587777} - component: {fileID: 1184587776} - component: {fileID: 1184587775} - component: {fileID: 1184587779} m_Layer: 5 m_Name: CanvasForFullscreen m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1184587775 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1184587774} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1184587776 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1184587774} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 1 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 m_PresetInfoIsWorld: 0 --- !u!223 &1184587777 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1184587774} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 1 m_Camera: {fileID: 2084589448} m_PlaneDistance: 5 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 0 m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1184587778 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1184587774} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 809009807} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &1184587779 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1184587774} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d027a988a73c645949379ea67c528652, type: 3} m_Name: m_EditorClassIdentifier: transparentToggle: {fileID: 1062629116} topmostToggle: {fileID: 93328581} bottommostToggle: {fileID: 1980326760} fitWindowDropdown: {fileID: 160615649} quitButton: {fileID: 1022236895} menuCloseButton: {fileID: 1154389381} menuPanel: {fileID: 809009807} --- !u!1 &1305585831 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1305585832} - component: {fileID: 1305585835} - component: {fileID: 1305585834} - component: {fileID: 1305585833} m_Layer: 0 m_Name: LeftEye m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1305585832 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1305585831} serializedVersion: 2 m_LocalRotation: {x: 0.6963643, y: -0.122787856, z: 0.122787856, w: 0.6963643} m_LocalPosition: {x: 0.17, y: 0.045, z: -0.45} m_LocalScale: {x: 0.2, y: 0.05, z: 0.2} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1504631273} m_LocalEulerAnglesHint: {x: 90, y: -20, z: 0} --- !u!136 &1305585833 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1305585831} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 2 m_Radius: 0.5000001 m_Height: 2 m_Direction: 1 m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1305585834 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1305585831} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b9e9365bee95a4312b88783e135b628c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1305585835 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1305585831} m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1369927470 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1369927471} - component: {fileID: 1369927474} - component: {fileID: 1369927473} - component: {fileID: 1369927472} m_Layer: 0 m_Name: RightEyebrow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1369927471 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369927470} serializedVersion: 2 m_LocalRotation: {x: 0.015134441, y: 0.17298737, z: 0.085831694, w: 0.98106027} m_LocalPosition: {x: -0.21, y: 0.243, z: -0.38} m_LocalScale: {x: 0.27, y: 0.1, z: 0.1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1504631273} m_LocalEulerAnglesHint: {x: 0, y: 20, z: 10} --- !u!65 &1369927472 BoxCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369927470} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1369927473 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369927470} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b9e9365bee95a4312b88783e135b628c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1369927474 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369927470} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1406574155 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1406574156} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1406574156 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1406574155} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 769652254} m_Father: {fileID: 1082581155} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1504631272 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1504631273} - component: {fileID: 1504631276} - component: {fileID: 1504631275} - component: {fileID: 1504631274} m_Layer: 0 m_Name: Head m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1504631273 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1504631272} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0.05, y: 0.75, z: 0} m_LocalScale: {x: 0.8, y: 0.8, z: 0.8} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1572104185} - {fileID: 1305585832} - {fileID: 1369927471} - {fileID: 744028392} m_Father: {fileID: 126142908} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!135 &1504631274 SphereCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1504631272} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 3 m_Radius: 0.5 m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1504631275 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1504631272} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 4184b0617c337434892dafbd45a3e5ce, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1504631276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1504631272} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1572104184 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1572104185} - component: {fileID: 1572104188} - component: {fileID: 1572104187} - component: {fileID: 1572104186} m_Layer: 0 m_Name: RightEye m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1572104185 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1572104184} serializedVersion: 2 m_LocalRotation: {x: 0.6963643, y: 0.12278779, z: -0.12278779, w: 0.6963643} m_LocalPosition: {x: -0.18, y: 0.046, z: -0.45} m_LocalScale: {x: 0.2, y: 0.05, z: 0.2} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1504631273} m_LocalEulerAnglesHint: {x: 90, y: 20, z: 0} --- !u!136 &1572104186 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1572104184} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 2 m_Radius: 0.5000001 m_Height: 2 m_Direction: 1 m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1572104187 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1572104184} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b9e9365bee95a4312b88783e135b628c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1572104188 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1572104184} m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1624933112 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1624933113} m_Layer: 0 m_Name: ModelOrigin m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1624933113 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1624933112} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: -0.043619405, w: 0.9990483} m_LocalPosition: {x: 1.5, y: -0.5, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 126142908} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: -5} --- !u!1 &1689980755 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1689980756} - component: {fileID: 1689980758} - component: {fileID: 1689980757} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1689980756 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1689980755} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1980326759} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 9, y: -0.5} m_SizeDelta: {x: -28, y: -3} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1689980757 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1689980755} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Bottommost (WIP) --- !u!222 &1689980758 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1689980755} m_CullTransparentMesh: 0 --- !u!1 &1705850961 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1705850964} - component: {fileID: 1705850963} - component: {fileID: 1705850962} m_Layer: 0 m_Name: Particle System m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!199 &1705850962 ParticleSystemRenderer: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1705850961} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RayTracingMode: 0 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 6fcffb6aae595400e8ee042864de7ccb, type: 2} - {fileID: 2100000, guid: 6fcffb6aae595400e8ee042864de7ccb, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_RenderMode: 0 m_MeshDistribution: 0 m_SortMode: 0 m_MinParticleSize: 0 m_MaxParticleSize: 0.5 m_CameraVelocityScale: 0 m_VelocityScale: 0 m_LengthScale: 2 m_SortingFudge: 0 m_NormalDirection: 1 m_ShadowBias: 0 m_RenderAlignment: 0 m_Pivot: {x: 0, y: 0, z: 0} m_Flip: {x: 0, y: 0, z: 0} m_EnableGPUInstancing: 1 m_ApplyActiveColorSpace: 1 m_AllowRoll: 1 m_FreeformStretching: 0 m_RotateWithStretchDirection: 1 m_UseCustomVertexStreams: 1 m_VertexStreams: 00010304 m_UseCustomTrailVertexStreams: 0 m_TrailVertexStreams: 00010304 m_Mesh: {fileID: 0} m_Mesh1: {fileID: 0} m_Mesh2: {fileID: 0} m_Mesh3: {fileID: 0} m_MeshWeighting: 1 m_MeshWeighting1: 1 m_MeshWeighting2: 1 m_MeshWeighting3: 1 m_MaskInteraction: 0 --- !u!198 &1705850963 ParticleSystem: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1705850961} serializedVersion: 8 lengthInSec: 5 simulationSpeed: 1 stopAction: 0 cullingMode: 0 ringBufferMode: 0 ringBufferLoopRange: {x: 0, y: 1} emitterVelocityMode: 0 looping: 1 prewarm: 0 playOnAwake: 1 useUnscaledTime: 0 autoRandomSeed: 1 startDelay: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 moveWithTransform: 0 moveWithCustomTransform: {fileID: 0} scalingMode: 1 randomSeed: 0 InitialModule: serializedVersion: 3 enabled: 1 startLifetime: serializedVersion: 2 minMaxState: 0 scalar: 8 minScalar: 5 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSpeed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 5 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startColor: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 startSize: serializedVersion: 2 minMaxState: 0 scalar: 0.5 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSizeY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSizeZ: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotationX: serializedVersion: 2 minMaxState: 3 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotationY: serializedVersion: 2 minMaxState: 3 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotation: serializedVersion: 2 minMaxState: 3 scalar: 3.1415925 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 randomizeRotationDirection: 0 gravitySource: 0 maxNumParticles: 1000 customEmitterVelocity: {x: 0, y: 0, z: 0} size3D: 0 rotation3D: 0 gravityModifier: serializedVersion: 2 minMaxState: 0 scalar: 0.07 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 ShapeModule: serializedVersion: 6 enabled: 1 type: 2 angle: 25 length: 5 boxThickness: {x: 0, y: 0, z: 0} radiusThickness: 1 donutRadius: 0.2 m_Position: {x: 0, y: 0, z: 0} m_Rotation: {x: 0, y: 0, z: 0} m_Scale: {x: 5, y: 5, z: 5} placementMode: 0 m_MeshMaterialIndex: 0 m_MeshNormalOffset: 0 m_MeshSpawn: mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Mesh: {fileID: 0} m_MeshRenderer: {fileID: 0} m_SkinnedMeshRenderer: {fileID: 0} m_Sprite: {fileID: 0} m_SpriteRenderer: {fileID: 0} m_UseMeshMaterialIndex: 0 m_UseMeshColors: 1 alignToDirection: 0 m_Texture: {fileID: 0} m_TextureClipChannel: 3 m_TextureClipThreshold: 0 m_TextureUVChannel: 0 m_TextureColorAffectsParticles: 1 m_TextureAlphaAffectsParticles: 1 m_TextureBilinearFiltering: 0 randomDirectionAmount: 0 sphericalDirectionAmount: 0 randomPositionAmount: 0 radius: value: 1 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 arc: value: 360 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 EmissionModule: enabled: 1 serializedVersion: 4 rateOverTime: serializedVersion: 2 minMaxState: 0 scalar: 10 minScalar: 10 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rateOverDistance: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_BurstCount: 0 m_Bursts: [] SizeModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 RotationModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853982 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 ColorModule: enabled: 0 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 UVModule: serializedVersion: 2 enabled: 0 mode: 0 timeMode: 0 fps: 30 frameOverTime: serializedVersion: 2 minMaxState: 1 scalar: 0.9999 minScalar: 0.9999 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startFrame: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 speedRange: {x: 0, y: 1} tilesX: 1 tilesY: 1 animationType: 0 rowIndex: 0 cycles: 1 uvChannelMask: -1 rowMode: 1 sprites: - sprite: {fileID: 0} flipU: 0 flipV: 0 VelocityModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 radial: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 speedModifier: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 0 InheritVelocityModule: enabled: 0 m_Mode: 0 m_Curve: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 LifetimeByEmitterSpeedModule: enabled: 0 m_Curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: -0.8 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0.2 inSlope: -0.8 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Range: {x: 0, y: 1} ForceModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 0 randomizePerFrame: 0 ExternalForcesModule: serializedVersion: 2 enabled: 0 multiplierCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 influenceFilter: 0 influenceMask: serializedVersion: 2 m_Bits: 4294967295 influenceList: [] ClampVelocityModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 magnitude: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxis: 0 inWorldSpace: 0 multiplyDragByParticleSize: 1 multiplyDragByParticleVelocity: 1 dampen: 0 drag: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 NoiseModule: enabled: 1 strength: serializedVersion: 2 minMaxState: 0 scalar: 0.5 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthZ: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 frequency: 0.5 damping: 1 octaves: 1 octaveMultiplier: 0.5 octaveScale: 2 quality: 2 scrollSpeed: serializedVersion: 2 minMaxState: 0 scalar: 0.1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remap: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapY: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapZ: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapEnabled: 0 positionAmount: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rotationAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 sizeAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 SizeBySpeedModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 range: {x: 0, y: 1} separateAxes: 0 RotationBySpeedModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853982 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 range: {x: 0, y: 1} ColorBySpeedModule: enabled: 0 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 range: {x: 0, y: 1} CollisionModule: enabled: 0 serializedVersion: 4 type: 0 collisionMode: 0 colliderForce: 0 multiplyColliderForceByParticleSize: 0 multiplyColliderForceByParticleSpeed: 0 multiplyColliderForceByCollisionAngle: 1 m_Planes: - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} m_Dampen: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Bounce: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_EnergyLossOnCollision: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minKillSpeed: 0 maxKillSpeed: 10000 radiusScale: 1 collidesWith: serializedVersion: 2 m_Bits: 4294967295 maxCollisionShapes: 256 quality: 0 voxelSize: 0.5 collisionMessages: 0 collidesWithDynamic: 1 interiorCollisions: 0 TriggerModule: enabled: 0 serializedVersion: 2 inside: 1 outside: 0 enter: 0 exit: 0 colliderQueryMode: 0 radiusScale: 1 primitives: - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} - {fileID: 0} SubModule: serializedVersion: 2 enabled: 0 subEmitters: - serializedVersion: 3 emitter: {fileID: 0} type: 0 properties: 0 emitProbability: 1 LightsModule: enabled: 0 ratio: 0 light: {fileID: 0} randomDistribution: 1 color: 1 range: 1 intensity: 1 rangeCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 intensityCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 maxLights: 20 TrailModule: enabled: 0 mode: 0 ratio: 1 lifetime: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minVertexDistance: 0.2 textureMode: 0 textureScale: {x: 1, y: 1} ribbonCount: 1 shadowBias: 0.5 worldSpace: 0 dieWithParticles: 1 sizeAffectsWidth: 1 sizeAffectsLifetime: 0 inheritParticleColor: 1 generateLightingData: 0 splitSubEmitterRibbons: 0 attachRibbonsToTransform: 0 colorOverLifetime: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 widthOverTrail: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 colorOverTrail: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 CustomDataModule: enabled: 0 mode0: 0 vectorComponentCount0: 4 color0: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel0: Color vector0_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_0: X vector0_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_1: Y vector0_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_2: Z vector0_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_3: W mode1: 0 vectorComponentCount1: 4 color1: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_ColorSpace: -1 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel1: Color vector1_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_0: X vector1_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_1: Y vector1_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_2: Z vector1_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_3: W --- !u!4 &1705850964 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1705850961} serializedVersion: 2 m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 4, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} --- !u!1 &1715954525 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1715954526} - component: {fileID: 1715954528} - component: {fileID: 1715954527} m_Layer: 5 m_Name: Item Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1715954526 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1715954525} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 840221662} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1715954527 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1715954525} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1715954528 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1715954525} m_CullTransparentMesh: 0 --- !u!1 &1740979658 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1740979659} - component: {fileID: 1740979662} - component: {fileID: 1740979661} - component: {fileID: 1740979660} m_Layer: 0 m_Name: LeftArm m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1740979659 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1740979658} serializedVersion: 2 m_LocalRotation: {x: -0.24321033, y: -0.08852132, z: -0.33036608, w: 0.9076734} m_LocalPosition: {x: 0.46999997, y: 0.29000002, z: -0.1} m_LocalScale: {x: 0.100000024, y: 0.4000001, z: 0.10000002} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 267738218} m_LocalEulerAnglesHint: {x: -30, y: 0, z: -40} --- !u!136 &1740979660 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1740979658} m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 m_Bits: 0 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 m_LayerOverridePriority: 0 m_IsTrigger: 0 m_ProvidesContacts: 0 m_Enabled: 1 serializedVersion: 2 m_Radius: 0.5000001 m_Height: 2 m_Direction: 1 m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} --- !u!23 &1740979661 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1740979658} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 0208720e8ee7e413abe0abd9e4497fba, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!33 &1740979662 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1740979658} m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1884151412 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1884151413} - component: {fileID: 1884151415} - component: {fileID: 1884151414} m_Layer: 5 m_Name: Checkmark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1884151413 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1884151412} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 571950694} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1884151414 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1884151412} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1884151415 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1884151412} m_CullTransparentMesh: 0 --- !u!1 &1909436760 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1909436763} - component: {fileID: 1909436762} - component: {fileID: 1909436764} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1909436762 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1909436760} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 5 --- !u!4 &1909436763 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1909436760} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1909436764 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1909436760} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ce6b387a66b0e654d9eb8712d70fff48, type: 3} m_Name: m_EditorClassIdentifier: m_SendPointerHoverToParent: 1 m_MoveRepeatDelay: 0.5 m_MoveRepeatRate: 0.1 m_XRTrackingOrigin: {fileID: 0} m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 m_CursorLockBehavior: 0 --- !u!1 &1968749079 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1968749080} - component: {fileID: 1968749083} - component: {fileID: 1968749082} - component: {fileID: 1968749081} m_Layer: 5 m_Name: Template m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &1968749080 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1968749079} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 778517713} - {fileID: 1082581155} m_Father: {fileID: 160615648} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 2} m_SizeDelta: {x: 0, y: 150} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1968749081 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1968749079} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 261406606} m_Horizontal: 0 m_Vertical: 1 m_MovementType: 2 m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 m_ScrollSensitivity: 1 m_Viewport: {fileID: 778517713} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 1082581156} m_HorizontalScrollbarVisibility: 0 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: 0 m_VerticalScrollbarSpacing: -3 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!114 &1968749082 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1968749079} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1968749083 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1968749079} m_CullTransparentMesh: 0 --- !u!1 &1980326758 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1980326759} - component: {fileID: 1980326760} m_Layer: 5 m_Name: ToggleBotommost m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1980326759 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1980326758} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 571950694} - {fileID: 1689980756} m_Father: {fileID: 809009807} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -70} m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &1980326760 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1980326758} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Highlighted m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 571950695} toggleTransition: 1 graphic: {fileID: 1884151414} m_Group: {fileID: 0} onValueChanged: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: m_MethodName: set_enableFileDrop m_Mode: 0 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 m_IsOn: 0 --- !u!1 &2084589444 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2084589449} - component: {fileID: 2084589448} - component: {fileID: 2084589446} - component: {fileID: 2084589445} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &2084589445 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 --- !u!124 &2084589446 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 --- !u!20 &2084589448 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_Iso: 200 m_ShutterSpeed: 0.005 m_Aperture: 16 m_FocusDistance: 10 m_FocalLength: 50 m_BladeCount: 5 m_Curvature: {x: 2, y: 11} m_BarrelClipping: 0.25 m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 15 orthographic: 0 orthographic size: 5 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &2084589449 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084589444} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -20} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &2416199871960456806 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626842, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Enabled value: 0 objectReference: {fileID: 0} - target: {fileID: 2416199871598626844, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: m_Name value: UniWindowController objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: hitTestType value: 2 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isBottommost value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: forceWindowed value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isTransparent value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _shouldFitMonitor value: 1 objectReference: {fileID: 0} - target: {fileID: 2416199871598626845, guid: e893aefd93740714b999573b02916984, type: 3} propertyPath: _isFileDropEnabled value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 2416199871598626843, guid: e893aefd93740714b999573b02916984, type: 3} m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e893aefd93740714b999573b02916984, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 144805236} - {fileID: 2084589449} - {fileID: 1909436763} - {fileID: 1705850964} - {fileID: 1624933113} - {fileID: 1184587778} - {fileID: 2416199871960456806} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSample.unity.meta ================================================ fileFormatVersion: 2 guid: cc8dc9342a8c4436397f75a2389ffc1a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSampleSettings.lighting ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!850595691 &4890085278179872738 LightingSettings: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: FullscreenSampleSettings serializedVersion: 6 m_GIWorkflowMode: 1 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_RealtimeEnvironmentLighting: 1 m_BounceScale: 1 m_AlbedoBoost: 1 m_IndirectOutputScale: 1 m_UsingShadowmask: 0 m_BakeBackend: 0 m_LightmapMaxSize: 1024 m_BakeResolution: 50 m_Padding: 2 m_LightmapCompression: 0 m_AO: 1 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAO: 0 m_MixedBakeMode: 1 m_LightmapsBakeMode: 1 m_FilterMode: 1 m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_RealtimeResolution: 1 m_ForceWhiteAlbedo: 0 m_ForceUpdates: 0 m_FinalGather: 0 m_FinalGatherRayCount: 256 m_FinalGatherFiltering: 1 m_PVRCulling: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVREnvironmentSampleCount: 512 m_PVREnvironmentReferencePointCount: 2048 m_LightProbeSampleCountMultiplier: 4 m_PVRBounces: 2 m_PVRMinBounces: 2 m_PVREnvironmentImportanceSampling: 0 m_PVRFilteringMode: 0 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_PVRTiledBaking: 0 m_NumRaysToShootPerTexel: -1 m_RespectSceneVisibilityWhenBakingGI: 0 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSampleSettings.lighting.meta ================================================ fileFormatVersion: 2 guid: b5563f201a09e4d65a6987f796daf7ac NativeFormatImporter: externalObjects: {} mainObjectFileID: 4890085278179872738 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowParticle.mat ================================================ %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: SnowParticle m_Shader: {fileID: 210, guid: 0000000000000000f000000000000000, type: 0} m_Parent: {fileID: 0} m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _ALPHABLEND_ON - _EMISSION - _FADING_ON m_InvalidKeywords: - _COLORCOLOR_ON m_LightmapFlags: 0 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: 3000 stringTagMap: RenderType: Transparent disabledShaderPasses: - GRABPASS m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _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: 10300, guid: 0000000000000000f000000000000000, type: 0} 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} m_Ints: [] m_Floats: - _BlendOp: 0 - _BumpScale: 1 - _CameraFadingEnabled: 1 - _CameraFarFadeDistance: 5 - _CameraNearFadeDistance: 0.5 - _ColorMode: 4 - _Cull: 2 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DistortionBlend: 0.5 - _DistortionEnabled: 0 - _DistortionStrength: 1 - _DistortionStrengthScaled: 0 - _DstBlend: 10 - _EmissionEnabled: 1 - _FlipbookMode: 0 - _GlossMapScale: 1 - _Glossiness: 0.5 - _GlossyReflections: 1 - _LightingEnabled: 1 - _Metallic: 0 - _Mode: 2 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SoftParticlesEnabled: 0 - _SoftParticlesFarFadeDistance: 1 - _SoftParticlesNearFadeDistance: 0 - _SpecularHighlights: 1 - _SrcBlend: 5 - _UVSec: 0 - _ZWrite: 0 m_Colors: - _CameraFadeParams: {r: 0.5, g: 0.22222222, b: 0, a: 0} - _Color: {r: 1, g: 1, b: 1, a: 1} - _ColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0} - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowParticle.mat.meta ================================================ fileFormatVersion: 2 guid: 6fcffb6aae595400e8ee042864de7ccb NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanArm.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: SnowmanArm m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _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: 0} 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} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - _Glossiness: 0.263 - _GlossyReflections: 1 - _Metallic: 0.683 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 0.9433962, g: 0.64307785, b: 0.3693485, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanArm.mat.meta ================================================ fileFormatVersion: 2 guid: 0208720e8ee7e413abe0abd9e4497fba NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanBody.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: SnowmanBody m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: _EMISSION _GLOSSYREFLECTIONS_OFF _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A _SPECULARHIGHLIGHTS_OFF m_LightmapFlags: 2 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _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: 0} 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} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 0 - _Glossiness: 0 - _GlossyReflections: 0 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 1 - _SpecularHighlights: 0 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0.3490566, g: 0.3490566, b: 0.3490566, a: 1} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanBody.mat.meta ================================================ fileFormatVersion: 2 guid: 4184b0617c337434892dafbd45a3e5ce NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanFace.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: SnowmanFace m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _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: 0} 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} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 0 - _Glossiness: 0.5 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 1 - _SpecularHighlights: 1 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 0.21698111, g: 0.21698111, b: 0.21698111, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/SnowmanFace.mat.meta ================================================ fileFormatVersion: 2 guid: b9e9365bee95a4312b88783e135b628c NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen.meta ================================================ fileFormatVersion: 2 guid: 7be52262aacfb46ebab2e195477d2aad folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSample.cs ================================================ using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Kirurobo { /// /// Basic filepanel sample /// public class FileDialogSample : MonoBehaviour { public Button openFileButton; public Button openMultipleFilesButton; public Button saveFileButton; public Text messageText; // Start is called before the first frame update void Start() { openFileButton.onClick.AddListener(OpenSingleFile); openMultipleFilesButton.onClick.AddListener(OpenMultipleFiles); saveFileButton.onClick.AddListener(OpenSaveFile); messageText.text = "Click a button!"; } // Update is called once per frame void Update() { } /// /// Open the open file dialog to select single file. /// private void OpenSingleFile() { FilePanel.Settings settings = new FilePanel.Settings(); settings.filters = new FilePanel.Filter[] { new FilePanel.Filter("All files", "*"), new FilePanel.Filter("Image files (*.png;*.jpg;*.jpeg;*.tiff;*.gif;*.tga)", "png", "jpg", "jpeg", "tiff", "gif", "tga"), new FilePanel.Filter("Documents (*.txt;*.rtf;*.doc;*.docx)", "txt", "rtf", "doc", "docx"), }; settings.title = "Open a file!"; settings.initialDirectory = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyPictures); messageText.text = ""; FilePanel.OpenFilePanel(settings, (files) => { messageText.text = "Open a file\n" + string.Join("\n", files); }); } /// /// Open the open file dialog to select multiple files. /// private void OpenMultipleFiles() { FilePanel.Settings settings = new FilePanel.Settings(); settings.filters = new FilePanel.Filter[] { new FilePanel.Filter("Image files (*.png;*.jpg;*.jpeg;*.tiff;*.gif;*.tga)", "png", "jpg", "jpeg", "tiff", "gif", "tga"), new FilePanel.Filter("Documents (*.txt;*.rtf;*.doc;*.docx)", "txt", "rtf", "doc", "docx"), new FilePanel.Filter("All files", "*"), }; settings.flags = FilePanel.Flag.AllowMultipleSelection; settings.title = "Open multiple files!"; settings.initialDirectory = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments); messageText.text = ""; FilePanel.OpenFilePanel(settings, (files) => { messageText.text = "Open multiple files\n" + string.Join("\n", files); }); } /// /// Open the save file dialog. /// private void OpenSaveFile() { FilePanel.Settings settings = new FilePanel.Settings(); settings.filters = new FilePanel.Filter[] { new FilePanel.Filter("Text file (*.txt;*.log)", "txt", "log"), new FilePanel.Filter("Image files (*.png;*.jpg;*.jpeg;*.tiff;*.gif;*.tga)", "png", "jpg", "jpeg", "tiff", "gif", "tga"), new FilePanel.Filter("All files", "*"), }; settings.title = "No save is actually performed"; settings.initialFile = "Test.txt"; messageText.text = ""; FilePanel.SaveFilePanel(settings, (files) => { messageText.text = "Selected file\n" + string.Join("\n", files); }); } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSample.cs.meta ================================================ fileFormatVersion: 2 guid: eb6dba400744842c1b9025c020a1dd4e MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSample.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0.44657844, g: 0.49641222, b: 0.57481676, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 0 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 1 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 2 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 4890085278179872738, guid: 24c3b38da5d7645cca546e4a61bf8980, type: 2} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &30811436 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 30811437} - component: {fileID: 30811440} - component: {fileID: 30811439} - component: {fileID: 30811438} m_Layer: 5 m_Name: Scroll View m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &30811437 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 30811436} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 246320738} - {fileID: 691758582} - {fileID: 2082900859} m_Father: {fileID: 1115002725} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 260, y: -10} m_SizeDelta: {x: -270, y: 180} m_Pivot: {x: 0, y: 1} --- !u!114 &30811438 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 30811436} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 1209789489} m_Horizontal: 1 m_Vertical: 1 m_MovementType: 1 m_Elasticity: 0.1 m_Inertia: 1 m_DecelerationRate: 0.135 m_ScrollSensitivity: 1 m_Viewport: {fileID: 246320738} m_HorizontalScrollbar: {fileID: 691758583} m_VerticalScrollbar: {fileID: 2082900860} m_HorizontalScrollbarVisibility: 2 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: -3 m_VerticalScrollbarSpacing: -3 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!114 &30811439 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 30811436} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.392} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &30811440 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 30811436} m_CullTransparentMesh: 1 --- !u!1 &223023792 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 223023793} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &223023793 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 223023792} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1486794694} m_Father: {fileID: 691758582} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &246320737 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 246320738} - component: {fileID: 246320741} - component: {fileID: 246320740} - component: {fileID: 246320739} m_Layer: 5 m_Name: Viewport m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &246320738 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 246320737} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1209789489} m_Father: {fileID: 30811437} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 1} --- !u!114 &246320739 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 246320737} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!114 &246320740 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 246320737} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &246320741 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 246320737} m_CullTransparentMesh: 1 --- !u!1 &474919455 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 474919456} - component: {fileID: 474919458} - component: {fileID: 474919457} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &474919456 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 474919455} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 651359272} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &474919457 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 474919455} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &474919458 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 474919455} m_CullTransparentMesh: 1 --- !u!1 &482449624 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 482449625} - component: {fileID: 482449628} - component: {fileID: 482449627} - component: {fileID: 482449626} m_Layer: 5 m_Name: Button01 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &482449625 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 482449624} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1987906028} m_Father: {fileID: 1115002725} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -10} m_SizeDelta: {x: 240, y: 40} m_Pivot: {x: 0, y: 1} --- !u!114 &482449626 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 482449624} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 482449627} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: SimpleSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &482449627 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 482449624} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &482449628 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 482449624} m_CullTransparentMesh: 1 --- !u!1 &590190060 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 590190063} - component: {fileID: 590190062} - component: {fileID: 590190064} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &590190062 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590190060} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &590190063 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590190060} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &590190064 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 590190060} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ce6b387a66b0e654d9eb8712d70fff48, type: 3} m_Name: m_EditorClassIdentifier: m_SendPointerHoverToParent: 1 m_MoveRepeatDelay: 0.5 m_MoveRepeatRate: 0.1 m_XRTrackingOrigin: {fileID: 0} m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 m_CursorLockBehavior: 0 --- !u!1 &651359271 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 651359272} m_Layer: 5 m_Name: Sliding Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &651359272 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 651359271} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 474919456} m_Father: {fileID: 2082900859} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &691758581 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 691758582} - component: {fileID: 691758585} - component: {fileID: 691758584} - component: {fileID: 691758583} m_Layer: 5 m_Name: Scrollbar Horizontal m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &691758582 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 691758581} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 223023793} m_Father: {fileID: 30811437} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &691758583 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 691758581} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1486794695} m_HandleRect: {fileID: 1486794694} m_Direction: 0 m_Value: 0 m_Size: 1 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!114 &691758584 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 691758581} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &691758585 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 691758581} m_CullTransparentMesh: 1 --- !u!1 &925578655 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 925578656} - component: {fileID: 925578659} - component: {fileID: 925578658} - component: {fileID: 925578657} m_Layer: 5 m_Name: Button02 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &925578656 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 925578655} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 2062578109} m_Father: {fileID: 1115002725} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -50} m_SizeDelta: {x: 240, y: 40} m_Pivot: {x: 0, y: 1} --- !u!114 &925578657 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 925578655} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 925578658} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: UiSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &925578658 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 925578655} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &925578659 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 925578655} m_CullTransparentMesh: 1 --- !u!1 &989311917 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 989311918} - component: {fileID: 989311921} - component: {fileID: 989311920} - component: {fileID: 989311919} m_Layer: 5 m_Name: Button03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &989311918 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 989311917} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1161899926} m_Father: {fileID: 1115002725} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 10, y: -100} m_SizeDelta: {x: 240, y: 40} m_Pivot: {x: 0, y: 1} --- !u!114 &989311919 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 989311917} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 989311920} m_OnClick: m_PersistentCalls: m_Calls: - m_Target: {fileID: 0} m_TargetAssemblyTypeName: Kirurobo.SampleManager, Assembly-CSharp m_MethodName: LoadScene m_Mode: 5 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: FullScreenSample m_BoolArgument: 0 m_CallState: 2 --- !u!114 &989311920 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 989311917} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &989311921 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 989311917} m_CullTransparentMesh: 1 --- !u!1 &1115002724 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1115002725} - component: {fileID: 1115002727} - component: {fileID: 1115002726} m_Layer: 5 m_Name: Panel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1115002725 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1115002724} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 482449625} - {fileID: 925578656} - {fileID: 989311918} - {fileID: 30811437} m_Father: {fileID: 1721279633} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 90, y: 70} m_SizeDelta: {x: 480, y: 200} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1115002726 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1115002724} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.392} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1115002727 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1115002724} m_CullTransparentMesh: 1 --- !u!1 &1161899925 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1161899926} - component: {fileID: 1161899928} - component: {fileID: 1161899927} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1161899926 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1161899925} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 989311918} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1161899927 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1161899925} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Open Save File Dialog --- !u!222 &1161899928 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1161899925} m_CullTransparentMesh: 1 --- !u!1 &1162323843 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1162323844} - component: {fileID: 1162323846} - component: {fileID: 1162323845} m_Layer: 5 m_Name: MessageText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1162323844 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1162323843} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1209789489} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 2.5} m_SizeDelta: {x: -10, y: -5} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1162323845 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1162323843} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Message --- !u!222 &1162323846 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1162323843} m_CullTransparentMesh: 1 --- !u!1 &1209789488 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1209789489} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1209789489 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1209789488} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1162323844} m_Father: {fileID: 246320738} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 300} m_Pivot: {x: 0, y: 1} --- !u!1 &1434002365 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1434002368} - component: {fileID: 1434002367} - component: {fileID: 1434002366} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &1434002366 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1434002365} m_Enabled: 1 --- !u!20 &1434002367 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1434002365} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_Iso: 200 m_ShutterSpeed: 0.005 m_Aperture: 16 m_FocusDistance: 10 m_FocalLength: 50 m_BladeCount: 5 m_Curvature: {x: 2, y: 11} m_BarrelClipping: 0.25 m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 5 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &1434002368 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1434002365} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 1, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1486794693 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1486794694} - component: {fileID: 1486794696} - component: {fileID: 1486794695} m_Layer: 5 m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1486794694 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1486794693} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 223023793} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1486794695 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1486794693} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &1486794696 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1486794693} m_CullTransparentMesh: 1 --- !u!1 &1610488909 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1610488910} - component: {fileID: 1610488911} m_Layer: 0 m_Name: FileDialogSample m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1610488910 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1610488909} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -15} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1721279633} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1610488911 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1610488909} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: eb6dba400744842c1b9025c020a1dd4e, type: 3} m_Name: m_EditorClassIdentifier: openFileButton: {fileID: 482449626} openMultipleFilesButton: {fileID: 925578657} saveFileButton: {fileID: 989311919} messageText: {fileID: 1162323845} --- !u!1 &1721279632 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1721279633} - component: {fileID: 1721279636} - component: {fileID: 1721279635} - component: {fileID: 1721279634} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1721279633 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1721279632} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 1115002725} m_Father: {fileID: 1610488910} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &1721279634 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1721279632} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1721279635 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1721279632} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 m_PresetInfoIsWorld: 0 --- !u!223 &1721279636 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1721279632} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 0 m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &1853089148 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1853089150} - component: {fileID: 1853089149} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1853089149 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1853089148} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.802082 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1853089150 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1853089148} serializedVersion: 2 m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!1 &1987906027 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1987906028} - component: {fileID: 1987906030} - component: {fileID: 1987906029} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1987906028 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1987906027} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 482449625} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1987906029 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1987906027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Open Single FileSelection Dialog --- !u!222 &1987906030 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1987906027} m_CullTransparentMesh: 1 --- !u!1 &2062578108 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2062578109} - component: {fileID: 2062578111} - component: {fileID: 2062578110} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2062578109 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2062578108} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 925578656} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2062578110 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2062578108} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Open Multiple File Selection Dialog --- !u!222 &2062578111 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2062578108} m_CullTransparentMesh: 1 --- !u!1 &2082900858 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2082900859} - component: {fileID: 2082900862} - component: {fileID: 2082900861} - component: {fileID: 2082900860} m_Layer: 5 m_Name: Scrollbar Vertical m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2082900859 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2082900858} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 651359272} m_Father: {fileID: 30811437} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 0} m_Pivot: {x: 1, y: 1} --- !u!114 &2082900860 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2082900858} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2a4db7a114972834c8e4117be1d82ba3, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_WrapAround: 0 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_SelectedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 474919457} m_HandleRect: {fileID: 474919456} m_Direction: 2 m_Value: 1 m_Size: 0.54333335 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!114 &2082900861 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2082900858} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 --- !u!222 &2082900862 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2082900858} m_CullTransparentMesh: 1 --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 m_Roots: - {fileID: 1434002368} - {fileID: 1853089150} - {fileID: 1610488910} - {fileID: 590190063} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSample.unity.meta ================================================ fileFormatVersion: 2 guid: 48a0f5141a4d64ffd86a58d24b841e0c DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSampleSettings.lighting ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!850595691 &4890085278179872738 LightingSettings: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: FileDialogSampleSettings serializedVersion: 3 m_GIWorkflowMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 1 m_RealtimeEnvironmentLighting: 1 m_BounceScale: 1 m_AlbedoBoost: 1 m_IndirectOutputScale: 1 m_UsingShadowmask: 1 m_BakeBackend: 1 m_LightmapMaxSize: 1024 m_BakeResolution: 40 m_Padding: 2 m_TextureCompression: 1 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAO: 0 m_MixedBakeMode: 2 m_LightmapsBakeMode: 1 m_FilterMode: 1 m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_RealtimeResolution: 2 m_ForceWhiteAlbedo: 0 m_ForceUpdates: 0 m_FinalGather: 0 m_FinalGatherRayCount: 256 m_FinalGatherFiltering: 1 m_PVRCulling: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVREnvironmentSampleCount: 500 m_PVREnvironmentReferencePointCount: 2048 m_LightProbeSampleCountMultiplier: 4 m_PVRBounces: 2 m_PVRMinBounces: 2 m_PVREnvironmentMIS: 0 m_PVRFilteringMode: 2 m_PVRDenoiserTypeDirect: 0 m_PVRDenoiserTypeIndirect: 0 m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSampleSettings.lighting.meta ================================================ fileFormatVersion: 2 guid: 24c3b38da5d7645cca546e4a61bf8980 NativeFormatImporter: externalObjects: {} mainObjectFileID: 4890085278179872738 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/04_FileDialog.meta ================================================ fileFormatVersion: 2 guid: f581febe4b4b84782b607353782518af folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/AutoRotator.cs ================================================ using UnityEngine; namespace Kirurobo { /// /// アタッチしたオブジェクトを一定速度でヨー回転させる /// public class AutoRotator : MonoBehaviour { /// /// 回転速度 [deg/s] /// public float angularVelocity = 90f; /// /// 回転軸(ヨー回転のため上向き) /// Vector3 rotationAxis = Vector3.up; /// /// 初期姿勢 /// Quaternion initialLocalRotation; // Use this for initialization void Start () { // 初期姿勢を記憶 initialLocalRotation = transform.localRotation; } // Update is called once per frame void Update () { var rotation = Quaternion.Euler(0f, Time.time * angularVelocity, 0f); transform.localRotation = initialLocalRotation * rotation; } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/AutoRotator.cs.meta ================================================ fileFormatVersion: 2 guid: f985bf036f5416a45b9dd4e31bc85075 timeCreated: 1545989238 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/CollisionBorder.png.meta ================================================ fileFormatVersion: 2 guid: 2b5d2690e20d6584e909fd2bdfd93579 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 0 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 8, y: 8, z: 8, w: 8} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 533df9bf30503d349b91598d325d5fcd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/GreenBorder.png.meta ================================================ fileFormatVersion: 2 guid: 4713fc586389c694f9e384c7f3a02289 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: -1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 0 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 8, y: 8, z: 8, w: 8} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 47fdf1b4c9bb7764d916b229e9a2d98c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/InputModuleProxy.cs ================================================ using System.Collections; using System.Collections.Generic; using UnityEngine; #if ENABLE_LEGACY_INPUT_MANAGER #elif ENABLE_INPUT_SYSTEM using UnityEngine.InputSystem; #endif namespace Kirurobo { /// /// Legacy InputManager と InputSystem の両方に取り急ぎ対応するために用意したクラスです /// #if ENABLE_LEGACY_INPUT_MANAGER public class InputModuleProxy : UnityEngine.EventSystems.StandaloneInputModule { } #elif ENABLE_INPUT_SYSTEM public class InputModuleProxy : UnityEngine.InputSystem.UI.InputSystemUIInputModule { } #else public class InputModuleProxy { } #endif } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/InputModuleProxy.cs.meta ================================================ fileFormatVersion: 2 guid: ce6b387a66b0e654d9eb8712d70fff48 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/InputProxy.cs ================================================ /** * A sample script of UniWindowContoller * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using UnityEngine; #if ENABLE_LEGACY_INPUT_MANAGER // Don't use InputSystem in this script to prevent TouchPhase duplication #elif ENABLE_INPUT_SYSTEM using UnityEngine.InputSystem; #endif namespace Kirurobo { /// /// Input System と Input Manager の違いを吸収するためのプロキシ /// public class InputProxy { public static Vector3 mousePosition { get { return GetMousePosition(); } } /// /// Input System の利用に合わせてキーアップを取得 /// /// public static bool GetKeyUp(String key) { #if ENABLE_LEGACY_INPUT_MANAGER return Input.GetKeyUp(key); #elif ENABLE_INPUT_SYSTEM // 簡易的な実装。keyが1文字で、かつアルファベットか数字に対応 // 1文字以外は escape, space のみ対応 if (key.Length == 1) { Key k = Key.None; char c = key[0]; if (c >= '0' && c <= '9') { // 数字の場合はDigit0~Digit9とNumpad0~Numpad9の両方に反応 k = (Key)Enum.ToObject(typeof(Key), (int)Key.Numpad0 + (int)(c - '0')); if (Keyboard.current[k].wasReleasedThisFrame) return true; // Digitの場合はDigit0の値が最大 k = (Key)Enum.ToObject(typeof(Key), (int)Key.Digit1 + (int)((c == '0' ? 9 : c - '1'))); if (Keyboard.current[k].wasReleasedThisFrame) return true; } if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z')) { // アルファベットの場合は大文字・小文字どちらでも可とする k = (Key)Enum.ToObject(typeof(Key), (int)Key.A + (int)(Char.ToUpper(c) - 'A')); if (Keyboard.current[k].wasReleasedThisFrame) return true; } } else if (key == "escape") { return Keyboard.current.escapeKey.wasReleasedThisFrame; } else if (key == "space") { return Keyboard.current.spaceKey.wasReleasedThisFrame; } return false; #else return false; #endif } /// /// Input System の利用に合わせてマウス座標を取得 /// /// private static Vector3 GetMousePosition() { #if ENABLE_LEGACY_INPUT_MANAGER return Input.mousePosition; #elif ENABLE_INPUT_SYSTEM return Mouse.current.position.ReadValue(); #else return Vector3.zero; #endif } /// /// マウスボタンが現在押されているか判定 /// /// /// public static bool GetMouseButton(int button) { #if ENABLE_LEGACY_INPUT_MANAGER return Input.GetMouseButton(button); #elif ENABLE_INPUT_SYSTEM if (button == 0) return Mouse.current.leftButton.isPressed; if (button == 1) return Mouse.current.rightButton.isPressed; if (button == 2) return Mouse.current.middleButton.isPressed; return false; #else return false; #endif } /// /// このフレームでマウスボタンが押されたか判定 /// /// /// public static bool GetMouseButtonDown(int button) { #if ENABLE_LEGACY_INPUT_MANAGER return Input.GetMouseButtonDown(button); #elif ENABLE_INPUT_SYSTEM if (button == 0) return Mouse.current.leftButton.wasPressedThisFrame; if (button == 1) return Mouse.current.rightButton.wasPressedThisFrame; if (button == 2) return Mouse.current.middleButton.wasPressedThisFrame; return false; #else return false; #endif } /// /// このフレームでマウスボタンが離されたか判定 /// /// /// public static bool GetMouseButtonUp(int button) { #if ENABLE_LEGACY_INPUT_MANAGER return Input.GetMouseButtonUp(button); #elif ENABLE_INPUT_SYSTEM if (button == 0) return Mouse.current.leftButton.wasReleasedThisFrame; if (button == 1) return Mouse.current.rightButton.wasReleasedThisFrame; if (button == 2) return Mouse.current.middleButton.wasReleasedThisFrame; return false; #else return false; #endif } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/InputProxy.cs.meta ================================================ fileFormatVersion: 2 guid: 93a3055c4733041a1a83f6c90996f3ee MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/ModelController.cs ================================================ /* * ModelController * * Rotate, translate and scale the object * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using UnityEngine; namespace Kirurobo { public class ModelController : MonoBehaviour { [Flags] public enum RotationAxes : int { None = 0, Pitch = 1, Yaw = 2, PitchAndYaw = 3 } [Flags] public enum DragState { None, Rotating, Translating, } public RotationAxes axes = RotationAxes.PitchAndYaw; public float yawSensitivity = 1f; public float pitchSensitvity = 1f; public float scaleSensitivity = 0.5f; public Vector2 minimumAngles = new Vector2(-90f, -360f); public Vector2 maximumAngles = new Vector2(90f, 360f); [Tooltip("Restrict to move out from screen")] public bool confineTranslation = true; // 並進移動をウィンドウ(Screen)の範囲に制限するか [Tooltip("Default is the parent transform")] public Transform centerTransform; // 回転中心 [Tooltip("Default is the main camera")] public Camera currentCamera; internal GameObject centerObject = null; // 回転中心Transformが指定されなかった場合に作成される internal Vector3 rotation; internal Vector3 translation; internal Vector3 lastMousePosition; // 直前フレームでのマウス座標 internal DragState dragState; // ドラッグ中は開始時のボタンに合わせた内容にする internal Vector3 relativePosition; internal Quaternion relativeRotation; internal Vector3 originalLocalScale; internal float zoom; void Start() { Initialize(); SetupTransform(); } void OnDestroy() { // 回転中心を独自に作成していれば、削除 if (centerObject) GameObject.Destroy(centerObject); } void Update() { if (!currentCamera.isActiveAndEnabled) return; { HandleMouse(); } } /// /// 必要なオブジェクトを取得・準備 /// internal void Initialize() { if (!centerTransform) { centerTransform = this.transform.parent; if (!centerTransform || centerTransform == this.transform) { centerObject = new GameObject(); centerTransform = centerObject.transform; centerTransform.position = Vector3.zero; } } if (!currentCamera) { currentCamera = Camera.main; } lastMousePosition = InputProxy.mousePosition; } /// /// 初期位置・姿勢の設定 /// 対象となるオブジェクトがそろった後で実行する /// internal void SetupTransform() { relativePosition = transform.position- centerTransform.position; // オブジェクトから中心座標へのベクトル relativeRotation = transform.rotation * Quaternion.Inverse(centerTransform.rotation); originalLocalScale = transform.localScale; ResetTransform(); } /// /// Reset rotation and translation. /// public void ResetTransform() { rotation = relativeRotation.eulerAngles; translation = relativePosition; zoom = 0f; UpdateTransform(); } /// /// Apply rotation and translation /// internal void UpdateTransform() { Quaternion rot = Quaternion.Euler(rotation); transform.rotation = rot; transform.position = centerTransform.position + translation; transform.localScale = originalLocalScale * Mathf.Pow(10f, zoom); } internal virtual void HandleMouse() { Vector3 mousePos = InputProxy.mousePosition; if (InputProxy.GetMouseButtonDown(0)) { // 左ボタン(0)ドラッグでは並進移動を行う if (dragState == DragState.None && IsHit(mousePos)) { dragState = DragState.Translating; // 画面範囲に制限する if (confineTranslation) { Vector3 screenMax = new Vector3(Screen.width, Screen.height); mousePos = Vector3.Max(Vector3.Min(mousePos, screenMax), Vector3.zero); } lastMousePosition = mousePos; // ドラッグ開始時にはリセット } } else if (InputProxy.GetMouseButtonDown(1)) { // 右ボタン(1)ドラッグでは回転を行う if (dragState == DragState.None && IsHit(mousePos)) { dragState = DragState.Rotating; lastMousePosition = mousePos; // ドラッグ開始時にはリセット } } // ドラッグで回転 if (dragState == DragState.Rotating) { // ボタンが押されている間のみ操作 if (InputProxy.GetMouseButton(1)) { // ドラッグで回転 if ((axes & RotationAxes.Yaw) > RotationAxes.None) { rotation.y -= (mousePos.x - lastMousePosition.x) * 360f / Screen.width * yawSensitivity; rotation.y = ClampAngle(rotation.y, minimumAngles.y, maximumAngles.y); } if ((axes & RotationAxes.Pitch) > RotationAxes.None) { rotation.x += (mousePos.y - lastMousePosition.y) * 360f / Screen.height * pitchSensitvity; rotation.x = ClampAngle(rotation.x, minimumAngles.x, maximumAngles.x); } UpdateTransform(); } else { // 右ボタンが離されていれば回転は終了 dragState = DragState.None; } } // ドラッグで並進移動 if (dragState == DragState.Translating) { // ボタンが押されている間のみ操作 if (InputProxy.GetMouseButton(0)) { // 画面範囲に制限する if (confineTranslation) { Vector3 screenMax = new Vector3(Screen.width, Screen.height); mousePos = Vector3.Max(Vector3.Min(mousePos, screenMax), Vector3.zero); } Vector3 screenPos = currentCamera.WorldToScreenPoint(transform.position); Vector3 deltaPos = mousePos - lastMousePosition; deltaPos.z = 0f; Vector3 worldPos = currentCamera.ScreenToWorldPoint(screenPos + deltaPos); translation = worldPos - centerTransform.position; UpdateTransform(); } else { // ボタンが離されていれば並進は終了 dragState = DragState.None; } } // ひとまず Legacy Input Manager でのみホイール操作を受け付けるものとしてリリース #if ENABLE_LEGACY_INPUT_MANAGER // ホイールが回転されれば、拡大縮小 if (!Mathf.Approximately(Input.GetAxis("Mouse ScrollWheel"), 0f) && IsHit(mousePos)) { // ホイールによる操作量 float wheelDelta = Input.GetAxis("Mouse ScrollWheel") * scaleSensitivity; // 倍率を変更 zoom -= wheelDelta; zoom = Mathf.Clamp(zoom, -1f, 2f); // Logarithm of field-of-view [deg] range UpdateTransform(); } #endif lastMousePosition = mousePos; } /// /// マウスでの操作時、オブジェクトにヒットしたか判定 /// /// internal bool IsHit(Vector3 screenPosition) { RaycastHit hit; Ray ray = currentCamera.ScreenPointToRay(screenPosition); if (Physics.Raycast(ray, out hit)) { if (hit.transform.IsChildOf(transform)) return true; } return false; } /// /// 指定範囲から外れる角度の場合、補正する /// /// /// /// /// public static float ClampAngle(float angle, float min, float max) { if (angle < -min) angle = -((-angle) % 360f); if (angle > max) angle = angle % 360f; return Mathf.Clamp(angle, min, max); } } } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/ModelController.cs.meta ================================================ fileFormatVersion: 2 guid: 035ad1913e9c28f4492641ca36127790 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/UiMaterial.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: UiMaterial m_Shader: {fileID: 10760, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _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: 0} 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} m_Floats: - _BumpScale: 1 - _ColorMask: 15 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - _Glossiness: 0.5 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 - _Stencil: 0 - _StencilComp: 8 - _StencilOp: 0 - _StencilReadMask: 255 - _StencilWriteMask: 255 - _UVSec: 0 - _UseUIAlphaClip: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 1, g: 1, b: 1, a: 0.78431374} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common/UiMaterial.mat.meta ================================================ fileFormatVersion: 2 guid: 57c048a21c6552643bb464f9bcd0cf1a NativeFormatImporter: externalObjects: {} mainObjectFileID: 2100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples/Common.meta ================================================ fileFormatVersion: 2 guid: faaaabe38d1e72042b1915b08ace660c folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/Samples.meta ================================================ fileFormatVersion: 2 guid: 7c707e9a411b45e45b2d06790bf71af0 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/package.json ================================================ { "name": "com.kirurobo.uniwinc", "version": "0.9.8", "displayName": "UniWindowController", "description": "Unified window controller for Mac and Windows", "unity": "2022.3", "unityRelease": "", "dependencies": {}, "keywords": [ "Windows API", "macOS" ], "author": { "name": "Kirurobo", "email": "kirurobo@gmail.com", "url": "https://github.com/kirurobo/uniwindowcontroller" }, "samples": [ { "displayName": "UniWinC samples", "description": "Sample scenes for UniWindowController", "path": "Samples~" } ] } ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController/package.json.meta ================================================ fileFormatVersion: 2 guid: 5e8695be329ffca48b7a0ce10acf0297 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo/UniWindowController.meta ================================================ fileFormatVersion: 2 guid: 56992e5a8bc9a48599321686811e8f24 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Assets/Kirurobo.meta ================================================ fileFormatVersion: 2 guid: 1dd14673b453749f0b64cb3e91e6b8f8 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: UniWinC/Packages/manifest.json ================================================ { "dependencies": { "com.unity.ide.visualstudio": "2.0.25", "com.unity.inputsystem": "1.14.2", "com.unity.ugui": "1.0.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", "com.unity.modules.audio": "1.0.0", "com.unity.modules.cloth": "1.0.0", "com.unity.modules.director": "1.0.0", "com.unity.modules.imageconversion": "1.0.0", "com.unity.modules.imgui": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0", "com.unity.modules.particlesystem": "1.0.0", "com.unity.modules.physics": "1.0.0", "com.unity.modules.physics2d": "1.0.0", "com.unity.modules.screencapture": "1.0.0", "com.unity.modules.terrain": "1.0.0", "com.unity.modules.terrainphysics": "1.0.0", "com.unity.modules.tilemap": "1.0.0", "com.unity.modules.ui": "1.0.0", "com.unity.modules.uielements": "1.0.0", "com.unity.modules.umbra": "1.0.0", "com.unity.modules.unityanalytics": "1.0.0", "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.unitywebrequestassetbundle": "1.0.0", "com.unity.modules.unitywebrequestaudio": "1.0.0", "com.unity.modules.unitywebrequesttexture": "1.0.0", "com.unity.modules.unitywebrequestwww": "1.0.0", "com.unity.modules.vehicles": "1.0.0", "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", "com.unity.modules.xr": "1.0.0" } } ================================================ FILE: UniWinC/Packages/packages-lock.json ================================================ { "dependencies": { "com.unity.ext.nunit": { "version": "1.0.6", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.ide.visualstudio": { "version": "2.0.25", "depth": 0, "source": "registry", "dependencies": { "com.unity.test-framework": "1.1.31" }, "url": "https://packages.unity.com" }, "com.unity.inputsystem": { "version": "1.14.2", "depth": 0, "source": "registry", "dependencies": { "com.unity.modules.uielements": "1.0.0" }, "url": "https://packages.unity.com" }, "com.unity.test-framework": { "version": "1.1.33", "depth": 1, "source": "registry", "dependencies": { "com.unity.ext.nunit": "1.0.6", "com.unity.modules.imgui": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" }, "url": "https://packages.unity.com" }, "com.unity.ugui": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0" } }, "com.unity.modules.ai": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.androidjni": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.animation": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.assetbundle": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.audio": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.cloth": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.physics": "1.0.0" } }, "com.unity.modules.director": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.audio": "1.0.0", "com.unity.modules.animation": "1.0.0" } }, "com.unity.modules.imageconversion": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.imgui": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.jsonserialize": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.particlesystem": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.physics": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.physics2d": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.screencapture": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.imageconversion": "1.0.0" } }, "com.unity.modules.subsystems": { "version": "1.0.0", "depth": 1, "source": "builtin", "dependencies": { "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.modules.terrain": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.terrainphysics": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.physics": "1.0.0", "com.unity.modules.terrain": "1.0.0" } }, "com.unity.modules.tilemap": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.physics2d": "1.0.0" } }, "com.unity.modules.ui": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.uielements": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.modules.umbra": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.unityanalytics": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.modules.unitywebrequest": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.unitywebrequestassetbundle": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.assetbundle": "1.0.0", "com.unity.modules.unitywebrequest": "1.0.0" } }, "com.unity.modules.unitywebrequestaudio": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.audio": "1.0.0" } }, "com.unity.modules.unitywebrequesttexture": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.imageconversion": "1.0.0" } }, "com.unity.modules.unitywebrequestwww": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.unitywebrequestassetbundle": "1.0.0", "com.unity.modules.unitywebrequestaudio": "1.0.0", "com.unity.modules.audio": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", "com.unity.modules.imageconversion": "1.0.0" } }, "com.unity.modules.vehicles": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.physics": "1.0.0" } }, "com.unity.modules.video": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.audio": "1.0.0", "com.unity.modules.ui": "1.0.0", "com.unity.modules.unitywebrequest": "1.0.0" } }, "com.unity.modules.vr": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.jsonserialize": "1.0.0", "com.unity.modules.physics": "1.0.0", "com.unity.modules.xr": "1.0.0" } }, "com.unity.modules.wind": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": {} }, "com.unity.modules.xr": { "version": "1.0.0", "depth": 0, "source": "builtin", "dependencies": { "com.unity.modules.physics": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0", "com.unity.modules.subsystems": "1.0.0" } } } } ================================================ FILE: UniWinC/ProjectSettings/AudioManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!11 &1 AudioManager: m_ObjectHideFlags: 0 m_Volume: 1 Rolloff Scale: 1 Doppler Factor: 1 Default Speaker Mode: 2 m_SampleRate: 0 m_DSPBufferSize: 1024 m_VirtualVoiceCount: 512 m_RealVoiceCount: 32 m_SpatializerPlugin: m_AmbisonicDecoderPlugin: m_DisableAudio: 0 m_VirtualizeEffects: 1 ================================================ FILE: UniWinC/ProjectSettings/ClusterInputManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!236 &1 ClusterInputManager: m_ObjectHideFlags: 0 m_Inputs: [] ================================================ FILE: UniWinC/ProjectSettings/DynamicsManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!55 &1 PhysicsManager: m_ObjectHideFlags: 0 serializedVersion: 8 m_Gravity: {x: 0, y: -9.81, z: 0} m_DefaultMaterial: {fileID: 0} m_BounceThreshold: 2 m_SleepThreshold: 0.005 m_DefaultContactOffset: 0.01 m_DefaultSolverIterations: 6 m_DefaultSolverVelocityIterations: 1 m_QueriesHitBackfaces: 0 m_QueriesHitTriggers: 1 m_EnableAdaptiveForce: 0 m_ClothInterCollisionDistance: 0 m_ClothInterCollisionStiffness: 0 m_ContactsGeneration: 1 m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff m_AutoSimulation: 1 m_AutoSyncTransforms: 0 m_ReuseCollisionCallbacks: 1 m_ClothInterCollisionSettingsToggle: 0 m_ContactPairsMode: 0 m_BroadphaseType: 0 m_WorldBounds: m_Center: {x: 0, y: 0, z: 0} m_Extent: {x: 250, y: 250, z: 250} m_WorldSubdivisions: 8 ================================================ FILE: UniWinC/ProjectSettings/EditorBuildSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1045 &1 EditorBuildSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_Scenes: - enabled: 0 path: Assets/Kirurobo/UniWindowController/Samples/00_Menu/SampleMenu.unity guid: bca881472b6085049ad37ab0ad8fe61e - enabled: 0 path: Assets/Kirurobo/UniWindowController/Samples/01_SimpleSample/SimpleSample.unity guid: b650a883366376446b7db29169c59420 - enabled: 1 path: Assets/Kirurobo/UniWindowController/Samples/02_UiSample/UiSample.unity guid: c4f4adeee10bff845b320d93a6b82f54 - enabled: 0 path: Assets/Kirurobo/UniWindowController/Samples/03_Fullscreen/FullscreenSample.unity guid: cc8dc9342a8c4436397f75a2389ffc1a - enabled: 0 path: Assets/Kirurobo/UniWindowController/Samples/04_FileDialog/FileDialogSample.unity guid: 48a0f5141a4d64ffd86a58d24b841e0c m_configObjects: com.unity.input.settings: {fileID: 11400000, guid: dc660a2a123d34488abe1d07904475f4, type: 2} ================================================ FILE: UniWinC/ProjectSettings/EditorSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!159 &1 EditorSettings: m_ObjectHideFlags: 0 serializedVersion: 7 m_ExternalVersionControlSupport: Visible Meta Files m_SerializationMode: 2 m_LineEndingsForNewScripts: 2 m_DefaultBehaviorMode: 0 m_PrefabRegularEnvironment: {fileID: 0} m_PrefabUIEnvironment: {fileID: 0} m_SpritePackerMode: 0 m_SpritePackerPaddingPower: 1 m_EtcTextureCompressorBehavior: 1 m_EtcTextureFastCompressor: 1 m_EtcTextureNormalCompressor: 2 m_EtcTextureBestCompressor: 4 m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef m_ProjectGenerationRootNamespace: m_CollabEditorSettings: inProgressEnabled: 1 m_EnableTextureStreamingInPlayMode: 1 ================================================ FILE: UniWinC/ProjectSettings/GraphicsSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!30 &1 GraphicsSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_Deferred: m_Mode: 1 m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} m_DeferredReflections: m_Mode: 1 m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} m_ScreenSpaceShadows: m_Mode: 1 m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} m_LegacyDeferred: m_Mode: 1 m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} m_DepthNormals: m_Mode: 1 m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} m_MotionVectors: m_Mode: 1 m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} m_LightHalo: m_Mode: 1 m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} m_LensFlare: m_Mode: 1 m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} m_AlwaysIncludedShaders: - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_CustomRenderPipeline: {fileID: 0} m_TransparencySortMode: 0 m_TransparencySortAxis: {x: 0, y: 0, z: 1} m_DefaultRenderingPath: 1 m_DefaultMobileRenderingPath: 1 m_TierSettings: [] m_LightmapStripping: 0 m_FogStripping: 0 m_InstancingStripping: 0 m_LightmapKeepPlain: 1 m_LightmapKeepDirCombined: 1 m_LightmapKeepDynamicPlain: 1 m_LightmapKeepDynamicDirCombined: 1 m_LightmapKeepShadowMask: 1 m_LightmapKeepSubtractive: 1 m_FogKeepLinear: 1 m_FogKeepExp: 1 m_FogKeepExp2: 1 m_AlbedoSwatchInfos: [] m_LightsUseLinearIntensity: 0 m_LightsUseColorTemperature: 0 m_LogWhenShaderIsCompiled: 0 ================================================ FILE: UniWinC/ProjectSettings/InputManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!13 &1 InputManager: m_ObjectHideFlags: 0 serializedVersion: 2 m_Axes: - serializedVersion: 3 m_Name: Horizontal descriptiveName: descriptiveNegativeName: negativeButton: left positiveButton: right altNegativeButton: a altPositiveButton: d gravity: 3 dead: 0.001 sensitivity: 3 snap: 1 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Vertical descriptiveName: descriptiveNegativeName: negativeButton: down positiveButton: up altNegativeButton: s altPositiveButton: w gravity: 3 dead: 0.001 sensitivity: 3 snap: 1 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Fire1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: left ctrl altNegativeButton: altPositiveButton: mouse 0 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Fire2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: left alt altNegativeButton: altPositiveButton: mouse 1 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Fire3 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: left shift altNegativeButton: altPositiveButton: mouse 2 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Jump descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: space altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Mouse X descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0 sensitivity: 0.1 snap: 0 invert: 0 type: 1 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Mouse Y descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0 sensitivity: 0.1 snap: 0 invert: 0 type: 1 axis: 1 joyNum: 0 - serializedVersion: 3 m_Name: Mouse ScrollWheel descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0 sensitivity: 0.1 snap: 0 invert: 0 type: 1 axis: 2 joyNum: 0 - serializedVersion: 3 m_Name: Horizontal descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.19 sensitivity: 1 snap: 0 invert: 0 type: 2 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Vertical descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.19 sensitivity: 1 snap: 0 invert: 1 type: 2 axis: 1 joyNum: 0 - serializedVersion: 3 m_Name: Fire1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: joystick button 0 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Fire2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: joystick button 1 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Fire3 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: joystick button 2 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Jump descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: joystick button 3 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Submit descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: return altNegativeButton: altPositiveButton: joystick button 0 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Submit descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: enter altNegativeButton: altPositiveButton: space gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Cancel descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: escape altNegativeButton: altPositiveButton: joystick button 1 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 ================================================ FILE: UniWinC/ProjectSettings/MemorySettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!387306366 &1 MemorySettings: m_ObjectHideFlags: 0 m_EditorMemorySettings: m_MainAllocatorBlockSize: -1 m_ThreadAllocatorBlockSize: -1 m_MainGfxBlockSize: -1 m_ThreadGfxBlockSize: -1 m_CacheBlockSize: -1 m_TypetreeBlockSize: -1 m_ProfilerBlockSize: -1 m_ProfilerEditorBlockSize: -1 m_BucketAllocatorGranularity: -1 m_BucketAllocatorBucketsCount: -1 m_BucketAllocatorBlockSize: -1 m_BucketAllocatorBlockCount: -1 m_ProfilerBucketAllocatorGranularity: -1 m_ProfilerBucketAllocatorBucketsCount: -1 m_ProfilerBucketAllocatorBlockSize: -1 m_ProfilerBucketAllocatorBlockCount: -1 m_TempAllocatorSizeMain: -1 m_JobTempAllocatorBlockSize: -1 m_BackgroundJobTempAllocatorBlockSize: -1 m_JobTempAllocatorReducedBlockSize: -1 m_TempAllocatorSizeGIBakingWorker: -1 m_TempAllocatorSizeNavMeshWorker: -1 m_TempAllocatorSizeAudioWorker: -1 m_TempAllocatorSizeCloudWorker: -1 m_TempAllocatorSizeGfx: -1 m_TempAllocatorSizeJobWorker: -1 m_TempAllocatorSizeBackgroundWorker: -1 m_TempAllocatorSizePreloadManager: -1 m_PlatformMemorySettings: {} ================================================ FILE: UniWinC/ProjectSettings/NavMeshAreas.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!126 &1 NavMeshProjectSettings: m_ObjectHideFlags: 0 serializedVersion: 2 areas: - name: Walkable cost: 1 - name: Not Walkable cost: 1 - name: Jump cost: 2 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 m_LastAgentTypeID: -887442657 m_Settings: - serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.75 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_SettingNames: - Humanoid ================================================ FILE: UniWinC/ProjectSettings/NetworkManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!149 &1 NetworkManager: m_ObjectHideFlags: 0 m_DebugLevel: 0 m_Sendrate: 15 m_AssetToPrefab: {} ================================================ FILE: UniWinC/ProjectSettings/PackageManagerSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &1 MonoBehaviour: m_ObjectHideFlags: 61 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: 13964, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: m_ScopedRegistriesSettingsExpanded: 1 oneTimeWarningShown: 0 m_Registries: - m_Id: main m_Name: m_Url: https://packages.unity.com m_Scopes: [] m_IsDefault: 1 m_UserSelectedRegistryName: m_UserAddingNewScopedRegistry: 0 m_RegistryInfoDraft: m_ErrorMessage: m_Original: m_Id: m_Name: m_Url: m_Scopes: [] m_IsDefault: 0 m_Modified: 0 m_Name: m_Url: m_Scopes: - m_SelectedScopeIndex: 0 ================================================ FILE: UniWinC/ProjectSettings/Physics2DSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!19 &1 Physics2DSettings: m_ObjectHideFlags: 0 serializedVersion: 4 m_Gravity: {x: 0, y: -9.81} m_DefaultMaterial: {fileID: 0} m_VelocityIterations: 8 m_PositionIterations: 3 m_VelocityThreshold: 1 m_MaxLinearCorrection: 0.2 m_MaxAngularCorrection: 8 m_MaxTranslationSpeed: 100 m_MaxRotationSpeed: 360 m_BaumgarteScale: 0.2 m_BaumgarteTimeOfImpactScale: 0.75 m_TimeToSleep: 0.5 m_LinearSleepTolerance: 0.01 m_AngularSleepTolerance: 2 m_DefaultContactOffset: 0.01 m_AutoSimulation: 1 m_QueriesHitTriggers: 1 m_QueriesStartInColliders: 1 m_ChangeStopsCallbacks: 0 m_CallbacksOnDisable: 1 m_ReuseCollisionCallbacks: 1 m_AutoSyncTransforms: 0 m_AlwaysShowColliders: 0 m_ShowColliderSleep: 1 m_ShowColliderContacts: 0 m_ShowColliderAABB: 0 m_ContactArrowScale: 0.2 m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ================================================ FILE: UniWinC/ProjectSettings/PresetManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1386491679 &1 PresetManager: m_ObjectHideFlags: 0 m_DefaultList: - type: m_NativeTypeID: 108 m_ManagedTypePPtr: {fileID: 0} m_ManagedTypeFallback: defaultPresets: - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea, type: 2} - type: m_NativeTypeID: 1020 m_ManagedTypePPtr: {fileID: 0} m_ManagedTypeFallback: defaultPresets: - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6, type: 2} - type: m_NativeTypeID: 1006 m_ManagedTypePPtr: {fileID: 0} m_ManagedTypeFallback: defaultPresets: - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9, type: 2} ================================================ FILE: UniWinC/ProjectSettings/ProjectSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 serializedVersion: 26 productGUID: 18bef0a3dbb1444c1a2bc7e5973f1f7c AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 AndroidEnableSustainedPerformanceMode: 0 defaultScreenOrientation: 4 targetDevice: 2 useOnDemandResources: 0 accelerometerFrequency: 60 companyName: Kirurobo productName: UniWinC defaultCursor: {fileID: 0} cursorHotspot: {x: 0, y: 0} m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} m_ShowUnitySplashScreen: 0 m_ShowUnitySplashLogo: 1 m_SplashScreenOverlayOpacity: 1 m_SplashScreenAnimation: 1 m_SplashScreenLogoStyle: 1 m_SplashScreenDrawMode: 0 m_SplashScreenBackgroundAnimationZoom: 1 m_SplashScreenLogoAnimationZoom: 1 m_SplashScreenBackgroundLandscapeAspect: 1 m_SplashScreenBackgroundPortraitAspect: 1 m_SplashScreenBackgroundLandscapeUvs: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 m_SplashScreenBackgroundPortraitUvs: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 m_SplashScreenLogos: [] m_VirtualRealitySplashScreen: {fileID: 0} m_HolographicTrackingLossScreen: {fileID: 0} defaultScreenWidth: 800 defaultScreenHeight: 800 defaultScreenWidthWeb: 960 defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 0 unsupportedMSAAFallback: 0 m_SpriteBatchVertexThreshold: 300 m_MTRendering: 1 mipStripping: 0 numberOfMipsStripped: 0 numberOfMipsStrippedPerMipmapLimitGroup: {} m_StackTraceTypes: 010000000100000001000000010000000100000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 iosUseCustomAppBackgroundBehavior: 0 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 allowedAutorotateToLandscapeLeft: 1 useOSAutorotation: 1 use32BitDisplayBuffer: 1 preserveFramebufferAlpha: 0 disableDepthAndStencilBuffers: 0 androidStartInFullscreen: 1 androidRenderOutsideSafeArea: 0 androidUseSwappy: 0 androidBlitType: 0 androidResizableWindow: 0 androidDefaultWindowWidth: 1920 androidDefaultWindowHeight: 1080 androidMinimumWindowWidth: 400 androidMinimumWindowHeight: 300 androidFullscreenMode: 1 androidAutoRotationBehavior: 1 androidPredictiveBackSupport: 1 defaultIsNativeResolution: 1 macRetinaSupport: 1 runInBackground: 1 captureSingleScreen: 0 muteOtherAudioSources: 0 Prepare IOS For Recording: 0 Force IOS Speakers When Recording: 0 audioSpatialExperience: 0 deferSystemGesturesMode: 0 hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 dedicatedServerOptimizations: 0 bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 0 resizableWindow: 1 useMacAppStoreValidation: 0 macAppStoreCategory: public.app-category.games gpuSkinning: 1 xboxPIXTextureCapture: 0 xboxEnableAvatar: 0 xboxEnableKinect: 0 xboxEnableKinectAutoTracking: 0 xboxEnableFitness: 0 visibleInBackground: 1 allowFullscreenSwitch: 0 fullscreenMode: 3 xboxSpeechDB: 0 xboxEnableHeadOrientation: 0 xboxEnableGuest: 0 xboxEnablePIXSampling: 0 metalFramebufferOnly: 0 xboxOneResolution: 0 xboxOneSResolution: 0 xboxOneXResolution: 3 xboxOneMonoLoggingLevel: 0 xboxOneLoggingLevel: 1 xboxOneDisableEsram: 0 xboxOneEnableTypeOptimization: 0 xboxOnePresentImmediateThreshold: 0 switchQueueCommandMemory: 0 switchQueueControlMemory: 16384 switchQueueComputeMemory: 262144 switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 switchGpuScratchPoolGranularity: 2097152 switchAllowGpuScratchShrinking: 0 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 switchNVNGraphicsFirmwareMemory: 32 switchMaxWorkerMultiple: 8 stadiaPresentMode: 0 stadiaTargetFramerate: 0 vulkanNumSwapchainBuffers: 3 vulkanEnableSetSRGBWrite: 0 vulkanEnablePreTransform: 0 vulkanEnableLateAcquireNextImage: 0 vulkanEnableCommandBufferRecycling: 1 loadStoreDebugModeEnabled: 0 visionOSBundleVersion: 1.0 tvOSBundleVersion: 1.0 bundleVersion: 0.9.8 preloadedAssets: - {fileID: 11400000, guid: dc660a2a123d34488abe1d07904475f4, type: 2} metroInputSource: 0 wsaTransparentSwapchain: 0 m_HolographicPauseOnTrackingLoss: 1 xboxOneDisableKinectGpuReservation: 1 xboxOneEnable7thCore: 1 vrSettings: enable360StereoCapture: 0 isWsaHolographicRemotingEnabled: 0 enableFrameTimingStats: 0 enableOpenGLProfilerGPURecorders: 1 allowHDRDisplaySupport: 0 useHDRDisplay: 0 hdrBitDepth: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 resetResolutionOnWindowResize: 0 androidSupportedAspectRatio: 1 androidMaxAspectRatio: 2.1 applicationIdentifier: Standalone: com.Kirurobo.UniWinC buildNumber: Standalone: 0 VisionOS: 0 iPhone: 0 tvOS: 0 overrideDefaultApplicationIdentifier: 0 AndroidBundleVersionCode: 1 AndroidMinSdkVersion: 22 AndroidTargetSdkVersion: 0 AndroidPreferredInstallLocation: 1 aotOptions: stripEngineCode: 1 iPhoneStrippingLevel: 0 iPhoneScriptCallOptimization: 0 ForceInternetPermission: 0 ForceSDCardPermission: 0 CreateWallpaper: 0 APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 1 strictShaderVariantMatching: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 iOSSimulatorArchitecture: 0 iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSSimulatorArchitecture: 0 tvOSRequireExtendedGameController: 0 tvOSTargetOSVersionString: 12.0 VisionOSSdkVersion: 0 VisionOSTargetOSVersionString: 1.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 uIStatusBarHidden: 1 uIExitOnSuspend: 0 uIStatusBarStyle: 0 appleTVSplashScreen: {fileID: 0} appleTVSplashScreen2x: {fileID: 0} tvOSSmallIconLayers: [] tvOSSmallIconLayers2x: [] tvOSLargeIconLayers: [] tvOSLargeIconLayers2x: [] tvOSTopShelfImageLayers: [] tvOSTopShelfImageLayers2x: [] tvOSTopShelfImageWideLayers: [] tvOSTopShelfImageWideLayers2x: [] iOSLaunchScreenType: 0 iOSLaunchScreenPortrait: {fileID: 0} iOSLaunchScreenLandscape: {fileID: 0} iOSLaunchScreenBackgroundColor: serializedVersion: 2 rgba: 0 iOSLaunchScreenFillPct: 100 iOSLaunchScreenSize: 100 iOSLaunchScreenCustomXibPath: iOSLaunchScreeniPadType: 0 iOSLaunchScreeniPadImage: {fileID: 0} iOSLaunchScreeniPadBackgroundColor: serializedVersion: 2 rgba: 0 iOSLaunchScreeniPadFillPct: 100 iOSLaunchScreeniPadSize: 100 iOSLaunchScreeniPadCustomXibPath: iOSLaunchScreenCustomStoryboardPath: iOSLaunchScreeniPadCustomStoryboardPath: iOSDeviceRequirements: [] iOSURLSchemes: [] macOSURLSchemes: [] iOSBackgroundModes: 0 iOSMetalForceHardShadows: 0 metalEditorSupport: 1 metalAPIValidation: 1 metalCompileShaderBinary: 0 iOSRenderExtraFrameOnPause: 0 iosCopyPluginsCodeInsteadOfSymlink: 0 appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: VisionOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 VisionOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 appleEnableProMotion: 0 shaderPrecisionModel: 0 clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea templatePackageId: com.unity.template.3d@1.3.0 templateDefaultScene: Assets/Scenes/SampleScene.unity useCustomMainManifest: 0 useCustomLauncherManifest: 0 useCustomMainGradleTemplate: 0 useCustomLauncherGradleManifest: 0 useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 0 useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0 AndroidTargetArchitectures: 5 AndroidTargetDevices: 0 AndroidSplashScreenScale: 0 androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: AndroidEnableArmv9SecurityFeatures: 0 AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 1 AndroidIsGame: 1 AndroidEnableTango: 0 androidEnableBanner: 1 androidUseLowAccuracyLocation: 0 androidUseCustomKeystore: 0 m_AndroidBanners: - width: 320 height: 180 banner: {fileID: 0} androidGamepadSupportLevel: 0 chromeosInputEmulation: 1 AndroidMinifyRelease: 0 AndroidMinifyDebug: 0 AndroidValidateAppBundleSize: 1 AndroidAppBundleSizeToValidate: 150 m_BuildTargetIcons: [] m_BuildTargetPlatformIcons: [] m_BuildTargetBatching: - m_BuildTarget: Standalone m_StaticBatching: 1 m_DynamicBatching: 0 - m_BuildTarget: tvOS m_StaticBatching: 1 m_DynamicBatching: 0 - m_BuildTarget: Android m_StaticBatching: 1 m_DynamicBatching: 0 - m_BuildTarget: iPhone m_StaticBatching: 1 m_DynamicBatching: 0 - m_BuildTarget: WebGL m_StaticBatching: 0 m_DynamicBatching: 0 m_BuildTargetShaderSettings: [] m_BuildTargetGraphicsJobs: - m_BuildTarget: MacStandaloneSupport m_GraphicsJobs: 0 - m_BuildTarget: Switch m_GraphicsJobs: 0 - m_BuildTarget: MetroSupport m_GraphicsJobs: 0 - m_BuildTarget: GameCoreScarlettSupport m_GraphicsJobs: 0 - m_BuildTarget: AppleTVSupport m_GraphicsJobs: 0 - m_BuildTarget: BJMSupport m_GraphicsJobs: 0 - m_BuildTarget: LinuxStandaloneSupport m_GraphicsJobs: 0 - m_BuildTarget: GameCoreXboxOneSupport m_GraphicsJobs: 0 - m_BuildTarget: PS4Player m_GraphicsJobs: 0 - m_BuildTarget: iOSSupport m_GraphicsJobs: 0 - m_BuildTarget: PS5Player m_GraphicsJobs: 0 - m_BuildTarget: WindowsStandaloneSupport m_GraphicsJobs: 0 - m_BuildTarget: XboxOnePlayer m_GraphicsJobs: 0 - m_BuildTarget: LuminSupport m_GraphicsJobs: 0 - m_BuildTarget: CloudRendering m_GraphicsJobs: 0 - m_BuildTarget: AndroidPlayer m_GraphicsJobs: 0 - m_BuildTarget: WebGLSupport m_GraphicsJobs: 0 m_BuildTargetGraphicsJobMode: - m_BuildTarget: PS4Player m_GraphicsJobMode: 0 - m_BuildTarget: XboxOnePlayer m_GraphicsJobMode: 0 m_BuildTargetGraphicsAPIs: - m_BuildTarget: AndroidPlayer m_APIs: 0b00000008000000 m_Automatic: 0 - m_BuildTarget: iOSSupport m_APIs: 10000000 m_Automatic: 1 - m_BuildTarget: AppleTVSupport m_APIs: 10000000 m_Automatic: 1 - m_BuildTarget: WebGLSupport m_APIs: 0b000000 m_Automatic: 1 - m_BuildTarget: MacStandaloneSupport m_APIs: 10000000 m_Automatic: 1 - m_BuildTarget: WindowsStandaloneSupport m_APIs: 02000000 m_Automatic: 1 m_BuildTargetVRSettings: - m_BuildTarget: Standalone m_Enabled: 0 m_Devices: - Oculus - OpenVR m_DefaultShaderChunkSizeInMB: 16 m_DefaultShaderChunkCount: 0 openGLRequireES31: 0 openGLRequireES31AEP: 0 openGLRequireES32: 0 m_TemplateCustomTags: {} mobileMTRendering: Android: 1 iPhone: 1 tvOS: 1 m_BuildTargetGroupLightmapEncodingQuality: [] m_BuildTargetGroupHDRCubemapEncodingQuality: [] m_BuildTargetGroupLightmapSettings: [] m_BuildTargetGroupLoadStoreDebugModeSettings: [] m_BuildTargetNormalMapEncoding: [] m_BuildTargetDefaultTextureCompressionFormat: [] playModeTestRunnerEnabled: 0 runPlayModeTestAsEditModeTest: 0 actionOnDotNetUnhandledException: 1 enableInternalProfiler: 0 logObjCUncaughtExceptions: 1 enableCrashReportAPI: 0 cameraUsageDescription: locationUsageDescription: microphoneUsageDescription: bluetoothUsageDescription: macOSTargetOSVersion: 11.0.0 switchNMETAOverride: switchNetLibKey: switchSocketMemoryPoolSize: 6144 switchSocketAllocatorPoolSize: 128 switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 switchEnableFileSystemTrace: 0 switchLTOSetting: 0 switchApplicationID: 0x01004b9000490000 switchNSODependencies: switchCompilerFlags: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: switchTitleNames_3: switchTitleNames_4: switchTitleNames_5: switchTitleNames_6: switchTitleNames_7: switchTitleNames_8: switchTitleNames_9: switchTitleNames_10: switchTitleNames_11: switchTitleNames_12: switchTitleNames_13: switchTitleNames_14: switchTitleNames_15: switchPublisherNames_0: switchPublisherNames_1: switchPublisherNames_2: switchPublisherNames_3: switchPublisherNames_4: switchPublisherNames_5: switchPublisherNames_6: switchPublisherNames_7: switchPublisherNames_8: switchPublisherNames_9: switchPublisherNames_10: switchPublisherNames_11: switchPublisherNames_12: switchPublisherNames_13: switchPublisherNames_14: switchPublisherNames_15: switchIcons_0: {fileID: 0} switchIcons_1: {fileID: 0} switchIcons_2: {fileID: 0} switchIcons_3: {fileID: 0} switchIcons_4: {fileID: 0} switchIcons_5: {fileID: 0} switchIcons_6: {fileID: 0} switchIcons_7: {fileID: 0} switchIcons_8: {fileID: 0} switchIcons_9: {fileID: 0} switchIcons_10: {fileID: 0} switchIcons_11: {fileID: 0} switchIcons_12: {fileID: 0} switchIcons_13: {fileID: 0} switchIcons_14: {fileID: 0} switchIcons_15: {fileID: 0} switchSmallIcons_0: {fileID: 0} switchSmallIcons_1: {fileID: 0} switchSmallIcons_2: {fileID: 0} switchSmallIcons_3: {fileID: 0} switchSmallIcons_4: {fileID: 0} switchSmallIcons_5: {fileID: 0} switchSmallIcons_6: {fileID: 0} switchSmallIcons_7: {fileID: 0} switchSmallIcons_8: {fileID: 0} switchSmallIcons_9: {fileID: 0} switchSmallIcons_10: {fileID: 0} switchSmallIcons_11: {fileID: 0} switchSmallIcons_12: {fileID: 0} switchSmallIcons_13: {fileID: 0} switchSmallIcons_14: {fileID: 0} switchSmallIcons_15: {fileID: 0} switchManualHTML: switchAccessibleURLs: switchLegalInformation: switchMainThreadStackSize: 1048576 switchPresenceGroupId: switchLogoHandling: 0 switchReleaseVersion: 0 switchDisplayVersion: 1.0.0 switchStartupUserAccount: 0 switchSupportedLanguagesMask: 0 switchLogoType: 0 switchApplicationErrorCodeCategory: switchUserAccountSaveDataSize: 0 switchUserAccountSaveDataJournalSize: 0 switchApplicationAttribute: 0 switchCardSpecSize: -1 switchCardSpecClock: -1 switchRatingsMask: 0 switchRatingsInt_0: 0 switchRatingsInt_1: 0 switchRatingsInt_2: 0 switchRatingsInt_3: 0 switchRatingsInt_4: 0 switchRatingsInt_5: 0 switchRatingsInt_6: 0 switchRatingsInt_7: 0 switchRatingsInt_8: 0 switchRatingsInt_9: 0 switchRatingsInt_10: 0 switchRatingsInt_11: 0 switchRatingsInt_12: 0 switchLocalCommunicationIds_0: switchLocalCommunicationIds_1: switchLocalCommunicationIds_2: switchLocalCommunicationIds_3: switchLocalCommunicationIds_4: switchLocalCommunicationIds_5: switchLocalCommunicationIds_6: switchLocalCommunicationIds_7: switchParentalControl: 0 switchAllowsScreenshot: 1 switchAllowsVideoCapturing: 1 switchAllowsRuntimeAddOnContentInstall: 0 switchDataLossConfirmation: 0 switchUserAccountLockEnabled: 0 switchSystemResourceMemory: 16777216 switchSupportedNpadStyles: 3 switchNativeFsCacheSize: 32 switchIsHoldTypeHorizontal: 0 switchSupportedNpadCount: 8 switchEnableTouchScreen: 1 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 switchTcpAutoSendBufferSizeMax: 256 switchTcpAutoReceiveBufferSizeMax: 256 switchUdpSendBufferSize: 9 switchUdpReceiveBufferSize: 42 switchSocketBufferEfficiency: 4 switchSocketInitializeEnabled: 1 switchNetworkInterfaceManagerInitializeEnabled: 1 switchDisableHTCSPlayerConnection: 0 switchUseNewStyleFilepaths: 0 switchUseLegacyFmodPriorities: 0 switchUseMicroSleepForYield: 1 switchEnableRamDiskSupport: 0 switchMicroSleepForYieldTime: 25 switchRamDiskSpaceSize: 12 ps4NPAgeRating: 12 ps4NPTitleSecret: ps4NPTrophyPackPath: ps4ParentalLevel: 11 ps4ContentID: ED1633-NPXX51362_00-0000000000000000 ps4Category: 0 ps4MasterVersion: 01.00 ps4AppVersion: 01.00 ps4AppType: 0 ps4ParamSfxPath: ps4VideoOutPixelFormat: 0 ps4VideoOutInitialWidth: 1920 ps4VideoOutBaseModeInitialWidth: 1920 ps4VideoOutReprojectionRate: 60 ps4PronunciationXMLPath: ps4PronunciationSIGPath: ps4BackgroundImagePath: ps4StartupImagePath: ps4StartupImagesFolder: ps4IconImagesFolder: ps4SaveDataImagePath: ps4SdkOverride: ps4BGMPath: ps4ShareFilePath: ps4ShareOverlayImagePath: ps4PrivacyGuardImagePath: ps4ExtraSceSysFile: ps4NPtitleDatPath: ps4RemotePlayKeyAssignment: -1 ps4RemotePlayKeyMappingDir: ps4PlayTogetherPlayerCount: 0 ps4EnterButtonAssignment: 1 ps4ApplicationParam1: 0 ps4ApplicationParam2: 0 ps4ApplicationParam3: 0 ps4ApplicationParam4: 0 ps4DownloadDataSize: 0 ps4GarlicHeapSize: 2048 ps4ProGarlicHeapSize: 2560 playerPrefsMaxSize: 32768 ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ ps4pnSessions: 1 ps4pnPresence: 1 ps4pnFriends: 1 ps4pnGameCustomData: 1 playerPrefsSupport: 0 enableApplicationExit: 0 resetTempFolder: 1 restrictedAudioUsageRights: 0 ps4UseResolutionFallback: 0 ps4ReprojectionSupport: 0 ps4UseAudio3dBackend: 0 ps4UseLowGarlicFragmentationMode: 1 ps4SocialScreenEnabled: 0 ps4ScriptOptimizationLevel: 0 ps4Audio3dVirtualSpeakerCount: 14 ps4attribCpuUsage: 0 ps4PatchPkgPath: ps4PatchLatestPkgPath: ps4PatchChangeinfoPath: ps4PatchDayOne: 0 ps4attribUserManagement: 0 ps4attribMoveSupport: 0 ps4attrib3DSupport: 0 ps4attribShareSupport: 0 ps4attribExclusiveVR: 0 ps4disableAutoHideSplash: 0 ps4videoRecordingFeaturesUsed: 0 ps4contentSearchFeaturesUsed: 0 ps4CompatibilityPS5: 0 ps4AllowPS5Detection: 0 ps4GPU800MHz: 1 ps4attribEyeToEyeDistanceSettingVR: 0 ps4IncludedModules: [] ps4attribVROutputEnabled: 0 monoEnv: splashScreenBackgroundSourceLandscape: {fileID: 0} splashScreenBackgroundSourcePortrait: {fileID: 0} blurSplashScreenBackground: 1 spritePackerPolicy: webGLMemorySize: 256 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 webGLShowDiagnostics: 0 webGLDataCaching: 1 webGLDebugSymbols: 0 webGLEmscriptenArgs: webGLModulesDirectory: webGLTemplate: APPLICATION:Default webGLAnalyzeBuildSize: 0 webGLUseEmbeddedResources: 0 webGLCompressionFormat: 1 webGLWasmArithmeticExceptions: 0 webGLLinkerTarget: 1 webGLThreadsSupport: 0 webGLDecompressionFallback: 0 webGLInitialMemorySize: 32 webGLMaximumMemorySize: 2048 webGLMemoryGrowthMode: 2 webGLMemoryLinearGrowthStep: 16 webGLMemoryGeometricGrowthStep: 0.2 webGLMemoryGeometricGrowthCap: 96 webGLPowerPreference: 2 scriptingDefineSymbols: {} additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: Standalone: 1 il2cppCompilerConfiguration: {} il2cppCodeGeneration: {} managedStrippingLevel: EmbeddedLinux: 1 GameCoreScarlett: 1 GameCoreXboxOne: 1 Nintendo Switch: 1 PS4: 1 PS5: 1 QNX: 1 Stadia: 1 Standalone: 1 VisionOS: 1 WebGL: 1 Windows Store Apps: 1 XboxOne: 1 iPhone: 1 tvOS: 1 incrementalIl2cppBuild: {} suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 0 gcWBarrierValidation: 0 apiCompatibilityLevelPerPlatform: Standalone: 3 m_RenderingPath: 1 m_MobileRenderingPath: 1 metroPackageName: Template_3D metroPackageVersion: metroCertificatePath: metroCertificatePassword: metroCertificateSubject: metroCertificateIssuer: metroCertificateNotAfter: 0000000000000000 metroApplicationDescription: Template_3D wsaImages: {} metroTileShortName: metroTileShowName: 0 metroMediumTileShowName: 0 metroLargeTileShowName: 0 metroWideTileShowName: 0 metroSupportStreamingInstall: 0 metroLastRequiredScene: 0 metroDefaultTileSize: 1 metroTileForegroundText: 2 metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} metroSplashScreenUseBackgroundColor: 0 syncCapabilities: 0 platformCapabilities: {} metroTargetDeviceFamilies: {} metroFTAName: metroFTAFileTypes: [] metroProtocolName: vcxProjDefaultLanguage: XboxOneProductId: XboxOneUpdateKey: XboxOneSandboxId: XboxOneContentId: XboxOneTitleId: XboxOneSCId: XboxOneGameOsOverridePath: XboxOnePackagingOverridePath: XboxOneAppManifestOverridePath: XboxOneVersion: 1.0.0.0 XboxOnePackageEncryption: 0 XboxOnePackageUpdateGranularity: 2 XboxOneDescription: XboxOneLanguage: - enus XboxOneCapability: [] XboxOneGameRating: {} XboxOneIsContentPackage: 0 XboxOneEnhancedXboxCompatibilityMode: 0 XboxOneEnableGPUVariability: 1 XboxOneSockets: {} XboxOneSplashScreen: {fileID: 0} XboxOneAllowedProductIds: [] XboxOnePersistentLocalStorageSize: 0 XboxOneXTitleMemory: 8 XboxOneOverrideIdentityName: XboxOneOverrideIdentityPublisher: vrEditorSettings: {} cloudServicesEnabled: UNet: 1 luminIcon: m_Name: m_ModelFolderPath: m_PortalFolderPath: luminCert: m_CertPath: m_SignPackage: 1 luminIsChannelApp: 0 luminVersion: m_VersionCode: 1 m_VersionName: hmiPlayerDataPath: hmiForceSRGBBlit: 1 embeddedLinuxEnableGamepadInput: 1 hmiLogStartupTiming: 0 hmiCpuConfiguration: apiCompatibilityLevel: 6 activeInputHandler: 1 windowsGamepadBackendHint: 0 cloudProjectId: framebufferDepthMemorylessMode: 0 qualitySettingsNames: [] projectName: organizationId: cloudEnabled: 0 legacyClampBlendShapeWeights: 0 hmiLoadingImage: {fileID: 0} platformRequiresReadableAssets: 0 virtualTexturingSupportEnabled: 0 insecureHttpOption: 0 ================================================ FILE: UniWinC/ProjectSettings/ProjectVersion.txt ================================================ m_EditorVersion: 2022.3.62f2 m_EditorVersionWithRevision: 2022.3.62f2 (7670c08855a9) ================================================ FILE: UniWinC/ProjectSettings/QualitySettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!47 &1 QualitySettings: m_ObjectHideFlags: 0 serializedVersion: 5 m_CurrentQuality: 4 m_QualitySettings: - serializedVersion: 3 name: Very Low pixelLightCount: 0 shadows: 0 shadowResolution: 0 shadowProjection: 1 shadowCascades: 1 shadowDistance: 15 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 1 globalTextureMipmapLimit: 1 textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 useLegacyDetailDistribution: 1 vSyncCount: 0 realtimeGICPUUsage: 25 lodBias: 0.3 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 4 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] - serializedVersion: 3 name: Low pixelLightCount: 0 shadows: 0 shadowResolution: 0 shadowProjection: 1 shadowCascades: 1 shadowDistance: 20 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 globalTextureMipmapLimit: 0 textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 useLegacyDetailDistribution: 1 vSyncCount: 0 realtimeGICPUUsage: 25 lodBias: 0.4 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 16 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] - serializedVersion: 3 name: Medium pixelLightCount: 1 shadows: 1 shadowResolution: 0 shadowProjection: 1 shadowCascades: 1 shadowDistance: 20 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 globalTextureMipmapLimit: 0 textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 useLegacyDetailDistribution: 1 vSyncCount: 1 realtimeGICPUUsage: 25 lodBias: 0.7 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 64 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] - serializedVersion: 3 name: High pixelLightCount: 2 shadows: 2 shadowResolution: 1 shadowProjection: 1 shadowCascades: 2 shadowDistance: 40 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 2 globalTextureMipmapLimit: 0 textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 2 softParticles: 0 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 useLegacyDetailDistribution: 1 vSyncCount: 1 realtimeGICPUUsage: 50 lodBias: 1 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 256 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] - serializedVersion: 3 name: Very High pixelLightCount: 3 shadows: 2 shadowResolution: 2 shadowProjection: 1 shadowCascades: 2 shadowDistance: 40 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 globalTextureMipmapLimit: 0 textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 4 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 useLegacyDetailDistribution: 1 vSyncCount: 1 realtimeGICPUUsage: 50 lodBias: 1.5 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 1024 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] - serializedVersion: 3 name: Ultra pixelLightCount: 4 shadows: 2 shadowResolution: 2 shadowProjection: 1 shadowCascades: 4 shadowDistance: 150 shadowNearPlaneOffset: 3 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 globalTextureMipmapLimit: 0 textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 4 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 useLegacyDetailDistribution: 1 vSyncCount: 1 realtimeGICPUUsage: 100 lodBias: 2 maximumLODLevel: 0 enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 streamingMipmapsRenderersPerFrame: 512 streamingMipmapsMaxLevelReduction: 2 streamingMipmapsMaxFileIORequests: 1024 particleRaycastBudget: 4096 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} terrainQualityOverrides: 0 terrainPixelError: 1 terrainDetailDensityScale: 1 terrainBasemapDistance: 1000 terrainDetailDistance: 80 terrainTreeDistance: 5000 terrainBillboardStart: 50 terrainFadeLength: 5 terrainMaxTrees: 50 excludedTargetPlatforms: [] m_TextureMipmapLimitGroupNames: [] m_PerPlatformDefaultQuality: Android: 2 Nintendo 3DS: 5 Nintendo Switch: 5 PS4: 5 PSP2: 2 Server: 0 Standalone: 5 Tizen: 2 WebGL: 3 WiiU: 5 Windows Store Apps: 5 XboxOne: 5 iPhone: 2 tvOS: 2 ================================================ FILE: UniWinC/ProjectSettings/SceneTemplateSettings.json ================================================ { "templatePinStates": [], "dependencyTypeInfos": [ { "userAdded": false, "type": "UnityEngine.AnimationClip", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.Animations.AnimatorController", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.AnimatorOverrideController", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.Audio.AudioMixerController", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.ComputeShader", "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.Cubemap", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.GameObject", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.LightingDataAsset", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.LightingSettings", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Material", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.MonoScript", "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.VolumeProfile", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.SceneAsset", "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.Shader", "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.ShaderVariantCollection", "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.Texture", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Texture2D", "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Timeline.TimelineAsset", "defaultInstantiationMode": 0 } ], "defaultDependencyTypeInfo": { "userAdded": false, "type": "", "defaultInstantiationMode": 1 }, "newSceneOverride": 0 } ================================================ FILE: UniWinC/ProjectSettings/TagManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!78 &1 TagManager: serializedVersion: 2 tags: [] layers: - Default - TransparentFX - Ignore Raycast - - Water - UI - - - PostProcessing - - - - - - - - - - - - - - - - - - - - - - - m_SortingLayers: - name: Default uniqueID: 0 locked: 0 ================================================ FILE: UniWinC/ProjectSettings/TimeManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!5 &1 TimeManager: m_ObjectHideFlags: 0 Fixed Timestep: 0.02 Maximum Allowed Timestep: 0.1 m_TimeScale: 1 Maximum Particle Timestep: 0.03 ================================================ FILE: UniWinC/ProjectSettings/UnityConnectSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!310 &1 UnityConnectSettings: m_ObjectHideFlags: 0 serializedVersion: 1 m_Enabled: 0 m_TestMode: 0 m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events m_EventUrl: https://cdp.cloud.unity3d.com/v1/events m_ConfigUrl: https://config.uca.cloud.unity3d.com m_DashboardUrl: https://dashboard.unity3d.com m_TestInitMode: 0 CrashReportingSettings: m_EventUrl: https://perf-events.cloud.unity3d.com m_Enabled: 0 m_LogBufferSize: 10 m_CaptureEditorExceptions: 1 UnityPurchasingSettings: m_Enabled: 0 m_TestMode: 0 UnityAnalyticsSettings: m_Enabled: 0 m_TestMode: 0 m_InitializeOnStartup: 1 m_PackageRequiringCoreStatsPresent: 0 UnityAdsSettings: m_Enabled: 0 m_InitializeOnStartup: 1 m_TestMode: 0 m_IosGameId: m_AndroidGameId: m_GameIds: {} m_GameId: PerformanceReportingSettings: m_Enabled: 0 ================================================ FILE: UniWinC/ProjectSettings/VFXManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!937362698 &1 VFXManager: m_ObjectHideFlags: 0 m_IndirectShader: {fileID: 0} m_CopyBufferShader: {fileID: 0} m_SortShader: {fileID: 0} m_RenderPipeSettingsPath: m_FixedTimeStep: 0.016666668 m_MaxDeltaTime: 0.05 ================================================ FILE: UniWinC/ProjectSettings/VersionControlSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!890905787 &1 VersionControlSettings: m_ObjectHideFlags: 0 m_Mode: Visible Meta Files m_CollabEditorSettings: inProgressEnabled: 1 ================================================ FILE: UniWinC/ProjectSettings/XRSettings.asset ================================================ { "m_SettingKeys": [ "VR Device Disabled", "VR Device User Alert" ], "m_SettingValues": [ "False", "False" ] } ================================================ FILE: VisualStudio/.gitignore ================================================ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. ## ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore # User-specific files *.rsuser *.suo *.user *.userosscache *.sln.docstates # User-specific files (MonoDevelop/Xamarin Studio) *.userprefs # Mono auto generated files mono_crash.* # Build results [Dd]ebug/ [Dd]ebugPublic/ [Rr]elease/ [Rr]eleases/ x64/ x86/ [Ww][Ii][Nn]32/ [Aa][Rr][Mm]/ [Aa][Rr][Mm]64/ bld/ [Bb]in/ [Oo]bj/ [Ll]og/ [Ll]ogs/ # Visual Studio 2015/2017 cache/options directory .vs/ # Uncomment if you have tasks that create the project's static files in wwwroot #wwwroot/ # Visual Studio 2017 auto generated files Generated\ Files/ # MSTest test Results [Tt]est[Rr]esult*/ [Bb]uild[Ll]og.* # NUnit *.VisualState.xml TestResult.xml nunit-*.xml # Build Results of an ATL Project [Dd]ebugPS/ [Rr]eleasePS/ dlldata.c # Benchmark Results BenchmarkDotNet.Artifacts/ # .NET Core project.lock.json project.fragment.lock.json artifacts/ # ASP.NET Scaffolding ScaffoldingReadMe.txt # StyleCop StyleCopReport.xml # Files built by Visual Studio *_i.c *_p.c *_h.h *.ilk *.meta *.obj *.iobj *.pch *.pdb *.ipdb *.pgc *.pgd *.rsp *.sbr *.tlb *.tli *.tlh *.tmp *.tmp_proj *_wpftmp.csproj *.log *.vspscc *.vssscc .builds *.pidb *.svclog *.scc # Chutzpah Test files _Chutzpah* # Visual C++ cache files ipch/ *.aps *.ncb *.opendb *.opensdf *.sdf *.cachefile *.VC.db *.VC.VC.opendb # Visual Studio profiler *.psess *.vsp *.vspx *.sap # Visual Studio Trace Files *.e2e # TFS 2012 Local Workspace $tf/ # Guidance Automation Toolkit *.gpState # ReSharper is a .NET coding add-in _ReSharper*/ *.[Rr]e[Ss]harper *.DotSettings.user # TeamCity is a build add-in _TeamCity* # DotCover is a Code Coverage Tool *.dotCover # AxoCover is a Code Coverage Tool .axoCover/* !.axoCover/settings.json # Coverlet is a free, cross platform Code Coverage Tool coverage*.json coverage*.xml coverage*.info # Visual Studio code coverage results *.coverage *.coveragexml # NCrunch _NCrunch_* .*crunch*.local.xml nCrunchTemp_* # MightyMoose *.mm.* AutoTest.Net/ # Web workbench (sass) .sass-cache/ # Installshield output folder [Ee]xpress/ # DocProject is a documentation generator add-in DocProject/buildhelp/ DocProject/Help/*.HxT DocProject/Help/*.HxC DocProject/Help/*.hhc DocProject/Help/*.hhk DocProject/Help/*.hhp DocProject/Help/Html2 DocProject/Help/html # Click-Once directory publish/ # Publish Web Output *.[Pp]ublish.xml *.azurePubxml # Note: Comment the next line if you want to checkin your web deploy settings, # but database connection strings (with potential passwords) will be unencrypted *.pubxml *.publishproj # Microsoft Azure Web App publish settings. Comment the next line if you want to # checkin your Azure Web App publish settings, but sensitive information contained # in these scripts will be unencrypted PublishScripts/ # NuGet Packages *.nupkg # NuGet Symbol Packages *.snupkg # The packages folder can be ignored because of Package Restore **/[Pp]ackages/* # except build/, which is used as an MSBuild target. !**/[Pp]ackages/build/ # Uncomment if necessary however generally it will be regenerated when needed #!**/[Pp]ackages/repositories.config # NuGet v3's project.json files produces more ignorable files *.nuget.props *.nuget.targets # Microsoft Azure Build Output csx/ *.build.csdef # Microsoft Azure Emulator ecf/ rcf/ # Windows Store app package directories and files AppPackages/ BundleArtifacts/ Package.StoreAssociation.xml _pkginfo.txt *.appx *.appxbundle *.appxupload # Visual Studio cache files # files ending in .cache can be ignored *.[Cc]ache # but keep track of directories ending in .cache !?*.[Cc]ache/ # Others ClientBin/ ~$* *~ *.dbmdl *.dbproj.schemaview *.jfm *.pfx *.publishsettings orleans.codegen.cs # Including strong name files can present a security risk # (https://github.com/github/gitignore/pull/2483#issue-259490424) #*.snk # Since there are multiple workflows, uncomment next line to ignore bower_components # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) #bower_components/ # RIA/Silverlight projects Generated_Code/ # Backup & report files from converting an old project file # to a newer Visual Studio version. Backup files are not needed, # because we have git ;-) _UpgradeReport_Files/ Backup*/ UpgradeLog*.XML UpgradeLog*.htm ServiceFabricBackup/ *.rptproj.bak # SQL Server files *.mdf *.ldf *.ndf # Business Intelligence projects *.rdl.data *.bim.layout *.bim_*.settings *.rptproj.rsuser *- [Bb]ackup.rdl *- [Bb]ackup ([0-9]).rdl *- [Bb]ackup ([0-9][0-9]).rdl # Microsoft Fakes FakesAssemblies/ # GhostDoc plugin setting file *.GhostDoc.xml # Node.js Tools for Visual Studio .ntvs_analysis.dat node_modules/ # Visual Studio 6 build log *.plg # Visual Studio 6 workspace options file *.opt # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) *.vbw # Visual Studio LightSwitch build output **/*.HTMLClient/GeneratedArtifacts **/*.DesktopClient/GeneratedArtifacts **/*.DesktopClient/ModelManifest.xml **/*.Server/GeneratedArtifacts **/*.Server/ModelManifest.xml _Pvt_Extensions # Paket dependency manager .paket/paket.exe paket-files/ # FAKE - F# Make .fake/ # CodeRush personal settings .cr/personal # Python Tools for Visual Studio (PTVS) __pycache__/ *.pyc # Cake - Uncomment if you are using it # tools/** # !tools/packages.config # Tabs Studio *.tss # Telerik's JustMock configuration file *.jmconfig # BizTalk build output *.btp.cs *.btm.cs *.odx.cs *.xsd.cs # OpenCover UI analysis results OpenCover/ # Azure Stream Analytics local run output ASALocalRun/ # MSBuild Binary and Structured Log *.binlog # NVidia Nsight GPU debugger configuration file *.nvuser # MFractors (Xamarin productivity tool) working folder .mfractor/ # Local History for Visual Studio .localhistory/ # BeatPulse healthcheck temp database healthchecksdb # Backup folder for Package Reference Convert tool in Visual Studio 2017 MigrationBackup/ # Ionide (cross platform F# VS Code tools) working folder .ionide/ # Fody - auto-generated XML schema FodyWeavers.xsd ================================================ FILE: VisualStudio/LibUniWinC/LibUniWinC.vcxproj ================================================ Debug Win32 Release Win32 Debug x64 Release x64 16.0 Win32Proj {517dfa3a-0554-4f0c-b219-55e7a3b4b14f} LibUniWinC 10.0 DynamicLibrary true v143 Unicode DynamicLibrary false v143 true Unicode DynamicLibrary true v143 Unicode DynamicLibrary false v143 true Unicode true $(SolutionDir)$(Configuration)\$(PlatformShortName)\ obj\$(PlatformShortName)\$(Configuration)\ false $(SolutionDir)$(Configuration)\$(PlatformShortName)\ obj\$(PlatformShortName)\$(Configuration)\ true obj\$(PlatformShortName)\$(Configuration)\ $(SolutionDir)$(Configuration)\$(PlatformShortName)\ false obj\$(PlatformShortName)\$(Configuration)\ $(SolutionDir)$(Configuration)\$(PlatformShortName)\ Level3 true WIN32;_DEBUG;LIBUNIWINC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true Use pch.h MultiThreadedDebug Windows true false dwmapi.lib;%(AdditionalDependencies) copy /B /Y "$(OutputPath)$(TargetName)$(TargetExt)" "$(SolutionDir)TestLibUniWinC\bin\$(PlatformShortName)\$(Configuration)" テストの実行ディレクトリにコピー Level3 true true true WIN32;NDEBUG;LIBUNIWINC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true Use pch.h MultiThreaded Windows true true false false dwmapi.lib;%(AdditionalDependencies) copy /B /Y $(OutputPath)$(TargetName)$(TargetExt) $(SolutionDir)..\UniWinC\Assets\Kirurobo\UniWindowController\Runtime\Plugins\Windows\$(PlatformShortName)\ copy /B /Y "$(OutputPath)$(TargetName)$(TargetExt)" "$(SolutionDir)TestLibUniWinC\bin\$(PlatformShortName)\$(Configuration)" Unityのアセット下とテスト実行ディレクトリにコピー Level3 true _DEBUG;LIBUNIWINC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true Use pch.h MultiThreadedDebug Windows true false dwmapi.lib;%(AdditionalDependencies) copy /B /Y "$(OutputPath)$(TargetName)$(TargetExt)" "$(SolutionDir)TestLibUniWinC\bin\$(PlatformShortName)\$(Configuration)" テストの実行ディレクトリにコピー Level3 true true true NDEBUG;LIBUNIWINC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true Use pch.h MultiThreaded Windows true true false false dwmapi.lib;%(AdditionalDependencies) copy /B /Y $(OutputPath)$(TargetName)$(TargetExt) $(SolutionDir)..\UniWinC\Assets\Kirurobo\UniWindowController\Runtime\Plugins\Windows\$(PlatformShortName)\ copy /B /Y "$(OutputPath)$(TargetName)$(TargetExt)" "$(SolutionDir)TestLibUniWinC\bin\$(PlatformShortName)\$(Configuration)" Unityのアセット下とテスト実行ディレクトリにコピー Create Create Create Create ================================================ FILE: VisualStudio/LibUniWinC/LibUniWinC.vcxproj.filters ================================================  {4FC737F1-C7A5-4376-A066-2A32D752A2FF} cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx {93995380-89BD-4b04-88EB-625FBE52EBFB} h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms ヘッダー ファイル ヘッダー ファイル ヘッダー ファイル ヘッダー ファイル ソース ファイル ソース ファイル ソース ファイル リソース ファイル ================================================ FILE: VisualStudio/LibUniWinC/Resource.rc ================================================ // Microsoft Visual C++ generated resource script. // #include "resource.h" #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "winres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // { ({) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_JPN) LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT #pragma code_page(932) #ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE // 1 TEXTINCLUDE BEGIN "resource.h\0" END 2 TEXTINCLUDE BEGIN "#include ""winres.h""\r\n" "\0" END 3 TEXTINCLUDE BEGIN "\r\n" "\0" END #endif // APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION 0,9,8,0 PRODUCTVERSION 0,9,8,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L #else FILEFLAGS 0x0L #endif FILEOS 0x40004L FILETYPE 0x2L FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "041104b0" BEGIN VALUE "CompanyName", "Kirurobo" VALUE "FileDescription", "Window API wrapper" VALUE "FileVersion", "0.9.8.0" VALUE "InternalName", "LibUniWinC.dll" VALUE "LegalCopyright", "Copyright (C) 2019-2025 Kirurobo" VALUE "OriginalFilename", "LibUniWinC.dll" VALUE "ProductName", "LibUniWinC" VALUE "ProductVersion", "0.9.8.0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x411, 1200 END END #endif // { ({) resources ///////////////////////////////////////////////////////////////////////////// #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. // ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED ================================================ FILE: VisualStudio/LibUniWinC/dllmain.cpp ================================================ // dllmain.cpp : DLL アプリケーションのエントリ ポイントを定義します。 #include "pch.h" BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } ================================================ FILE: VisualStudio/LibUniWinC/framework.h ================================================ #pragma once #define WIN32_LEAN_AND_MEAN // Exclude lesser used parts of Windows headers #define STRICT // Enable STRICT // Headers used in this library #include #include #include #include #include ================================================ FILE: VisualStudio/LibUniWinC/libuniwinc.cpp ================================================ // LibUniWinC.cpp #include "pch.h" #include "libuniwinc.h" static HWND hTargetWnd_ = NULL; static HWND hPanelOwnerWnd_ = NULL; static WINDOWINFO originalWindowInfo_; static WINDOWPLACEMENT originalWindowPlacement_; static HWND hParentWnd_ = NULL; static BOOL bExpedtDesktopWnd = FALSE; static HWND hDesktopWnd_ = NULL; static SIZE szOriginaiBorder_; static POINT ptVirtualScreen_; static SIZE szVirtualScreen_; static INT nPrimaryMonitorHeight_; static BOOL bIsTransparent_ = FALSE; static BOOL bIsBorderless_ = FALSE; static BYTE byAlpha_ = 0xFF; // ウィンドウ全体の透明度 0x00:透明 ~ 0xFF:不透明 static BOOL bIsTopmost_ = FALSE; static BOOL bIsBottommost_ = FALSE; static BOOL bIsBackground_ = FALSE; static BOOL bIsFreePositioning_ = FALSE; // macOSのみ有効。Windowsでは値の保持のみ static BOOL bIsClickThrough_ = FALSE; static BOOL bAllowDropFile_ = FALSE; static COLORREF dwKeyColor_ = 0x00000000; // AABBGGRR static TransparentType nTransparentType_ = TransparentType::Alpha; static TransparentType nCurrentTransparentType_ = TransparentType::Alpha; static INT nMonitorCount_ = 0; // モニタ数。モニタ解像度一覧取得時は一時的に0に戻る static RECT pMonitorRect_[UNIWINC_MAX_MONITORCOUNT]; // EnumDisplayMonitorsの順番で保持した、各画面のRECT static INT pMonitorIndices_[UNIWINC_MAX_MONITORCOUNT]; // このライブラリ独自のモニタ番号をキーとした、EnumDisplayMonitorsでの順番 static HMONITOR hMonitors_[UNIWINC_MAX_MONITORCOUNT]; // Monitor handles static WNDPROC lpMyWndProc_ = NULL; static WNDPROC lpOriginalWndProc_ = NULL; //static HHOOK hHook_ = NULL; static WindowStyleChangedCallback hWindowStyleChangedHandler_ = nullptr; static MonitorChangedCallback hMonitorChangedHandler_ = nullptr; static FilesCallback hDropFilesHandler_ = nullptr; // ======================================================================== #pragma region Internal functions void attachWindow(const HWND hWnd); void detachWindow(); void refreshWindowRect(); void updateScreenSize(); void applyWindowAlphaValue(); //void beginHook(); //void endHook(); void createCustomWindowProcedure(); void destroyCustomWindowProcedure(); /// /// 既にウィンドウが選択済みなら、元の状態に戻して選択を解除 /// void detachWindow() { if (hTargetWnd_) { // Restore the original window procedure destroyCustomWindowProcedure(); //// Unhook if exist //endHook(); if (IsWindow(hTargetWnd_)) { // 透明化は、起動時は無効であるものとして、戻すときは無効化 SetTransparent(FALSE); //// 壁紙化が試みられていればウィンドウの親を戻す //if (hDesktopWnd_ != NULL) { // SetParent(hTargetWnd_, hParentWnd_); //} //// 常に最前面は、起動時の状態に合わせるよう戻す ↓SetWindowLongで本来戻るはずで不要? //SetTopmost((originalWindowInfo.dwExStyle & WS_EX_TOPMOST) == WS_EX_TOPMOST); // 最初のスタイルに戻す SetWindowLong(hTargetWnd_, GWL_STYLE, originalWindowInfo_.dwStyle); SetWindowLong(hTargetWnd_, GWL_EXSTYLE, originalWindowInfo_.dwExStyle); // ウィンドウ位置を戻す SetWindowPlacement(hTargetWnd_, &originalWindowPlacement_); // 表示を更新 refreshWindowRect(); } } hTargetWnd_ = NULL; } /// /// 指定ハンドルのウィンドウを今後使うようにする /// /// void attachWindow(const HWND hWnd) { // 選択済みウィンドウが異なるものであれば、元に戻す if (hTargetWnd_ != hWnd) { detachWindow(); } // とりあえずこのタイミングで画面サイズも更新 // 本来は画面解像度変更時に更新したい。ウィンドウプロシージャでどう? updateScreenSize(); // Set the target hTargetWnd_ = hWnd; if (hWnd) { // Save the original state GetWindowInfo(hWnd, &originalWindowInfo_); GetWindowPlacement(hWnd, &originalWindowPlacement_); //hParentWnd_ = GetParent(hWnd); // Apply current settings applyWindowAlphaValue(); SetTransparent(bIsTransparent_); SetBorderless(bIsBorderless_); SetTopmost(bIsTopmost_); SetBottommost(bIsBottommost_); //SetBackground(bIsBackground_); SetClickThrough(bIsClickThrough_); SetAllowDrop(bAllowDropFile_); // Replace the window procedure createCustomWindowProcedure(); } } /// オーナーウィンドウハンドルを探してアタッチする際のコールバック /// /// /// /// BOOL CALLBACK attachOwnerWindowProc(const HWND hWnd, const LPARAM lParam) { DWORD currentPid = (DWORD)lParam; DWORD pid; GetWindowThreadProcessId(hWnd, &pid); // プロセスIDが一致すれば自分のウィンドウとする if (pid == currentPid) { // オーナーウィンドウを探す // Unityエディタだと本体が選ばれて独立Gameビューが選ばれない… HWND hOwner = GetWindow(hWnd, GW_OWNER); if (hOwner) { // あればオーナーを選択 attachWindow(hOwner); } else { // オーナーが無ければこのウィンドウを選択 attachWindow(hWnd); } return FALSE; //// 同じプロセスIDでも、表示されているウィンドウのみを選択 //LONG style = GetWindowLong(hWnd, GWL_STYLE); //if (style & WS_VISIBLE) { // hTargetWnd_ = hWnd; // return FALSE; //} } return TRUE; } /// /// オーナーウィンドウハンドルを探す際のコールバック /// /// /// /// BOOL CALLBACK findOwnerWindowProc(const HWND hWnd, const LPARAM lParam) { DWORD currentPid = (DWORD)lParam; DWORD pid; GetWindowThreadProcessId(hWnd, &pid); // プロセスIDが一致すれば自分のウィンドウとする if (pid == currentPid) { // オーナーウィンドウを探す // Unityエディタだと本体が選ばれて独立Gameビューが選ばれない… HWND hOwner = GetWindow(hWnd, GW_OWNER); if (hOwner) { // あればオーナーを選択 hPanelOwnerWnd_ = hOwner; } else { // オーナーが無ければこのウィンドウを選択 hPanelOwnerWnd_ = hWnd; } return FALSE; } return TRUE; } /// /// デスクトップのウィンドウハンドルを探す際のコールバック /// /// /// /// BOOL CALLBACK findDesktopWindowProc(const HWND hWnd, const LPARAM lParam) { WCHAR className[UNIWINC_MAX_CLASSNAME]; int len = GetClassName(hWnd, className, UNIWINC_MAX_CLASSNAME); if (len > 0) { // クラス名が取得でき、WorkerW または Progman ならその子で SHELLDLL_DefView を対象とする // 参考 http://www.orangemaker.sakura.ne.jp/labo/memo/sdk-mfc/win7Desktop.html if ((lstrcmp(TEXT("WorkerW"), className) == 0) || (lstrcmp(TEXT("Progman"), className) == 0)) { if (bExpedtDesktopWnd) { hDesktopWnd_ = hWnd; return FALSE; } HWND hChild = FindWindowEx(hWnd, NULL, TEXT("SHELLDLL_DefView"), NULL); if (hChild != NULL) { //hDesktopWnd_ = hChild; //return FALSE; bExpedtDesktopWnd = TRUE; return TRUE; } } } return TRUE; } /// /// モニタ情報取得時のコールバック /// EnumDisplayMonitors()で呼ばれる。その際は最初にnMonitorCountが0にセットされるものとする。 /// /// /// /// /// /// BOOL CALLBACK monitorEnumProc(HMONITOR hMon, HDC hDc, LPRECT lpRect, LPARAM lParam) { // 最大取り扱いモニタ数に達したら探索終了 if (nMonitorCount_ >= UNIWINC_MAX_MONITORCOUNT) return FALSE; // RECTを記憶 pMonitorRect_[nMonitorCount_] = *lpRect; // プライマリモニタの高さを記憶 if (lpRect->left == 0 && lpRect->top == 0) { // 原点に位置するモニタがプライマリモニタだと判断 nPrimaryMonitorHeight_ = lpRect->bottom; } // インデックスを一旦登場順で保存 pMonitorIndices_[nMonitorCount_] = nMonitorCount_; // Store the monitor handle hMonitors_[nMonitorCount_] = hMon; // モニタ数カウント nMonitorCount_++; return TRUE; } /// /// 接続モニタ数とそれらのサイズ一覧を取得 /// /// 成功ならTRUE BOOL updateMonitorRectangles() { // カウントするため一時的に0に戻す nMonitorCount_ = 0; // モニタを列挙してRECTを保存 if (!EnumDisplayMonitors(NULL, NULL, monitorEnumProc, NULL)) { return FALSE; } // モニタの位置を基準にバブルソート for (int i = 0; i < (nMonitorCount_ - 1); i++) { for (int j = (nMonitorCount_ - 1); j > i; j--) { RECT pr = pMonitorRect_[pMonitorIndices_[j - 1]]; RECT cr = pMonitorRect_[pMonitorIndices_[j]]; // 左にあるモニタが先、横が同じなら下にあるモニタが先となるようソート if (pr.left > cr.left || ((pr.left == cr.left) && (pr.bottom < cr.bottom))) { int index = pMonitorIndices_[j - 1]; pMonitorIndices_[j - 1] = pMonitorIndices_[j]; pMonitorIndices_[j] = index; } } } return TRUE; } /// /// 全面をGlassにする /// void enableTransparentByDWM() { if (!hTargetWnd_) return; MARGINS margins = { -1 }; DwmExtendFrameIntoClientArea(hTargetWnd_, &margins); } /// /// 枠のみGlassにする /// void disableTransparentByDWM() { if (!hTargetWnd_) return; // TODO: できれば決め打ちでは無くせるとよい // 本来のウィンドウが何らかの範囲指定でGlassにしていた場合は、残念ながら表示が戻りません MARGINS margins = { 0, 0, 0, 0 }; DwmExtendFrameIntoClientArea(hTargetWnd_, &margins); } /// /// DWM利用時またはウィンドウ非透過時の透明度設定 /// void applyWindowAlphaValue() { if (!hTargetWnd_) return; // 半透明の場合、レイヤードウィンドウになっていなければ以降はレイヤードウィンドウにする if (byAlpha_ < 0xFF) { LONG exstyle = GetWindowLong(hTargetWnd_, GWL_EXSTYLE); // まだレイヤードウィンドウになっていなければ、設定 if (!(exstyle & WS_EX_LAYERED)) { exstyle |= WS_EX_LAYERED; SetWindowLong(hTargetWnd_, GWL_EXSTYLE, exstyle); } } COLORREF cref = { 0 }; SetLayeredWindowAttributes(hTargetWnd_, cref, byAlpha_, LWA_ALPHA); } /// /// SetLayeredWindowsAttributes によって指定色を透過させる /// void enableTransparentBySetLayered() { if (!hTargetWnd_) return; LONG exstyle = GetWindowLong(hTargetWnd_, GWL_EXSTYLE); // レイヤードウィンドウになっていなければ、設定 if (!(exstyle & WS_EX_LAYERED)) { exstyle |= WS_EX_LAYERED; SetWindowLong(hTargetWnd_, GWL_EXSTYLE, exstyle); } SetLayeredWindowAttributes(hTargetWnd_, dwKeyColor_, byAlpha_, LWA_COLORKEY | LWA_ALPHA); } /// /// SetLayeredWindowsAttributes による指定色透過を解除 /// void disableTransparentBySetLayered() { if (!hTargetWnd_) return; COLORREF cref = { 0 }; SetLayeredWindowAttributes(hTargetWnd_, cref, byAlpha_, LWA_ALPHA); } /// /// 壁紙の親となるウィンドウハンドルを取得 /// void findDesktopWindow() { bExpedtDesktopWnd = FALSE; EnumWindows(findDesktopWindowProc, NULL); } /// /// 枠を消した際に描画サイズが合わなくなることに対応するため、ウィンドウを強制リサイズして更新 /// void refreshWindowRect() { if (!hTargetWnd_) return; if (IsZoomed(hTargetWnd_)) { // 最大化されていた場合は、ウィンドウサイズ変更の代わりに一度最小化して再度最大化 ShowWindow(hTargetWnd_, SW_MINIMIZE); ShowWindow(hTargetWnd_, SW_MAXIMIZE); } else if (IsIconic(hTargetWnd_)) { // 最小化されていた場合は、次に表示されるときに更新されるものとして、何もしない } else if (IsWindowVisible(hTargetWnd_)) { // 通常のウィンドウだった場合は、ウィンドウサイズを1px変えることで再描画 // 現在のウィンドウサイズを取得 RECT rect; GetWindowRect(hTargetWnd_, &rect); // 1px横幅を広げて、リサイズイベントを強制的に起こす SetWindowPos( hTargetWnd_, NULL, 0, 0, (rect.right - rect.left + 1), (rect.bottom - rect.top + 1), SWP_NOMOVE | SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); // 元のサイズに戻す。この時もリサイズイベントは発生するはず SetWindowPos( hTargetWnd_, NULL, 0, 0, (rect.right - rect.left), (rect.bottom - rect.top), SWP_NOMOVE | SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); ShowWindow(hTargetWnd_, SW_SHOW); } } BOOL compareRect(const RECT rcA, const RECT rcB) { return ((rcA.left == rcB.left) && (rcA.right == rcB.right) && (rcA.top == rcB.top) && (rcA.bottom == rcB.bottom)); } /// /// Update current monitor information /// /// void updateScreenSize() { //nPrimaryMonitorHeight_ = GetSystemMetrics(SM_CYSCREEN); // 150% などの時は実解像度と一致しない // Update the monitor resolution list. // To use the nPrimaryMonitorHeight, do this after its acquisition. updateMonitorRectangles(); } /// /// 現在、実際に常に最前面になっているかを調べる /// /// BOOL getTopMost() { if ((hTargetWnd_ == NULL) || !IsWindow(hTargetWnd_)) { return FALSE; } LONG ex = GetWindowLong(hTargetWnd_, GWL_EXSTYLE); return (ex & WS_EX_TOPMOST) == WS_EX_TOPMOST; } #pragma endregion Internal functions // ======================================================================== #pragma region For window style /// /// ウィンドウ状態が置き換わっているか定期的に調べて、強制的に修正 /// /// void UNIWINC_API Update() { // 今のところWindowsでは何もしない return; } /// /// 利用可能な状態ならTRUEを返す /// /// BOOL UNIWINC_API IsActive() { if (hTargetWnd_ && IsWindow(hTargetWnd_)) { return TRUE; } return FALSE; } /// /// 透過にしているか否かを返す /// /// BOOL UNIWINC_API IsTransparent() { return bIsTransparent_; } /// /// 枠を消去しているか否かを返す /// /// BOOL UNIWINC_API IsBorderless() { return bIsBorderless_; } /// /// 最前面にしているか否かを返す /// /// BOOL UNIWINC_API IsTopmost() { return bIsTopmost_; } /// /// 最背面にしているか否かを返す /// /// BOOL UNIWINC_API IsBottommost() { return bIsBottommost_; } /// /// 壁紙にしているか否かを返す /// /// BOOL UNIWINC_API IsBackground() { return bIsBackground_; } /// /// Return true if the window is zoomed /// /// BOOL UNIWINC_API IsMaximized() { return (hTargetWnd_ && IsZoomed(hTargetWnd_)); } /// /// Return true if the window is iconic /// /// BOOL UNIWINC_API IsMinimized() { return (hTargetWnd_ && IsIconic(hTargetWnd_)); } /// /// (macOSのみ有効)ウィンドウの自由配置機能が有効かどうかを返します /// /// Windowsでは特に制限なしのためTRUE BOOL UNIWINC_API IsFreePositioningEnabled() { return bIsFreePositioning_; } /// /// Restore and release the target window /// /// BOOL UNIWINC_API DetachWindow() { detachWindow(); return TRUE; } /// /// Find my own window and attach (Same as the AttachMyOwnerWindow) /// /// BOOL UNIWINC_API AttachMyWindow() { return AttachMyOwnerWindow(); } /// /// Find and select the window with the current process ID /// /// BOOL UNIWINC_API AttachMyOwnerWindow() { DWORD currentPid = GetCurrentProcessId(); return EnumWindows(attachOwnerWindowProc, (LPARAM)currentPid); } /// /// Find owner window handle /// /// HWND FindOwnerWindowHandle() { DWORD currentPid = GetCurrentProcessId(); if (EnumWindows(attachOwnerWindowProc, (LPARAM)currentPid)) { return hPanelOwnerWnd_; } return NULL; } /// /// Find and select the active window with the current process ID /// (To attach the process with multiple windows) /// /// BOOL UNIWINC_API AttachMyActiveWindow() { DWORD currentPid = GetCurrentProcessId(); HWND hWnd = GetActiveWindow(); DWORD pid; GetWindowThreadProcessId(hWnd, &pid); if (pid == currentPid) { attachWindow(hWnd); return TRUE; } return FALSE; } /// /// Attach to the specified window /// /// BOOL UNIWINC_API AttachWindowHandle(const HWND hWnd) { attachWindow(hWnd); return TRUE; } /// /// Select the transparentize method /// /// /// void UNIWINC_API SetTransparentType(const TransparentType type) { if (bIsTransparent_) { // 透明化状態であれば、一度解除してから設定 SetTransparent(FALSE); nTransparentType_ = type; SetTransparent(TRUE); } else { // 透明化状態でなければ、そのまま設定 nTransparentType_ = type; } } /// /// 単色透過時に透過とする色を指定 /// /// 透過する色 /// void UNIWINC_API SetKeyColor(const COLORREF color) { if (bIsTransparent_ && (nTransparentType_ == TransparentType::ColorKey)) { // 透明化状態であれば、一度解除してから設定 SetTransparent(FALSE); dwKeyColor_ = color; SetTransparent(TRUE); } else { // 透明化状態でなければ、そのまま設定 dwKeyColor_ = color; } } /// /// 透過および枠消しを設定/解除 /// /// /// void UNIWINC_API SetTransparent(const BOOL bTransparent) { if (hTargetWnd_) { if (bTransparent) { switch (nTransparentType_) { case TransparentType::Alpha: enableTransparentByDWM(); break; case TransparentType::ColorKey: enableTransparentBySetLayered(); break; default: break; } } else { switch (nCurrentTransparentType_) { case TransparentType::Alpha: disableTransparentByDWM(); break; case TransparentType::ColorKey: disableTransparentBySetLayered(); break; default: break; } } // 戻す方法を決めるため、透明化が変更された時のタイプを記憶 nCurrentTransparentType_ = nTransparentType_; } // 透明化状態を記憶 bIsTransparent_ = bTransparent; } /// /// ウィンドウ枠を有効/無効にする /// /// void UNIWINC_API SetBorderless(const BOOL bBorderless) { if (hTargetWnd_) { int newW, newH, newX, newY; RECT rcWin, rcCli; GetWindowRect(hTargetWnd_, &rcWin); GetClientRect(hTargetWnd_, &rcCli); newX = rcWin.left; newY = rcWin.top; int w = rcWin.right - rcWin.left; int h = rcWin.bottom - rcWin.top; bool hasMenu = (GetMenu(hTargetWnd_) != NULL); // ウィンドウがメニューを持っているか int bZoomed = IsZoomed(hTargetWnd_); int bIconic = IsIconic(hTargetWnd_); // 最大化されていたら、一度最大化は解除 if (bZoomed) { ShowWindow(hTargetWnd_, SW_NORMAL); } int offset = 1; LONG newStyle; if (bBorderless) { // 枠無しウィンドウのスタイル newStyle = (WS_VISIBLE | WS_POPUP); offset = -1; } else { // 初期のウィンドウスタイル(必ずしも枠ありとは限らない) newStyle = originalWindowInfo_.dwStyle; offset = 1; } // 変更後のウィンドウサイズを計算 AdjustWindowRect(&rcCli, newStyle, hasMenu); newW = rcCli.right - rcCli.left; newH = rcCli.bottom - rcCli.top; int dx = w - newW; // 変更後に広がる幅(負もある) [px] int dy = h - newH; // 変更後に広がる高さ(負もある) [px] int bw = dx / 2; // 枠の片側幅 [px] int bh = bw; // 本来は枠の下側高さと左右の幅が同じ保証はないが、とりあえず同じとみなしている newX = rcWin.left + bw; newY = rcWin.top + (dy - bh); // ウィンドウサイズが変化しないか、最大化や最小化状態なら標準のサイズ更新 if (bZoomed) { // ウィンドウスタイルを適用 SetWindowLong(hTargetWnd_, GWL_STYLE, newStyle); // 最大化されていたら、ここで再度最大化 ShowWindow(hTargetWnd_, SW_MAXIMIZE); } else if (bIconic) { // ウィンドウスタイルを適用 SetWindowLong(hTargetWnd_, GWL_STYLE, newStyle); // 最小化されていたら、次に表示されるときの再描画を期待して、SetWindowPosやShowWindowは省略 } else { // クライアント領域サイズを維持するようサイズと位置を調整 // Unity2019までの手順ではUnity2020ではサイズが戻ってしまう。サイズ変更を繰り返したり、後でウィンドウスタイルを変更してみる。 // ウィンドウリサイズのタイミングがずれた場合の挙動が不安なため、SWP_ASYNCWINDOWPOSを外した。 SetWindowPos( hTargetWnd_, NULL, newX, newY, newW + offset, newH, SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); SetWindowPos( hTargetWnd_, NULL, newX, newY, newW, newH, SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); // ウィンドウスタイルを適用 SetWindowLong(hTargetWnd_, GWL_STYLE, newStyle); SetWindowPos( hTargetWnd_, NULL, newX, newY, newW + offset, newH, SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); SetWindowPos( hTargetWnd_, NULL, newX, newY, newW, newH, SWP_NOZORDER | SWP_FRAMECHANGED | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS ); ShowWindow(hTargetWnd_, SW_SHOW); } } // 枠無しか否かを記憶 bIsBorderless_ = bBorderless; } /// /// ウィンドウ全体の透明度を設定 /// /// /// void UNIWINC_API SetAlphaValue(const float alpha) { // 透明度指定値を記憶 byAlpha_ = (BYTE)(0xFF * alpha); if (hTargetWnd_) { if (bIsTransparent_) { // 現在が透過時の処理 switch (nTransparentType_) { case TransparentType::Alpha: applyWindowAlphaValue(); break; case TransparentType::ColorKey: enableTransparentBySetLayered(); // 透過開始と同じ関数で設定 break; default: applyWindowAlphaValue(); break; } } else { // 現在が非透過での処理 applyWindowAlphaValue(); } } } /// /// 最前面化/解除 /// /// /// void UNIWINC_API SetTopmost(const BOOL bTopmost) { // 最背面化されていたら、解除 bIsBottommost_ = FALSE; if (hTargetWnd_) { SetWindowPos( hTargetWnd_, (bTopmost ? HWND_TOPMOST : HWND_NOTOPMOST), 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS // | SWP_FRAMECHANGED ); // Run callback if the topmost state changed if (bIsTopmost_ != bTopmost) { if (hWindowStyleChangedHandler_ != nullptr) { hWindowStyleChangedHandler_((INT32)(bTopmost ? WindowStateEventType::TopMostEnabled : WindowStateEventType::TopMostDisabled)); } } } bIsTopmost_ = bTopmost; } /// /// 最背面化/解除 /// /// /// void UNIWINC_API SetBottommost(const BOOL bBottommost) { // 最前面化されていたら、解除 bIsTopmost_ = FALSE; if (hTargetWnd_) { SetWindowPos( hTargetWnd_, (bBottommost ? HWND_BOTTOM : HWND_NOTOPMOST), 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOOWNERZORDER | SWP_NOACTIVATE //| SWP_ASYNCWINDOWPOS // | SWP_FRAMECHANGED ); // Run callback if the bottommost state changed if (bIsBottommost_ != bBottommost) { if (hWindowStyleChangedHandler_ != nullptr) { hWindowStyleChangedHandler_((INT32)(bBottommost ? WindowStateEventType::BottomMostEnabled : WindowStateEventType::BottomMostDisabled)); } } } bIsBottommost_ = bBottommost; } /// /// 壁紙化/解除 /// /// /// void UNIWINC_API SetBackground(const BOOL bEnabled) { if (hTargetWnd_) { if (bEnabled) { // デスクトップにあたるウィンドウが未取得なら、ここで取得 if (hDesktopWnd_ == NULL) { findDesktopWindow(); } if (hDesktopWnd_ != NULL) { SetParent(hTargetWnd_, hDesktopWnd_); //SetBottommost(TRUE); //SetWindowPos( // hTargetWnd_, // HWND_BOTTOM, // 0, 0, 0, 0, // SWP_NOSIZE | SWP_NOMOVE | SWP_NOOWNERZORDER | SWP_NOACTIVATE | SWP_ASYNCWINDOWPOS // | SWP_FRAMECHANGED //); //refreshWindow(); } } else { SetParent(hTargetWnd_, hParentWnd_); //SetBottommost(FALSE); } // Run callback if the bottommost state changed if (bIsBackground_!= bEnabled) { if (hWindowStyleChangedHandler_ != nullptr) { hWindowStyleChangedHandler_((INT32)(bEnabled ? WindowStateEventType::WallpaperModeEnabled : WindowStateEventType::WallpaperModeDisabled)); } } } bIsBackground_= bEnabled; } /// /// Zoom the window or normalize /// /// /// void UNIWINC_API SetMaximized(const BOOL bZoomed) { if (hTargetWnd_) { if (bZoomed) { ShowWindow(hTargetWnd_, SW_MAXIMIZE); } else { ShowWindow(hTargetWnd_, SW_NORMAL); } } } /// /// (macOSのみ)ウィンドウ配置制限を解除・復帰します /// /// Windowsでは動作しません /// なし void UNIWINC_API EnableFreePositioning(const BOOL isFree) { bIsFreePositioning_ = isFree; return; } /// /// クリックスルー(マウス操作無効化)を設定/解除 /// /// /// void UNIWINC_API SetClickThrough(const BOOL bTransparent) { if (hTargetWnd_) { if (bTransparent) { LONG exstyle = GetWindowLong(hTargetWnd_, GWL_EXSTYLE); exstyle |= WS_EX_TRANSPARENT; exstyle |= WS_EX_LAYERED; SetWindowLong(hTargetWnd_, GWL_EXSTYLE, exstyle); } else { LONG exstyle = GetWindowLong(hTargetWnd_, GWL_EXSTYLE); exstyle &= ~WS_EX_TRANSPARENT; // 半透明を維持するため、レイヤードウィンドウは戻さないようコメントアウト //if (!bIsTransparent_ && !(originalWindowInfo_.dwExStyle & WS_EX_LAYERED)) { // exstyle &= ~WS_EX_LAYERED; //} SetWindowLong(hTargetWnd_, GWL_EXSTYLE, exstyle); } } bIsClickThrough_ = bTransparent; } /// /// Set the window position /// /// ウィンドウ左端座標 [px] /// プライマリー画面下端を原点とし、上が正のY座標 [px] /// 成功すれば true BOOL UNIWINC_API SetPosition(const float x, const float y) { if (hTargetWnd_ == NULL) return FALSE; // 現在のウィンドウ位置とサイズを取得 RECT rect; GetWindowRect(hTargetWnd_, &rect); // 引数の y はCocoa相当の座標系でウィンドウ左下なので、変換 int newY = (nPrimaryMonitorHeight_ - (int)y) - (rect.bottom - rect.top); int newX = (int)(x); return SetWindowPos( hTargetWnd_, NULL, newX, newY, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER //| SWP_ASYNCWINDOWPOS ); } /// /// Get the window position /// /// ウィンドウ左端座標 [px] /// プライマリー画面下端を原点とし、上が正のY座標 [px] /// 成功すれば true BOOL UNIWINC_API GetPosition(float* x, float* y) { *x = 0; *y = 0; if (hTargetWnd_ == NULL) return FALSE; RECT rect; if (GetWindowRect(hTargetWnd_, &rect)) { *x = (float)(rect.left); *y = (float)(nPrimaryMonitorHeight_- rect.bottom); // 左下基準とする return TRUE; } return FALSE; } /// /// Set the window size /// /// 幅 [px] /// 高さ [px] /// 成功すれば true BOOL UNIWINC_API SetSize(const float width, const float height) { if (hTargetWnd_ == NULL) return FALSE; // 現在のウィンドウ位置とサイズを取得 RECT rect; GetWindowRect(hTargetWnd_, &rect); int x = rect.left; int y = rect.bottom; int w = (int)(width); int h = (int)(height); // 左下原点とするために調整した、新規Y座標 y = y - h; return SetWindowPos( hTargetWnd_, NULL, x, y, w, h, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOZORDER | SWP_FRAMECHANGED //| SWP_ASYNCWINDOWPOS ); } /// /// Get the window size with the border /// /// 幅 [px] /// 高さ [px] /// 成功すれば true BOOL UNIWINC_API GetSize(float* width, float* height) { *width = 0; *height = 0; if (hTargetWnd_ == NULL) return FALSE; RECT rect; if (GetWindowRect(hTargetWnd_, &rect)) { *width = (float)(rect.right - rect.left); // +1 は不要なよう *height = (float)(rect.bottom - rect.top); // +1 は不要なよう return TRUE; } return FALSE; } /// /// Get the client area size of the window /// /// 幅 [px] /// 高さ [px] /// 成功すれば true BOOL UNIWINC_API GetClientSize(float* width, float* height) { *width = 0; *height = 0; if (hTargetWnd_ == NULL) return FALSE; RECT rect; if (GetClientRect(hTargetWnd_, &rect)) { *width = (float)(rect.right - rect.left); *height = (float)(rect.bottom - rect.top); return TRUE; } return FALSE; } /// /// Get the client area position and size of the window /// /// ウィンドウ左端からのx座標 [px] /// ウィンドウ下端からのy座標 [px] /// 幅 [px] /// 高さ [px] /// 成功すれば true BOOL UNIWINC_API GetClientRectangle(float* x, float* y, float* width, float* height) { *x = 0; *y = 0; *width = 0; *height = 0; if (hTargetWnd_ == NULL) return FALSE; RECT windowRect; if (GetWindowRect(hTargetWnd_, &windowRect)) { LONG windowHeight = (windowRect.bottom - windowRect.top); RECT rect; if (GetClientRect(hTargetWnd_, &rect)) { POINT originPoint; // クライアント左下のスクリーン座標が入る originPoint.x = rect.left; originPoint.y = rect.bottom; if (ClientToScreen(hTargetWnd_, &originPoint)) { *x = (float)(originPoint.x - windowRect.left); *y = (float)(windowHeight - (originPoint.y - windowRect.top)); *width = (float)(rect.right - rect.left); *height = (float)(rect.bottom - rect.top); return TRUE; } } } return FALSE; } /// /// Register the callback fucnction called when window style changed /// /// /// BOOL UNIWINC_API RegisterWindowStyleChangedCallback(WindowStyleChangedCallback callback) { if (callback == nullptr) return FALSE; hWindowStyleChangedHandler_= callback; return TRUE; } /// /// Unregister the callback function /// /// BOOL UNIWINC_API UnregisterWindowStyleChangedCallback() { hWindowStyleChangedHandler_ = nullptr; return TRUE; } #pragma endregion For window style // ======================================================================== #pragma region For monitor Info. /// /// このウィンドウが現在表示されているモニタ番号を取得 /// /// INT32 UNIWINC_API GetCurrentMonitor() { int primaryIndex = 0; // ウィンドウ未取得ならプライマリモニタを探す if (hTargetWnd_ == NULL) { for (int i = 0; i < nMonitorCount_; i++) { RECT mr = pMonitorRect_[pMonitorIndices_[i]]; // 原点にあるモニタはプライマリと判定 if (mr.left == 0 && mr.top == 0) { primaryIndex = i; break; } } return primaryIndex; } // 現在のウィンドウの中心座標を取得 RECT rect; GetWindowRect(hTargetWnd_, &rect); LONG cx = (rect.right - 1 + rect.left) / 2; LONG cy = (rect.bottom - 1 + rect.top) / 2; // ウィンドウの中央が含まれているモニタを検索 for (int i = 0; i < nMonitorCount_; i++) { RECT mr = pMonitorRect_[pMonitorIndices_[i]]; // ウィンドウ中心が入っていればその画面番号を返して終了 if (mr.left <= cx && cx < mr.right && mr.top <= cy && cy < mr.bottom) { return i; } // 原点にあるモニタはプライマリと判定 if (mr.left == 0 && mr.top == 0) { primaryIndex = i; } } // 判定できなければプライマリモニタの画面番号を返す return primaryIndex; } /// /// 接続されているモニタ数を取得 /// /// モニタ数 INT32 UNIWINC_API GetMonitorCount() { //// SM_CMONITORS では表示されているモニタのみ対象となる(EnumDisplayとは異なる) //return GetSystemMetrics(SM_CMONITORS); return nMonitorCount_; } /// /// モニタの位置、サイズを取得 /// /// 幅 [px] /// 高さ [px] /// 成功すれば true BOOL UNIWINC_API GetMonitorRectangle(const INT32 monitorIndex, float* x, float* y, float* width, float* height) { *x = 0; *y = 0; *width = 0; *height = 0; if (monitorIndex < 0 || monitorIndex >= nMonitorCount_) { return FALSE; } RECT rect = pMonitorRect_[pMonitorIndices_[monitorIndex]]; *x = (float)(rect.left); *y = (float)(nPrimaryMonitorHeight_ - rect.bottom); // 左下基準とする *width = (float)(rect.right - rect.left); *height = (float)(rect.bottom - rect.top); return TRUE; } /// /// Register the callback fucnction called when updated monitor information /// /// /// BOOL UNIWINC_API RegisterMonitorChangedCallback(MonitorChangedCallback callback) { if (callback == nullptr) return FALSE; hMonitorChangedHandler_ = callback; return TRUE; } /// /// Unregister the callback function /// /// BOOL UNIWINC_API UnregisterMonitorChangedCallback() { hMonitorChangedHandler_ = nullptr; return TRUE; } #pragma endregion For monitor Info. // ======================================================================== #pragma region For mouse cursor /// /// マウスカーソル座標を取得 /// /// ウィンドウ左端座標 [px] /// プライマリー画面下端を原点とし、上が正のY座標 [px] /// 成功すれば true BOOL UNIWINC_API GetCursorPosition(float* x, float* y) { *x = 0; *y = 0; POINT pos; if (GetCursorPos(&pos)) { *x = (float)pos.x; *y = (float)(nPrimaryMonitorHeight_ - pos.y - 1); // 左下基準とする return TRUE; } return FALSE; } /// /// マウスカーソル座標を設定 /// /// ウィンドウ左端座標 [px] /// プライマリー画面下端を原点とし、上が正のY座標 [px] /// 成功すれば true BOOL UNIWINC_API SetCursorPosition(const float x, const float y) { POINT pos; pos.x = (int)x; pos.y = nPrimaryMonitorHeight_ - (int)y - 1; return SetCursorPos(pos.x, pos.y); } /// /// マウスボタン押下状況を取得 /// /// 押下中なら1となるビットフラグ(1:Left, 2:Right, 4:Middle) INT32 UNIWINC_API GetMouseButtons() { INT32 state = 0; if (GetAsyncKeyState(VK_LBUTTON) & 0x8000) { state |= 1; } if (GetAsyncKeyState(VK_RBUTTON) & 0x8000) { state |= 2; } if (GetAsyncKeyState(VK_MBUTTON) & 0x8000) { state |= 4; } return state; } /// /// 修飾キーの押下状況を取得 /// /// 押下中なら1となるビットフラグ(1:ALt, 2:Ctrl, 4:Shift, 8:Win) INT32 UNIWINC_API GetModifierKeys() { INT32 state = 0; if (GetAsyncKeyState(VK_MENU) & 0x8000) { state |= 1; } if (GetAsyncKeyState(VK_CONTROL) & 0x8000) { state |= 2; } if (GetAsyncKeyState(VK_SHIFT) & 0x8000) { state |= 4; } if (GetAsyncKeyState(VK_LWIN) & 0x8000 || GetAsyncKeyState(VK_RWIN) & 0x8000) { state |= 8; } return state; } #pragma endregion For mouse cursor // ======================================================================== #pragma region For file dropping and window procedure /// /// Process drop files /// /// /// BOOL receiveDropFiles(HDROP hDrop) { // TODO: Windowsでは特殊文字がファイル名に入る例はまず無さそうだが、macOSと同様にダブルクォーテーション囲みにした方がよい // CSVと同様にダブルクォーテーションが文字としてあれば二重にする UINT num = DragQueryFile(hDrop, 0xFFFFFFFF, NULL, 0); if (num > 0) { // Retrieve total buffer size UINT bufferSize = 0; for (UINT i = 0; i < num; i++) { UINT size = DragQueryFile(hDrop, i, NULL, 0); bufferSize += size + sizeof(L'\n'); // Add a delimiter size } bufferSize++; // Allocate buffer LPWSTR buffer; buffer = new (std::nothrow)WCHAR[bufferSize]; if (buffer != NULL) { // Retrieve file paths UINT bufferIndex = 0; for (UINT i = 0; i < num; i++) { UINT cch = bufferSize - 1 - bufferIndex; UINT size = DragQueryFile(hDrop, i, buffer + bufferIndex, cch); bufferIndex += size; buffer[bufferIndex] = L'\n'; // Delimiter of each path bufferIndex++; } buffer[bufferIndex] = NULL; // Do callback function if (hDropFilesHandler_ != nullptr) { hDropFilesHandler_((WCHAR*)buffer); // Charset of this project must be set U } delete[] buffer; } } return (num > 0); } /// /// Custom window proceture to accept dropped files and display-changed event /// /// /// /// /// /// LRESULT CALLBACK customWindowProcedure(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { HDROP hDrop; INT32 count; switch (uMsg) { case WM_DROPFILES: hDrop = (HDROP)wParam; receiveDropFiles(hDrop); DragFinish(hDrop); break; case WM_DISPLAYCHANGE: updateScreenSize(); // Run callback if (hMonitorChangedHandler_ != nullptr) { count = GetMonitorCount(); hMonitorChangedHandler_(count); } break; case WM_WINDOWPOSCHANGING: // 常に最背面 if (bIsBottommost_) { ((WINDOWPOS*)lParam)->hwndInsertAfter = HWND_BOTTOM; } break; case WM_STYLECHANGED: // スタイルの変化を検出 // Run callback if (hWindowStyleChangedHandler_ != nullptr) { hWindowStyleChangedHandler_((INT32)WindowStateEventType::StyleChanged); } break; case WM_SIZE: // 最大化、最小化による変化を検出 switch (wParam) { case SIZE_RESTORED: // 最小化でも最大化でもない通常のリサイズ case SIZE_MAXIMIZED: case SIZE_MINIMIZED: // Run callback if (hWindowStyleChangedHandler_ != nullptr) { hWindowStyleChangedHandler_((INT32)WindowStateEventType::Resized); } break; } break; default: break; } if (lpOriginalWndProc_ != NULL) { return CallWindowProc(lpOriginalWndProc_, hWnd, uMsg, wParam, lParam); } else { return DefWindowProc(hWnd, uMsg, wParam, lParam); } } /// /// Wrapper of SetWindowLongPtr to set window procedure /// /// /// WNDPROC setWindowProcedure(WNDPROC wndProc) { //return (WNDPROC)SetWindowLongPtr(hTargetWnd_, GWLP_WNDPROC, (LONG_PTR)wndProc); #ifdef _WIN64 // 64bit return (WNDPROC)SetWindowLongPtr(hTargetWnd_, GWLP_WNDPROC, (LONG_PTR)wndProc); #else return (WNDPROC)SetWindowLong(hTargetWnd_, GWLP_WNDPROC, (LONG)wndProc); #endif } /// /// Remove the custom window procedure /// void destroyCustomWindowProcedure() { if (lpMyWndProc_ == NULL) return; if (lpOriginalWndProc_ != NULL) { if (hTargetWnd_ != NULL && IsWindow(hTargetWnd_)) { setWindowProcedure(lpOriginalWndProc_); } lpOriginalWndProc_ = NULL; } lpMyWndProc_ = NULL; } /// /// Create and attach the custom window procedure /// void createCustomWindowProcedure() { if (lpMyWndProc_ != NULL) { destroyCustomWindowProcedure(); } if (hTargetWnd_ != NULL) { lpMyWndProc_ = customWindowProcedure; lpOriginalWndProc_ = setWindowProcedure(lpMyWndProc_); } } // ↓ウィンドウプロシージャではなくメッセージをフックする場合はこちらを使う // 解像度変更を検出するためにウィンドウプロシージャを使うものとした ///// ///// Callback when received WM_DROPFILE message ///// ///// ///// ///// ///// //LRESULT CALLBACK messageHookCallback(int nCode, WPARAM wParam, LPARAM lParam) { // if (nCode < 0) { // return CallNextHookEx(NULL, nCode, wParam, lParam); // } // // // lParam is a pointer to an MSG structure for WH_GETMESSAGE // LPMSG msg = (LPMSG)lParam; // // switch (msg->message) { // case WM_DROPFILES: // if (hTargetWnd_ != NULL && msg->hwnd == hTargetWnd_) { // HDROP hDrop = (HDROP)msg->wParam; // ReceiveDropFiles(hDrop); // DragFinish(hDrop); // } // return TRUE; // break; // // case WM_DISPLAYCHANGE: // updateScreenSize(); // break; // // case WM_STYLECHANGED: // break; // } // // return CallNextHookEx(NULL, nCode, wParam, lParam); //} // ///// ///// Set the hook ///// //void beginHook() { // if (hTargetWnd_ == NULL) return; // // // Return if the hook is already set // if (hHook_ != NULL) return; // // //HMODULE hMod = GetModuleHandle(NULL); // DWORD dwThreadId = GetCurrentThreadId(); // // hHook_ = SetWindowsHookEx(WH_GETMESSAGE, messageHookCallback, NULL, dwThreadId); //} // ///// ///// Unset the hook ///// //void endHook() { // if (hTargetWnd_ == NULL) return; // // // Return if the hook is not set // if (hHook_ == NULL) return; // // UnhookWindowsHookEx(hHook_); // hHook_ = NULL; //} /// /// Enable or disable file dropping /// /// Previous window procedure BOOL UNIWINC_API SetAllowDrop(const BOOL bEnabled) { if (hTargetWnd_ == NULL) return FALSE; bAllowDropFile_ = bEnabled; DragAcceptFiles(hTargetWnd_, bAllowDropFile_); //if (bEnabled && hHook == NULL) { // beginHook(); //} ////else if (!bEnabled && hHook != NULL) { //// endHook(); ////} return TRUE; } /// /// Register the callback fucnction for dropping files /// /// /// BOOL UNIWINC_API RegisterDropFilesCallback(FilesCallback callback) { if (callback == nullptr) return FALSE; hDropFilesHandler_ = callback; return TRUE; } /// /// Unregister the callback function /// /// BOOL UNIWINC_API UnregisterDropFilesCallback() { hDropFilesHandler_ = nullptr; return TRUE; } #pragma endregion For file dropping and window procedure // ======================================================================== #pragma region File dialogs /// /// Convert multi-selection files string to new-line separated string /// /// /// BOOL parsePaths(LPWSTR lpBuffer, const UINT32 nBufferLength) { // 複製を保存するのに必要な長さを調べる int bufferLength = nBufferLength; int length = bufferLength; // OPENFILENAME中で実際に利用した長さ int pathCount = 0; // NULL区切りでみた行数。複数選択時は1より大きくなる int firstLineLength = bufferLength; // 先頭要素の長さ。複数選択時にはフォルダ名が入る部分 // 要素の数、全体の文字数を数える for (int i = 0; i < bufferLength; i++) { if (lpBuffer[i] == L'\0') { if (firstLineLength == bufferLength) firstLineLength = i; pathCount++; length = i; // とりあえずここまでの文字数は利用している if ((i < (bufferLength - 1)) && (lpBuffer[i + 1] == L'\0')) { // NULLが連続していれば終端とみなす(連続する後ろがもう無い場合も終端) break; } else { // 次の文字がNULLでなければスキップできる i++; } } } // NULLが最後に来なかった場合は行数追加できていないので、1増やしておく if (length == bufferLength) pathCount++; // 複数選択でない場合は改行区切りやフォルダ名追加の必要はなく、そのままの値で終了 if (pathCount <= 1) { return TRUE; } // パスのリストが返却バッファに入りきらない場合は失敗として空で返す if (((firstLineLength + 2) * pathCount + length - firstLineLength) > bufferLength) { // 結果返却バッファをクリア ZeroMemory(lpBuffer, bufferLength * sizeof(WCHAR)); return FALSE; } // 完全なパスを改行区切り文字列で生成 LPWSTR buffer = new (std::nothrow)WCHAR[length]; if (buffer == NULL) { ZeroMemory(lpBuffer, bufferLength * sizeof(WCHAR)); return FALSE; } ZeroMemory(buffer, length * sizeof(WCHAR)); // 一時バッファに内容を退避 memcpy(buffer, lpBuffer, length * sizeof(WCHAR)); // 結果返却バッファをクリア ZeroMemory(lpBuffer, bufferLength * sizeof(WCHAR)); int offset = 0; int index = firstLineLength; for (int i = firstLineLength; i < length; i++) { if (buffer[i] == NULL) { // 改行で区切り if (offset > 0) { lpBuffer[offset] = L'\n'; offset++; } // フォルダ名部分を複製 memcpy(lpBuffer + offset, buffer, firstLineLength * sizeof(WCHAR)); offset += firstLineLength; lpBuffer[offset] = L'\\'; // パスの区切り文字も追加 offset++; } else { // NULL文字でなければファイル名の一部として追加 lpBuffer[offset] = buffer[i]; offset++; } } //// デバッグ用 //swprintf_s(lpBuffer, bufferSize, L"Files: bufferSize %d, length %d, pathCount %d, firstLineLength %d, Dir %s", bufferSize, length, pathCount, firstLineLength, buffer); delete[] buffer; return TRUE; } /// /// Create a null ended extension string from the first extension in the input string /// e.g. "TitleA\ttExtA1\tExtA2\t...ExtAn\nTitleB\tExtB1\tExtB2...ExtBn\n" /// /// /// Null ended string LPWSTR createDefaultExtString(const LPWSTR lpsFormTypeFilterText) { const int MAX_EXT_LENGTH = 32; int resultIndex = 0; LPWSTR lpsResult = nullptr; if (lpsFormTypeFilterText != nullptr) { lpsResult = new (std::nothrow)WCHAR[MAX_EXT_LENGTH]; if (lpsResult != nullptr) { ZeroMemory(lpsResult, MAX_EXT_LENGTH * sizeof(WCHAR)); int inputIndex = 0; int section = 0; // 0:title, 1:extensions bool includesWildCard = false; while (resultIndex < (MAX_EXT_LENGTH - 1)) { WCHAR c = lpsFormTypeFilterText[inputIndex++]; // End of the input string if (c == L'\0') { break; } // Tab separated else if (c == L'\t') { // The first element is title if (section <= 0) { section = 1; } else { break; } } // New line else if (c == L'\n') { break; } // Other character else { if (section == 1) { // Wild card if (c == L'*') { includesWildCard = true; break; } // A character of extension lpsResult[resultIndex++] = c; } } } lpsResult[resultIndex++] = L'\0'; if (includesWildCard) { delete[] lpsResult; lpsResult = nullptr; } } } return lpsResult; } /// /// Create a null separated filter text from tab separated text /// e.g. "TitleA\ttExtA1\tExtA2\t...ExtAn\nTitleB\tExtB1\tExtB2...ExtBn\n" /// /// /// e.g. "TitleA\0*.tExtA1;*.ExtA2;...;*.ExtAn\0TitleB\0*.ExtB1;*.ExtB2;...;*.ExtBn\0\0" LPWSTR createFilterString(const LPWSTR lpsFormTypeFilterText) { const int MAX_FILTER_LENGTH = 1024; int resultIndex = 0; LPWSTR lpsResult = nullptr; if (lpsFormTypeFilterText != nullptr) { lpsResult = new (std::nothrow)WCHAR[MAX_FILTER_LENGTH]; if (lpsResult != nullptr) { //ZeroMemory(lpsFilter, MAX_FILTER_LENGTH * sizeof(WCHAR)); int firstExtStartIndex = 0; int firstExtEndIndex = 0; int inputIndex = 0; int section = 0; // 0:title, 1:extensions bool isFirstChar = true; while (resultIndex < (MAX_FILTER_LENGTH - 2)) { WCHAR c = lpsFormTypeFilterText[inputIndex++]; // End of the input string if (c == L'\0') { break; } // Tab separated else if (c == L'\t') { // The first element is title if (section <= 0) { lpsResult[resultIndex++] = L'\0'; section = 1; } else { // In extensions' section lpsResult[resultIndex++] = ';'; } isFirstChar = true; } // New line else if (c == L'\n') { // If there is no extension, add separator to skip to next pair if (section <= 0) { lpsResult[resultIndex++] = L'\0'; } // The end of title and extensions pair lpsResult[resultIndex++] = L'\0'; section = 0; isFirstChar = true; } // Other character else { // Add "*." before each extension. if (isFirstChar && section == 1) { if (resultIndex >= (MAX_FILTER_LENGTH - 4)) break; lpsResult[resultIndex++] = '*'; lpsResult[resultIndex++] = '.'; } lpsResult[resultIndex++] = c; isFirstChar = false; } } // Terminated by two NULL characters lpsResult[resultIndex++] = L'\0'; lpsResult[resultIndex++] = L'\0'; } } return lpsResult; } DWORD GetPanelFlags(const INT32 flags) { DWORD result = OFN_EXPLORER | OFN_NOCHANGEDIR; // Default if ((flags & (INT32)PanelFlag::AllowMultiSelect) > 0) result |= OFN_ALLOWMULTISELECT; if ((flags & (INT32)PanelFlag::FileMustExist) > 0) result |= OFN_FILEMUSTEXIST; if ((flags & (INT32)PanelFlag::FolderMustExist) > 0) result |= OFN_PATHMUSTEXIST; if ((flags & (INT32)PanelFlag::ShowHidden) > 0) result |= OFN_FORCESHOWHIDDEN; if ((flags & (INT32)PanelFlag::OverwritePrompt) > 0) result |= OFN_OVERWRITEPROMPT; if ((flags & (INT32)PanelFlag::CreatePrompt) > 0) result |= OFN_CREATEPROMPT; return result; } BOOL UNIWINC_API OpenFilePanel(const PPANELSETTINGS pSettings, LPWSTR pResultBuffer, const UINT32 nBufferSize) { // モーダルにするため、ウィンドウハンドル未取得なら探して設定 HWND hwnd = hTargetWnd_; if (hwnd == NULL) { hwnd = hPanelOwnerWnd_; if (hwnd == NULL) { hwnd = hPanelOwnerWnd_ = FindOwnerWindowHandle(); } } LPWSTR lpszDefaultExt = createDefaultExtString(pSettings->lpszFilter); LPWSTR lpsFilter = createFilterString(pSettings->lpszFilter); OPENFILENAMEW ofn; ZeroMemory(&ofn, sizeof(ofn)); ofn.lStructSize = sizeof(ofn); ofn.hwndOwner = hwnd; ofn.lpstrTitle = pSettings->lpszTitle; ofn.lpstrFilter = lpsFilter; ofn.lpstrInitialDir = pSettings->lpszInitialDir; //ofn.lpstrDefExt = pSettings->lpszDefaultExt; // Not implemented ofn.lpstrDefExt = lpszDefaultExt; ofn.Flags = GetPanelFlags(pSettings->nFlags); BOOL result = FALSE; if ((pResultBuffer != nullptr) && (nBufferSize > 0)) { ZeroMemory(pResultBuffer, nBufferSize * sizeof(WCHAR)); ofn.lpstrFile = pResultBuffer; ofn.nMaxFile = nBufferSize; // Default path if (pSettings->lpszInitialFile != nullptr) { wcscpy_s(ofn.lpstrFile, ofn.nMaxFile, pSettings->lpszInitialFile); } result = GetOpenFileNameW(&ofn); } if (lpsFilter != nullptr) delete[] lpsFilter; if (lpszDefaultExt!= nullptr) delete[] lpszDefaultExt; if (result) { return parsePaths(pResultBuffer, nBufferSize); } return FALSE; } BOOL UNIWINC_API OpenSavePanel(const PPANELSETTINGS pSettings, LPWSTR pResultBuffer, const UINT32 nBufferSize) { // モーダルにするため、ウィンドウハンドル未取得なら探して設定 HWND hwnd = hTargetWnd_; if (hwnd == NULL) { hwnd = hPanelOwnerWnd_; if (hwnd == NULL) { hwnd = hPanelOwnerWnd_ = FindOwnerWindowHandle(); } } LPWSTR lpszDefaultExt = createDefaultExtString(pSettings->lpszFilter); LPWSTR lpsFilter = createFilterString(pSettings->lpszFilter); OPENFILENAMEW ofn; ZeroMemory(&ofn, sizeof(ofn)); ofn.lStructSize = sizeof(ofn); ofn.hwndOwner = hwnd; ofn.lpstrTitle = pSettings->lpszTitle; ofn.lpstrFilter = lpsFilter; ofn.lpstrInitialDir = pSettings->lpszInitialDir; //ofn.lpstrDefExt = pSettings->lpszDefaultExt; // Not implemented ofn.lpstrDefExt = lpszDefaultExt; ofn.Flags = GetPanelFlags(pSettings->nFlags); BOOL result = FALSE; if ((pResultBuffer != nullptr) && (nBufferSize > 0)) { ZeroMemory(pResultBuffer, nBufferSize * sizeof(WCHAR)); ofn.lpstrFile = pResultBuffer; ofn.nMaxFile = nBufferSize; // Default path if (pSettings->lpszInitialFile != nullptr) { wcscpy_s(ofn.lpstrFile, ofn.nMaxFile, pSettings->lpszInitialFile); } result = GetSaveFileNameW(&ofn); } if (lpsFilter != nullptr) delete[] lpsFilter; if (lpszDefaultExt != nullptr) delete[] lpszDefaultExt; if (result) { return parsePaths(pResultBuffer, nBufferSize); } return FALSE; } #pragma endregion File dialogs /// /// デバッグ時に情報を渡すための関数 /// /// INT32 UNIWINC_API GetDebugInfo() { LONG style = GetWindowLong(hTargetWnd_, GWL_STYLE); return style; } // ======================================================================== #pragma region Windows only public functions /// /// 現在選択されているウィンドウハンドルを取得 /// /// HWND UNIWINC_API GetWindowHandle() { return hTargetWnd_; } /// /// 壁紙化の親となるウィンドウハンドルを取得 /// /// HWND UNIWINC_API GetDesktopWindowHandle() { return hDesktopWnd_; } /// /// 自分のプロセスIDを取得 /// /// DWORD UNIWINC_API GetMyProcessId() { return GetCurrentProcessId(); } #pragma endregion Windows-only public functions ================================================ FILE: VisualStudio/LibUniWinC/libuniwinc.h ================================================ #pragma once #ifdef LIBUNIWINC_EXPORTS #define UNIWINC_API __stdcall #define UNIWINC_EXPORT extern "C" __declspec(dllexport) #else #define UNIWINC_API __stdcall #define UNIWINC_EXPORT extern "C" __declspec(dllimport) #endif // Maximum monitor number that this library could be handle #define UNIWINC_MAX_MONITORCOUNT 32 // Maximum length for a classname #define UNIWINC_MAX_CLASSNAME 32 // Methods to transparent the window enum class TransparentType : int { None = 0, Alpha = 1, ColorKey = 2, }; // State changed event type (Experimental) enum class WindowStateEventType : int { None = 0, StyleChanged = 1, Resized = 2, // 以下はStyleChangedに加えて詳細情報を伝えるために用意(開発時のデバッグ用途が主のため今後の仕様変更はありえる) // 1: StyleChanged flag, 8: Enabled flag TopMostEnabled = 16 + 1 + 8, TopMostDisabled = 16 + 1, BottomMostEnabled = 32 + 1 + 8, BottomMostDisabled = 32 + 1, WallpaperModeEnabled = 64 + 1 + 8, WallpaperModeDisabled = 64 + 1, }; enum class PanelFlag : int { None = 0, FileMustExist = 1, FolderMustExist = 2, AllowMultiSelect = 4, OverwritePrompt = 256, CreatePrompt = 512, ShowHidden = 4096, ReferLink = 8192, }; // Struct to transmit file panel settings #pragma pack(push, 1) typedef struct tagPANELSETTINGS { INT32 nStructSize; INT32 nFlags; LPWSTR lpszTitle; LPWSTR lpszFilter; LPWSTR lpszInitialFile; LPWSTR lpszInitialDir; LPWSTR lpszDefaultExt; } PANELSETTINGS, *PPANELSETTINGS; #pragma pack(pop) // Function called when window style (e.g. maximized, transparetize, etc.) // param: The argument is indicate the kind of event using WindowStyleChangedCallback = void(UNIWINC_API *)(INT32); // Function called when files have selected // param: The argument is a \0 ended UTF-16 string with each path separated by \n using FilesCallback = void(UNIWINC_API *)(WCHAR*); // Function called when displays have changed // param: The argument is the numbers of monitors using MonitorChangedCallback = void(UNIWINC_API *)(INT32); // Winodow state functions UNIWINC_EXPORT BOOL UNIWINC_API IsActive(); UNIWINC_EXPORT BOOL UNIWINC_API IsTransparent(); UNIWINC_EXPORT BOOL UNIWINC_API IsBorderless(); UNIWINC_EXPORT BOOL UNIWINC_API IsTopmost(); UNIWINC_EXPORT BOOL UNIWINC_API IsBottommost(); UNIWINC_EXPORT BOOL UNIWINC_API IsBackground(); UNIWINC_EXPORT BOOL UNIWINC_API IsMaximized(); UNIWINC_EXPORT BOOL UNIWINC_API IsMinimized(); UNIWINC_EXPORT BOOL UNIWINC_API IsFreePositioningEnabled(); UNIWINC_EXPORT void UNIWINC_API Update(); UNIWINC_EXPORT BOOL UNIWINC_API AttachMyWindow(); UNIWINC_EXPORT BOOL UNIWINC_API AttachMyOwnerWindow(); UNIWINC_EXPORT BOOL UNIWINC_API AttachMyActiveWindow(); UNIWINC_EXPORT BOOL UNIWINC_API DetachWindow(); UNIWINC_EXPORT void UNIWINC_API SetTransparent(const BOOL isTransparent); UNIWINC_EXPORT void UNIWINC_API SetBorderless(const BOOL isBorderless); UNIWINC_EXPORT void UNIWINC_API SetAlphaValue(const float alpha); UNIWINC_EXPORT void UNIWINC_API SetTopmost(const BOOL isTopmost); UNIWINC_EXPORT void UNIWINC_API SetBottommost(const BOOL isBottommost); UNIWINC_EXPORT void UNIWINC_API SetBackground(const BOOL isBackground); UNIWINC_EXPORT void UNIWINC_API SetClickThrough(const BOOL isTransparent); UNIWINC_EXPORT void UNIWINC_API SetMaximized(const BOOL isZoomed); UNIWINC_EXPORT void UNIWINC_API EnableFreePositioning(const BOOL isFree); UNIWINC_EXPORT BOOL UNIWINC_API SetPosition(const float x, const float y); UNIWINC_EXPORT BOOL UNIWINC_API GetPosition(float* x, float* y); UNIWINC_EXPORT BOOL UNIWINC_API SetSize(const float width, const float height); UNIWINC_EXPORT BOOL UNIWINC_API GetSize(float* width, float* height); UNIWINC_EXPORT BOOL UNIWINC_API GetClientSize(float* width, float* height); UNIWINC_EXPORT BOOL UNIWINC_API GetClientRectangle(float* x, float* y, float* width, float* height); UNIWINC_EXPORT INT32 UNIWINC_API GetCurrentMonitor(); // Event handling UNIWINC_EXPORT BOOL UNIWINC_API RegisterWindowStyleChangedCallback(WindowStyleChangedCallback callback); UNIWINC_EXPORT BOOL UNIWINC_API UnregisterWindowStyleChangedCallback(); UNIWINC_EXPORT BOOL UNIWINC_API RegisterMonitorChangedCallback(MonitorChangedCallback callback); UNIWINC_EXPORT BOOL UNIWINC_API UnregisterMonitorChangedCallback(); UNIWINC_EXPORT BOOL UNIWINC_API RegisterDropFilesCallback(FilesCallback callback); UNIWINC_EXPORT BOOL UNIWINC_API UnregisterDropFilesCallback(); // Monitor Info. UNIWINC_EXPORT INT32 UNIWINC_API GetMonitorCount(); UNIWINC_EXPORT BOOL UNIWINC_API GetMonitorRectangle(const INT32 monitorIndex, float* x, float* y, float* width, float* height); // Mouse pointer UNIWINC_EXPORT BOOL UNIWINC_API SetCursorPosition(const float x, const float y); UNIWINC_EXPORT BOOL UNIWINC_API GetCursorPosition(float* x, float* y); UNIWINC_EXPORT INT32 UNIWINC_API GetMouseButtons(); // Keyboard UNIWINC_EXPORT INT32 UNIWINC_API GetModifierKeys(); // File drop UNIWINC_EXPORT BOOL UNIWINC_API SetAllowDrop(const BOOL bEnabled); // File panels UNIWINC_EXPORT BOOL UNIWINC_API OpenFilePanel(const PPANELSETTINGS pSettings, LPWSTR pResultBuffer, const UINT32 nBufferSize); UNIWINC_EXPORT BOOL UNIWINC_API OpenSavePanel(const PPANELSETTINGS pSettings, LPWSTR pResultBuffer, const UINT32 nBufferSize); // Debug function UNIWINC_EXPORT INT32 UNIWINC_API GetDebugInfo(); // Windows only UNIWINC_EXPORT void UNIWINC_API SetTransparentType(const TransparentType type); UNIWINC_EXPORT void UNIWINC_API SetKeyColor(const COLORREF color); UNIWINC_EXPORT HWND UNIWINC_API GetWindowHandle(); UNIWINC_EXPORT HWND UNIWINC_API GetDesktopWindowHandle(); UNIWINC_EXPORT DWORD UNIWINC_API GetMyProcessId(); UNIWINC_EXPORT BOOL UNIWINC_API AttachWindowHandle(const HWND); ================================================ FILE: VisualStudio/LibUniWinC/pch.cpp ================================================ // pch.cpp: プリコンパイル済みヘッダーに対応するソース ファイル #include "pch.h" // プリコンパイル済みヘッダーを使用している場合、コンパイルを成功させるにはこのソース ファイルが必要です。 ================================================ FILE: VisualStudio/LibUniWinC/pch.h ================================================ // pch.h: プリコンパイル済みヘッダー ファイルです。 // 次のファイルは、その後のビルドのビルド パフォーマンスを向上させるため 1 回だけコンパイルされます。 // コード補完や多くのコード参照機能などの IntelliSense パフォーマンスにも影響します。 // ただし、ここに一覧表示されているファイルは、ビルド間でいずれかが更新されると、すべてが再コンパイルされます。 // 頻繁に更新するファイルをここに追加しないでください。追加すると、パフォーマンス上の利点がなくなります。 #ifndef PCH_H #define PCH_H // プリコンパイルするヘッダーをここに追加します #include "framework.h" #endif //PCH_H ================================================ FILE: VisualStudio/LibUniWinC/resource.h ================================================ //{{NO_DEPENDENCIES}} // Microsoft Visual C++ generated include file. // Used by Resource.rc // VIuWFNg̎̊l // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 101 #define _APS_NEXT_COMMAND_VALUE 40001 #define _APS_NEXT_CONTROL_VALUE 1001 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif ================================================ FILE: VisualStudio/LibUniWinC.sln ================================================  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.30503.244 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestLibUniWinC", "TestLibUniWinC\TestLibUniWinC.csproj", "{692F2A0A-92CB-4EAD-AE40-2BFF56098881}" ProjectSection(ProjectDependencies) = postProject {517DFA3A-0554-4F0C-B219-55E7A3B4B14F} = {517DFA3A-0554-4F0C-B219-55E7A3B4B14F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibUniWinC", "LibUniWinC\LibUniWinC.vcxproj", "{517DFA3A-0554-4F0C-B219-55E7A3B4B14F}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 Debug|x86 = Debug|x86 Release|x64 = Release|x64 Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Debug|x64.ActiveCfg = Debug|x64 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Debug|x64.Build.0 = Debug|x64 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Debug|x86.ActiveCfg = Debug|Win32 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Debug|x86.Build.0 = Debug|Win32 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Release|x64.ActiveCfg = Release|x64 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Release|x64.Build.0 = Release|x64 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Release|x86.ActiveCfg = Release|Win32 {517DFA3A-0554-4F0C-B219-55E7A3B4B14F}.Release|x86.Build.0 = Release|Win32 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Debug|x64.ActiveCfg = Debug|x64 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Debug|x64.Build.0 = Debug|x64 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Debug|x86.ActiveCfg = Debug|x86 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Debug|x86.Build.0 = Debug|x86 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Release|x64.ActiveCfg = Release|x64 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Release|x64.Build.0 = Release|x64 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Release|x86.ActiveCfg = Release|x86 {692F2A0A-92CB-4EAD-AE40-2BFF56098881}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {E543736E-41A5-4A67-88D9-59762522964A} EndGlobalSection EndGlobal ================================================ FILE: VisualStudio/TestLibUniWinC/Additional/WindowInfo.cs ================================================ using System; using System.Collections.Generic; using System.Diagnostics; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TestLibUniWinC { /// /// 個々のウィンドウ情報 /// internal class WindowInfo { public IntPtr Handle; public string Text; public string ProcessName; public bool IsChild; public WindowInfo(IntPtr hWnd, Process process, string title, bool isChild = false) { this.ProcessName = process.ProcessName; this.Handle = hWnd; this.Text = title; this.IsChild = isChild; } override public string ToString() { if (string.IsNullOrEmpty(Text)) return $"{Handle.ToString("X8")} {ProcessName}"; else return $"{Handle.ToString("X8")} {ProcessName}-{Text}"; } } } ================================================ FILE: VisualStudio/TestLibUniWinC/Additional/WindowList.cs ================================================ using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; namespace TestLibUniWinC { /// /// 開かれているウィンドウ一覧を保持するクラス /// internal class WindowList { //[UnmanagedFunctionPointer(CallingConvention.Winapi)] delegate bool EnumWindowsDelegate(IntPtr hWnd, IntPtr lParam); [DllImport("user32.dll", SetLastError = true)] [return: MarshalAs(UnmanagedType.Bool)] static extern bool EnumWindows(EnumWindowsDelegate lpEnumFunc, IntPtr lParam); [DllImport("user32.dll", SetLastError = true)] [return: MarshalAs(UnmanagedType.Bool)] static extern bool EnumChildWindows(IntPtr hWnd, EnumWindowsDelegate lpEnumFunc, IntPtr lParam); [DllImport("user32.dll", CharSet = CharSet.Auto)] public static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount); [DllImport("user32.dll", CharSet = CharSet.Auto)] public static extern int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount); [DllImport("user32.dll")] public static extern int GetWindowThreadProcessId(IntPtr hWnd, out long lpdwProcessId); [DllImport("user32.dll")] public static extern bool IsWindowVisible(IntPtr hWnd); /// /// 現在開かれているウィンドウ情報を一通り保持する辞書 /// private List windowList = new List(); /// /// ウィンドウクラス一覧を取得 /// public void Load(bool includeChildren = false) { windowList.Clear(); // 重複を無くすため、列挙したhWndを記憶 List hWndList = new List(); //EnumWindows(EnumWindowCallback, IntPtr.Zero); EnumWindows(new EnumWindowsDelegate(delegate (IntPtr hWnd, IntPtr lParam) { if (hWndList.Contains(hWnd)) return true; StringBuilder sb = new StringBuilder(1024); //// ウィンドウタイトルがないものは除外するなら下記2行の代わりにこの行を使う //if (IsWindowVisible(hWnd) != 0 && GetWindowText(hWnd, sb, sb.Capacity) != 0) GetWindowText(hWnd, sb, sb.Capacity); if (IsWindowVisible(hWnd)) { GetWindowThreadProcessId(hWnd, out long pid); Process p = Process.GetProcessById((int)pid); windowList.Add(new WindowInfo(hWnd, p, sb.ToString())); } if (includeChildren) { // 子ウィンドウも一覧に含める EnumChildWindows(hWnd, new EnumWindowsDelegate(delegate (IntPtr hWndChild, IntPtr lParamChild) { if (hWndList.Contains(hWnd)) return true; StringBuilder sbChild = new StringBuilder(1024); if (IsWindowVisible(hWndChild) && GetWindowText(hWndChild, sbChild, sbChild.Capacity) != 0) { GetWindowThreadProcessId(hWndChild, out long pid); Process p = Process.GetProcessById((int)pid); windowList.Add(new WindowInfo(hWndChild, p, sbChild.ToString(), true)); } return true; }), IntPtr.Zero); } return true; }), IntPtr.Zero); } public WindowInfo[] GetArray() { return windowList.ToArray(); } } } ================================================ FILE: VisualStudio/TestLibUniWinC/App.config ================================================ ================================================ FILE: VisualStudio/TestLibUniWinC/FormMain.Designer.cs ================================================ namespace TestLibUniWinC { partial class FormMain { /// /// 必要なデザイナー変数です。 /// private System.ComponentModel.IContainer components = null; /// /// 使用中のリソースをすべてクリーンアップします。 /// /// マネージド リソースを破棄する場合は true を指定し、その他の場合は false を指定します。 protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows フォーム デザイナーで生成されたコード /// /// デザイナー サポートに必要なメソッドです。このメソッドの内容を /// コード エディターで変更しないでください。 /// private void InitializeComponent() { this.components = new System.ComponentModel.Container(); this.comboBoxFitMonitor = new System.Windows.Forms.ComboBox(); this.buttonFitMonitor = new System.Windows.Forms.Button(); this.timerMainLoop = new System.Windows.Forms.Timer(this.components); this.trackBarAlpha = new System.Windows.Forms.TrackBar(); this.groupBoxWindowSettings = new System.Windows.Forms.GroupBox(); this.comboBoxWindowClass = new System.Windows.Forms.ComboBox(); this.label2 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); this.checkBoxBottommost = new System.Windows.Forms.CheckBox(); this.comboBoxTransparentType = new System.Windows.Forms.ComboBox(); this.checkBoxTopmost = new System.Windows.Forms.CheckBox(); this.checkBoxTransparent = new System.Windows.Forms.CheckBox(); this.groupBoxInformation = new System.Windows.Forms.GroupBox(); this.buttonShowMonitorInfo = new System.Windows.Forms.Button(); this.buttonCheck = new System.Windows.Forms.Button(); this.textBoxMessage = new System.Windows.Forms.TextBox(); this.groupBoxFileHandling = new System.Windows.Forms.GroupBox(); this.checkBoxAllowDrop = new System.Windows.Forms.CheckBox(); this.buttonSaveFile = new System.Windows.Forms.Button(); this.buttonOpenFile = new System.Windows.Forms.Button(); this.buttonSetTarget = new System.Windows.Forms.Button(); ((System.ComponentModel.ISupportInitialize)(this.trackBarAlpha)).BeginInit(); this.groupBoxWindowSettings.SuspendLayout(); this.groupBoxInformation.SuspendLayout(); this.groupBoxFileHandling.SuspendLayout(); this.SuspendLayout(); // // comboBoxFitMonitor // this.comboBoxFitMonitor.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.comboBoxFitMonitor.FormattingEnabled = true; this.comboBoxFitMonitor.Location = new System.Drawing.Point(24, 140); this.comboBoxFitMonitor.Name = "comboBoxFitMonitor"; this.comboBoxFitMonitor.Size = new System.Drawing.Size(121, 23); this.comboBoxFitMonitor.TabIndex = 3; // // buttonFitMonitor // this.buttonFitMonitor.Location = new System.Drawing.Point(161, 136); this.buttonFitMonitor.Margin = new System.Windows.Forms.Padding(4); this.buttonFitMonitor.Name = "buttonFitMonitor"; this.buttonFitMonitor.Size = new System.Drawing.Size(67, 29); this.buttonFitMonitor.TabIndex = 0; this.buttonFitMonitor.Text = "Fit"; this.buttonFitMonitor.UseVisualStyleBackColor = true; this.buttonFitMonitor.Click += new System.EventHandler(this.buttonFitMonitor_Click); // // timerMainLoop // this.timerMainLoop.Interval = 50; this.timerMainLoop.Tick += new System.EventHandler(this.timerMainLoop_Tick); // // trackBarAlpha // this.trackBarAlpha.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.trackBarAlpha.LargeChange = 16; this.trackBarAlpha.Location = new System.Drawing.Point(425, 109); this.trackBarAlpha.Maximum = 255; this.trackBarAlpha.Name = "trackBarAlpha"; this.trackBarAlpha.Size = new System.Drawing.Size(289, 56); this.trackBarAlpha.SmallChange = 8; this.trackBarAlpha.TabIndex = 4; this.trackBarAlpha.TickFrequency = 16; this.trackBarAlpha.Value = 255; this.trackBarAlpha.Scroll += new System.EventHandler(this.trackBarAlpha_Scroll); // // groupBoxWindowSettings // this.groupBoxWindowSettings.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.groupBoxWindowSettings.BackColor = System.Drawing.SystemColors.Control; this.groupBoxWindowSettings.Controls.Add(this.comboBoxWindowClass); this.groupBoxWindowSettings.Controls.Add(this.label2); this.groupBoxWindowSettings.Controls.Add(this.label1); this.groupBoxWindowSettings.Controls.Add(this.checkBoxBottommost); this.groupBoxWindowSettings.Controls.Add(this.comboBoxTransparentType); this.groupBoxWindowSettings.Controls.Add(this.buttonSetTarget); this.groupBoxWindowSettings.Controls.Add(this.buttonFitMonitor); this.groupBoxWindowSettings.Controls.Add(this.comboBoxFitMonitor); this.groupBoxWindowSettings.Controls.Add(this.trackBarAlpha); this.groupBoxWindowSettings.Controls.Add(this.checkBoxTopmost); this.groupBoxWindowSettings.Controls.Add(this.checkBoxTransparent); this.groupBoxWindowSettings.Location = new System.Drawing.Point(12, 12); this.groupBoxWindowSettings.Name = "groupBoxWindowSettings"; this.groupBoxWindowSettings.Size = new System.Drawing.Size(731, 177); this.groupBoxWindowSettings.TabIndex = 5; this.groupBoxWindowSettings.TabStop = false; this.groupBoxWindowSettings.Text = "Window settings"; // // comboBoxWindowClass // this.comboBoxWindowClass.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.comboBoxWindowClass.FormattingEnabled = true; this.comboBoxWindowClass.Location = new System.Drawing.Point(425, 25); this.comboBoxWindowClass.Name = "comboBoxWindowClass"; this.comboBoxWindowClass.Size = new System.Drawing.Size(280, 23); this.comboBoxWindowClass.TabIndex = 8; // // label2 // this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(368, 31); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(48, 15); this.label2.TabIndex = 7; this.label2.Text = "Target"; // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(368, 123); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(41, 15); this.label1.TabIndex = 7; this.label1.Text = "Alpha"; // // checkBoxBottommost // this.checkBoxBottommost.AutoSize = true; this.checkBoxBottommost.Location = new System.Drawing.Point(14, 97); this.checkBoxBottommost.Margin = new System.Windows.Forms.Padding(4); this.checkBoxBottommost.Name = "checkBoxBottommost"; this.checkBoxBottommost.Size = new System.Drawing.Size(107, 19); this.checkBoxBottommost.TabIndex = 3; this.checkBoxBottommost.Text = "Bottommost"; this.checkBoxBottommost.UseVisualStyleBackColor = true; this.checkBoxBottommost.CheckedChanged += new System.EventHandler(this.checkBoxBottommost_CheckedChanged); // // comboBoxTransparentType // this.comboBoxTransparentType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.comboBoxTransparentType.FormattingEnabled = true; this.comboBoxTransparentType.Location = new System.Drawing.Point(144, 31); this.comboBoxTransparentType.Name = "comboBoxTransparentType"; this.comboBoxTransparentType.Size = new System.Drawing.Size(121, 23); this.comboBoxTransparentType.TabIndex = 3; this.comboBoxTransparentType.SelectedIndexChanged += new System.EventHandler(this.comboBoxTransparentType_SelectedIndexChanged); // // checkBoxTopmost // this.checkBoxTopmost.AutoSize = true; this.checkBoxTopmost.Location = new System.Drawing.Point(16, 70); this.checkBoxTopmost.Margin = new System.Windows.Forms.Padding(4); this.checkBoxTopmost.Name = "checkBoxTopmost"; this.checkBoxTopmost.Size = new System.Drawing.Size(84, 19); this.checkBoxTopmost.TabIndex = 4; this.checkBoxTopmost.Text = "Topmost"; this.checkBoxTopmost.UseVisualStyleBackColor = true; this.checkBoxTopmost.CheckedChanged += new System.EventHandler(this.checkBoxTopmost_CheckedChanged); // // checkBoxTransparent // this.checkBoxTransparent.AutoSize = true; this.checkBoxTransparent.Location = new System.Drawing.Point(16, 33); this.checkBoxTransparent.Margin = new System.Windows.Forms.Padding(4); this.checkBoxTransparent.Name = "checkBoxTransparent"; this.checkBoxTransparent.Size = new System.Drawing.Size(105, 19); this.checkBoxTransparent.TabIndex = 6; this.checkBoxTransparent.Text = "Transparent"; this.checkBoxTransparent.UseVisualStyleBackColor = true; this.checkBoxTransparent.CheckedChanged += new System.EventHandler(this.checkBoxTransparent_CheckedChanged); // // groupBoxInformation // this.groupBoxInformation.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.groupBoxInformation.BackColor = System.Drawing.SystemColors.Control; this.groupBoxInformation.Controls.Add(this.buttonShowMonitorInfo); this.groupBoxInformation.Controls.Add(this.buttonCheck); this.groupBoxInformation.Controls.Add(this.textBoxMessage); this.groupBoxInformation.Location = new System.Drawing.Point(12, 269); this.groupBoxInformation.Name = "groupBoxInformation"; this.groupBoxInformation.Size = new System.Drawing.Size(731, 279); this.groupBoxInformation.TabIndex = 6; this.groupBoxInformation.TabStop = false; this.groupBoxInformation.Text = "Information"; // // buttonShowMonitorInfo // this.buttonShowMonitorInfo.Location = new System.Drawing.Point(144, 22); this.buttonShowMonitorInfo.Margin = new System.Windows.Forms.Padding(4); this.buttonShowMonitorInfo.Name = "buttonShowMonitorInfo"; this.buttonShowMonitorInfo.Size = new System.Drawing.Size(129, 29); this.buttonShowMonitorInfo.TabIndex = 3; this.buttonShowMonitorInfo.Text = "Monitor Info."; this.buttonShowMonitorInfo.UseVisualStyleBackColor = true; this.buttonShowMonitorInfo.Click += new System.EventHandler(this.buttonShowMonitorInfo_Click); // // buttonCheck // this.buttonCheck.Location = new System.Drawing.Point(7, 22); this.buttonCheck.Margin = new System.Windows.Forms.Padding(4); this.buttonCheck.Name = "buttonCheck"; this.buttonCheck.Size = new System.Drawing.Size(129, 29); this.buttonCheck.TabIndex = 4; this.buttonCheck.Text = "Window Info."; this.buttonCheck.UseVisualStyleBackColor = true; this.buttonCheck.Click += new System.EventHandler(this.buttonCheck_Click); // // textBoxMessage // this.textBoxMessage.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.textBoxMessage.BackColor = System.Drawing.Color.Black; this.textBoxMessage.ForeColor = System.Drawing.Color.White; this.textBoxMessage.Location = new System.Drawing.Point(7, 59); this.textBoxMessage.Margin = new System.Windows.Forms.Padding(4); this.textBoxMessage.Multiline = true; this.textBoxMessage.Name = "textBoxMessage"; this.textBoxMessage.Size = new System.Drawing.Size(717, 213); this.textBoxMessage.TabIndex = 2; // // groupBoxFileHandling // this.groupBoxFileHandling.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.groupBoxFileHandling.BackColor = System.Drawing.SystemColors.Control; this.groupBoxFileHandling.Controls.Add(this.checkBoxAllowDrop); this.groupBoxFileHandling.Controls.Add(this.buttonSaveFile); this.groupBoxFileHandling.Controls.Add(this.buttonOpenFile); this.groupBoxFileHandling.Location = new System.Drawing.Point(12, 195); this.groupBoxFileHandling.Name = "groupBoxFileHandling"; this.groupBoxFileHandling.Size = new System.Drawing.Size(731, 68); this.groupBoxFileHandling.TabIndex = 5; this.groupBoxFileHandling.TabStop = false; this.groupBoxFileHandling.Text = "File handling"; // // checkBoxAllowDrop // this.checkBoxAllowDrop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.checkBoxAllowDrop.AutoSize = true; this.checkBoxAllowDrop.Location = new System.Drawing.Point(574, 29); this.checkBoxAllowDrop.Margin = new System.Windows.Forms.Padding(4); this.checkBoxAllowDrop.Name = "checkBoxAllowDrop"; this.checkBoxAllowDrop.Size = new System.Drawing.Size(125, 19); this.checkBoxAllowDrop.TabIndex = 8; this.checkBoxAllowDrop.Text = "Allow drop files"; this.checkBoxAllowDrop.UseVisualStyleBackColor = true; this.checkBoxAllowDrop.Click += new System.EventHandler(this.checkBoxAllowDrop_CheckedChanged); // // buttonSaveFile // this.buttonSaveFile.Location = new System.Drawing.Point(153, 23); this.buttonSaveFile.Margin = new System.Windows.Forms.Padding(4); this.buttonSaveFile.Name = "buttonSaveFile"; this.buttonSaveFile.Size = new System.Drawing.Size(129, 29); this.buttonSaveFile.TabIndex = 6; this.buttonSaveFile.Text = "Save-panel"; this.buttonSaveFile.UseVisualStyleBackColor = true; this.buttonSaveFile.Click += new System.EventHandler(this.buttonSaveFile_Click); // // buttonOpenFile // this.buttonOpenFile.Location = new System.Drawing.Point(16, 23); this.buttonOpenFile.Margin = new System.Windows.Forms.Padding(4); this.buttonOpenFile.Name = "buttonOpenFile"; this.buttonOpenFile.Size = new System.Drawing.Size(129, 29); this.buttonOpenFile.TabIndex = 7; this.buttonOpenFile.Text = "Open-panel"; this.buttonOpenFile.UseVisualStyleBackColor = true; this.buttonOpenFile.Click += new System.EventHandler(this.buttonOpenFile_Click); // // buttonSetTarget // this.buttonSetTarget.Location = new System.Drawing.Point(632, 55); this.buttonSetTarget.Margin = new System.Windows.Forms.Padding(4); this.buttonSetTarget.Name = "buttonSetTarget"; this.buttonSetTarget.Size = new System.Drawing.Size(67, 29); this.buttonSetTarget.TabIndex = 0; this.buttonSetTarget.Text = "Select"; this.buttonSetTarget.UseVisualStyleBackColor = true; this.buttonSetTarget.Click += new System.EventHandler(this.buttonSetTarget_Click); // // FormMain // this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.Color.Black; this.ClientSize = new System.Drawing.Size(755, 560); this.Controls.Add(this.groupBoxFileHandling); this.Controls.Add(this.groupBoxInformation); this.Controls.Add(this.groupBoxWindowSettings); this.Margin = new System.Windows.Forms.Padding(4); this.Name = "FormMain"; this.Text = "TestLibUniWinC"; this.Shown += new System.EventHandler(this.FormMain_Shown); this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseDown); this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseMove); this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseUp); this.Resize += new System.EventHandler(this.FormMain_Resize); ((System.ComponentModel.ISupportInitialize)(this.trackBarAlpha)).EndInit(); this.groupBoxWindowSettings.ResumeLayout(false); this.groupBoxWindowSettings.PerformLayout(); this.groupBoxInformation.ResumeLayout(false); this.groupBoxInformation.PerformLayout(); this.groupBoxFileHandling.ResumeLayout(false); this.groupBoxFileHandling.PerformLayout(); this.ResumeLayout(false); } #endregion private System.Windows.Forms.ComboBox comboBoxFitMonitor; private System.Windows.Forms.Button buttonFitMonitor; private System.Windows.Forms.Timer timerMainLoop; private System.Windows.Forms.TrackBar trackBarAlpha; private System.Windows.Forms.GroupBox groupBoxWindowSettings; private System.Windows.Forms.Label label1; private System.Windows.Forms.CheckBox checkBoxBottommost; private System.Windows.Forms.ComboBox comboBoxTransparentType; private System.Windows.Forms.CheckBox checkBoxTopmost; private System.Windows.Forms.CheckBox checkBoxTransparent; private System.Windows.Forms.GroupBox groupBoxInformation; private System.Windows.Forms.Button buttonShowMonitorInfo; private System.Windows.Forms.Button buttonCheck; private System.Windows.Forms.TextBox textBoxMessage; private System.Windows.Forms.GroupBox groupBoxFileHandling; private System.Windows.Forms.CheckBox checkBoxAllowDrop; private System.Windows.Forms.Button buttonSaveFile; private System.Windows.Forms.Button buttonOpenFile; private System.Windows.Forms.ComboBox comboBoxWindowClass; private System.Windows.Forms.Label label2; private System.Windows.Forms.Button buttonSetTarget; } } ================================================ FILE: VisualStudio/TestLibUniWinC/FormMain.cs ================================================ using System; using System.Windows.Forms; using System.Linq; using UnityEngine; using Kirurobo; using System.Drawing; using System.Diagnostics; using System.Text; namespace TestLibUniWinC { public partial class FormMain : Form { UniWinCore uniwinc; Vector2 relativeWindowPosition = Vector2.zero; WindowList windowList = new WindowList(); /// /// ウィンドウをドラッグ中なら true /// bool isDragging = false; /// /// 値を変更中で、GUI操作を反映させたくないときtrueとする /// bool isAplying = false; public FormMain() { InitializeComponent(); InitializeControls(); } /// /// 各コントロールについて追加の初期化処理 /// private void InitializeControls() { comboBoxTransparentType.Items.Add(UniWinCore.TransparentType.Alpha); comboBoxTransparentType.Items.Add(UniWinCore.TransparentType.ColorKey); comboBoxTransparentType.Items.Add(UniWinCore.TransparentType.None); comboBoxTransparentType.SelectedIndex = 0; comboBoxTransparentType.SelectedIndexChanged += comboBoxTransparentType_SelectedIndexChanged; // 文字や背景が黒だと透けてしまうのは防げていない… textBoxMessage.BackColor = Color.FromArgb(0xFF, 0x33, 0x33, 0x33); //OpaqueAllTextColor(this); // グループボックスでもドラッグでウィンドウ移動ができるようにしておく groupBoxWindowSettings.MouseDown += FormMain_MouseDown; groupBoxWindowSettings.MouseMove += FormMain_MouseMove; groupBoxWindowSettings.MouseUp += FormMain_MouseUp; groupBoxFileHandling.MouseDown += FormMain_MouseDown; groupBoxFileHandling.MouseMove += FormMain_MouseMove; groupBoxFileHandling.MouseUp += FormMain_MouseUp; groupBoxInformation.MouseDown += FormMain_MouseDown; groupBoxInformation.MouseMove += FormMain_MouseMove; groupBoxInformation.MouseUp += FormMain_MouseUp; } //private void OpaqueAllTextColor(Control currentControl) //{ // foreach (Control control in currentControl.Controls) // { // if (control.HasChildren) // { // OpaqueAllTextColor(control); // } // var color = control.ForeColor; // control.ForeColor = System.Drawing.Color.FromArgb( // 0xFF, color.R, color.G, color.B // ); // } //} private void FormMain_Shown(object sender, EventArgs e) { uniwinc = new UniWinCore(); UpdateWindowListCombobox(); // ウィンドウ一覧を更新 UpdateMonitorCombobox(); // 初回の一覧取得 // 対象ウィンドウにアタッチ //uniwinc.AttachMyWindow(); // モニタ一覧を表示 PrintMonitorInfo(); // 定期的にフラグを監視して処理 timerMainLoop.Start(); } /// /// モニタ一覧を更新 /// private void UpdateMonitorCombobox() { int count = UniWinCore.GetMonitorCount(); int index = comboBoxFitMonitor.SelectedIndex; comboBoxFitMonitor.Items.Clear(); for (int i = 0; i < count; i++) { comboBoxFitMonitor.Items.Add($"Monitor {i}"); } if (index >= count) index = count - 1; if (index < 0) { index = 0; } else { comboBoxFitMonitor.SelectedIndex = index; } } /// /// 現在接続されているモニタを列挙 /// private void PrintMonitorInfo() { int monitors = UniWinCore.GetMonitorCount(); int currentMonitorIndex = uniwinc.GetCurrentMonitor(); string message = "Current monitor: " + currentMonitorIndex + "\r\n"; for (int i = 0; i < monitors; i++) { Vector2 pos, size; bool result = UniWinCore.GetMonitorRectangle(i, out pos, out size); message += String.Format( "Monitor {0}: X:{1}, Y:{2} - W:{3}, H:{4}\r\n", i, pos.x, pos.y, size.x, size.y ); } Console.WriteLine(message); textBoxMessage.Text = message; } private void PrintWindowInfo() { var pos = uniwinc.GetWindowPosition(); var size = uniwinc.GetWindowSize(); //var hwnd = UniWinC.GetWindowHandle(); //var hdesktop = UniWinC.GetDesktopWindowHandle(); //var pid = UniWinC.GetMyProcessId(); var myPid = System.Diagnostics.Process.GetCurrentProcess().Id; //var clientSize = this.ClientSize; var clientSize = uniwinc.GetClientSize(); var clientRect = uniwinc.GetClientRectangle(); string message = String.Format( "Pos. {0}, {1}\r\nSize {2}, {3}\r\nClient {4}, {5}\r\nClient rect {6}, {7}, {8}, {9}\r\nhWnd {10:X}\r\nPID {11}\r\n", pos.x, pos.y, size.x, size.y, clientSize.x, clientSize.y, clientRect.x, clientRect.y, clientRect.width, clientRect.height, this.Handle.ToInt32(), myPid ); var rect = this.ClientRectangle; message += String.Format( "Form client rect: {0}, {1}, {2}, {3}\r\n", rect.X, rect.Y, rect.Width, rect.Height ); Console.WriteLine(message); textBoxMessage.Text = message; } private void DumpStringArray(string[] array) { string text = String.Join(Environment.NewLine, array); Console.WriteLine("Count: " + array.Length); Console.WriteLine(text); textBoxMessage.Text = text; } private void buttonCheck_Click(object sender, EventArgs e) { PrintWindowInfo(); } private void buttonOpenFile_Click(object sender, EventArgs e) { Kirurobo.FilePanel.Settings ds = new Kirurobo.FilePanel.Settings(); ds.title = "Open files"; //ds.filter = "Image files (*.png,*.jpg,*.jpeg,*.tiff)|*.png;*.jpg;*.jpeg;*.tiff|All files (*.*)|*.*"; ds.filters = new FilePanel.Filter[] { new FilePanel.Filter("Image files (*.png; *.jpg; *.tiff)", "png", "jpg", "jpeg", "tiff"), new FilePanel.Filter("All files (*.*)", "*"), }; ds.initialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures); //ds.initialFile = "D:\\tmp\\TEST"; ds.initialFile = "TEST"; ds.flags = FilePanel.Flag.AllowMultipleSelection | FilePanel.Flag.FolderMustExist; //ds.flags = FilePanel.Flag.PathMustExist; Kirurobo.FilePanel.OpenFilePanel(ds, (files)=> { DumpStringArray(files); }); } private void buttonSaveFile_Click(object sender, EventArgs e) { Kirurobo.FilePanel.Settings ds = new Kirurobo.FilePanel.Settings(); ds.title = "Save file (Actually not be written)"; //ds.filters = new FilePanel.Filter[] { // new FilePanel.Filter("Plain text (*.txt)", "txt"), // new FilePanel.Filter("Word documents (*.doc; *.docx; *.docm)", "doc", "docx", "docm"), // new FilePanel.Filter("All files (*.*)", "*"), // //new FilePanel.Filter("All files", "*"), //}; ds.initialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); ds.initialFile = "Test"; ds.flags = FilePanel.Flag.AllowMultipleSelection | FilePanel.Flag.CreatePrompt | FilePanel.Flag.OverwritePrompt | FilePanel.Flag.FolderMustExist; //ds.flags = FilePanel.Flag.PathMustExist; Kirurobo.FilePanel.SaveFilePanel(ds, (files) => { DumpStringArray(files); }); } /// /// 選択されたモニタにウィンドウを移動 /// private void FitToMonitor(int monitor) { uniwinc.FitToMonitor(monitor); } /// /// ウィンドウクラス一覧を取得してコンボボックス内容を更新 /// private void UpdateWindowListCombobox() { comboBoxWindowClass.Items.Clear(); windowList.Load(); var myHWnd = Process.GetCurrentProcess().MainWindowHandle; Console.WriteLine("My HWND: " + myHWnd.ToString("X8")); var list = windowList.GetArray(); for (int index = 0; index < list.Length; index++) { var item = list[index]; comboBoxWindowClass.Items.Add(item); if (item.Handle == myHWnd) { comboBoxWindowClass.SelectedIndex = index; } } } private void checkBoxTransparent_CheckedChanged(object sender, EventArgs e) { if (isAplying) return; isAplying = true; uniwinc.EnableTransparent(checkBoxTransparent.Checked); isAplying = false; } private void checkBoxTopmost_CheckedChanged(object sender, EventArgs e) { if (isAplying) return; isAplying = true; checkBoxBottommost.Checked = false; uniwinc.EnableTopmost(checkBoxTopmost.Checked); isAplying = false; } private void checkBoxBottommost_CheckedChanged(object sender, EventArgs e) { if (isAplying) return; isAplying = true; checkBoxTopmost.Checked = false; uniwinc.EnableBottommost(checkBoxBottommost.Checked); isAplying = false; } private void checkBoxAllowDrop_CheckedChanged(object sender, EventArgs e) { if (isAplying) return; isAplying = true; uniwinc.SetAllowDrop(checkBoxAllowDrop.Checked); isAplying = false; } private void FormMain_Resize(object sender, EventArgs e) { //Console.WriteLine("Resized!"); } private void buttonShowMonitorInfo_Click(object sender, EventArgs e) { PrintMonitorInfo(); } private void buttonFitMonitor_Click(object sender, EventArgs e) { FitToMonitor(comboBoxFitMonitor.SelectedIndex); PrintWindowInfo(); } private void PerformEvent() { string[] files; // ウインドウスタイルの変化 if (uniwinc.ObserveWindowStyleChanged(out var type)) { Console.WriteLine($"Style changed: {type}"); } // ファイルドロップ時、その内容を出力 if (uniwinc.ObserveDroppedFiles(out files)) { // ファイルがドロップされた後の処理 string text = String.Join(Environment.NewLine, files); Console.WriteLine("Drop"); Console.WriteLine(text); textBoxMessage.Text = text; } // 解像度変更時、モニター一覧を更新 if (uniwinc.ObserveMonitorChanged()) { // 解像度が変化した後の処理 UpdateMonitorCombobox(); } } // UnityのUpdateの代わりに定期的に実行するメソッド private void timerMainLoop_Tick(object sender, EventArgs e) { uniwinc.Update(); PerformEvent(); } /// /// ウィンドウ透明度を変更 /// /// /// private void trackBarAlpha_Scroll(object sender, EventArgs e) { float alpha = (float)((TrackBar)sender).Value / 255.0f; uniwinc.SetAlphaValue(alpha); } private void FormMain_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { isDragging = true; relativeWindowPosition = uniwinc.GetWindowPosition() - UniWinCore.GetCursorPosition(); } } private void FormMain_MouseMove(object sender, MouseEventArgs e) { if (isDragging) { var windowPos = UniWinCore.GetCursorPosition() + relativeWindowPosition; uniwinc.SetWindowPosition(windowPos ); } } private void FormMain_MouseUp(object sender, MouseEventArgs e) { if ((e.Button & MouseButtons.Left) == MouseButtons.Left) { isDragging = false; } } private void comboBoxTransparentType_SelectedIndexChanged(object sender, EventArgs e) { var item = comboBoxTransparentType.SelectedItem; if ((uniwinc != null) && (item is UniWinCore.TransparentType)) { var type = (UniWinCore.TransparentType)item; uniwinc.SetTransparentType(type); } } private void buttonSetTarget_Click(object sender, EventArgs e) { var item = (WindowInfo)comboBoxWindowClass.SelectedItem; if ((uniwinc != null) && (item != null)) { Console.WriteLine(item.ProcessName + " " + item.Handle.ToString("X8")); uniwinc.AttachWindowHandle(item.Handle); } } } } ================================================ FILE: VisualStudio/TestLibUniWinC/FormMain.resx ================================================  text/microsoft-resx 2.0 System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 17, 17 ================================================ FILE: VisualStudio/TestLibUniWinC/LowLevel/FilePanel.cs ================================================ using AOT; using System; using System.Runtime.InteropServices; using System.Text; namespace Kirurobo { /// /// Provides static methods to open native file dialog /// public class FilePanel { protected class LibUniWinC { [DllImport("LibUniWinC", CharSet = CharSet.Unicode)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool OpenFilePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize); [DllImport("LibUniWinC", CharSet = CharSet.Unicode)] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool OpenSavePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize); [StructLayout(LayoutKind.Sequential, Pack = 1)] public struct PanelSettings : IDisposable { public Int32 structSize; public Int32 flags; public IntPtr lpszTitle; public IntPtr lpszFilter; public IntPtr lpszInitialFile; public IntPtr lpszInitialDir; public IntPtr lpszDefaultExt; public PanelSettings(Settings settings) { this.structSize = 0; //this.structSize = 4 * 2 + Marshal.SizeOf() * 3; this.flags = (Int32)settings.flags; //this.lpTitleText = IntPtr.Zero; //this.lpFilterText = IntPtr.Zero; //this.lpDefaultPath = IntPtr.Zero; this.lpszTitle = Marshal.StringToHGlobalUni(settings.title); this.lpszFilter = Marshal.StringToHGlobalUni(Filter.Join(settings.filters)); this.lpszInitialFile = Marshal.StringToHGlobalUni(settings.initialFile); this.lpszInitialDir = Marshal.StringToHGlobalUni(settings.initialDirectory); //this.lpszDefaultExt = Marshal.StringToHGlobalUni(settings.defaultExtension); this.lpszDefaultExt = IntPtr.Zero; //this.structSize = Marshal.SizeOf(this); this.structSize = Marshal.SizeOf(this); } public void Dispose() { if (this.lpszTitle != IntPtr.Zero) { Marshal.FreeHGlobal(lpszTitle); this.lpszTitle = IntPtr.Zero; } if (this.lpszFilter!= IntPtr.Zero) { Marshal.FreeHGlobal(lpszFilter); this.lpszFilter= IntPtr.Zero; } if (this.lpszInitialFile!= IntPtr.Zero) { Marshal.FreeHGlobal(lpszInitialFile); this.lpszInitialFile= IntPtr.Zero; } if (this.lpszInitialDir != IntPtr.Zero) { Marshal.FreeHGlobal(lpszInitialDir); this.lpszInitialDir = IntPtr.Zero; } if (this.lpszDefaultExt != IntPtr.Zero) { Marshal.FreeHGlobal(lpszDefaultExt); this.lpszDefaultExt = IntPtr.Zero; } } } } /// /// ダイアログの設定フラグ /// [Flags] public enum Flag { None = 0, FileMustExist = 1, // Windows only FolderMustExist = 2, // Windows only AllowMultipleSelection = 4, CanCreateDirectories = 16, OverwritePrompt = 256, // Always enabled on macOS CreatePrompt = 512, // Always enabled on macOS ShowHiddenFiles = 4096, RetrieveLink = 8192, } /// /// Parameters for file dialog /// public struct Settings { public string title; public Filter[] filters; public string initialDirectory; public string initialFile; public string defaultExtension; // Not implemented public Flag flags; } /// /// File filter /// public class Filter { protected string title; protected string[] extensions; /// /// /// /// Filter title. (Not available on macOS yet) /// Extensions like ["png", "jpg", "txt"] public Filter(string title, params string[] extensions) { this.title = title; this.extensions = extensions; } public override string ToString() { return title + "\t" + String.Join("\t", extensions); } /// /// Returns converted string from Filter array /// /// /// public static string Join(Filter[] filters) { if (filters == null) return ""; string result = ""; bool isFirstItem = true; foreach (var filter in filters) { if (!isFirstItem) result += "\n"; result += filter.ToString(); isFirstItem = false; } return result; } } /// /// ファイルやフォルダ―のパス受け渡しUTF-16バッファの文字数 /// 複数パスが改行区切りで入るため 260 では少ない。 /// private const int pathBufferSize = 2560; /// /// Open file selection dialog /// /// /// public static void OpenFilePanel(Settings settings, Action action) { LibUniWinC.PanelSettings ps = new LibUniWinC.PanelSettings(settings); StringBuilder sb = new StringBuilder(pathBufferSize); if (LibUniWinC.OpenFilePanel(in ps, sb, (uint)sb.Capacity)) { string[] files = UniWinCore.parsePaths(sb.ToString()); action.Invoke(files); } ps.Dispose(); // Settings を渡したコンストラクタでメモリが確保されるため、解放が必要 } /// /// Open save-file selection dialog /// /// /// public static void SaveFilePanel(Settings settings, Action action) { LibUniWinC.PanelSettings ps = new LibUniWinC.PanelSettings(settings); StringBuilder sb = new StringBuilder(pathBufferSize); if (LibUniWinC.OpenSavePanel(in ps, sb, (uint)sb.Capacity)) { string[] files = UniWinCore.parsePaths(sb.ToString()); action.Invoke(files); } ps.Dispose(); // Settings を渡したコンストラクタでメモリが確保されるため、解放が必要 } } } ================================================ FILE: VisualStudio/TestLibUniWinC/LowLevel/UniWinCore.cs ================================================ /* * UniWinCore.cs * * Author: Kirurobo http://twitter.com/kirurobo * License: MIT */ using System; using System.Runtime.InteropServices; using AOT; using UnityEngine; using System.Text; using System.Drawing; #if UNITY_EDITOR using UnityEditor; #endif namespace Kirurobo { /// /// Native plugin wrapper for LibUniWinC /// internal class UniWinCore : IDisposable { /// /// Type of transparent method for Windows only /// public enum TransparentType : int { None = 0, Alpha = 1, ColorKey = 2, } /// /// State changed event type (Experimental) /// [Flags] public enum WindowStateEventType : int { None = 0, StyleChanged = 1, Resized = 2, // 以降は仕様変更もありえる TopMostEnabled = 16 + 1 + 8, TopMostDisabled = 16 + 1, BottomMostEnabled = 32 + 1 + 8, BottomMostDisabled = 32 + 1, WallpaperModeEnabled = 64 + 1 + 8, WallpaperModeDisabled = 64 + 1, }; #region Native functions protected class LibUniWinC { [UnmanagedFunctionPointer(CallingConvention.Winapi)] public delegate void StringCallback([MarshalAs(UnmanagedType.LPWStr)] string returnString); [UnmanagedFunctionPointer((CallingConvention.Winapi))] public delegate void IntCallback([MarshalAs(UnmanagedType.I4)] int value); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsActive(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsTransparent(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsBorderless(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsTopmost(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsBottommost(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool IsMaximized(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyWindow(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyOwnerWindow(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachMyActiveWindow(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool DetachWindow(); [DllImport("LibUniWinC")] public static extern void Update(); [DllImport("LibUniWinC")] public static extern void SetTransparent([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC")] public static extern void SetBorderless([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC")] public static extern void SetAlphaValue(float alpha); [DllImport("LibUniWinC")] public static extern void SetClickThrough([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC")] public static extern void SetTopmost([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC")] public static extern void SetBottommost([MarshalAs(UnmanagedType.U1)] bool bEnabled); [DllImport("LibUniWinC")] public static extern void SetMaximized([MarshalAs(UnmanagedType.U1)] bool bZoomed); [DllImport("LibUniWinC")] public static extern void SetPosition(float x, float y); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetPosition(out float x, out float y); [DllImport("LibUniWinC")] public static extern void SetSize(float x, float y); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetSize(out float x, out float y); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetClientSize(out float width, out float height); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetClientRectangle(out float x, out float y, out float width, out float height); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterDropFilesCallback([MarshalAs(UnmanagedType.FunctionPtr)] StringCallback callback); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterDropFilesCallback(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterMonitorChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterMonitorChangedCallback(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool RegisterWindowStyleChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool UnregisterWindowStyleChangedCallback(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool SetAllowDrop([MarshalAs(UnmanagedType.U1)] bool enabled); [DllImport("LibUniWinC")] public static extern int GetCurrentMonitor(); [DllImport("LibUniWinC")] public static extern int GetMonitorCount(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetMonitorRectangle(int index, out float x, out float y, out float width, out float height); [DllImport("LibUniWinC")] public static extern void SetCursorPosition(float x, float y); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetCursorPosition(out float x, out float y); #region Working on Windows only [DllImport("LibUniWinC")] public static extern void SetTransparentType(int type); [DllImport("LibUniWinC")] public static extern void SetKeyColor(uint colorref); [DllImport("LibUniWinC")] public static extern int GetDebugInfo(); [DllImport("LibUniWinC")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool AttachWindowHandle(IntPtr hWnd); #endregion } #endregion static string[] lastDroppedFiles; static bool wasDropped = false; static bool wasMonitorChanged = false; static bool wasWindowStyleChanged = false; static WindowStateEventType windowStateEventType = WindowStateEventType.None; #if UNITY_EDITOR /// /// Get the Unity editor window /// /// /// public static EditorWindow GetGameView() { var assembly = typeof(EditorWindow).Assembly; var type = assembly.GetType("UnityEditor.GameView"); var gameView = EditorWindow.GetWindow(type); return gameView; } #endif /// /// Determines whether a window is attached and available /// /// true if this instance is active; otherwise, false. public bool IsActive { get; private set; } = false; /// /// Determines whether the attached window is always on the front /// public bool IsTopmost { get { return (IsActive && _isTopmost); } } private bool _isTopmost = false; /// /// Determines whether the attached window is always on the bottom /// public bool IsBottommost { get { return (IsActive && _isBottommost); } } private bool _isBottommost = false; /// /// Determines whether the attached window is transparent /// public bool IsTransparent { get { return (IsActive && _isTransparent); } } private bool _isTransparent = false; /// /// Determines whether the attached window is click-through (i.e., does not receive any mouse action) /// public bool IsClickThrough { get { return (IsActive && _isClickThrough); } } private bool _isClickThrough = false; /// /// Type of transparent method for Windows /// private TransparentType transparentType = TransparentType.Alpha; /// /// The color to use for transparency when the transparentType is ColorKey /// private Color32 keyColor = new Color32(1, 0, 1, 0); #region Constructor or destructor /// /// ウィンドウ制御のコンストラクタ /// public UniWinCore() { IsActive = false; } /// /// デストラクタ /// ~UniWinCore() { Dispose(); } /// /// 終了時の処理 /// public void Dispose() { // 最後にウィンドウ状態を戻すとそれが目についてしまうので、あえて戻さないことにしてみるためコメントアウト //DetachWindow(); // Instead of DetachWindow() LibUniWinC.UnregisterDropFilesCallback(); LibUniWinC.UnregisterMonitorChangedCallback(); LibUniWinC.UnregisterWindowStyleChangedCallback(); } #endregion #region Callbacks /// /// モニタまたは解像度が変化したときのコールバック /// この中での処理は最低限にするため、フラグを立てるのみ /// /// [MonoPInvokeCallback(typeof(LibUniWinC.IntCallback))] private static void _monitorChangedCallback([MarshalAs(UnmanagedType.I4)] int monitorCount) { wasMonitorChanged = true; } /// /// ウィンドウスタイルや最大化、最小化等で呼ばれるコールバック /// この中での処理は最低限にするため、フラグを立てるのみ /// /// [MonoPInvokeCallback(typeof(LibUniWinC.IntCallback))] private static void _windowStyleChangedCallback([MarshalAs(UnmanagedType.I4)] int e) { wasWindowStyleChanged = true; windowStateEventType = (WindowStateEventType)e; } /// /// ファイル、フォルダがドロップされた時に呼ばれるコールバック /// 文字列を配列に直すことと、フラグを立てるまで行う /// /// [MonoPInvokeCallback(typeof(LibUniWinC.StringCallback))] private static void _dropFilesCallback([MarshalAs(UnmanagedType.LPWStr)] string paths) { // LF 区切りで届いた文字列を分割してパスの配列に直す //char[] delimiters = { '\n', '\0' }; //string[] files = paths.Split(delimiters).Where(s => s != "").ToArray(); string[] files = parsePaths(paths); if (files.Length > 0) { lastDroppedFiles = new string[files.Length]; files.CopyTo(lastDroppedFiles, 0); wasDropped = true; } } /// /// ダブルクオーテーション囲み、LF(またはnull)区切りの文字列を配列に直して返す /// /// /// internal static string[] parsePaths(string text) { System.Collections.Generic.List list = new System.Collections.Generic.List(); bool inEscaped = false; int len = text.Length; StringBuilder sb = new StringBuilder(); for (int i = 0; i < len; i++) { char c = text[i]; if (c == '"') { if (inEscaped) { if (((i + 1) < len) && text[i + 1] == '"') { i++; sb.Append(c); // 連続ダブルクォーテーションは1つのダブルクオーテーションとする continue; } } inEscaped = !inEscaped; // 連続でなければ囲み内か否かの切り替え } else if (c == '\n') { if (inEscaped) { // 囲み内ならパスの一部とする sb.Append(c); } else { // 囲み内でなければ、区切りとして、次のパスに移る if (sb.Length > 0) { list.Add(sb.ToString()); //sb.Clear(); // for .NET 4 or later sb.Length = 0; // for .NET 2 } } } else if (c == '\0') { // ヌル文字は、常に区切りとして、次のパスに移る if (sb.Length > 0) { list.Add(sb.ToString()); //sb.Clear(); // for .NET 4 or later sb.Length = 0; // for .NET 2 } } else { sb.Append(c); } } if (sb.Length > 0) { list.Add(sb.ToString()); } // 空文字列の要素は除去 list.RemoveAll(v => v.Length == 0); return list.ToArray(); } #endregion #region Find, attach or detach /// /// ウィンドウ状態を最初に戻して操作対象から解除 /// public void DetachWindow() { #if UNITY_EDITOR // エディタの場合、ウィンドウスタイルでは常に最前面と得られていない可能性があるため、 // 最前面ではないのが本来と決め打ちで、デタッチ時無効化する EnableTopmost(false); #endif LibUniWinC.DetachWindow(); } /// /// 自分のウィンドウ(ゲームビューが独立ウィンドウならそれ)を探して操作対象とする /// /// public bool AttachMyWindow() { #if UNITY_EDITOR_WIN // 確実にゲームビューを得る方法がなさそうなので、フォーカスを与えて直後にアクティブなウィンドウを取得 var gameView = GetGameView(); if (gameView) { gameView.Focus(); LibUniWinC.AttachMyActiveWindow(); } #else LibUniWinC.AttachMyWindow(); #endif // Add event handlers LibUniWinC.RegisterDropFilesCallback(_dropFilesCallback); LibUniWinC.RegisterMonitorChangedCallback(_monitorChangedCallback); LibUniWinC.RegisterWindowStyleChangedCallback(_windowStyleChangedCallback); IsActive = LibUniWinC.IsActive(); return IsActive; } public bool AttachWindowHandle(IntPtr hWnd) { LibUniWinC.AttachWindowHandle(hWnd); IsActive = LibUniWinC.IsActive(); return IsActive; } /// /// 自分のプロセスで現在アクティブなウィンドウを選択 /// エディタの場合、ウィンドウが閉じたりドッキングしたりするため、フォーカス時に呼ぶ /// /// public bool AttachMyActiveWindow() { LibUniWinC.AttachMyActiveWindow(); IsActive = LibUniWinC.IsActive(); return IsActive; } #endregion #region About window status /// /// Call this periodically to maintain window style /// public void Update() { LibUniWinC.Update(); } string GetDebubgWindowSizeInfo() { float x, y, cx, cy; LibUniWinC.GetSize(out x, out y); LibUniWinC.GetClientSize(out cx, out cy); return $"W:{x},H:{y} CW:{cx},CH:{cy}"; } /// /// 透過を設定/解除 /// /// public void EnableTransparent(bool isTransparent) { // エディタは透過できなかったり、枠が通常と異なるのでスキップ #if !UNITY_EDITOR LibUniWinC.SetTransparent(isTransparent); LibUniWinC.SetBorderless(isTransparent); #endif this._isTransparent = isTransparent; } /// /// Set the window alpha /// /// 0.0 - 1.0 public void SetAlphaValue(float alpha) { // Windowsのエディタでは、一度半透明にしてしまうと表示が更新されなくなるため無効化。MacならOK #if !UNITY_EDITOR_WIN LibUniWinC.SetAlphaValue(alpha); #endif } /// /// Set the window z-order (Topmost or not). /// /// If set to true is top. public void EnableTopmost(bool isTopmost) { LibUniWinC.SetTopmost(isTopmost); this._isTopmost = isTopmost; this._isBottommost = false; // Exclusive } /// /// Set the window z-order (Bottommost or not). /// /// If set to true is bottom. public void EnableBottommost(bool isBottommost) { LibUniWinC.SetBottommost(isBottommost); this._isBottommost = isBottommost; this._isTopmost = false; // Exclusive } /// /// クリックスルーを設定/解除 /// /// public void EnableClickThrough(bool isThrough) { // エディタでクリックスルーされると操作できなくなる可能性があるため、スキップ #if !UNITY_EDITOR LibUniWinC.SetClickThrough(isThrough); #endif this._isClickThrough = isThrough; } /// /// ウィンドウを最大化(Macではズーム)する /// 最大化された後にサイズ変更がされることもあり、現状、確実には動作しない可能性があります /// public void SetZoomed(bool isZoomed) { LibUniWinC.SetMaximized(isZoomed); } /// /// ウィンドウが最大化(Macではズーム)されているかを取得 /// 最大化された後にサイズ変更がされることもあり、現状、確実には動作しない可能性があります /// public bool GetZoomed() { return LibUniWinC.IsMaximized(); } /// /// Set the window position. /// /// Position. public void SetWindowPosition(Vector2 position) { LibUniWinC.SetPosition(position.x, position.y); } /// /// Get the window position. /// /// The position. public Vector2 GetWindowPosition() { Vector2 pos = Vector2.zero; LibUniWinC.GetPosition(out pos.x, out pos.y); return pos; } /// /// Set the window size. /// /// x is width and y is height public void SetWindowSize(Vector2 size) { LibUniWinC.SetSize(size.x, size.y); } /// /// Get the window Size. /// /// x is width and y is height public Vector2 GetWindowSize() { Vector2 size = Vector2.zero; LibUniWinC.GetSize(out size.x, out size.y); return size; } /// /// Get the client area ize. /// /// x is width and y is height public Vector2 GetClientSize() { Vector2 size = Vector2.zero; LibUniWinC.GetClientSize(out size.x, out size.y); return size; } /// /// Get the client area ize. /// /// x is width and y is height public Rect GetClientRectangle() { Vector2 pos = Vector2.zero; Vector2 size = Vector2.zero; LibUniWinC.GetClientRectangle(out pos.x, out pos.y, out size.x, out size.y); return new Rect(pos.x, pos.y, size.x, size.y); } #endregion #region File opening public void SetAllowDrop(bool enabled) { LibUniWinC.SetAllowDrop(enabled); } #endregion #region Event observers /// /// Check files dropping and unset the dropped flag /// /// /// true if files were dropped public bool ObserveDroppedFiles(out string[] files) { files = lastDroppedFiles; if (!wasDropped || files == null) return false; wasDropped = false; return true; } /// /// Check the numbers of display or resolution changing, and unset the flag /// /// true if changed public bool ObserveMonitorChanged() { if (!wasMonitorChanged) return false; wasMonitorChanged = false; return true; } /// /// Check window style was changed, and unset the flag /// /// True if window styel was changed public bool ObserveWindowStyleChanged() { if (!wasWindowStyleChanged) return false; windowStateEventType = WindowStateEventType.None; wasWindowStyleChanged = false; return true; } /// /// Check window style was changed, and unset the flag /// /// True if window styel was changed public bool ObserveWindowStyleChanged(out WindowStateEventType type) { if (!wasWindowStyleChanged) { type = WindowStateEventType.None; return false; } type = windowStateEventType; windowStateEventType = WindowStateEventType.None; wasWindowStyleChanged = false; return true; } #endregion #region About mouse cursor /// /// Set the mouse pointer position. /// /// Position. public static void SetCursorPosition(Vector2 position) { LibUniWinC.SetCursorPosition(position.x, position.y); } /// /// Get the mouse pointer position. /// /// The position. public static Vector2 GetCursorPosition() { Vector2 pos = Vector2.zero; LibUniWinC.GetCursorPosition(out pos.x, out pos.y); return pos; } // Not implemented public static bool GetCursorVisible() { return true; } #endregion #region for Windows only /// /// 透過方法を指定(Windowsのみ対応) /// /// public void SetTransparentType(TransparentType type) { LibUniWinC.SetTransparentType((Int32)type); transparentType = type; } /// /// 単色透過の場合の透明色を指定(Windowsのみ対応) /// /// public void SetKeyColor(Color32 color) { LibUniWinC.SetKeyColor((UInt32)(color.b * 0x10000 + color.g * 0x100 + color.r)); keyColor = color; } #endregion #region About monitors /// /// Get the monitor index where the window is located /// /// Monitor index public int GetCurrentMonitor() { return LibUniWinC.GetCurrentMonitor(); } /// /// Get the number of connected monitors /// /// Count public static int GetMonitorCount() { return LibUniWinC.GetMonitorCount(); } /// /// Get monitor position and size /// /// /// /// /// public static bool GetMonitorRectangle(int index, out Vector2 position, out Vector2 size) { return LibUniWinC.GetMonitorRectangle(index, out position.x, out position.y, out size.x, out size.y); } /// /// Fit the window to specified monitor /// /// /// public bool FitToMonitor(int monitorIndex) { float dx, dy, dw, dh; if (LibUniWinC.GetMonitorRectangle(monitorIndex, out dx, out dy, out dw, out dh)) { // 最大化状態なら一度戻す if (LibUniWinC.IsMaximized()) LibUniWinC.SetMaximized(false); // 指定モニタ中央座標 float cx = dx + (dw / 2); float cy = dy + (dh / 2); // ウィンドウ中央を指定モニタ中央に移動 float ww, wh; LibUniWinC.GetSize(out ww, out wh); float wx = cx - (ww / 2); float wy = cy - (wh / 2); LibUniWinC.SetPosition(wx, wy); // 最大化 LibUniWinC.SetMaximized(true); //Debug.Log(String.Format("Monitor {4} : {0},{1} - {2},{3}", dx, dy, dw, dh, monitorIndex)); return true; } return false; } /// /// Print monitor list /// [Obsolete] public static void DebugMonitorInfo() { int monitors = LibUniWinC.GetMonitorCount(); int currentMonitorIndex = LibUniWinC.GetCurrentMonitor(); string message = "Current monitor: " + currentMonitorIndex + "\r\n"; for (int i = 0; i < monitors; i++) { float x, y, w, h; bool result = LibUniWinC.GetMonitorRectangle(i, out x, out y, out w, out h); message += String.Format( "Monitor {0}: X:{1}, Y:{2} - W:{3}, H:{4}\r\n", i, x, y, w, h ); } Debug.Log(message); } /// /// Receive information for debugging /// /// [Obsolete] public static int GetDebugInfo() { return LibUniWinC.GetDebugInfo(); } #endregion } } ================================================ FILE: VisualStudio/TestLibUniWinC/Program.cs ================================================ using System; using System.Collections.Generic; using System.Windows.Forms; namespace TestLibUniWinC { static class Program { /// /// アプリケーションのメイン エントリ ポイントです。 /// [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new FormMain()); } } } ================================================ FILE: VisualStudio/TestLibUniWinC/Properties/AssemblyInfo.cs ================================================ using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; // アセンブリに関する一般情報は以下の属性セットをとおして制御されます。 // 制御されます。アセンブリに関連付けられている情報を変更するには、 // これらの属性値を変更します。 [assembly: AssemblyTitle("TestLibUniWinC")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("TestLibUniWinC")] [assembly: AssemblyCopyright("Copyright © 2020")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // ComVisible を false に設定すると、このアセンブリ内の型は COM コンポーネントから // 参照できなくなります。COM からこのアセンブリ内の型にアクセスする必要がある場合は、 // その型の ComVisible 属性を true に設定してください。 [assembly: ComVisible(false)] // このプロジェクトが COM に公開される場合、次の GUID が typelib の ID になります [assembly: Guid("692f2a0a-92cb-4ead-ae40-2bff56098881")] // アセンブリのバージョン情報は、以下の 4 つの値で構成されています: // // メジャー バージョン // マイナー バージョン // ビルド番号 // リビジョン // // すべての値を指定するか、次を使用してビルド番号とリビジョン番号を既定に設定できます // 既定値にすることができます: // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")] ================================================ FILE: VisualStudio/TestLibUniWinC/Properties/Resources.Designer.cs ================================================ //------------------------------------------------------------------------------ // // このコードはツールによって生成されました。 // ランタイム バージョン:4.0.30319.42000 // // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、 // コードが再生成されるときに損失したりします。 // //------------------------------------------------------------------------------ namespace TestLibUniWinC.Properties { using System; /// /// ローカライズされた文字列などを検索するための、厳密に型指定されたリソース クラスです。 /// // このクラスは StronglyTypedResourceBuilder クラスが ResGen // または Visual Studio のようなツールを使用して自動生成されました。 // メンバーを追加または削除するには、.ResX ファイルを編集して、/str オプションと共に // ResGen を実行し直すか、または VS プロジェクトをビルドし直します。 [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { private static global::System.Resources.ResourceManager resourceMan; private static global::System.Globalization.CultureInfo resourceCulture; [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Resources() { } /// /// このクラスで使用されているキャッシュされた ResourceManager インスタンスを返します。 /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TestLibUniWinC.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } /// /// すべてについて、現在のスレッドの CurrentUICulture プロパティをオーバーライドします /// 現在のスレッドの CurrentUICulture プロパティをオーバーライドします。 /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Globalization.CultureInfo Culture { get { return resourceCulture; } set { resourceCulture = value; } } } } ================================================ FILE: VisualStudio/TestLibUniWinC/Properties/Resources.resx ================================================  text/microsoft-resx 2.0 System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ================================================ FILE: VisualStudio/TestLibUniWinC/Properties/Settings.Designer.cs ================================================ //------------------------------------------------------------------------------ // // このコードはツールによって生成されました。 // ランタイム バージョン:4.0.30319.42000 // // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、 // コードが再生成されるときに損失したりします。 // //------------------------------------------------------------------------------ namespace TestLibUniWinC.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); public static Settings Default { get { return defaultInstance; } } } } ================================================ FILE: VisualStudio/TestLibUniWinC/Properties/Settings.settings ================================================  ================================================ FILE: VisualStudio/TestLibUniWinC/TestLibUniWinC.csproj ================================================  Debug AnyCPU {692F2A0A-92CB-4EAD-AE40-2BFF56098881} WinExe TestLibUniWinC TestLibUniWinC v4.8 512 true true x64 true full false bin\Debug\ DEBUG;TRACE prompt 4 false x64 pdbonly true bin\Release\ TRACE prompt 4 false true bin\x64\Debug\ DEBUG;TRACE full x64 7.3 prompt MinimumRecommendedRules.ruleset true bin\x64\Release\ TRACE true pdbonly x64 7.3 prompt MinimumRecommendedRules.ruleset true true bin\x86\Debug\ DEBUG;TRACE full x86 7.3 prompt MinimumRecommendedRules.ruleset true bin\x86\Release\ TRACE true pdbonly x86 7.3 prompt MinimumRecommendedRules.ruleset true Form FormMain.cs FormMain.cs ResXFileCodeGenerator Resources.Designer.cs Designer True Resources.resx True SettingsSingleFileGenerator Settings.Designer.cs True Settings.settings True @fc /W "$(ProjectDir)LowLevel\UniWinCore.cs" "$(SolutionDir)..\UniWinC\Assets\Kirurobo\UniWindowController\Runtime\Scripts\LowLevel\UniWinCore.cs" if errorlevel 1 @echo $(ProjectDir)\LowLevel\UniWinCore.cs(1): warning 0: DIFF: UniWinCore.cs is different form in the Unity Assets folder. @fc /W "$(ProjectDir)LowLevel\FilePanel.cs" "$(SolutionDir)..\UniWinC\Assets\Kirurobo\UniWindowController\Runtime\Scripts\LowLevel\FilePanel.cs" if errorlevel 1 @echo $(ProjectDir)\LowLevel\FilePanel.cs(1): warning 0: DIFF: FilePanel.cs is dfferent from in the Unity Assets folder. set ERRORLEVEL=0 ================================================ FILE: VisualStudio/TestLibUniWinC/UnityEmulation/AOT.cs ================================================ using System; namespace AOT { public class MonoPInvokeCallbackAttribute : Attribute { private Type type; public MonoPInvokeCallbackAttribute(Type type) { this.type = type; } } } ================================================ FILE: VisualStudio/TestLibUniWinC/UnityEmulation/UnityEngine.cs ================================================ using System; using System.Runtime.InteropServices; namespace UnityEngine { public struct Color32 { public byte a; public byte r; public byte g; public byte b; public Color32(byte r, byte g, byte b, byte a) { this.r = r; this.g = g; this.b = b; this.a = a; } } [StructLayout(LayoutKind.Sequential)] public struct Vector2 { public float x; public float y; public Vector2(float x, float y) { this.x = x; this.y = y; } public static Vector2 zero = new Vector2(0, 0); public static Vector2 operator +(Vector2 v1, Vector2 v2) { return new Vector2(v1.x + v2.x, v1.y + v2.y); } public static Vector2 operator -(Vector2 v1, Vector2 v2) { return new Vector2(v1.x - v2.x, v1.y - v2.y); } override public string ToString() { return x + ", " + y; } } [StructLayout(LayoutKind.Sequential)] public struct Rect { public float x; public float y; public float width; public float height; public Rect(float x, float y, float width, float height) { this.x = x; this.y = y; this.width = width; this.height = height; } public static Rect zero = new Rect(0, 0, 0, 0); } public class Debug { public static void Log(string text) { Console.WriteLine(text); } } } ================================================ FILE: Xcode/.gitignore ================================================ # Xcode # # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore ## User settings xcuserdata/ ## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) *.xcscmblueprint *.xccheckout ## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) build/ DerivedData/ *.moved-aside *.pbxuser !default.pbxuser *.mode1v3 !default.mode1v3 *.mode2v3 !default.mode2v3 *.perspectivev3 !default.perspectivev3 ## Obj-C/Swift specific *.hmap ## App packaging *.ipa *.dSYM.zip *.dSYM ## Playgrounds timeline.xctimeline playground.xcworkspace # Swift Package Manager # # Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. Packages/ Package.pins Package.resolved *.xcodeproj # Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata # hence it is not needed unless you have added a package configuration file to your project .swiftpm .build/ # CocoaPods # # We recommend against adding the Pods directory to your .gitignore. However # you should judge for yourself, the pros and cons are mentioned at: # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control # Pods/ # Add this line if you want to avoid checking in source code from the Xcode workspace *.xcworkspace # Carthage # # Add this line if you want to avoid checking in source code from Carthage dependencies. Carthage/Checkouts Carthage/Build/ # Accio dependency management Dependencies/ .accio/ # fastlane # # It is recommended to not store the screenshots in the git repo. # Instead, use fastlane to re-generate the screenshots whenever they are needed. # For more information about the recommended setup visit: # https://docs.fastlane.tools/best-practices/source-control/#source-control fastlane/report.xml fastlane/Preview.html fastlane/screenshots/**/*.png fastlane/test_output # Code Injection # # After new code Injection tools there's a generated folder /iOSInjectionProject # https://github.com/johnno1962/injectionforxcode iOSInjectionProject/ .DS_Store ================================================ FILE: Xcode/DebugUniWinC/AppDelegate.swift ================================================ // // AppDelegate.swift // DebugUniWinC // // Created by Kirurobo on 2021/11/06. // Copyright © 2021 kirurobo. All rights reserved. // import Cocoa class AppDelegate: NSObject, NSApplicationDelegate { func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { return true } } ================================================ FILE: Xcode/DebugUniWinC/Assets.xcassets/AccentColor.colorset/Contents.json ================================================ { "colors" : [ { "idiom" : "universal" } ], "info" : { "author" : "xcode", "version" : 1 } } ================================================ FILE: Xcode/DebugUniWinC/Assets.xcassets/AppIcon.appiconset/Contents.json ================================================ { "images" : [ { "idiom" : "mac", "scale" : "1x", "size" : "16x16" }, { "idiom" : "mac", "scale" : "2x", "size" : "16x16" }, { "idiom" : "mac", "scale" : "1x", "size" : "32x32" }, { "idiom" : "mac", "scale" : "2x", "size" : "32x32" }, { "idiom" : "mac", "scale" : "1x", "size" : "128x128" }, { "idiom" : "mac", "scale" : "2x", "size" : "128x128" }, { "idiom" : "mac", "scale" : "1x", "size" : "256x256" }, { "idiom" : "mac", "scale" : "2x", "size" : "256x256" }, { "idiom" : "mac", "scale" : "1x", "size" : "512x512" }, { "idiom" : "mac", "scale" : "2x", "size" : "512x512" } ], "info" : { "author" : "xcode", "version" : 1 } } ================================================ FILE: Xcode/DebugUniWinC/Assets.xcassets/Contents.json ================================================ { "info" : { "author" : "xcode", "version" : 1 } } ================================================ FILE: Xcode/DebugUniWinC/ContentView.swift ================================================ // // ContentView.swift // DebugUniWinC // // Created by Kirurobo on 2021/11/05. // Copyright © 2021 kirurobo. All rights reserved. // import SwiftUI // 参考 https://qiita.com/usagimaru/items/6ffd09c5b27042281108 func getWindowList() -> [NSDictionary]? { guard let windowList: NSArray = CGWindowListCopyWindowInfo(.optionOnScreenOnly, kCGNullWindowID) else { return nil } let swiftWindowList = windowList as! [NSDictionary] return swiftWindowList } func toString(dict: [NSDictionary]?) -> String { guard let dic = dict else { return "" } return (dic.compactMap({ (d) -> String in (d.compactMap({ (key, val) -> String in return "\(key)=\(val)" }) as Array).joined(separator: "\n") })).joined(separator: "\n\n") } func findWindow(dict: [NSDictionary]?, name: String) -> NSWindow? { if (dict == nil) { return nil } var result:NSWindow? = nil for dic in dict! { if ((dic[kCGWindowOwnerName] as! String) == name) { let num = (dic[kCGWindowNumber] as! Int) result = NSApp.window(withWindowNumber: num) break } } return result } func findWindowNumber(dict: [NSDictionary]?, name: String) -> Int { if (dict == nil) { return 0 } var result:Int = 0 for dic in dict! { if ((dic[kCGWindowOwnerName] as! String) == name) { let num = (dic[kCGWindowNumber] as! Int) result = num break } } return result } func getAllWindows() -> String { var text = "" let windows = NSWindow.windowNumbers(options: NSWindow.NumberListOptions.allApplications) for num in windows! { text = text + num.stringValue + ", " } return text } func getOpenFileNames() -> String { let bufferSize = 1024 let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) // let settings = LibUniWinC.PanelSettings() // let lpSettings = UnsafeRawPointer(&settings) // // LibUniWinC.openSavePanel(lpSettings: lpSettings, lpBuffer: buffer, bufferSize: UInt32(bufferSize)) buffer.deallocate() return "" } struct ContentView: View { @State private var buttonText = "Get all windows" @State private var outputText = "" @State private var modifiersText = "None" @State private var window: NSWindow? var body: some View { Text("File dialog test") Button(action: { let title = Array("Select file\0".utf16) let filter = Array("All files\t*\nImages (png, jpg, tiff)\tpng\tjpg\tjpeg\ttiff\n\0".utf16) title.withUnsafeBufferPointer { (titlePtr: UnsafeBufferPointer) in filter.withUnsafeBufferPointer { (filterPtr: UnsafeBufferPointer) in var settings = LibUniWinC.PanelSettings( structSize: Int32(MemoryLayout.size), flags: 0, titleText: titlePtr.baseAddress, filterText: filterPtr.baseAddress, initialFile: nil, initialDirectory: nil, defaultExt: nil ) let bufferSize = 2048 let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) buffer.initialize(repeating: UniChar.zero, count: bufferSize) _ = LibUniWinC.openFilePanel(lpSettings: &settings, lpBuffer: buffer, bufferSize: UInt32(bufferSize)) } } }){ Text("Open") } Button(action: { let title = Array("No save is actually performed\0".utf16) let filter = Array("Text file (txt)\ttxt\nImages (png, jpg, tiff)\tpng\tjpg\tjpeg\ttiff\nAll files\t*\n\0".utf16) title.withUnsafeBufferPointer { (titlePtr: UnsafeBufferPointer) in filter.withUnsafeBufferPointer { (filterPtr: UnsafeBufferPointer) in var settings = LibUniWinC.PanelSettings( structSize: Int32(MemoryLayout.size), flags: 0, titleText: titlePtr.baseAddress, filterText: filterPtr.baseAddress, initialFile: nil, initialDirectory: nil, defaultExt: nil ) let bufferSize = 2048 let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) buffer.initialize(repeating: UniChar.zero, count: bufferSize) _ = LibUniWinC.openSavePanel(lpSettings: &settings, lpBuffer: buffer, bufferSize: UInt32(bufferSize)) } } }){ Text("Save") } // v0.9.7- 追加されたGetModifierKeys()のテスト Button(action: { let keys = LibUniWinC.getModifierKeys() if (keys == 0) { modifiersText = "None" } else { modifiersText = (keys & 1 != 0 ? "Option " : "") + (keys & 2 != 0 ? "Control " : "") + (keys & 4 != 0 ? "Shift " : "") + (keys & 8 != 0 ? "Command " : "") } }) { Text("Show modifier keys when clicked") } Text(modifiersText) Text("Window Info.").padding() Button(action: { let dict = getWindowList() buttonText = String(findWindowNumber(dict: dict, name: "DebugUniWinC")) window = findWindow(dict: dict, name: "DebugUniWinC") if (window != nil) { buttonText = "Attached class: " + window!.className LibUniWinC._attachWindow(window: window!) outputText = "Title : " + window!.title + "\nStyleMask : " + window!.styleMask.rawValue.description + "\nFrame : " + window!.frame.debugDescription + "\nIsKeyWindow : " + window!.isKeyWindow.description + "\nIsZoomed : " + window!.isZoomed.description + "\nCanHide : " + window!.canHide.description + "\nIsOpaque : " + window!.isOpaque.description + "\nHasShadow : " + window!.hasShadow.description + "\nIsSheet : " + window!.isSheet.description + "\nOcclusionState : " + window!.occlusionState.rawValue.description + "\n\n" window!.hasShadow = false } else { buttonText = "Current window is nil" outputText = "" } outputText += toString(dict: dict) + getAllWindows() }){ Text(buttonText) } ScrollView([.vertical, .horizontal]) { Text(outputText) } } } #Preview { ContentView() } ================================================ FILE: Xcode/DebugUniWinC/DebugUniWinC.entitlements ================================================ com.apple.security.app-sandbox com.apple.security.files.user-selected.read-write ================================================ FILE: Xcode/DebugUniWinC/DebugUniWinCApp.swift ================================================ // // DebugUniWinCApp.swift // DebugUniWinC // // Created by Kirurobo on 2021/11/05. // Copyright © 2021 kirurobo. All rights reserved. // import SwiftUI @main struct DebugUniWinCApp: App { @NSApplicationDelegateAdaptor(AppDelegate.self) var appDelegate var body: some Scene { WindowGroup { ContentView() } } } ================================================ FILE: Xcode/DebugUniWinC/Preview Content/Preview Assets.xcassets/Contents.json ================================================ { "info" : { "author" : "xcode", "version" : 1 } } ================================================ FILE: Xcode/LibUniWinC/CustomPanelHelper.swift ================================================ // // CustomPanelHelper.swift // LibUniWinC // // Created by owner on 2021/11/28. // Copyright © 2021 kirurobo. All rights reserved. // import Cocoa import AppKit import UniformTypeIdentifiers class CustomPanelHelper { public let panel : NSSavePanel let customAccessoryView = NSView(frame: NSRect(x:0, y:0, width:400, height:40)) var popup = NSPopUpButton(frame: NSRect(x:80, y:5, width:310, height:25)) var label = NSTextField(frame: NSRect(x: 10, y:3, width: 70, height:25)) var hasSubView : Bool = false var extArray : [[String]?] = [] var extUTTypes : [[UTType]?] = [] init(panel: NSSavePanel) { self.panel = panel label.stringValue = "File type : " label.isBordered = false label.isSelectable = false label.isEditable = false label.backgroundColor = NSColor.clear popup.pullsDown = false popup.action = #selector(onFileTypeChanged(_:)) popup.target = self let center = NotificationCenter.default center.addObserver(self, selector: #selector(_willPanelCloseObserver(notification:)), name: NSWindow.willCloseNotification, object: panel) } @objc func _willPanelCloseObserver(notification: Notification) { // パネルを閉じた後に accessoryView が画面に残ってしまっていたため、削除を試みる customAccessoryView.removeFromSuperview() label.removeFromSuperview() popup.removeFromSuperview() panel.accessoryView = nil let center = NotificationCenter.default center.removeObserver(self, name: NSSavePanel.willCloseNotification, object: panel) } /// 文字列で指定された拡張子の組みを候補に追加 public func addFileType(title: String, extensions: [String]?) -> Void { popup.addItem(withTitle: title) extArray.append(extensions) extUTTypes.append(createContentType(extensitons: extensions)) // 初回ならばデフォルトとして選択し、subView 追加 if (!hasSubView) { popup.selectItem(at: 0) if #available(macOS 11.0, *) { panel.allowedContentTypes = (extUTTypes.first ?? nil) ?? [] } else { panel.allowedFileTypes = extArray.first ?? nil } customAccessoryView.addSubview(label) customAccessoryView.addSubview(popup) // 2024/05/05 現在、NSSavePanel では accessoryView を設定するとエラーでダイアログを開けない if (panel is NSOpenPanel) { panel.accessoryView = customAccessoryView } hasSubView = true; } } /// 文字列で渡された拡張子群をUTTypeに変換 /// allowedFileTypes ではなく allowedContentTypes を利用するため。 /// - Parameters: /// - ext: 拡張子文字列 /// - Returns: /// - UTTypeに変換後の配列。nilなら任意を意味する private func createContentType(extensitons: [String]?) -> [UTType]? { if (extensitons == nil) { return nil } var result: [UTType] = [] for ext in extensitons! { if (ext != "") { let type = UTType(tag: ext, tagClass: .filenameExtension, conformingTo: nil) if (type != nil) { result.append(type!) } } } if (result.count > 0) { return result } else { return nil } } /// Add filters for allowedFileTypes /// - Parameters: /// - panel: Custom panel /// - text: text = "TitleA(TAB)textA1(TAB)extA2(TAB)...extAn(LF)TitleB(TAB)extB1(TAB)extB2...extBn(LF)" public func addFileTypes(text: String) -> Void { let items = text.components(separatedBy: "\n") for item in items { let array = Array(item.components(separatedBy: "\t")) // タイトルと拡張子で要素は2以上必要 if (array.count > 1) { // "*" があれば拡張子指定なし(全てのファイル)とする self.addFileType( title: array.first!, extensions: (array.contains("*") ? nil : Array(array.dropFirst())) ) } } } /// Apply a file type filter @objc func onFileTypeChanged(_ sender: Any?) { if #available(macOS 11.0, *) { let type = extUTTypes[popup.indexOfSelectedItem] if (type == nil) { // ファイルタイプ指定が nil なら、任意の種類を許可する panel.allowsOtherFileTypes = true panel.allowedContentTypes = [] } else { // ファイルタイプ指定があればそれのみ許可とする panel.allowsOtherFileTypes = false panel.allowedContentTypes = type! } } else { panel.allowedFileTypes = extArray[popup.indexOfSelectedItem] } } } ================================================ FILE: Xcode/LibUniWinC/LibUniWinC.swift ================================================ // // Unified Window Controller macOS plugin // // Author: Kirurobo // License: MIT // // Acknowledgement: // This code is based on transparent.swift created by kriver1 on 2018/05/23. // https://qiita.com/KRiver1/items/9ecf65759cf1349f56af // // References: // - https://qiita.com/fuziki/items/974f70b663ebfadfb136 // - https://qiita.com/KRiver1/items/9ecf65759cf1349f56af // - http://tatsudoya.blog.fc2.com/blog-entry-244.html // - https://qiita.com/mybdesign/items/fe3e390741799c1814ad // - https://blog.fenrir-inc.com/jp/2011/07/nsview_uiview.html // import Foundation import Cocoa import ObjectiveC extension NSWindow { /// swizzleによってconstrainFrameRectを無効にする func swizzleConstrainFrameRect() { let originalSelector = #selector(constrainFrameRect(_:to:)) let swizzledSelector = #selector(disabled_constrainFrameRect(_:to:)) guard let originalMethod = class_getInstanceMethod(NSWindow.self, originalSelector), let swizzledMethod = class_getInstanceMethod(NSWindow.self, swizzledSelector) else { return } // constrainFrameRectを元のものと入れ替える method_exchangeImplementations(originalMethod, swizzledMethod) } /// 制限なしとした constrainFrameRect @objc func disabled_constrainFrameRect(_ frameRect: NSRect, to screen: NSScreen?) -> NSRect { return frameRect } } /// Window controller main logic @objcMembers public class LibUniWinC { // MARK: - Internal structs and classes /// 現在の設定を保持する構造体 private struct State { public var isReady: Bool = false public var isTopmost: Bool = false public var isBottommost: Bool = false public var isBorderless: Bool = false public var isTransparent: Bool = false public var alphaValue: Float32 = 1 // サイズ変更がなされると不正確となる。透過時にこれを使う public var isZoomed: Bool = false // Keep unzoomed size for the borderless window public var normalWindowRect: NSRect = NSRect(x: 0, y: 0, width: 0, height: 0) // メニューバーより上にも自由配置を許すか public var isFreePositioningEnabled: Bool = false // 自由移動のため実際にconstrainFrameRectを無効化されたか public var isConstrainFrameRectDisabled: Bool = false } /// Event types for WindowStyleChanged private enum EventType : Int32 { case None = 0 case Style = 1 case Size = 2 case Order = 4 } /// Flag constants for file dialog public enum PanelFlag : Int32 { case None = 0 case FileMustExist = 1 case FolderMustExist = 2 case AllowMultipleSelection = 4 //case CanCreateDirectories = 16 case OverwritePrompt = 256 case CreatePrompt = 512 case ShowHidden = 4096 case RetrieveLink = 8192 public func containedIn(value: Int32) -> Bool { return (self.rawValue & value > 0) } } public struct PanelSettings { public var structSize: Int32 = 0; public var flags: Int32 = 0; public var titleText: UnsafePointer?; public var filterText: UnsafePointer?; public var initialFile: UnsafePointer?; public var initialDirectory: UnsafePointer?; public var defaultExt: UnsafePointer?; } /// ウィンドウの初期状態を保持するクラス private class OriginalWindowInfo { /// 元々のStyleMaskをここに記憶 public var styleMask: NSWindow.StyleMask = [] /// 元々のCollectionBehavior public var collectionBehavior: NSWindow.CollectionBehavior = [] /// 元々のウィンドウLevel public var level: NSWindow.Level = NSWindow.Level.normal public var titlebarAppearsTransparent: Bool = false public var titleVisibility: NSWindow.TitleVisibility = NSWindow.TitleVisibility.visible public var backgroundColor: NSColor = NSColor.clear public var isOpaque: Bool = true public var hasShadow: Bool = true public var isKeyWindow: Bool = true public var alphaValue: CGFloat = 1 public var contentViewWantsLayer: Bool = true public var contentViewLayerIsOpaque: Bool = true public var contentViewLayerBackgroundColor: CGColor? = CGColor.clear /// 指定ウィンドウの初期値を記憶 public func Store(window: NSWindow) -> Void { self.collectionBehavior = window.collectionBehavior self.styleMask = window.styleMask self.level = window.level self.titlebarAppearsTransparent = window.titlebarAppearsTransparent self.titleVisibility = window.titleVisibility self.backgroundColor = window.backgroundColor self.isOpaque = window.isOpaque self.hasShadow = window.hasShadow self.isKeyWindow = window.isKeyWindow self.alphaValue = window.alphaValue if let view = window.contentView { self.contentViewWantsLayer = view.wantsLayer if let layer = view.layer { self.contentViewLayerIsOpaque = layer.isOpaque self.contentViewLayerBackgroundColor = layer.backgroundColor } } } /// 指定ウィンドウの状態を初期値に戻す public func Restore(window: NSWindow) -> Void { window.collectionBehavior = self.collectionBehavior window.styleMask = self.styleMask window.level = self.level window.titlebarAppearsTransparent = self.titlebarAppearsTransparent window.titleVisibility = self.titleVisibility window.backgroundColor = self.backgroundColor window.isOpaque = self.isOpaque window.hasShadow = self.hasShadow window.alphaValue = self.alphaValue window.contentView?.wantsLayer = self.contentViewWantsLayer window.contentView?.layer?.isOpaque = self.contentViewLayerIsOpaque window.contentView?.layer?.backgroundColor = self.contentViewLayerBackgroundColor // Restore the constrainFrameRect() _enableFreePositioning(enabled: false) } } // MARK: - Static variables /// 操作対象となるウィンドウ。nilだと未指定 private static var targetWindow: NSWindow? = nil /// 無限に再帰的にキーウィンドウ化されることを防ぐためのフラグ private static var isMakingKeyWindow: Bool = false /// 現在の設定を保持する構造体 private static var state: State = State() /// ウィンドウの初期状態を記憶するインスタンス private static var orgWindowInfo: OriginalWindowInfo = OriginalWindowInfo() /// Callback function with wchar_t pointer public typealias stringCallback = (@convention(c) (UnsafeRawPointer) -> Void) public typealias intCallback = (@convention(c) (Int32) -> Void) public static var dropFilesCallback: stringCallback? = nil public static var openFilesCallback: stringCallback? = nil public static var saveFilesCallback: stringCallback? = nil public static var monitorChangedCallback: intCallback? = nil public static var windowStyleChangedCallback: intCallback? = nil private static var observerObject: Any? = nil /// Sub view to implement file dropping private static var overlayView: OverlayView? = nil /// プライマリーモニターの高さ private static var primaryMonitorHeight: CGFloat = 0 private static var monitorCount: Int = 0 private static var monitorRectangles: [CGRect] = [] private static var monitorIndices: [Int] = [] // MARK: - Properties /// 準備完了かどうかを返す /// - Returns: 準備完了ならtrue @objc public static func isActive() -> Bool { if (state.isReady && targetWindow == nil) { return false } return true } @objc public static func isTransparent() -> Bool { return state.isTransparent } @objc public static func isBorderless() -> Bool { return state.isBorderless } @objc public static func isTopmost() -> Bool { return state.isTopmost } @objc public static func isBottommost() -> Bool { return state.isBottommost } @objc public static func isMaximized() -> Bool { return state.isZoomed //return _isZoomedActually() } @objc public static func isMinimized() -> Bool { return (targetWindow?.isMiniaturized ?? false) } @objc public static func isFreePositioningEnabled() -> Bool { return state.isFreePositioningEnabled } private static func _isZoomedActually() -> Bool { if (targetWindow == nil) { return false } else if (targetWindow!.isMiniaturized) { return false } else if (state.isTransparent) { // When the window is transparent let monitorIndex = getCurrentMonitor() let rect = monitorRectangles[monitorIndices[Int(monitorIndex)]] let frame = targetWindow!.frame return (frame.size == rect.size) && (frame.origin == rect.origin) } else { // When the window is opaque return targetWindow!.isZoomed } } // MARK: - Initialize, window handling /// Initialize private static func _setup() -> Void { // Get the screen size _updateScreenInfo() // Prepare notification to refresh the screen size NotificationCenter.default.addObserver( forName: NSApplication.didChangeScreenParametersNotification, object: NSApplication.shared, queue: OperationQueue.main ) { notification -> Void in _onMonitorChanged() } // Flag as initialized state.isReady = true } /// Called when screen parameeters changed private static func _onMonitorChanged() -> Void { _updateScreenInfo() // Run callback let count = getMonitorCount() monitorChangedCallback?(count) } /// Retrieve current monitor settings private static func _updateScreenInfo() -> Void { // Reference: https://stackoverrun.com/ja/q/1746184 primaryMonitorHeight = NSScreen.screens.map {$0.frame.origin.y + $0.frame.height}.max()! // Get the number of monitors monitorCount = NSScreen.screens.count // Clear the list monitorRectangles.removeAll() monitorIndices.removeAll() // Get each screen rectangle for i in 0.. NSWindow { //var myWindow: NSWindow = NSApp.orderedWindows.first! //let myWindow: NSWindow = NSApp.mainWindow ?? NSApp.orderedWindows.first! for window in NSApp.orderedWindows { // キー操作を受け取るウィンドウが見つかれば、それだとする if (window.isKeyWindow) { return window } // print("[DEBUG - orderedWindows]") // print(window.title) // print(window.isKeyWindow) // print(window.isZoomed) // print(window.contentLayoutRect) } // キーウィンドウが見つからなければ先頭とする return NSApp.orderedWindows.first! } /// Detach from the window @objc public static func detachWindow() -> Void { _detachWindow() } /// Attach to my main window @objc public static func attachMyWindow() -> Bool { let window: NSWindow = _findMyWindow() _attachWindow(window: window) return true } /// Set the target window /// Restore the former winodw if exist public static func _attachWindow(window: NSWindow) -> Void { // Do nothing if the same window is the target if (targetWindow == window) { return } // Release the former window if exist detachWindow() // Initialize when the first call if (!state.isReady) { _setup() } // Set to the target targetWindow = window // Store the original state orgWindowInfo.Store(window: window) // Apply the state _reapplyWindowStyles() // Add observers for window state changed callback and reapply styles let center = NotificationCenter.default center.addObserver(self, selector: #selector(_fullScreenChangedObserver(notification:)), name: NSWindow.didEnterFullScreenNotification, object: window) center.addObserver(self, selector: #selector(_fullScreenChangedObserver(notification:)), name: NSWindow.didExitFullScreenNotification, object: window) center.addObserver(self, selector: #selector(_windowStateChangedObserver(notification:)), name: NSWindow.didMiniaturizeNotification, object: window) center.addObserver(self, selector: #selector(_windowStateChangedObserver(notification:)), name: NSWindow.didDeminiaturizeNotification, object: window) //center.addObserver(self, selector: #selector(_resizedObserver(notification:)), name: NSWindow.didResizeNotification, object: window) center.addObserver(self, selector: #selector(_resizedObserver(notification:)), name: NSWindow.didEndLiveResizeNotification, object: window) //center.addObserver(self, selector: #selector(_keepKeyWindowObserver(notification:)), name: NSWindow.didExposeNotification, object: window) center.addObserver(self, selector: #selector(_keepKeyWindowObserver(notification:)), name: NSWindow.didResignKeyNotification, object: window) center.addObserver(self, selector: #selector(_keepBottommostObserver(notification:)), name: NSWindow.didBecomeKeyNotification, object: window) } private static func _detachWindow() -> Void { if (targetWindow != nil) { let center = NotificationCenter.default center.removeObserver(self, name: NSWindow.didEnterFullScreenNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didExitFullScreenNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didMiniaturizeNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didDeminiaturizeNotification, object: targetWindow) //center.removeObserver(self, name: NSWindow.didResizeNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didEndLiveResizeNotification, object: targetWindow) //center.removeObserver(self, name: NSWindow.didExposeNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didResignKeyNotification, object: targetWindow) center.removeObserver(self, name: NSWindow.didBecomeKeyNotification, object: targetWindow) //center.removeObserver(self) // Restore the original style orgWindowInfo.Restore(window: targetWindow!) // Remove the subview if (overlayView != nil) { overlayView?.removeFromSuperview() overlayView = nil } targetWindow = nil } } @objc static func _fullScreenChangedObserver(notification: Notification) { // Reapply the state at fullscreen _reapplyWindowStyles() _doWindowStyleChangedCallback(num: EventType.Size) } @objc static func _windowStateChangedObserver(notification: Notification) { _doWindowStyleChangedCallback(num: EventType.Size) } @objc static func _resizedObserver(notification: Notification) { if (targetWindow != nil) { let zoomed = _isZoomedActually() if (state.isZoomed != zoomed) { state.isZoomed = zoomed } _doWindowStyleChangedCallback(num: EventType.Size) } } @objc static func _keepKeyWindowObserver(notification: Notification) { guard let window = targetWindow else { return } if (state.isBottommost) { return } // Unity6においては、同期的にmakeKeyの処理を行うとdidResignKey/didBecomeKeyが再帰的に発生しスタックをオーバーフローしたので, 非同期に実行する if (orgWindowInfo.isKeyWindow && !window.isKeyWindow) { if (isMakingKeyWindow) { return } isMakingKeyWindow = true Task { @MainActor in defer { isMakingKeyWindow = false } if let w = targetWindow, orgWindowInfo.isKeyWindow && !w.isKeyWindow && !state.isBottommost { _makeKeyWindow() } } } } @objc static func _keepBottommostObserver(notification: Notification) { if ((targetWindow != nil) && state.isBottommost) { targetWindow!.level = orgWindowInfo.level targetWindow!.order(NSWindow.OrderingMode.below, relativeTo:0) _doWindowStyleChangedCallback(num: EventType.Order) } } /// Call this periodically to maintain window state. @objc public static func update() { if (targetWindow != nil) { if (state.isTransparent) { // Keep window transparent if (targetWindow!.isOpaque) { _setWindowTransparent(window: targetWindow!, isTransparent: true) } // Keep contentView transparent if (targetWindow!.contentView?.layer?.isOpaque ?? false) { _setContentViewTransparent(window: targetWindow!, isTransparent: true) } } } } private static func _makeKeyWindow() { guard let window = targetWindow else { return } if (state.isBorderless) { // Restore the key window state. NSWindow.canBecomeKeyWindow is false by default for borderless window, so makeKey() is unavailable... state.isBorderless = false; // Suppress the callback setBorderless(isBorderless: false) window.makeKey() state.isBorderless = true; // Suppress the callback setBorderless(isBorderless: true) } else { window.makeKey() } } private static func _doWindowStyleChangedCallback(num : EventType) -> Void { windowStyleChangedCallback?(num.rawValue) } /// Create an overlay view to handle file dropping private static func _setupOverlayView() -> Void { guard let window = targetWindow else { return } // Add a subview to handle file dropping overlayView = OverlayView(frame: window.frame) window.contentView?.addSubview(overlayView!) overlayView?.fitToSuperView() } /// Apply current window state private static func _reapplyWindowStyles() -> Void { if (targetWindow != nil) { if (state.isBottommost) { setBottommost(isBottommost: state.isBottommost) } else { setTopmost(isTopmost: state.isTopmost) } setTransparent(isTransparent: state.isTransparent) setBorderless(isBorderless: state.isBorderless) setMaximized(isZoomed: state.isZoomed) setAlphaValue(alpha: state.alphaValue) _enableFreePositioning(enabled: state.isFreePositioningEnabled) } } /// Copy UTF-16 string to uint16 buffer and add null for the end of the string private static func _copyUTF16ToBuffer(text: String.UTF16View, buffer: UnsafeMutablePointer) -> Bool { let count = text.count if (count <= 0) { return false } var i = 0 for c in text { buffer[i] = c i += 1 } buffer[count] = UTF16Char.zero // End of the string return true } // MARK: - Functions to get or set the window state /// ウィンドウの透過/非透過設定 /// - Parameters: /// - window: 対象ウィンドウ /// - isTransparent: trueなら透過、falseなら戻す private static func _setWindowTransparent(window: NSWindow, isTransparent: Bool) -> Void { if (isTransparent) { // window.styleMask = orgWindowInfo.styleMask // //window.styleMask = [] // if (state.isBorderless) { // window.titlebarAppearsTransparent = true // window.titleVisibility = .hidden // window.styleMask.insert(.borderless) // } //window.hasShadow = false // _setWindowBorderless()に移動 window.backgroundColor = NSColor.clear window.isOpaque = false //window.contentView?.wantsLayer = true } else { // window.styleMask = orgWindowInfo.styleMask // if (state.isBorderless) { // window.styleMask.insert(.borderless) // } window.backgroundColor = orgWindowInfo.backgroundColor window.isOpaque = orgWindowInfo.isOpaque //window.hasShadow = orgWindowInfo.hasShadow } } /// ContentViewの透過/非透過設定 /// - Parameters: /// - window: 対象ウィンドウ /// - isTransparent: trueなら透過、falseなら戻す private static func _setContentViewTransparent(window: NSWindow, isTransparent: Bool) -> Void { if let view: NSView = window.contentView { if (isTransparent) { view.wantsLayer = true view.layer?.backgroundColor = CGColor.clear view.layer?.isOpaque = false } else { view.wantsLayer = orgWindowInfo.contentViewWantsLayer view.layer?.backgroundColor = orgWindowInfo.contentViewLayerBackgroundColor view.layer?.isOpaque = orgWindowInfo.contentViewLayerIsOpaque } } } /// ウィンドウ枠の除去/復帰 /// - Parameters: /// - window: 対象ウィンドウ /// - isBorderless: 枠なしにするか private static func _setWindowBorderless(window: NSWindow, isBorderless: Bool) -> Void { if (isBorderless) { // 枠なしにした後も残っていたため、枠なしの場合は常に影はオフとする window.hasShadow = false // macOSのフルスクリーンでは、styleMask が 0 (== [.borderless]) であった。 // そのため .fullscreen が含まれるかというフラグではフルスクリーンを判別できないよう。 // その場合にクラッシュすることを防ぐため、すでに .borderless でないときのみ .borderless にすることにする。 if (!window.styleMask.contains(.fullScreen) && (window.styleMask != [.borderless])) { window.styleMask = [.borderless] if (window.hasTitleBar) { window.titlebarAppearsTransparent = true window.titleVisibility = .hidden } } } else { window.styleMask = orgWindowInfo.styleMask if (!orgWindowInfo.styleMask.contains(.borderless)) { // 初期状態で.borderlessだったならばそれは残し、そうでなければ枠なしを解除 window.styleMask.remove(.borderless) } if (window.hasTitleBar) { window.titlebarAppearsTransparent = orgWindowInfo.titlebarAppearsTransparent window.titleVisibility = orgWindowInfo.titleVisibility } window.hasShadow = orgWindowInfo.hasShadow } } /// ウィンドウ透過の方法を設定 /// 現在はWindowsでのみ実装 /// - Parameter type: 0:None, 1:Alpha, 2:ColorKey @objc public static func setTransparentType(type: Int32) -> Void { } /// 単色マスクの場合の色設定 /// 現在はWindowsでのみ実装 /// - Parameter color: 透過する色 @objc public static func setKeyColor(color: Int32) -> Void { } /// Sets window alpha value /// - Parameter alpha: 0.0 - 1.0 @objc public static func setAlphaValue(alpha: Float32) -> Void { if let window: NSWindow = targetWindow { window.alphaValue = CGFloat(alpha) } state.alphaValue = alpha } /// ウィンドウ透過を有効化/無効化 /// - Parameter isTransparent: trueなら透過ウィンドウにする @objc public static func setTransparent(isTransparent: Bool) -> Void { if let window: NSWindow = targetWindow { _setWindowTransparent(window: window, isTransparent: isTransparent) _setContentViewTransparent(window: window, isTransparent: isTransparent) } if (state.isTransparent != isTransparent) { _doWindowStyleChangedCallback(num: EventType.Style) } state.isTransparent = isTransparent } /// Hide or show the window border /// - Parameter isBorderless: true for borderless @objc public static func setBorderless(isBorderless: Bool) -> Void { if let window: NSWindow = targetWindow { if (!state.isZoomed) { if (isBorderless != state.isBorderless) { // Store the window size when the window become borderless state.normalWindowRect = window.frame } } if (orgWindowInfo.isKeyWindow) { if (isBorderless) { // 枠なしにする前に、キーウィンドウにしておく if (!window.isKeyWindow) { Task { @MainActor in window.makeKey() } } _setWindowBorderless(window: window, isBorderless: isBorderless) } else { // 枠ありにした後で、キーウィンドウにする _setWindowBorderless(window: window, isBorderless: isBorderless) if (!window.isKeyWindow) { Task { @MainActor in window.makeKey() } } } } else { _setWindowBorderless(window: window, isBorderless: isBorderless) } // 透過切り替え直後にキー操作が効かなくなるためキーウインドウにしたい。だがうまくはいかないよう。透過だとキーにできないのは仕方がなさそう… // window.makeMain() // window.makeKey() if (state.isZoomed) { if (!window.isZoomed) { window.zoom(nil) } if (isBorderless) { // Stretch to the full-screen size let monitorIndex = getCurrentMonitor() let rect = monitorRectangles[monitorIndices[Int(monitorIndex)]] window.setFrame(rect, display: true, animate: false) } } else { // 枠なしを切り替えるたびにウィンドウサイズが小さくなったので、これはコメントアウト // if (!isBorderless && state.isBorderless) { // // Restore the window size when the window become bordered // if (state.normalWindowRect.width != 0 && state.normalWindowRect.height != 0) { // window.setFrame(state.normalWindowRect, display: true, animate: false) // } // } } } if (state.isBorderless != isBorderless) { _doWindowStyleChangedCallback(num: EventType.Style) } state.isBorderless = isBorderless } /// 常に最前面を有効化/無効化 /// - Parameter isTopmost: true for topmost (higher than the menu bar) @objc public static func setTopmost(isTopmost: Bool) -> Void { if let window: NSWindow = targetWindow { if (isTopmost) { window.collectionBehavior = [.fullScreenAuxiliary] window.level = NSWindow.Level.popUpMenu } else { window.collectionBehavior = orgWindowInfo.collectionBehavior window.level = orgWindowInfo.level } } if (state.isTopmost != isTopmost) { _doWindowStyleChangedCallback(num: EventType.Style) } state.isTopmost = isTopmost state.isBottommost = false } /// 常に最背面を有効化/無効化 /// - Parameter isBottommost: trueなら最背面 @objc public static func setBottommost(isBottommost: Bool) -> Void { if let window: NSWindow = targetWindow { if (isBottommost) { window.collectionBehavior = [.fullScreenAuxiliary] window.level = orgWindowInfo.level window.order(NSWindow.OrderingMode.below, relativeTo:0) } else { window.collectionBehavior = orgWindowInfo.collectionBehavior window.level = orgWindowInfo.level } } if (state.isBottommost != isBottommost) { _doWindowStyleChangedCallback(num: EventType.Style) } state.isBottommost = isBottommost state.isTopmost = false } /// 操作のクリックスルーを有効化/無効化 @objc public static func setClickThrough(isTransparent: Bool) -> Void { if let window: NSWindow = targetWindow { window.ignoresMouseEvents = isTransparent //window!.acceptsMouseMovedEvents = true // 試しに付けてみたが不要なようだった } } /// macOSで通常は制限されているウィンドウ位置を許可する @objc public static func enableFreePositioning(enabled: Bool) -> Void { // 指示された内容を現在の設定値として覚える state.isFreePositioningEnabled = enabled // 実際の処理 _enableFreePositioning(enabled: enabled) } /// constrainFrameRect による制限を解除/復帰 private static func _enableFreePositioning(enabled: Bool) -> Void { // 自由位置のenabledは、constrainのdisabled。すでに一致していればメソッド交換は行わない if (enabled == state.isConstrainFrameRectDisabled) { return } if let window: NSWindow = targetWindow { // constrainFrameRect の交換を行う(無効化も、復帰も交換) window.swizzleConstrainFrameRect() state.isConstrainFrameRectDisabled.toggle() } } /// Maximize the window @objc public static func setMaximized(isZoomed: Bool) -> Void { if let window: NSWindow = targetWindow { if (state.isBorderless) { // window.zoom() is unavailable if the window is ransparent (borderless) if (isZoomed) { // Store the window size when the window become zoomed //if (!state.isZoomed && state.isBorderless && !_isZoomedActually()) { if (!_isZoomedActually() && state.isBorderless) { state.normalWindowRect = window.frame } // The window couldn't be zoomed when it is borderless let monitorIndex = getCurrentMonitor() let rect = monitorRectangles[monitorIndices[Int(monitorIndex)]] window.setFrame(rect, display: true, animate: false) } else { if (state.normalWindowRect.width != 0 && state.normalWindowRect.height != 0) { window.setFrame(state.normalWindowRect, display: true, animate: false) } } state.isZoomed = isZoomed } else { // The window is opaque if (window.isZoomed != isZoomed) { // Toggle window.zoom(nil) state.isZoomed = window.isZoomed } } } else { // Remember the state state.isZoomed = isZoomed } } /// ウィンドウの位置を設定 /// - Parameters: /// - x: ウィンドウ左座標 /// - y: ウィンドウ下座標 /// - Returns: 成功すれば true @objc public static func setPosition(x: Float32, y: Float32) -> Bool { if (targetWindow == nil) { return false } //// Windowsに合わせる場合。左下が原点なので画面の高さを用いて変換 //let cocoaY = primaryMonitorHeight - CGFloat(y) //let position: NSPoint = NSMakePoint(CGFloat(x), cocoaY) //targetWindow?.setFrameTopLeftPoint(position) // ウィンドウ左下を基準としてセット let position: NSPoint = NSMakePoint(CGFloat(x), CGFloat(y)) targetWindow?.setFrameOrigin(position) return true } /// ウィンドウの現在位置を取得 /// - x: ウィンドウ左座標 /// - y: ウィンドウ下座標 /// - Returns: 成功すれば true @objc public static func getPosition(x: UnsafeMutablePointer, y: UnsafeMutablePointer) -> Bool { if (targetWindow == nil) { x.pointee = 0; y.pointee = 0; return false } let frame = targetWindow!.frame x.pointee = Float32(frame.minX) y.pointee = Float32(frame.minY) // Windowsに合わせる場合 //y.pointee = Float32(primaryMonitorHeight - frame.maxY) return true } /// ウィンドウのサイズを設定 /// - Parameters: /// - width: ウィンドウ幅 /// - height: ウィンドウ高さ /// - Returns: 成功すれば true @objc public static func setSize(width: Float32, height:Float32) -> Bool { if (targetWindow == nil) { return false } var frame = targetWindow!.frame frame.size.width = CGFloat(width) frame.size.height = CGFloat(height) targetWindow?.setFrame(frame, display: true, animate: false) return true } /// ウィンドウのサイズを取得 /// - Parameters: /// - width: ウィンドウ幅 /// - height: ウィンドウ高さ /// - Returns: 成功すれば true @objc public static func getSize(width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { if (targetWindow == nil) { width.pointee = 0; height.pointee = 0; return false } let currentSize = targetWindow!.frame.size width.pointee = Float32(currentSize.width) height.pointee = Float32(currentSize.height) return true } /// ウィンドウのクライアント領域サイズを取得 /// - Parameters: /// - width: 幅 /// - height: 高さ /// - Returns: 成功すれば true @objc public static func getClientSize(width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { if (targetWindow == nil) { width.pointee = 0; height.pointee = 0; return false } let currentSize = targetWindow!.contentRect(forFrameRect: targetWindow!.frame).size width.pointee = Float32(currentSize.width) height.pointee = Float32(currentSize.height) return true } /// ウィンドウのクライアント領域位置・サイズを取得 /// - Parameters: /// - x: ウィンドウ左からのx座標 /// - y: ウィンドウ下からのy座標 /// - width: 幅 /// - height: 高さ /// - Returns: 成功すれば true @objc public static func getClientRectangle( x: UnsafeMutablePointer, y: UnsafeMutablePointer, width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { if (targetWindow == nil) { x.pointee = 0; y.pointee = 0; width.pointee = 0; height.pointee = 0; return false } let winRect = targetWindow!.frame let rect = targetWindow!.contentRect(forFrameRect: targetWindow!.frame) x.pointee = Float32(rect.minX - winRect.minX) y.pointee = Float32(rect.minY - winRect.minY) width.pointee = Float32(rect.width) height.pointee = Float32(rect.height) return true } @objc public static func registerWindowStyleChangedCallback(callback: @escaping intCallback) -> Bool { windowStyleChangedCallback = callback return true } @objc public static func unregisterWindowStyleChangedCallback() -> Bool { windowStyleChangedCallback = nil return true } // MARK: - Monitor Info. /// 現在有効な画面数を取得 /// - Returns: 画面数 @objc public static func getCurrentMonitor() -> Int32 { var primaryMonitorIndex: Int = 0 // ウィンドウ未取得ならプライマリモニタの番号を返す if (targetWindow == nil) { for i in 0.. Int32 { // NOTE: UnityにあるScreenやDisplayとは異なるため、Monitorという言葉にした return Int32(monitorCount) } /// 指定した画面の位置、サイズを取得 /// - Parameters: /// - monitorIndex: 画面の番号 /// - x: X座標 /// - y: Y座標 /// - width: ウィンドウ幅 /// - height: ウィンドウ高さ /// - Returns: 成功すれば true @objc public static func getMonitorRectangle( monitorIndex: Int32, x: UnsafeMutablePointer, y: UnsafeMutablePointer, width: UnsafeMutablePointer, height: UnsafeMutablePointer ) -> Bool { // 存在しないスクリーン番号ならば false で終了 if (monitorIndex < 0 || monitorIndex >= monitorCount || monitorIndex >= NSScreen.screens.count) { return false } let frame = NSScreen.screens[monitorIndices[Int(monitorIndex)]].visibleFrame x.pointee = Float32(frame.minX) y.pointee = Float32(frame.minY) width.pointee = Float32(frame.width) height.pointee = Float32(frame.height) return true } @objc public static func registerMonitorChangedCallback(callback: @escaping intCallback) -> Bool { monitorChangedCallback = callback return true } @objc public static func unregisterMonitorChangedCallback() -> Bool { monitorChangedCallback = nil return true } // MARK: - File drop @objc public static func setAllowDrop(enabled: Bool) -> Bool { if (overlayView == nil) { _setupOverlayView() } overlayView?.setEnabled(enabled: enabled) return true } @objc public static func registerDropFilesCallback(callback: @escaping stringCallback) -> Bool { dropFilesCallback = callback return true } @objc public static func unregisterDropFilesCallback() -> Bool { dropFilesCallback = nil return true } // MARK: - Mouser curosor /// 現在のカーソル座標を取得 /// - Parameters: /// - x: X座標 /// - y: Y座標 /// - Returns: 成功すれば true @objc public static func getCursorPosition(x: UnsafeMutablePointer, y: UnsafeMutablePointer) -> Bool { let mousePos = NSEvent.mouseLocation x.pointee = Float32(mousePos.x) y.pointee = Float32(mousePos.y) return true } /// カーソル位置を設定 /// - Parameters: /// - x: X座標 /// - y: Y座標 /// - Returns: 成功すれば true @objc public static func setCursorPosition(x: Float32, y: Float32) -> Bool { let position = NSMakePoint(CGFloat(x), CGFloat(y)) let moveEvent = CGEvent(mouseEventSource: nil, mouseType: .mouseMoved, mouseCursorPosition: position, mouseButton: .left) moveEvent?.post(tap: .cgSessionEventTap) return true } /// マウスのボタン押下状態を取得 /// - Returns: マウスボタン押下状態を示すビットフラグ(1: Left, 2: Right, 4: Middle) @objc public static func getMouseButtons() -> Int32 { let buttons = NSEvent.pressedMouseButtons let result = buttons & (1 + 2 + 4) // Middle ボタンまでは pressedMouseButtons の仕様と一致。それ以上は非対応。 return Int32(result) } /// 修飾キー状態を取得 /// 数値は Windows API のものがベース。NSEvent.ModifierFlagsのrawValueとは異なる。 /// - Returns: 修飾キー押下を示すビットフラグ(0:None, 1:Option/Alt, 2:Control, 4:Shift, 8:Command/Win) @objc public static func getModifierKeys() -> Int32 { var result : Int32 = 0 if let flags = NSApp.currentEvent?.modifierFlags { result += (flags.contains(.option)) ? 1 : 0 result += (flags.contains(.control)) ? 2 : 0 result += (flags.contains(.shift)) ? 4 : 0 result += (flags.contains(.command)) ? 8 : 0 } return result } // MARK: - File dialogs /// Open dialog /// - Parameters: /// - lpSettings: Pointer of PanelSettings /// - lpBuffer: Pointer of UTF-16 string for output /// - bufferSize: Size of UTF-16 string buffer @objc public static func openFilePanel(lpSettings: UnsafeRawPointer, lpBuffer: UnsafeMutablePointer?, bufferSize: UInt32) -> Bool { let panel = NSOpenPanel() let panelHelper = CustomPanelHelper(panel: panel) let pPanelSettings = lpSettings.bindMemory(to: PanelSettings.self, capacity: MemoryLayout.size) let ps = pPanelSettings.pointee let initialDir = getStringFromUtf16Array(textPointer: ps.initialDirectory) let initialFile = getStringFromUtf16Array(textPointer: ps.initialFile) as NSString if (targetWindow != nil) { if (state.isTopmost) { // Temporarily disable always on top in order to show the dialog targetWindow?.level = NSWindow.Level.floating } // ↓ panel.parent を設定すると accessoryView が見えなくなってしまうためコメントアウト。問題なければ後日削除 // Set attached window as the parent //panel.parent = targetWindow } else { // Find my window if the window is not attached //let myWindow: NSWindow? = NSApp.orderedWindows.first //panel.parent = myWindow } panel.allowsMultipleSelection = PanelFlag.AllowMultipleSelection.containedIn(value: ps.flags) panel.showsHiddenFiles = PanelFlag.ShowHidden.containedIn(value: ps.flags) //panel.allowedFileTypes = fileTypes panelHelper.addFileTypes(text: getStringFromUtf16Array(textPointer: ps.filterText)) panel.isAccessoryViewDisclosed = true // これをしないと Options ボタンを押すまでファイルタイプ選択が出ない panel.message = getStringFromUtf16Array(textPointer: ps.titleText) //panel.title = getStringFromUtf16Array(textPointer: ps.titleText) if (initialDir != "") { panel.directoryURL = URL(fileURLWithPath: initialDir, isDirectory: true) } else if (initialFile.deletingLastPathComponent != "") { panel.directoryURL = URL(fileURLWithPath: initialFile.deletingLastPathComponent, isDirectory: true) } panel.nameFieldStringValue = initialFile.lastPathComponent panel.canChooseFiles = true panel.canChooseDirectories = false panel.allowsOtherFileTypes = false panel.canCreateDirectories = true //panel.showsTagField = false panel.allowsOtherFileTypes = false panel.level = NSWindow.Level.popUpMenu panel.orderFrontRegardless() panel.center() let result = panel.runModal(); var text: String = "" if (result == .OK) { if (panel.urls.count > 0) { // Make new-line separated string for url in panel.urls { text += "\"" + url.path.replacingOccurrences(of: "\"", with: "\"\"") + "\"\n" } } } if (targetWindow != nil) { if (state.isTopmost) { // Re-enable always on top targetWindow?.level = NSWindow.Level.popUpMenu } if (state.isBorderless) { _makeKeyWindow() // // Restore the key window state. NSWindow.canBecomeKeyWindow is false by default for borderless window, so makeKey() is unavailable... // state.isBorderless = false; // Suppress the callback // setBorderless(isBorderless: false) // state.isBorderless = true; // Suppress the callback // setBorderless(isBorderless: true) } targetWindow?.makeKeyAndOrderFront(nil) } return outputToStringBuffer(text: text, lpBuffer: lpBuffer, bufferSize: bufferSize) } /// Open file select dialog to save /// - Parameters: /// - lpSettings: Pointer of PanelSettings /// - lpBuffer: Pointer of UTF-16 string for output /// - bufferSize: Size of UTF-16 string buffer @objc public static func openSavePanel(lpSettings: UnsafeRawPointer, lpBuffer: UnsafeMutablePointer?, bufferSize: UInt32) -> Bool { let panel = NSSavePanel() let pPanelSettings = lpSettings.bindMemory(to: PanelSettings.self, capacity: MemoryLayout.size) let ps = pPanelSettings.pointee; let initialDir = getStringFromUtf16Array(textPointer: ps.initialDirectory) let initialFile = getStringFromUtf16Array(textPointer: ps.initialFile) as NSString if (targetWindow != nil) { if (state.isTopmost) { // Temporarily disable always on top in order to show the dialog targetWindow?.level = NSWindow.Level.floating } // ↓ panel.parent を設定すると accessoryView が見えなくなってしまうためコメントアウト。問題なければ後日削除 // Set attached window as the parent //panel.parent = targetWindow } else { // Find my window if the window is not attached //let myWindow: NSWindow = NSApp.orderedWindows[0] //panel.parent = myWindow } panel.showsHiddenFiles = PanelFlag.ShowHidden.containedIn(value: ps.flags) //panel.message = getStringFromUtf16Array(textPointer: ps.titleText) panel.title = getStringFromUtf16Array(textPointer: ps.titleText) if (initialDir != "") { panel.directoryURL = URL(fileURLWithPath: initialDir, isDirectory: true) } else if (initialFile.deletingLastPathComponent != "") { panel.directoryURL = URL(fileURLWithPath: initialFile.deletingLastPathComponent, isDirectory: true) } panel.nameFieldStringValue = initialFile.lastPathComponent panel.allowsOtherFileTypes = true panel.canCreateDirectories = true //PanelFlag.CanCreateDirectories.containedIn(value: ps.flags) //panel.canSelectHiddenExtension = false //panel.showsTagField = false panel.level = NSWindow.Level.popUpMenu panel.orderFrontRegardless() panel.center() // ファイル種類選択欄を追加 let panelHelper = CustomPanelHelper(panel: panel) panelHelper.addFileTypes(text: getStringFromUtf16Array(textPointer: ps.filterText)) // ダイアログを開く let result = panel.runModal(); var text: String = "" if (result == .OK && (panel.url != nil)) { let url: String = panel.url!.path text = "\"" + url.replacingOccurrences(of: "\"", with: "\"\"") + "\"\n" } if (targetWindow != nil) { if (state.isTopmost) { // Re-enable always on top targetWindow?.level = NSWindow.Level.popUpMenu } if (state.isBorderless) { _makeKeyWindow() } targetWindow?.makeKeyAndOrderFront(nil) } return outputToStringBuffer(text: text, lpBuffer: lpBuffer, bufferSize: bufferSize) } /// Parse an UTF-16 null terminated string pointer to String private static func getStringFromUtf16Array(textPointer: UnsafePointer?) -> String { if (textPointer == nil) { return "" } var len = 0 while textPointer![len] != UniChar.zero { len += 1 } return String(utf16CodeUnits: textPointer!, count: len) } /// Call a StringCallback with UTF-16 parameter /// - Parameters: /// - callback: Registered callback function /// - text: Parrameter as String /// - Returns: True if success public static func callStringCallback(callback: stringCallback?, text: String) -> Bool { if (callback == nil) { return false } let count = text.utf16.count if (count <= 0) { return false } let buffer = UnsafeMutablePointer.allocate(capacity: count + 1) var i = 0 for c in text.utf16 { buffer[i] = c i += 1 } buffer[count] = UniChar.zero // End of the string // Do callback callback?(buffer) buffer.deallocate() return true } /// Return an UTF-16 string by using a pointer /// - Parameters: /// - text: Parrameter as String /// - lpBuffer: UTF-16 string buffer that allocated by caller /// - bufferSize: Size of the string buffer /// - Returns: True if success private static func outputToStringBuffer(text: String, lpBuffer: UnsafeMutablePointer?, bufferSize: UInt32) -> Bool { let size = Int(bufferSize) //let buffer = lpBuffer.bindMemory(to: UniChar.self, capacity: size) guard let buffer = lpBuffer else { return false } // Fill in zero for i in 0.. Bool { return true } /// Return some information for debugging @objc public static func getDebugInfo() -> Int32 { var result: Int32 = 0 if (targetWindow != nil) { if (targetWindow!.canBecomeMain) { result += 1 } if (targetWindow!.canBecomeKey) { result += 2 } if (targetWindow!.isKeyWindow) { result += 4 } // // styleMaskの値を調べる // result = Int32(targetWindow!.styleMask.rawValue) } return result } } ================================================ FILE: Xcode/LibUniWinC/OverlayView.swift ================================================ // // OverlayView.swift // LibUniWinC // // Created by Kirurobo on 2020/11/28. // Copyright © 2020 Kirurobo. All rights reserved. // import Cocoa protocol FileDroppedDelegate { func complete(result: String) } class OverlayView: NSView { // References: // https://qiita.com/ohbashunsuke/items/8b9d6dc07408091690c6 // https://stackoverflow.com/questions/31657523/get-file-path-using-drag-and-drop-swift-macos /// Temporaly enable or disable file dropping var enabled = false required init?(coder: NSCoder) { super.init(coder: coder) setup() } override init(frame: NSRect) { super.init(frame: NSRect(x: 0, y: 0, width: frame.width, height: frame.height)) setup() } public func setEnabled(enabled: Bool) { self.enabled = enabled } private func setup() { self.registerForDraggedTypes( [NSPasteboard.PasteboardType.URL, NSPasteboard.PasteboardType.fileURL] ) self.wantsLayer = false self.needsDisplay = false } override public var acceptsFirstResponder: Bool { return false } override public var canBecomeKeyView: Bool { return false } override public var isOpaque: Bool { return false } /// Need to return nil to send keystrokes to the Unity view when the window is transparent override func hitTest(_ point: NSPoint) -> NSView? { return nil } /// Set constraints to fit the window public func fitToSuperView() -> Void { guard let parent = superview else { return } // Fit to the parent frame self.translatesAutoresizingMaskIntoConstraints = false let constraints = [ self.topAnchor.constraint(equalTo: parent.topAnchor, constant: 0), self.leftAnchor.constraint(equalTo: parent.leftAnchor, constant: 0), self.rightAnchor.constraint(equalTo: parent.rightAnchor, constant: 0), self.bottomAnchor.constraint(equalTo: parent.bottomAnchor, constant: 0) ] parent.addConstraints(constraints) } /// Set the visual when dragging override func draggingEntered(_ sender: NSDraggingInfo) -> NSDragOperation { if (enabled) { return .link } else { return [] } } /// Get the paths and perform the callback override func performDragOperation(_ sender: NSDraggingInfo) -> Bool { if (!self.enabled) { return false } guard let urls = sender.draggingPasteboard.propertyList( forType: NSPasteboard.PasteboardType(rawValue: "NSFilenamesPboardType") ) as? [String] else { return false } // Make new-line separated string //let text: String = urls.componentsJoined(by: "\n") var text: String = "" for url in urls { text += "\"" + url.replacingOccurrences(of: "\"", with: "\"\"") + "\"\n" } // Do callback return LibUniWinC.callStringCallback(callback: LibUniWinC.dropFilesCallback, text: text) } override func draw(_ dirtyRect: NSRect) { //super.draw(dirtyRect) // for debugging // // Drawing code here. // NSColor.red.set() // let figure = NSBezierPath() // figure.move(to: dirtyRect.origin) // figure.line(to: NSMakePoint(dirtyRect.width, dirtyRect.height)) // figure.line(to: NSMakePoint(dirtyRect.width - 5, dirtyRect.height)) // figure.line(to: NSMakePoint(dirtyRect.width, dirtyRect.height - 5)) // figure.line(to: NSMakePoint(dirtyRect.width, dirtyRect.height)) // figure.lineWidth = 2 // figure.stroke() } } ================================================ FILE: Xcode/LibUniWinC/README.md ================================================ # Unified Window Controller for macOS ### Author [Kirurobo](https://twitter.com/kirurobo) ### License [MIT](https://github.com/kirurobo/UniWindowController/blob/master/LICENSE) ================================================ FILE: Xcode/LibUniWinC/UnityInterface.swift ================================================ // // UnityInterface.swift // // Author: Kirurobo // License: MIT // Created: 2023/09/19 // Copyright © 2023 kirurobo. // // Actually the argument type is wchar_t* //using StringCallback = void(* _Nonnull)(const void* _Nonnull); // Callback for display changed //using IntCallback = void(* _Nonnull)(const SInt32); @_cdecl("IsActive") public func IsActive() -> Bool { return LibUniWinC.isActive() } @_cdecl("IsTransparent") public func IsTransparent() -> Bool { return LibUniWinC.isTransparent() } @_cdecl("IsBorderless") public func IsBorderless() -> Bool { return LibUniWinC.isBorderless() } @_cdecl("IsTopmost") public func IsTopmost() -> Bool { return LibUniWinC.isTopmost() } @_cdecl("IsBottommost") public func IsBottommost() -> Bool { return LibUniWinC.isBottommost() } @_cdecl("IsMaximized") public func IsMaximized() -> Bool { return LibUniWinC.isMaximized() } @_cdecl("IsMinimized") public func IsMinimized() -> Bool { return LibUniWinC.isMinimized() } @_cdecl("IsFreePositioningEnabled") public func IsFreePositioningEnabled() -> Bool { return LibUniWinC.isFreePositioningEnabled() } @_cdecl("DetachWindow") public func DetachWindow() -> Bool { LibUniWinC.detachWindow() return true; } @_cdecl("AttachMyWindow") public func AttachMyWindow() -> Bool { return LibUniWinC.attachMyWindow() } @_cdecl("AttachMyOwnerWindow") public func AttachMyOwnerWindow() -> Bool { return LibUniWinC.attachMyWindow() } @_cdecl("AttachMyActiveWindow") public func AttachMyActiveWindow() -> Bool { return LibUniWinC.attachMyWindow() } @_cdecl("SetTransparent") public func SetTransparent(isTransparent: Bool) -> Void { return LibUniWinC.setTransparent(isTransparent: isTransparent) } @_cdecl("SetBorderless") public func SetBorderless(isBorderless: Bool) -> Void { return LibUniWinC.setBorderless(isBorderless: isBorderless) } @_cdecl("SetAlphaValue") public func SetAlphaValue(alpha: Float32) -> Void { LibUniWinC.setAlphaValue(alpha: alpha) } @_cdecl("SetTopmost") public func SetTopmost(isTopmost: Bool) -> Void { LibUniWinC.setTopmost(isTopmost: isTopmost) } @_cdecl("SetBottommost") public func SetBottommost(isBottommost: Bool) -> Void { LibUniWinC.setBottommost(isBottommost: isBottommost) } @_cdecl("SetMaximized") public func SetMaximized(isZoomed: Bool) -> Void { LibUniWinC.setMaximized(isZoomed: isZoomed) } @_cdecl("SetClickThrough") public func SetClickThrough(isTransparent: Bool) -> Void { LibUniWinC.setClickThrough(isTransparent: isTransparent) } @_cdecl("EnableFreePositioning") public func EnableFreePositioning(isFree: Bool) -> Void { LibUniWinC.enableFreePositioning(enabled: isFree) } @_cdecl("SetPosition") public func SetPosition(x: Float32, y: Float32) -> Bool { return LibUniWinC.setPosition(x: x, y: y) } @_cdecl("GetPosition") public func GetPosition(x: UnsafeMutablePointer, y: UnsafeMutablePointer) -> Bool { return LibUniWinC.getPosition(x: x, y: y) } @_cdecl("SetSize") public func SetSize(width: Float32, height: Float32) -> Bool { return LibUniWinC.setSize(width: width, height: height) } @_cdecl("GetSize") public func GetSize(width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { return LibUniWinC.getSize(width:width, height:height) } @_cdecl("GetClientSize") public func GetClientSize(width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { return LibUniWinC.getClientSize(width:width, height:height) } @_cdecl("GetClientRectangle") public func GetClientRectangle(x: UnsafeMutablePointer, y: UnsafeMutablePointer, width: UnsafeMutablePointer, height: UnsafeMutablePointer) -> Bool { return LibUniWinC.getClientRectangle(x: x, y: y, width:width, height:height) } @_cdecl("GetCurrentMonitor") public func GetCurrentMonitor() -> Int32 { return LibUniWinC.getCurrentMonitor() } @_cdecl("GetMonitorCount") public func GetMonitorCount() -> Int32 { return LibUniWinC.getMonitorCount() } @_cdecl("GetMonitorRectangle") public func GetMonitorRectangle( monitorIndex: Int32, x: UnsafeMutablePointer, y: UnsafeMutablePointer, width: UnsafeMutablePointer, height: UnsafeMutablePointer ) -> Bool { return LibUniWinC.getMonitorRectangle(monitorIndex:monitorIndex, x:x, y:y, width:width, height:height) } @_cdecl("RegisterMonitorChangedCallback") public func RegisterMonitorChangedCallback(callback: LibUniWinC.intCallback) -> Bool { return LibUniWinC.registerMonitorChangedCallback(callback: callback) } @_cdecl("UnregisterMonitorChangedCallback") public func UnregisterMonitorChangedCallback() -> Bool { return LibUniWinC.unregisterMonitorChangedCallback() } @_cdecl("RegisterWindowStyleChangedCallback") public func RegisterWindowStyleChangedCallback(callback: LibUniWinC.intCallback) -> Bool { return LibUniWinC.registerWindowStyleChangedCallback(callback: callback) } @_cdecl("UnregisterWindowStyleChangedCallback") public func UnregisterWindowStyleChangedCallback() -> Bool { return LibUniWinC.unregisterWindowStyleChangedCallback() } // コールバックにファイルはダブルクオーテーションで囲まれ改行区切りとなった文字列で渡ります。 // e.g. "/Dir/File1.txt"\n"/Dir/File2.txt"\n"/Dir/File""3"".txt"\n @_cdecl("RegisterDropFilesCallback") public func RegisterDropFilesCallback(callback: LibUniWinC.stringCallback) -> Bool { return LibUniWinC.registerDropFilesCallback(callback: callback) } @_cdecl("UnregisterDropFilesCallback") public func UnregisterDropFilesCallback() -> Bool { return LibUniWinC.unregisterDropFilesCallback() } @_cdecl("SetAllowDrop") public func SetAllowDrop(enabled: Bool) -> Bool { return LibUniWinC.setAllowDrop(enabled: enabled) } @_cdecl("SetCursorPosition") public func SetCursorPosition(x: Float32, y: Float32) -> Bool { return LibUniWinC.setCursorPosition(x:x, y:y) } @_cdecl("GetCursorPosition") public func GetCursorPosition(x: UnsafeMutablePointer, y: UnsafeMutablePointer) -> Bool { return LibUniWinC.getCursorPosition(x:x, y:y) } @_cdecl("GetMouseButtons") public func GetMouseButtons() -> Int32 { return LibUniWinC.getMouseButtons() } @_cdecl("GetModifierKeys") public func GetModifierKeys() -> Int32 { return LibUniWinC.getModifierKeys() } // Call periodically to maintain window state. @_cdecl("Update") public func Update() -> Void { LibUniWinC.update() } @_cdecl("OpenFilePanel") public func OpenFilePanel(lpSettings: UnsafeRawPointer, lpBuffer: UnsafeMutablePointer?, bufferSize: UInt32) -> Bool { return LibUniWinC.openFilePanel(lpSettings: lpSettings, lpBuffer:lpBuffer, bufferSize: bufferSize) } @_cdecl("OpenSavePanel") public func OpenSavePanel(lpSettings: UnsafeRawPointer, lpBuffer: UnsafeMutablePointer?, bufferSize: UInt32) -> Bool { return LibUniWinC.openSavePanel(lpSettings: lpSettings, lpBuffer: lpBuffer, bufferSize: bufferSize) } // For Windows only (Nothing to do on Mac) @_cdecl("SetTransparentType") public func SetTransparentType(type: Int32) -> Void { LibUniWinC.setTransparentType(type: type) } // For Windows only (Nothing to do on Mac) @_cdecl("SetKeyColor") public func SetKeyColor(color: Int32) -> Void { return LibUniWinC.setKeyColor(color: color) } // For Windows only (Nothing to do on Mac) @_cdecl("AttachWindowHandle") public func AttachWindowHandle(hwnd: UInt64) -> Bool { return LibUniWinC.attachWindowHandle(hwnd: hwnd) } // For debugging @_cdecl("GetDebugInfo") public func GetDebugInfo() -> Int32 { return LibUniWinC.getDebugInfo() } ================================================ FILE: docs/reference/html/annotated.html ================================================ UniWindowController: Class List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 NKirurobo
 CFilePanelProvides static methods to open native file dialog
 CFilterFile filter
 CSettingsParameters for file dialog
 CUniWindowControllerUnified window controller for Windows / Mac
 CUniWindowMoveHandle
================================================ FILE: docs/reference/html/annotated_dup.js ================================================ var annotated_dup = [ [ "Kirurobo", "namespace_kirurobo.html", [ [ "FilePanel", "class_kirurobo_1_1_file_panel.html", "class_kirurobo_1_1_file_panel" ], [ "UniWindowController", "class_kirurobo_1_1_uni_window_controller.html", "class_kirurobo_1_1_uni_window_controller" ], [ "UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", "class_kirurobo_1_1_uni_window_move_handle" ] ] ] ]; ================================================ FILE: docs/reference/html/class_kirurobo_1_1_bool_property_attribute.html ================================================ UniWindowController: Kirurobo.BoolPropertyAttribute Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.BoolPropertyAttribute Class Reference

Set editable the bool property More...

Inheritance diagram for Kirurobo.BoolPropertyAttribute:

Detailed Description

Set editable the bool property


The documentation for this class was generated from the following file:
  • UniWindowController.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.FilePanel Member List

This is the complete list of members for Kirurobo.FilePanel, including all inherited members.

Flag enum nameKirurobo.FilePanel
OpenFilePanel(Settings settings, Action< string[]> action)Kirurobo.FilePanelstatic
SaveFilePanel(Settings settings, Action< string[]> action)Kirurobo.FilePanelstatic
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel.html ================================================ UniWindowController: Kirurobo.FilePanel Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.FilePanel Class Reference

Provides static methods to open native file dialog More...

Classes

class  Filter
 File filter More...
 
class  LibUniWinC
 
struct  Settings
 Parameters for file dialog More...
 

Public Types

enum  Flag { None = 0 , AllowMultipleSelection = 4 , ShowHiddenFiles = 4096 }
 Dialog setting flags
 

Static Public Member Functions

static void OpenFilePanel (Settings settings, Action< string[]> action)
 Open file selection dialog More...
 
static void SaveFilePanel (Settings settings, Action< string[]> action)
 Open save-file selection dialog More...
 

Detailed Description

Provides static methods to open native file dialog

Member Function Documentation

◆ OpenFilePanel()

static void Kirurobo.FilePanel.OpenFilePanel ( Settings  settings,
Action< string[]>  action 
)
static

Open file selection dialog

Parameters
settings
action

◆ SaveFilePanel()

static void Kirurobo.FilePanel.SaveFilePanel ( Settings  settings,
Action< string[]>  action 
)
static

Open save-file selection dialog

Parameters
settings
action

The documentation for this class was generated from the following file:
  • FilePanel.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel.js ================================================ var class_kirurobo_1_1_file_panel = [ [ "Filter", "class_kirurobo_1_1_file_panel_1_1_filter.html", "class_kirurobo_1_1_file_panel_1_1_filter" ], [ "Settings", "struct_kirurobo_1_1_file_panel_1_1_settings.html", null ], [ "Flag", "class_kirurobo_1_1_file_panel.html#ab635352514b9cf1b4e0b6d388fa1afa6", [ [ "None", "class_kirurobo_1_1_file_panel.html#ab635352514b9cf1b4e0b6d388fa1afa6a6adf97f83acf6453d4a6a4b1070f3754", null ], [ "AllowMultipleSelection", "class_kirurobo_1_1_file_panel.html#ab635352514b9cf1b4e0b6d388fa1afa6a847848dffb36cd2b0aefdfdb6c63edd6", null ], [ "ShowHiddenFiles", "class_kirurobo_1_1_file_panel.html#ab635352514b9cf1b4e0b6d388fa1afa6a5af6b8f03ba3da7347554a66b2962912", null ] ] ] ]; ================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_filter-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.FilePanel.Filter Member List

This is the complete list of members for Kirurobo.FilePanel.Filter, including all inherited members.

extensions (defined in Kirurobo.FilePanel.Filter)Kirurobo.FilePanel.Filterprotected
Filter(string title, params string[] extensions)Kirurobo.FilePanel.Filter
Join(Filter[] filters)Kirurobo.FilePanel.Filterstatic
title (defined in Kirurobo.FilePanel.Filter)Kirurobo.FilePanel.Filterprotected
ToString() (defined in Kirurobo.FilePanel.Filter)Kirurobo.FilePanel.Filter
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_filter.html ================================================ UniWindowController: Kirurobo.FilePanel.Filter Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/

File filter More...

Public Member Functions

 Filter (string title, params string[] extensions)
 
override string ToString ()
 

Static Public Member Functions

static string Join (Filter[] filters)
 Returns converted string from Filter array More...
 

Protected Attributes

string title
 
string[] extensions
 

Detailed Description

File filter

Constructor & Destructor Documentation

◆ Filter()

Kirurobo.FilePanel.Filter.Filter ( string  title,
params string[]  extensions 
)

Parameters
titleFilter title. (Not available on macOS yet)
extensionsExtensions like ["png", "jpg", "txt"]

Member Function Documentation

◆ Join()

static string Kirurobo.FilePanel.Filter.Join ( Filter[]  filters)
static

Returns converted string from Filter array

Parameters
filters
Returns

The documentation for this class was generated from the following file:
  • FilePanel.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_filter.js ================================================ var class_kirurobo_1_1_file_panel_1_1_filter = [ [ "Filter", "class_kirurobo_1_1_file_panel_1_1_filter.html#a7fbfea09eb3194daab962c5caf4d6c55", null ] ]; ================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.FilePanel.LibUniWinC Member List

This is the complete list of members for Kirurobo.FilePanel.LibUniWinC, including all inherited members.

OpenFilePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize) (defined in Kirurobo.FilePanel.LibUniWinC)Kirurobo.FilePanel.LibUniWinC
OpenSavePanel(in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize) (defined in Kirurobo.FilePanel.LibUniWinC)Kirurobo.FilePanel.LibUniWinC
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c.html ================================================ UniWindowController: Kirurobo.FilePanel.LibUniWinC Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.FilePanel.LibUniWinC Class Reference

Classes

struct  PanelSettings
 

Public Member Functions

static bool OpenFilePanel (in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize)
 
static bool OpenSavePanel (in PanelSettings settings, [MarshalAs(UnmanagedType.LPWStr), Out] StringBuilder buffer, UInt32 bufferSize)
 

The documentation for this class was generated from the following file:
  • FilePanel.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c.js ================================================ var class_kirurobo_1_1_file_panel_1_1_lib_uni_win_c = [ [ "PanelSettings", "struct_kirurobo_1_1_file_panel_1_1_lib_uni_win_c_1_1_panel_settings.html", null ] ]; ================================================ FILE: docs/reference/html/class_kirurobo_1_1_read_only_attribute.html ================================================ UniWindowController: Kirurobo.ReadOnlyAttribute Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.ReadOnlyAttribute Class Reference

Set the attribute as readonly More...

Inheritance diagram for Kirurobo.ReadOnlyAttribute:

Detailed Description

Set the attribute as readonly


The documentation for this class was generated from the following file:
  • UniWindowController.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_win_core_1_1_lib_uni_win_c-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWinCore.LibUniWinC Member List

This is the complete list of members for Kirurobo.UniWinCore.LibUniWinC, including all inherited members.

AttachMyActiveWindow() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
AttachMyOwnerWindow() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
AttachMyWindow() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
DetachWindow() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetCurrentMonitor() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetCursorPosition(out float x, out float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetDebugInfo() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetMonitorCount() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetMonitorRectangle(int index, out float x, out float y, out float width, out float height) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetPosition(out float x, out float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
GetSize(out float x, out float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IntCallback([MarshalAs(UnmanagedType.I4)] int value) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsActive() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsBorderless() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsBottommost() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsMaximized() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsTopmost() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
IsTransparent() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
RegisterDropFilesCallback([MarshalAs(UnmanagedType.FunctionPtr)] StringCallback callback) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
RegisterMonitorChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
RegisterWindowStyleChangedCallback([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetAllowDrop([MarshalAs(UnmanagedType.U1)] bool enabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetBorderless([MarshalAs(UnmanagedType.U1)] bool bEnabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetBottommost([MarshalAs(UnmanagedType.U1)] bool bEnabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetClickThrough([MarshalAs(UnmanagedType.U1)] bool bEnabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetCursorPosition(float x, float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetKeyColor(uint colorref) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetMaximized([MarshalAs(UnmanagedType.U1)] bool bZoomed) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetPosition(float x, float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetSize(float x, float y) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetTopmost([MarshalAs(UnmanagedType.U1)] bool bEnabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetTransparent([MarshalAs(UnmanagedType.U1)] bool bEnabled) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
SetTransparentType(int type) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
StringCallback([MarshalAs(UnmanagedType.LPWStr)] string returnString) (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
UnregisterDropFilesCallback() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
UnregisterMonitorChangedCallback() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
UnregisterWindowStyleChangedCallback() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
Update() (defined in Kirurobo.UniWinCore.LibUniWinC)Kirurobo.UniWinCore.LibUniWinC
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_win_core_1_1_lib_uni_win_c.html ================================================ UniWindowController: Kirurobo.UniWinCore.LibUniWinC Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWinCore.LibUniWinC Class Reference

Public Member Functions

delegate void StringCallback ([MarshalAs(UnmanagedType.LPWStr)] string returnString)
 
delegate void IntCallback ([MarshalAs(UnmanagedType.I4)] int value)
 
static bool IsActive ()
 
static bool IsTransparent ()
 
static bool IsBorderless ()
 
static bool IsTopmost ()
 
static bool IsBottommost ()
 
static bool IsMaximized ()
 
static bool AttachMyWindow ()
 
static bool AttachMyOwnerWindow ()
 
static bool AttachMyActiveWindow ()
 
static bool DetachWindow ()
 
static void Update ()
 
static void SetTransparent ([MarshalAs(UnmanagedType.U1)] bool bEnabled)
 
static void SetBorderless ([MarshalAs(UnmanagedType.U1)] bool bEnabled)
 
static void SetClickThrough ([MarshalAs(UnmanagedType.U1)] bool bEnabled)
 
static void SetTopmost ([MarshalAs(UnmanagedType.U1)] bool bEnabled)
 
static void SetBottommost ([MarshalAs(UnmanagedType.U1)] bool bEnabled)
 
static void SetMaximized ([MarshalAs(UnmanagedType.U1)] bool bZoomed)
 
static void SetPosition (float x, float y)
 
static bool GetPosition (out float x, out float y)
 
static void SetSize (float x, float y)
 
static bool GetSize (out float x, out float y)
 
static bool RegisterDropFilesCallback ([MarshalAs(UnmanagedType.FunctionPtr)] StringCallback callback)
 
static bool UnregisterDropFilesCallback ()
 
static bool RegisterMonitorChangedCallback ([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback)
 
static bool UnregisterMonitorChangedCallback ()
 
static bool RegisterWindowStyleChangedCallback ([MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback)
 
static bool UnregisterWindowStyleChangedCallback ()
 
static bool SetAllowDrop ([MarshalAs(UnmanagedType.U1)] bool enabled)
 
static int GetCurrentMonitor ()
 
static int GetMonitorCount ()
 
static bool GetMonitorRectangle (int index, out float x, out float y, out float width, out float height)
 
static void SetCursorPosition (float x, float y)
 
static bool GetCursorPosition (out float x, out float y)
 
static void SetTransparentType (int type)
 
static void SetKeyColor (uint colorref)
 
static int GetDebugInfo ()
 

The documentation for this class was generated from the following file:
  • UniWinCore.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_controller-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWindowController Member List

This is the complete list of members for Kirurobo.UniWindowController, including all inherited members.

allowDropFilesKirurobo.UniWindowController
autoSwitchCameraBackgroundKirurobo.UniWindowController
cursorPositionKirurobo.UniWindowController
FilesDelegate(string[] files) (defined in Kirurobo.UniWindowController)Kirurobo.UniWindowController
Focus()Kirurobo.UniWindowController
forceWindowedKirurobo.UniWindowController
GetDebugInfo()Kirurobo.UniWindowController
GetMonitorCount()Kirurobo.UniWindowController
hitTestTypeKirurobo.UniWindowController
HitTestType enum nameKirurobo.UniWindowController
isBottommostKirurobo.UniWindowController
isClickThroughKirurobo.UniWindowController
isHitTestEnabledKirurobo.UniWindowController
isTopmostKirurobo.UniWindowController
isTransparentKirurobo.UniWindowController
isZoomedKirurobo.UniWindowController
keyColorKirurobo.UniWindowController
monitorToFitKirurobo.UniWindowController
OnDropFilesKirurobo.UniWindowController
OnMonitorChangedKirurobo.UniWindowController
OnMonitorChangedDelegate() (defined in Kirurobo.UniWindowController)Kirurobo.UniWindowController
OnStateChangedKirurobo.UniWindowController
OnStateChangedDelegate(WindowStateEventType type) (defined in Kirurobo.UniWindowController)Kirurobo.UniWindowController
opacityThresholdKirurobo.UniWindowController
pickedColorKirurobo.UniWindowController
SetTransparentType(TransparentType type)Kirurobo.UniWindowController
shouldFitMonitorKirurobo.UniWindowController
transparentTypeKirurobo.UniWindowController
TransparentType enum nameKirurobo.UniWindowController
windowPositionKirurobo.UniWindowController
windowSizeKirurobo.UniWindowController
WindowStateEventType enum nameKirurobo.UniWindowController
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_controller.html ================================================ UniWindowController: Kirurobo.UniWindowController Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWindowController Class Reference

Unified window controller for Windows / Mac More...

Inheritance diagram for Kirurobo.UniWindowController:

Public Types

enum  TransparentType : int { None = 0 , Alpha = 1 , ColorKey = 2 }
 The same as UniWinCore.TransparentType
 
enum  HitTestType : int { None = 0 , Opacity = 1 , Raycast = 2 }
 Scecifies method to hit-test (i.e., switching click-through)
 
enum  WindowStateEventType : int { None = 0 , StyleChanged = 1 , Resized = 2 , OrderChanged = 4 }
 Identifies the type of OnStateChanged event when it occurs
 

Public Member Functions

delegate void OnStateChangedDelegate (WindowStateEventType type)
 
delegate void FilesDelegate (string[] files)
 
delegate void OnMonitorChangedDelegate ()
 
void SetTransparentType (TransparentType type)
 透過方法を変更 More...
 
int GetMonitorCount ()
 接続されているモニタ数を取得 More...
 
void Focus ()
 自分のウィンドウにフォーカスを与える
 
int GetDebugInfo ()
 デバッグ専用。その都度参考となる情報を受けるための関数 More...
 

Public Attributes

bool isHitTestEnabled = true
 クリックスルー自動判定を行うか 行なわない場合は isClickThrough を自分で変更可
 
HitTestType hitTestType = HitTestType.Opacity
 クリックスルー自動判定の方法
 
float opacityThreshold = 0.1f
 クリックスルー判定方法が不透明度の場合に使うしきい値 カーソル下のアルファがこの値以上ならヒットとなる
 
bool autoSwitchCameraBackground = true
 trueにしておくと、ウィンドウ透過時にカメラ背景を単色の黒透明に自動で変更します
 
bool forceWindowed = false
 trueにしておくと、起動時にフルスクリーンだった場合は強制的に解除します More...
 
TransparentType transparentType = TransparentType.Alpha
 透過方式の指定
 
Color32 keyColor = new Color32(0x01, 0x00, 0x01, 0x00)
 Key color used when the transparent-type is ColorKey
 
Color pickedColor
 Pixel color under the mouse pointer. (Read only)
 

Properties

bool isClickThrough [getset]
 Is this window receives mouse events
 
bool isTransparent [getset]
 Is this window transparent
 
bool? isTopmost [getset]
 Is this window topmost
 
bool? isBottommost [getset]
 Is this window bottommost
 
bool? isZoomed [getset]
 Is this window minimized
 
bool shouldFitMonitor [getset]
 This window will fit to the monitor or not
 
int monitorToFit [getset]
 Target monitor index to fit the window (0, 1, ...)
 
bool allowDropFiles [getset]
 Enable / disable accepting file drop
 
Vector2?? windowPosition [getset]
 ウィンドウ座標を取得・設定
 
Vector2?? windowSize [getset]
 ウィンドウ座標を取得・設定
 
Vector2?? cursorPosition [getset]
 マウスカーソル座標を取得・設定
 

Events

OnStateChangedDelegate OnStateChanged
 Occurs when the window style changed
 
FilesDelegate OnDropFiles
 Occurs after files or folders were dropped
 
OnMonitorChangedDelegate OnMonitorChanged
 Occurs when the monitor settings or resolution changed
 

Detailed Description

Unified window controller for Windows / Mac

Member Function Documentation

◆ GetDebugInfo()

int Kirurobo.UniWindowController.GetDebugInfo ( )

デバッグ専用。その都度参考となる情報を受けるための関数

Returns

◆ GetMonitorCount()

int Kirurobo.UniWindowController.GetMonitorCount ( )

接続されているモニタ数を取得

Returns

◆ SetTransparentType()

void Kirurobo.UniWindowController.SetTransparentType ( TransparentType  type)

透過方法を変更

Parameters
type

Member Data Documentation

◆ forceWindowed

bool Kirurobo.UniWindowController.forceWindowed = false

trueにしておくと、起動時にフルスクリーンだった場合は強制的に解除します

起動時のダイアログでフルスクリーンにしてしまった場合でもウィンドウモードにするためのものです 起動時のみ働きます Macの場合、フルスクリーン状態を強制解除しても別画面になったままであまり有効ではなさそうです


The documentation for this class was generated from the following file:
  • UniWindowController.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_controller.js ================================================ var class_kirurobo_1_1_uni_window_controller = [ [ "HitTestType", "class_kirurobo_1_1_uni_window_controller.html#a9eed5a0276b99e496b7a54d337b34782", [ [ "None", "class_kirurobo_1_1_uni_window_controller.html#a9eed5a0276b99e496b7a54d337b34782a6adf97f83acf6453d4a6a4b1070f3754", null ], [ "Opacity", "class_kirurobo_1_1_uni_window_controller.html#a9eed5a0276b99e496b7a54d337b34782abad6a5dd8c28e6b14f8e986615e3dc98", null ], [ "Raycast", "class_kirurobo_1_1_uni_window_controller.html#a9eed5a0276b99e496b7a54d337b34782a117e624bbbd5afc75a3150ba85d3cb93", null ] ] ], [ "TransparentType", "class_kirurobo_1_1_uni_window_controller.html#a9b6948692af879d1eda2ef3ce25b989c", [ [ "None", "class_kirurobo_1_1_uni_window_controller.html#a9b6948692af879d1eda2ef3ce25b989ca6adf97f83acf6453d4a6a4b1070f3754", null ], [ "Alpha", "class_kirurobo_1_1_uni_window_controller.html#a9b6948692af879d1eda2ef3ce25b989ca6132295fcf5570fb8b0a944ef322a598", null ], [ "ColorKey", "class_kirurobo_1_1_uni_window_controller.html#a9b6948692af879d1eda2ef3ce25b989ca42e1d227b1134f21cfd19e5d5af0b443", null ] ] ], [ "WindowStateEventType", "class_kirurobo_1_1_uni_window_controller.html#ae34f05efeceeb4ecafe3346a7abdb385", [ [ "None", "class_kirurobo_1_1_uni_window_controller.html#ae34f05efeceeb4ecafe3346a7abdb385a6adf97f83acf6453d4a6a4b1070f3754", null ], [ "StyleChanged", "class_kirurobo_1_1_uni_window_controller.html#ae34f05efeceeb4ecafe3346a7abdb385a7587214470fbcbdd0e594f473fd090bf", null ], [ "Resized", "class_kirurobo_1_1_uni_window_controller.html#ae34f05efeceeb4ecafe3346a7abdb385a22995988de764d7a8cb4165fbff371cb", null ], [ "OrderChanged", "class_kirurobo_1_1_uni_window_controller.html#ae34f05efeceeb4ecafe3346a7abdb385aba1143b9e4927f1b8c5042f78a32d399", null ] ] ], [ "Focus", "class_kirurobo_1_1_uni_window_controller.html#a6e12473d2ec34507d00ba6811d2226c8", null ], [ "GetDebugInfo", "class_kirurobo_1_1_uni_window_controller.html#a3e395b39ce658762308f0245c51895d5", null ], [ "GetMonitorCount", "class_kirurobo_1_1_uni_window_controller.html#aa3c299d1ab619c84102991ef9f93bae2", null ], [ "SetTransparentType", "class_kirurobo_1_1_uni_window_controller.html#a0f69d5e96d181de30ecffa272d5e348c", null ], [ "autoSwitchCameraBackground", "class_kirurobo_1_1_uni_window_controller.html#a7a4f857ff4b72ac574a0686ea69dcd85", null ], [ "forceWindowed", "class_kirurobo_1_1_uni_window_controller.html#a6073442d7d4df40a49454e5b2cb57110", null ], [ "hitTestType", "class_kirurobo_1_1_uni_window_controller.html#a625f2f63a542514d88118d47d097e015", null ], [ "isHitTestEnabled", "class_kirurobo_1_1_uni_window_controller.html#ad2d7eba6f8e61b5945c7a58b1023c140", null ], [ "keyColor", "class_kirurobo_1_1_uni_window_controller.html#a485d39dc131a9534b22580a9950dd7a1", null ], [ "opacityThreshold", "class_kirurobo_1_1_uni_window_controller.html#aa34d49958a4215805ae8018c17cc8844", null ], [ "pickedColor", "class_kirurobo_1_1_uni_window_controller.html#a2b4862fd04354fa7022010457fbd892e", null ], [ "transparentType", "class_kirurobo_1_1_uni_window_controller.html#ab6ceaeb9be48130500033fcc7a944f7f", null ], [ "allowDropFiles", "class_kirurobo_1_1_uni_window_controller.html#a642093d7da90380c1e73902a24cd4ba6", null ], [ "cursorPosition", "class_kirurobo_1_1_uni_window_controller.html#a27f454177b66385e5831fa0b07c9a8ef", null ], [ "isBottommost", "class_kirurobo_1_1_uni_window_controller.html#a83505241c71ec469c7843cccf04fadd6", null ], [ "isClickThrough", "class_kirurobo_1_1_uni_window_controller.html#a82eeebe08aad9b226dff5a35f09b10d5", null ], [ "isTopmost", "class_kirurobo_1_1_uni_window_controller.html#a56fb9727eadeb907bb13acf55889280a", null ], [ "isTransparent", "class_kirurobo_1_1_uni_window_controller.html#a58143af9622e49cdb538103aca769b64", null ], [ "isZoomed", "class_kirurobo_1_1_uni_window_controller.html#a29aa3fc614e8527d452badcc87fe5921", null ], [ "monitorToFit", "class_kirurobo_1_1_uni_window_controller.html#a2ac8f1b9ff6cb891597efca19796d229", null ], [ "shouldFitMonitor", "class_kirurobo_1_1_uni_window_controller.html#a0a8f2d4dd0c2b184c524ebdeb676f6ca", null ], [ "windowPosition", "class_kirurobo_1_1_uni_window_controller.html#a7391bee19ced6cff374c7558b34b6a15", null ], [ "windowSize", "class_kirurobo_1_1_uni_window_controller.html#a906a08cc407d9a589513c542e68ad832", null ], [ "OnDropFiles", "class_kirurobo_1_1_uni_window_controller.html#a610d37d9bc5fe38ccf42cc99110b949f", null ], [ "OnMonitorChanged", "class_kirurobo_1_1_uni_window_controller.html#ae5f4f31a784477f9bb7e5c5ba76c54aa", null ], [ "OnStateChanged", "class_kirurobo_1_1_uni_window_controller.html#ab9d80c45cf40e71a11e2a059515d0be6", null ] ]; ================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_move_handle-members.html ================================================ UniWindowController: Member List
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWindowMoveHandle Member List

This is the complete list of members for Kirurobo.UniWindowMoveHandle, including all inherited members.

disableOnZoomedKirurobo.UniWindowMoveHandle
IsDraggingKirurobo.UniWindowMoveHandle
OnBeginDrag(PointerEventData eventData)Kirurobo.UniWindowMoveHandle
OnDrag(PointerEventData eventData)Kirurobo.UniWindowMoveHandle
OnEndDrag(PointerEventData eventData)Kirurobo.UniWindowMoveHandle
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_move_handle.html ================================================ UniWindowController: Kirurobo.UniWindowMoveHandle Class Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo.UniWindowMoveHandle Class Reference
Inheritance diagram for Kirurobo.UniWindowMoveHandle:

Public Member Functions

void OnBeginDrag (PointerEventData eventData)
 ドラッグ開始時の処理
 
void OnEndDrag (PointerEventData eventData)
 ドラッグ終了時の処理
 
void OnDrag (PointerEventData eventData)
 最大化時以外なら、マウスドラッグによってウィンドウを移動
 

Public Attributes

bool disableOnZoomed = true
 ウィンドウが最大化されているときは移動を無効にするか
 

Properties

bool IsDragging [get]
 ドラッグ中なら true
 

The documentation for this class was generated from the following file:
  • UniWindowMoveHandle.cs
================================================ FILE: docs/reference/html/class_kirurobo_1_1_uni_window_move_handle.js ================================================ var class_kirurobo_1_1_uni_window_move_handle = [ [ "OnBeginDrag", "class_kirurobo_1_1_uni_window_move_handle.html#afec528837da1629eb482516b15f6bdd6", null ], [ "OnDrag", "class_kirurobo_1_1_uni_window_move_handle.html#aa936a6646ed12a2f71b428b7ca32a5dd", null ], [ "OnEndDrag", "class_kirurobo_1_1_uni_window_move_handle.html#af36fa2138693e1751095b12a7fb7626f", null ], [ "disableOnZoomed", "class_kirurobo_1_1_uni_window_move_handle.html#ab3032b364033fdd691bfd3a6a12b0d41", null ], [ "IsDragging", "class_kirurobo_1_1_uni_window_move_handle.html#ad45fb985005ce5e9aec4f374d4853085", null ] ]; ================================================ FILE: docs/reference/html/classes.html ================================================ UniWindowController: Class Index
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
================================================ FILE: docs/reference/html/dir_0e718f53d4d08174de87a4996d0abd84.html ================================================ UniWindowController: Runtime Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Runtime Directory Reference

Directories

================================================ FILE: docs/reference/html/dir_1168cf2394713e5b88a61dc9b39953d6.html ================================================ UniWindowController: UniWinC_publish Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
UniWinC_publish Directory Reference
================================================ FILE: docs/reference/html/dir_4db8f2e691505777dda71083a7488821.html ================================================ UniWindowController: Kirurobo Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Kirurobo Directory Reference
================================================ FILE: docs/reference/html/dir_4e895f04d87c71be14ec988997553c7b.html ================================================ UniWindowController: UniWinC Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
UniWinC Directory Reference
================================================ FILE: docs/reference/html/dir_51678baafa3da7bcbbacfbc079e72355.html ================================================ UniWindowController: LowLevel Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
LowLevel Directory Reference
================================================ FILE: docs/reference/html/dir_8d1ea225d71cf43ce7bb9f8bd477064e.html ================================================ UniWindowController: UniWindowController Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
UniWindowController Directory Reference
================================================ FILE: docs/reference/html/dir_9422bc27ad0eb84eb9766082ef3d355d.html ================================================ UniWindowController: Scripts Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Scripts Directory Reference

Directories

================================================ FILE: docs/reference/html/dir_a0d8a0ff27d847f01310e1251fc46482.html ================================================ UniWindowController: Assets Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Assets Directory Reference
================================================ FILE: docs/reference/html/dir_a545219465fede22cd758cef02b8764c.html ================================================ UniWindowController: Unity2018 Directory Reference
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Unity2018 Directory Reference
================================================ FILE: docs/reference/html/doxygen.css ================================================ /* The standard CSS for doxygen 1.9.2 */ body, table, div, p, dl { font: 400 14px/22px Roboto,sans-serif; } p.reference, p.definition { font: 400 14px/22px Roboto,sans-serif; } /* @group Heading Levels */ h1.groupheader { font-size: 150%; } .title { font: 400 14px/28px Roboto,sans-serif; font-size: 150%; font-weight: bold; margin: 10px 2px; } h2.groupheader { border-bottom: 1px solid #879ECB; color: #354C7B; font-size: 150%; font-weight: normal; margin-top: 1.75em; padding-top: 8px; padding-bottom: 4px; width: 100%; } h3.groupheader { font-size: 100%; } h1, h2, h3, h4, h5, h6 { -webkit-transition: text-shadow 0.5s linear; -moz-transition: text-shadow 0.5s linear; -ms-transition: text-shadow 0.5s linear; -o-transition: text-shadow 0.5s linear; transition: text-shadow 0.5s linear; margin-right: 15px; } h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { text-shadow: 0 0 15px cyan; } dt { font-weight: bold; } ul.multicol { -moz-column-gap: 1em; -webkit-column-gap: 1em; column-gap: 1em; -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; } p.startli, p.startdd { margin-top: 2px; } th p.starttd, th p.intertd, th p.endtd { font-size: 100%; font-weight: 700; } p.starttd { margin-top: 0px; } p.endli { margin-bottom: 0px; } p.enddd { margin-bottom: 4px; } p.endtd { margin-bottom: 2px; } p.interli { } p.interdd { } p.intertd { } /* @end */ caption { font-weight: bold; } span.legend { font-size: 70%; text-align: center; } h3.version { font-size: 90%; text-align: center; } div.navtab { border-right: 1px solid #A3B4D7; padding-right: 15px; text-align: right; line-height: 110%; } div.navtab table { border-spacing: 0; } td.navtab { padding-right: 6px; padding-left: 6px; } td.navtabHL { background-image: url('tab_a.png'); background-repeat:repeat-x; padding-right: 6px; padding-left: 6px; } td.navtabHL a, td.navtabHL a:visited { color: #fff; text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); } a.navtab { font-weight: bold; } div.qindex{ text-align: center; width: 100%; line-height: 140%; font-size: 130%; color: #A0A0A0; } dt.alphachar{ font-size: 180%; font-weight: bold; } .alphachar a{ color: black; } .alphachar a:hover, .alphachar a:visited{ text-decoration: none; } .classindex dl { padding: 25px; column-count:1 } .classindex dd { display:inline-block; margin-left: 50px; width: 90%; line-height: 1.15em; } .classindex dl.odd { background-color: #F8F9FC; } @media(min-width: 1120px) { .classindex dl { column-count:2 } } @media(min-width: 1320px) { .classindex dl { column-count:3 } } /* @group Link Styling */ a { color: #3D578C; font-weight: normal; text-decoration: none; } .contents a:visited { color: #4665A2; } a:hover { text-decoration: underline; } .contents a.qindexHL:visited { color: #FFFFFF; } a.el { font-weight: bold; } a.elRef { } a.code, a.code:visited, a.line, a.line:visited { color: #4665A2; } a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { color: #4665A2; } a.code.hl_class { /* style for links to class names in code snippets */ } a.code.hl_struct { /* style for links to struct names in code snippets */ } a.code.hl_union { /* style for links to union names in code snippets */ } a.code.hl_interface { /* style for links to interface names in code snippets */ } a.code.hl_protocol { /* style for links to protocol names in code snippets */ } a.code.hl_category { /* style for links to category names in code snippets */ } a.code.hl_exception { /* style for links to exception names in code snippets */ } a.code.hl_service { /* style for links to service names in code snippets */ } a.code.hl_singleton { /* style for links to singleton names in code snippets */ } a.code.hl_concept { /* style for links to concept names in code snippets */ } a.code.hl_namespace { /* style for links to namespace names in code snippets */ } a.code.hl_package { /* style for links to package names in code snippets */ } a.code.hl_define { /* style for links to macro names in code snippets */ } a.code.hl_function { /* style for links to function names in code snippets */ } a.code.hl_variable { /* style for links to variable names in code snippets */ } a.code.hl_typedef { /* style for links to typedef names in code snippets */ } a.code.hl_enumvalue { /* style for links to enum value names in code snippets */ } a.code.hl_enumeration { /* style for links to enumeration names in code snippets */ } a.code.hl_signal { /* style for links to Qt signal names in code snippets */ } a.code.hl_slot { /* style for links to Qt slot names in code snippets */ } a.code.hl_friend { /* style for links to friend names in code snippets */ } a.code.hl_dcop { /* style for links to KDE3 DCOP names in code snippets */ } a.code.hl_property { /* style for links to property names in code snippets */ } a.code.hl_event { /* style for links to event names in code snippets */ } a.code.hl_sequence { /* style for links to sequence names in code snippets */ } a.code.hl_dictionary { /* style for links to dictionary names in code snippets */ } /* @end */ dl.el { margin-left: -1cm; } ul { overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ } #side-nav ul { overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ } #main-nav ul { overflow: visible; /* reset ul rule for the navigation bar drop down lists */ } .fragment { text-align: left; direction: ltr; overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ overflow-y: hidden; } pre.fragment { border: 1px solid #C4CFE5; background-color: #FBFCFD; padding: 4px 6px; margin: 4px 8px 4px 2px; overflow: auto; word-wrap: break-word; font-size: 9pt; line-height: 125%; font-family: monospace, fixed; font-size: 105%; } div.fragment { padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ margin: 4px 8px 4px 2px; background-color: #FBFCFD; border: 1px solid #C4CFE5; } div.line { font-family: monospace, fixed; font-size: 13px; min-height: 13px; line-height: 1.0; text-wrap: unrestricted; white-space: -moz-pre-wrap; /* Moz */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ white-space: pre-wrap; /* CSS3 */ word-wrap: break-word; /* IE 5.5+ */ text-indent: -53px; padding-left: 53px; padding-bottom: 0px; margin: 0px; -webkit-transition-property: background-color, box-shadow; -webkit-transition-duration: 0.5s; -moz-transition-property: background-color, box-shadow; -moz-transition-duration: 0.5s; -ms-transition-property: background-color, box-shadow; -ms-transition-duration: 0.5s; -o-transition-property: background-color, box-shadow; -o-transition-duration: 0.5s; transition-property: background-color, box-shadow; transition-duration: 0.5s; } div.line:after { content:"\000A"; white-space: pre; } div.line.glow { background-color: cyan; box-shadow: 0 0 10px cyan; } span.lineno { padding-right: 4px; margin-right: 9px; text-align: right; border-right: 2px solid #0F0; background-color: #E8E8E8; white-space: pre; } span.lineno a { background-color: #D8D8D8; } span.lineno a:hover { background-color: #C8C8C8; } .lineno { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } div.ah, span.ah { background-color: black; font-weight: bold; color: #FFFFFF; margin-bottom: 3px; margin-top: 3px; padding: 0.2em; border: solid thin #333; border-radius: 0.5em; -webkit-border-radius: .5em; -moz-border-radius: .5em; box-shadow: 2px 2px 3px #999; -webkit-box-shadow: 2px 2px 3px #999; -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); } div.classindex ul { list-style: none; padding-left: 0; } div.classindex span.ai { display: inline-block; } div.groupHeader { margin-left: 16px; margin-top: 12px; font-weight: bold; } div.groupText { margin-left: 16px; font-style: italic; } body { background-color: white; color: black; margin: 0; } div.contents { margin-top: 10px; margin-left: 12px; margin-right: 8px; } td.indexkey { background-color: #EBEFF6; font-weight: bold; border: 1px solid #C4CFE5; margin: 2px 0px 2px 0; padding: 2px 10px; white-space: nowrap; vertical-align: top; } td.indexvalue { background-color: #EBEFF6; border: 1px solid #C4CFE5; padding: 2px 10px; margin: 2px 0px; } tr.memlist { background-color: #EEF1F7; } p.formulaDsp { text-align: center; } img.formulaDsp { } img.formulaInl, img.inline { vertical-align: middle; } div.center { text-align: center; margin-top: 0px; margin-bottom: 0px; padding: 0px; } div.center img { border: 0px; } address.footer { text-align: right; padding-right: 12px; } img.footer { border: 0px; vertical-align: middle; } .compoundTemplParams { color: #4665A2; font-size: 80%; line-height: 120%; } /* @group Code Colorization */ span.keyword { color: #008000 } span.keywordtype { color: #604020 } span.keywordflow { color: #e08000 } span.comment { color: #800000 } span.preprocessor { color: #806020 } span.stringliteral { color: #002080 } span.charliteral { color: #008080 } span.vhdldigit { color: #ff00ff } span.vhdlchar { color: #000000 } span.vhdlkeyword { color: #700070 } span.vhdllogic { color: #ff0000 } blockquote { background-color: #F7F8FB; border-left: 2px solid #9CAFD4; margin: 0 24px 0 4px; padding: 0 12px 0 16px; } blockquote.DocNodeRTL { border-left: 0; border-right: 2px solid #9CAFD4; margin: 0 4px 0 24px; padding: 0 16px 0 12px; } /* @end */ /* .search { color: #003399; font-weight: bold; } form.search { margin-bottom: 0px; margin-top: 0px; } input.search { font-size: 75%; color: #000080; font-weight: normal; background-color: #e8eef2; } */ td.tiny { font-size: 75%; } .dirtab { padding: 4px; border-collapse: collapse; border: 1px solid #A3B4D7; } th.dirtab { background: #EBEFF6; font-weight: bold; } hr { height: 0px; border: none; border-top: 1px solid #4A6AAA; } hr.footer { height: 1px; } /* @group Member Descriptions */ table.memberdecls { border-spacing: 0px; padding: 0px; } .memberdecls td, .fieldtable tr { -webkit-transition-property: background-color, box-shadow; -webkit-transition-duration: 0.5s; -moz-transition-property: background-color, box-shadow; -moz-transition-duration: 0.5s; -ms-transition-property: background-color, box-shadow; -ms-transition-duration: 0.5s; -o-transition-property: background-color, box-shadow; -o-transition-duration: 0.5s; transition-property: background-color, box-shadow; transition-duration: 0.5s; } .memberdecls td.glow, .fieldtable tr.glow { background-color: cyan; box-shadow: 0 0 15px cyan; } .mdescLeft, .mdescRight, .memItemLeft, .memItemRight, .memTemplItemLeft, .memTemplItemRight, .memTemplParams { background-color: #F9FAFC; border: none; margin: 4px; padding: 1px 0 0 8px; } .mdescLeft, .mdescRight { padding: 0px 8px 4px 8px; color: #555; } .memSeparator { border-bottom: 1px solid #DEE4F0; line-height: 1px; margin: 0px; padding: 0px; } .memItemLeft, .memTemplItemLeft { white-space: nowrap; } .memItemRight, .memTemplItemRight { width: 100%; } .memTemplParams { color: #4665A2; white-space: nowrap; font-size: 80%; } /* @end */ /* @group Member Details */ /* Styles for detailed member documentation */ .memtitle { padding: 8px; border-top: 1px solid #A8B8D9; border-left: 1px solid #A8B8D9; border-right: 1px solid #A8B8D9; border-top-right-radius: 4px; border-top-left-radius: 4px; margin-bottom: -1px; background-image: url('nav_f.png'); background-repeat: repeat-x; background-color: #E2E8F2; line-height: 1.25; font-weight: 300; float:left; } .permalink { font-size: 65%; display: inline-block; vertical-align: middle; } .memtemplate { font-size: 80%; color: #4665A2; font-weight: normal; margin-left: 9px; } .memnav { background-color: #EBEFF6; border: 1px solid #A3B4D7; text-align: center; margin: 2px; margin-right: 15px; padding: 2px; } .mempage { width: 100%; } .memitem { padding: 0; margin-bottom: 10px; margin-right: 5px; -webkit-transition: box-shadow 0.5s linear; -moz-transition: box-shadow 0.5s linear; -ms-transition: box-shadow 0.5s linear; -o-transition: box-shadow 0.5s linear; transition: box-shadow 0.5s linear; display: table !important; width: 100%; } .memitem.glow { box-shadow: 0 0 15px cyan; } .memname { font-weight: 400; margin-left: 6px; } .memname td { vertical-align: bottom; } .memproto, dl.reflist dt { border-top: 1px solid #A8B8D9; border-left: 1px solid #A8B8D9; border-right: 1px solid #A8B8D9; padding: 6px 0px 6px 0px; color: #253555; font-weight: bold; text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); background-color: #DFE5F1; /* opera specific markup */ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); border-top-right-radius: 4px; /* firefox specific markup */ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; -moz-border-radius-topright: 4px; /* webkit specific markup */ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -webkit-border-top-right-radius: 4px; } .overload { font-family: "courier new",courier,monospace; font-size: 65%; } .memdoc, dl.reflist dd { border-bottom: 1px solid #A8B8D9; border-left: 1px solid #A8B8D9; border-right: 1px solid #A8B8D9; padding: 6px 10px 2px 10px; background-color: #FBFCFD; border-top-width: 0; background-image:url('nav_g.png'); background-repeat:repeat-x; background-color: #FFFFFF; /* opera specific markup */ border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); /* firefox specific markup */ -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; /* webkit specific markup */ -webkit-border-bottom-left-radius: 4px; -webkit-border-bottom-right-radius: 4px; -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); } dl.reflist dt { padding: 5px; } dl.reflist dd { margin: 0px 0px 10px 0px; padding: 5px; } .paramkey { text-align: right; } .paramtype { white-space: nowrap; } .paramname { color: #602020; white-space: nowrap; } .paramname em { font-style: normal; } .paramname code { line-height: 14px; } .params, .retval, .exception, .tparams { margin-left: 0px; padding-left: 0px; } .params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { font-weight: bold; vertical-align: top; } .params .paramtype, .tparams .paramtype { font-style: italic; vertical-align: top; } .params .paramdir, .tparams .paramdir { font-family: "courier new",courier,monospace; vertical-align: top; } table.mlabels { border-spacing: 0px; } td.mlabels-left { width: 100%; padding: 0px; } td.mlabels-right { vertical-align: bottom; padding: 0px; white-space: nowrap; } span.mlabels { margin-left: 8px; } span.mlabel { background-color: #728DC1; border-top:1px solid #5373B4; border-left:1px solid #5373B4; border-right:1px solid #C4CFE5; border-bottom:1px solid #C4CFE5; text-shadow: none; color: white; margin-right: 4px; padding: 2px 3px; border-radius: 3px; font-size: 7pt; white-space: nowrap; vertical-align: middle; } /* @end */ /* these are for tree view inside a (index) page */ div.directory { margin: 10px 0px; border-top: 1px solid #9CAFD4; border-bottom: 1px solid #9CAFD4; width: 100%; } .directory table { border-collapse:collapse; } .directory td { margin: 0px; padding: 0px; vertical-align: top; } .directory td.entry { white-space: nowrap; padding-right: 6px; padding-top: 3px; } .directory td.entry a { outline:none; } .directory td.entry a img { border: none; } .directory td.desc { width: 100%; padding-left: 6px; padding-right: 6px; padding-top: 3px; border-left: 1px solid rgba(0,0,0,0.05); } .directory tr.even { padding-left: 6px; background-color: #F7F8FB; } .directory img { vertical-align: -30%; } .directory .levels { white-space: nowrap; width: 100%; text-align: right; font-size: 9pt; } .directory .levels span { cursor: pointer; padding-left: 2px; padding-right: 2px; color: #3D578C; } .arrow { color: #9CAFD4; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; cursor: pointer; font-size: 80%; display: inline-block; width: 16px; height: 22px; } .icon { font-family: Arial, Helvetica; font-weight: bold; font-size: 12px; height: 14px; width: 16px; display: inline-block; background-color: #728DC1; color: white; text-align: center; border-radius: 4px; margin-left: 2px; margin-right: 2px; } .icona { width: 24px; height: 22px; display: inline-block; } .iconfopen { width: 24px; height: 18px; margin-bottom: 4px; background-image:url('folderopen.png'); background-position: 0px -4px; background-repeat: repeat-y; vertical-align:top; display: inline-block; } .iconfclosed { width: 24px; height: 18px; margin-bottom: 4px; background-image:url('folderclosed.png'); background-position: 0px -4px; background-repeat: repeat-y; vertical-align:top; display: inline-block; } .icondoc { width: 24px; height: 18px; margin-bottom: 4px; background-image:url('doc.png'); background-position: 0px -4px; background-repeat: repeat-y; vertical-align:top; display: inline-block; } table.directory { font: 400 14px Roboto,sans-serif; } /* @end */ div.dynheader { margin-top: 8px; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } address { font-style: normal; color: #2A3D61; } table.doxtable caption { caption-side: top; } table.doxtable { border-collapse:collapse; margin-top: 4px; margin-bottom: 4px; } table.doxtable td, table.doxtable th { border: 1px solid #2D4068; padding: 3px 7px 2px; } table.doxtable th { background-color: #374F7F; color: #FFFFFF; font-size: 110%; padding-bottom: 4px; padding-top: 5px; } table.fieldtable { /*width: 100%;*/ margin-bottom: 10px; border: 1px solid #A8B8D9; border-spacing: 0px; -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); } .fieldtable td, .fieldtable th { padding: 3px 7px 2px; } .fieldtable td.fieldtype, .fieldtable td.fieldname { white-space: nowrap; border-right: 1px solid #A8B8D9; border-bottom: 1px solid #A8B8D9; vertical-align: top; } .fieldtable td.fieldname { padding-top: 3px; } .fieldtable td.fielddoc { border-bottom: 1px solid #A8B8D9; /*width: 100%;*/ } .fieldtable td.fielddoc p:first-child { margin-top: 0px; } .fieldtable td.fielddoc p:last-child { margin-bottom: 2px; } .fieldtable tr:last-child td { border-bottom: none; } .fieldtable th { background-image:url('nav_f.png'); background-repeat:repeat-x; background-color: #E2E8F2; font-size: 90%; color: #253555; padding-bottom: 4px; padding-top: 5px; text-align:left; font-weight: 400; -moz-border-radius-topleft: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-left-radius: 4px; -webkit-border-top-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom: 1px solid #A8B8D9; } .tabsearch { top: 0px; left: 10px; height: 36px; background-image: url('tab_b.png'); z-index: 101; overflow: hidden; font-size: 13px; } .navpath ul { font-size: 11px; background-image:url('tab_b.png'); background-repeat:repeat-x; background-position: 0 -5px; height:30px; line-height:30px; color:#8AA0CC; border:solid 1px #C2CDE4; overflow:hidden; margin:0px; padding:0px; } .navpath li { list-style-type:none; float:left; padding-left:10px; padding-right:15px; background-image:url('bc_s.png'); background-repeat:no-repeat; background-position:right; color:#364D7C; } .navpath li.navelem a { height:32px; display:block; text-decoration: none; outline: none; color: #283A5D; font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); text-decoration: none; } .navpath li.navelem a:hover { color:#6884BD; } .navpath li.footer { list-style-type:none; float:right; padding-left:10px; padding-right:15px; background-image:none; background-repeat:no-repeat; background-position:right; color:#364D7C; font-size: 8pt; } div.summary { float: right; font-size: 8pt; padding-right: 5px; width: 50%; text-align: right; } div.summary a { white-space: nowrap; } table.classindex { margin: 10px; white-space: nowrap; margin-left: 3%; margin-right: 3%; width: 94%; border: 0; border-spacing: 0; padding: 0; } div.ingroups { font-size: 8pt; width: 50%; text-align: left; } div.ingroups a { white-space: nowrap; } div.header { background-image:url('nav_h.png'); background-repeat:repeat-x; background-color: #F9FAFC; margin: 0px; border-bottom: 1px solid #C4CFE5; } div.headertitle { padding: 5px 5px 5px 10px; } .PageDocRTL-title div.headertitle { text-align: right; direction: rtl; } dl { padding: 0 0 0 0; } /* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ dl.section { margin-left: 0px; padding-left: 0px; } dl.section.DocNodeRTL { margin-right: 0px; padding-right: 0px; } dl.note { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #D0C000; } dl.note.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #D0C000; } dl.warning, dl.attention { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #FF0000; } dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #FF0000; } dl.pre, dl.post, dl.invariant { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #00D000; } dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #00D000; } dl.deprecated { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #505050; } dl.deprecated.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #505050; } dl.todo { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #00C0E0; } dl.todo.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #00C0E0; } dl.test { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #3030E0; } dl.test.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #3030E0; } dl.bug { margin-left: -7px; padding-left: 3px; border-left: 4px solid; border-color: #C08050; } dl.bug.DocNodeRTL { margin-left: 0; padding-left: 0; border-left: 0; margin-right: -7px; padding-right: 3px; border-right: 4px solid; border-color: #C08050; } dl.section dd { margin-bottom: 6px; } #projectlogo { text-align: center; vertical-align: bottom; border-collapse: separate; } #projectlogo img { border: 0px none; } #projectalign { vertical-align: middle; } #projectname { font: 200% Tahoma, Arial,sans-serif; margin: 0px; padding: 2px 0px; } #projectbrief { font: 90% Tahoma, Arial,sans-serif; margin: 0px; padding: 0px; } #projectnumber { font: 50% Tahoma, Arial,sans-serif; margin: 0px; padding: 0px; } #titlearea { padding: 0px; margin: 0px; width: 100%; border-bottom: 1px solid #5373B4; } .image { text-align: center; } .dotgraph { text-align: center; } .mscgraph { text-align: center; } .plantumlgraph { text-align: center; } .diagraph { text-align: center; } .caption { font-weight: bold; } div.zoom { border: 1px solid #90A5CE; } dl.citelist { margin-bottom:50px; } dl.citelist dt { color:#334975; float:left; font-weight:bold; margin-right:10px; padding:5px; text-align:right; width:52px; } dl.citelist dd { margin:2px 0 2px 72px; padding:5px 0; } div.toc { padding: 14px 25px; background-color: #F4F6FA; border: 1px solid #D8DFEE; border-radius: 7px 7px 7px 7px; float: right; height: auto; margin: 0 8px 10px 10px; width: 200px; } .PageDocRTL-title div.toc { float: left !important; text-align: right; } div.toc li { background: url("bdwn.png") no-repeat scroll 0 5px transparent; font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; margin-top: 5px; padding-left: 10px; padding-top: 2px; } .PageDocRTL-title div.toc li { background-position-x: right !important; padding-left: 0 !important; padding-right: 10px; } div.toc h3 { font: bold 12px/1.2 Arial,FreeSans,sans-serif; color: #4665A2; border-bottom: 0 none; margin: 0; } div.toc ul { list-style: none outside none; border: medium none; padding: 0px; } div.toc li.level1 { margin-left: 0px; } div.toc li.level2 { margin-left: 15px; } div.toc li.level3 { margin-left: 30px; } div.toc li.level4 { margin-left: 45px; } span.emoji { /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort; */ } .PageDocRTL-title div.toc li.level1 { margin-left: 0 !important; margin-right: 0; } .PageDocRTL-title div.toc li.level2 { margin-left: 0 !important; margin-right: 15px; } .PageDocRTL-title div.toc li.level3 { margin-left: 0 !important; margin-right: 30px; } .PageDocRTL-title div.toc li.level4 { margin-left: 0 !important; margin-right: 45px; } .inherit_header { font-weight: bold; color: gray; cursor: pointer; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .inherit_header td { padding: 6px 0px 2px 5px; } .inherit { display: none; } tr.heading h2 { margin-top: 12px; margin-bottom: 4px; } /* tooltip related style info */ .ttc { position: absolute; display: none; } #powerTip { cursor: default; white-space: nowrap; background-color: white; border: 1px solid gray; border-radius: 4px 4px 4px 4px; box-shadow: 1px 1px 7px gray; display: none; font-size: smaller; max-width: 80%; opacity: 0.9; padding: 1ex 1em 1em; position: absolute; z-index: 2147483647; } #powerTip div.ttdoc { color: grey; font-style: italic; } #powerTip div.ttname a { font-weight: bold; } #powerTip div.ttname { font-weight: bold; } #powerTip div.ttdeci { color: #006318; } #powerTip div { margin: 0px; padding: 0px; font: 12px/16px Roboto,sans-serif; } #powerTip:before, #powerTip:after { content: ""; position: absolute; margin: 0px; } #powerTip.n:after, #powerTip.n:before, #powerTip.s:after, #powerTip.s:before, #powerTip.w:after, #powerTip.w:before, #powerTip.e:after, #powerTip.e:before, #powerTip.ne:after, #powerTip.ne:before, #powerTip.se:after, #powerTip.se:before, #powerTip.nw:after, #powerTip.nw:before, #powerTip.sw:after, #powerTip.sw:before { border: solid transparent; content: " "; height: 0; width: 0; position: absolute; } #powerTip.n:after, #powerTip.s:after, #powerTip.w:after, #powerTip.e:after, #powerTip.nw:after, #powerTip.ne:after, #powerTip.sw:after, #powerTip.se:after { border-color: rgba(255, 255, 255, 0); } #powerTip.n:before, #powerTip.s:before, #powerTip.w:before, #powerTip.e:before, #powerTip.nw:before, #powerTip.ne:before, #powerTip.sw:before, #powerTip.se:before { border-color: rgba(128, 128, 128, 0); } #powerTip.n:after, #powerTip.n:before, #powerTip.ne:after, #powerTip.ne:before, #powerTip.nw:after, #powerTip.nw:before { top: 100%; } #powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { border-top-color: #FFFFFF; border-width: 10px; margin: 0px -10px; } #powerTip.n:before { border-top-color: #808080; border-width: 11px; margin: 0px -11px; } #powerTip.n:after, #powerTip.n:before { left: 50%; } #powerTip.nw:after, #powerTip.nw:before { right: 14px; } #powerTip.ne:after, #powerTip.ne:before { left: 14px; } #powerTip.s:after, #powerTip.s:before, #powerTip.se:after, #powerTip.se:before, #powerTip.sw:after, #powerTip.sw:before { bottom: 100%; } #powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { border-bottom-color: #FFFFFF; border-width: 10px; margin: 0px -10px; } #powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { border-bottom-color: #808080; border-width: 11px; margin: 0px -11px; } #powerTip.s:after, #powerTip.s:before { left: 50%; } #powerTip.sw:after, #powerTip.sw:before { right: 14px; } #powerTip.se:after, #powerTip.se:before { left: 14px; } #powerTip.e:after, #powerTip.e:before { left: 100%; } #powerTip.e:after { border-left-color: #FFFFFF; border-width: 10px; top: 50%; margin-top: -10px; } #powerTip.e:before { border-left-color: #808080; border-width: 11px; top: 50%; margin-top: -11px; } #powerTip.w:after, #powerTip.w:before { right: 100%; } #powerTip.w:after { border-right-color: #FFFFFF; border-width: 10px; top: 50%; margin-top: -10px; } #powerTip.w:before { border-right-color: #808080; border-width: 11px; top: 50%; margin-top: -11px; } @media print { #top { display: none; } #side-nav { display: none; } #nav-path { display: none; } body { overflow:visible; } h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } .summary { display: none; } .memitem { page-break-inside: avoid; } #doc-content { margin-left:0 !important; height:auto !important; width:auto !important; overflow:inherit; display:inline; } } /* @group Markdown */ table.markdownTable { border-collapse:collapse; margin-top: 4px; margin-bottom: 4px; } table.markdownTable td, table.markdownTable th { border: 1px solid #2D4068; padding: 3px 7px 2px; } table.markdownTable tr { } th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { background-color: #374F7F; color: #FFFFFF; font-size: 110%; padding-bottom: 4px; padding-top: 5px; } th.markdownTableHeadLeft, td.markdownTableBodyLeft { text-align: left } th.markdownTableHeadRight, td.markdownTableBodyRight { text-align: right } th.markdownTableHeadCenter, td.markdownTableBodyCenter { text-align: center } .DocNodeRTL { text-align: right; direction: rtl; } .DocNodeLTR { text-align: left; direction: ltr; } table.DocNodeRTL { width: auto; margin-right: 0; margin-left: auto; } table.DocNodeLTR { width: auto; margin-right: auto; margin-left: 0; } tt, code, kbd, samp { display: inline-block; direction:ltr; } /* @end */ u { text-decoration: underline; } ================================================ FILE: docs/reference/html/dynsections.js ================================================ /* @licstart The following is the entire license notice for the JavaScript code in this file. The MIT License (MIT) Copyright (C) 1997-2020 by Dimitri van Heesch 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. @licend The above is the entire license notice for the JavaScript code in this file */ function toggleVisibility(linkObj) { var base = $(linkObj).attr('id'); var summary = $('#'+base+'-summary'); var content = $('#'+base+'-content'); var trigger = $('#'+base+'-trigger'); var src=$(trigger).attr('src'); if (content.is(':visible')===true) { content.hide(); summary.show(); $(linkObj).addClass('closed').removeClass('opened'); $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); } else { content.show(); summary.hide(); $(linkObj).removeClass('closed').addClass('opened'); $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); } return false; } function updateStripes() { $('table.directory tr'). removeClass('even').filter(':visible:even').addClass('even'); } function toggleLevel(level) { $('table.directory tr').each(function() { var l = this.id.split('_').length-1; var i = $('#img'+this.id.substring(3)); var a = $('#arr'+this.id.substring(3)); if (l UniWindowController: Class Members
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Here is a list of all documented class members with links to the class documentation for each member:

- a -

- c -

- d -

- f -

- g -

- h -

- i -

- j -

- k -

- m -

- o -

- p -

- s -

- t -

- w -

================================================ FILE: docs/reference/html/functions_enum.html ================================================ UniWindowController: Class Members - Enumerations
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
 
================================================ FILE: docs/reference/html/functions_evnt.html ================================================ UniWindowController: Class Members - Events
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
 
================================================ FILE: docs/reference/html/functions_func.html ================================================ UniWindowController: Class Members - Functions
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
 
================================================ FILE: docs/reference/html/functions_prop.html ================================================ UniWindowController: Class Members - Properties
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
================================================ FILE: docs/reference/html/functions_vars.html ================================================ UniWindowController: Class Members - Variables
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
 
================================================ FILE: docs/reference/html/hierarchy.html ================================================ UniWindowController: Class Hierarchy
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CKirurobo.FilePanelProvides static methods to open native file dialog
 CKirurobo.FilePanel.FilterFile filter
 CIBeginDragHandler
 CKirurobo.UniWindowMoveHandle
 CIDragHandler
 CKirurobo.UniWindowMoveHandle
 CIEndDragHandler
 CKirurobo.UniWindowMoveHandle
 CMonoBehaviour
 CKirurobo.UniWindowControllerUnified window controller for Windows / Mac
 CKirurobo.UniWindowMoveHandle
 CKirurobo.FilePanel.SettingsParameters for file dialog
================================================ FILE: docs/reference/html/hierarchy.js ================================================ var hierarchy = [ [ "Kirurobo.FilePanel", "class_kirurobo_1_1_file_panel.html", null ], [ "Kirurobo.FilePanel.Filter", "class_kirurobo_1_1_file_panel_1_1_filter.html", null ], [ "IBeginDragHandler", null, [ [ "Kirurobo.UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", null ] ] ], [ "IDragHandler", null, [ [ "Kirurobo.UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", null ] ] ], [ "IEndDragHandler", null, [ [ "Kirurobo.UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", null ] ] ], [ "MonoBehaviour", null, [ [ "Kirurobo.UniWindowController", "class_kirurobo_1_1_uni_window_controller.html", null ], [ "Kirurobo.UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", null ] ] ], [ "Kirurobo.FilePanel.Settings", "struct_kirurobo_1_1_file_panel_1_1_settings.html", null ] ]; ================================================ FILE: docs/reference/html/index.html ================================================ UniWindowController: Main Page
UniWindowController 0.8.2
https://github.com/kirurobo/uniWindowController/
UniWindowController Documentation
================================================ FILE: docs/reference/html/jquery.js ================================================ /*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ !function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="
",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element },_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler * Licensed under MIT * @author Ariel Flesler * @version 2.1.2 */ ;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 * http://www.smartmenus.org/ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); ================================================ FILE: docs/reference/html/menu.js ================================================ /* @licstart The following is the entire license notice for the JavaScript code in this file. The MIT License (MIT) Copyright (C) 1997-2020 by Dimitri van Heesch 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. @licend The above is the entire license notice for the JavaScript code in this file */ function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { function makeTree(data,relPath) { var result=''; if ('children' in data) { result+=''; } return result; } var searchBox; if (searchEnabled) { if (serverSide) { searchBox='
'+ '
'+ '
'+ ''+ '
'+ '
'+ '
'+ '
'; } else { searchBox='
'+ ''+ ''+ ''+ ''+ ''+ '' '' '
'; } } $('#main-nav').before('
'+ ''+ ''+ '
'); $('#main-nav').append(makeTree(menudata,relPath)); $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); if (searchBox) { $('#main-menu').append('
  • '); } var $mainMenuState = $('#main-menu-state'); var prevWidth = 0; if ($mainMenuState.length) { function initResizableIfExists() { if (typeof initResizable==='function') initResizable(); } // animate mobile menu $mainMenuState.change(function(e) { var $menu = $('#main-menu'); var options = { duration: 250, step: initResizableIfExists }; if (this.checked) { options['complete'] = function() { $menu.css('display', 'block') }; $menu.hide().slideDown(options); } else { options['complete'] = function() { $menu.css('display', 'none') }; $menu.show().slideUp(options); } }); // set default menu visibility function resetState() { var $menu = $('#main-menu'); var $mainMenuState = $('#main-menu-state'); var newWidth = $(window).outerWidth(); if (newWidth!=prevWidth) { if ($(window).outerWidth()<768) { $mainMenuState.prop('checked',false); $menu.hide(); $('#searchBoxPos1').html(searchBox); $('#searchBoxPos2').hide(); } else { $menu.show(); $('#searchBoxPos1').empty(); $('#searchBoxPos2').html(searchBox); $('#searchBoxPos2').show(); } prevWidth = newWidth; } } $(window).ready(function() { resetState(); initResizableIfExists(); }); $(window).resize(resetState); } $('#main-menu').smartmenus(); } /* @license-end */ ================================================ FILE: docs/reference/html/menudata.js ================================================ /* @licstart The following is the entire license notice for the JavaScript code in this file. The MIT License (MIT) Copyright (C) 1997-2020 by Dimitri van Heesch 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. @licend The above is the entire license notice for the JavaScript code in this file */ var menudata={children:[ {text:"Main Page",url:"index.html"}, {text:"Packages",url:"namespaces.html",children:[ {text:"Packages",url:"namespaces.html"}]}, {text:"Classes",url:"annotated.html",children:[ {text:"Class List",url:"annotated.html"}, {text:"Class Index",url:"classes.html"}, {text:"Class Hierarchy",url:"hierarchy.html"}, {text:"Class Members",url:"functions.html",children:[ {text:"All",url:"functions.html",children:[ {text:"a",url:"functions.html#index_a"}, {text:"c",url:"functions.html#index_c"}, {text:"d",url:"functions.html#index_d"}, {text:"f",url:"functions.html#index_f"}, {text:"g",url:"functions.html#index_g"}, {text:"h",url:"functions.html#index_h"}, {text:"i",url:"functions.html#index_i"}, {text:"j",url:"functions.html#index_j"}, {text:"k",url:"functions.html#index_k"}, {text:"m",url:"functions.html#index_m"}, {text:"o",url:"functions.html#index_o"}, {text:"p",url:"functions.html#index_p"}, {text:"s",url:"functions.html#index_s"}, {text:"t",url:"functions.html#index_t"}, {text:"w",url:"functions.html#index_w"}]}, {text:"Functions",url:"functions_func.html"}, {text:"Variables",url:"functions_vars.html"}, {text:"Enumerations",url:"functions_enum.html"}, {text:"Properties",url:"functions_prop.html"}, {text:"Events",url:"functions_evnt.html"}]}]}]} ================================================ FILE: docs/reference/html/namespace_kirurobo.html ================================================ UniWindowController: Kirurobo Namespace Reference
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    Kirurobo Namespace Reference

    Classes

    class  FilePanel
     Provides static methods to open native file dialog More...
     
    class  UniWinCore
     Native plugin wrapper for LibUniWinC
     
    class  UniWindowController
     Unified window controller for Windows / Mac More...
     
    class  UniWindowMoveHandle
     
    ================================================ FILE: docs/reference/html/namespace_kirurobo.js ================================================ var namespace_kirurobo = [ [ "FilePanel", "class_kirurobo_1_1_file_panel.html", "class_kirurobo_1_1_file_panel" ], [ "UniWindowController", "class_kirurobo_1_1_uni_window_controller.html", "class_kirurobo_1_1_uni_window_controller" ], [ "UniWindowMoveHandle", "class_kirurobo_1_1_uni_window_move_handle.html", "class_kirurobo_1_1_uni_window_move_handle" ] ]; ================================================ FILE: docs/reference/html/namespaces.html ================================================ UniWindowController: Packages
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    Packages
    Here are the packages with brief descriptions (if available):
    [detail level 123]
     NKirurobo
     CFilePanelProvides static methods to open native file dialog
     CFilterFile filter
     CSettingsParameters for file dialog
     CUniWindowControllerUnified window controller for Windows / Mac
     CUniWindowMoveHandle
    ================================================ FILE: docs/reference/html/namespaces_dup.js ================================================ var namespaces_dup = [ [ "Kirurobo", "namespace_kirurobo.html", "namespace_kirurobo" ] ]; ================================================ FILE: docs/reference/html/navtree.css ================================================ #nav-tree .children_ul { margin:0; padding:4px; } #nav-tree ul { list-style:none outside none; margin:0px; padding:0px; } #nav-tree li { white-space:nowrap; margin:0px; padding:0px; } #nav-tree .plus { margin:0px; } #nav-tree .selected { background-image: url('tab_a.png'); background-repeat:repeat-x; color: #fff; text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); } #nav-tree img { margin:0px; padding:0px; border:0px; vertical-align: middle; } #nav-tree a { text-decoration:none; padding:0px; margin:0px; outline:none; } #nav-tree .label { margin:0px; padding:0px; font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; } #nav-tree .label a { padding:2px; } #nav-tree .selected a { text-decoration:none; color:#fff; } #nav-tree .children_ul { margin:0px; padding:0px; } #nav-tree .item { margin:0px; padding:0px; } #nav-tree { padding: 0px 0px; background-color: #FAFAFF; font-size:14px; overflow:auto; } #doc-content { overflow:auto; display:block; padding:0px; margin:0px; -webkit-overflow-scrolling : touch; /* iOS 5+ */ } #side-nav { padding:0 6px 0 0; margin: 0px; display:block; position: absolute; left: 0px; width: 250px; overflow : hidden; } .ui-resizable .ui-resizable-handle { display:block; } .ui-resizable-e { background-image:url("splitbar.png"); background-size:100%; background-repeat:repeat-y; background-attachment: scroll; cursor:ew-resize; height:100%; right:0; top:0; width:6px; } .ui-resizable-handle { display:none; font-size:0.1px; position:absolute; z-index:1; } #nav-tree-contents { margin: 6px 0px 0px 0px; } #nav-tree { background-image:url('nav_h.png'); background-repeat:repeat-x; background-color: #F9FAFC; -webkit-overflow-scrolling : touch; /* iOS 5+ */ } #nav-sync { position:absolute; top:5px; right:24px; z-index:0; } #nav-sync img { opacity:0.3; } #nav-sync img:hover { opacity:0.9; } @media print { #nav-tree { display: none; } div.ui-resizable-handle { display: none; position: relative; } } ================================================ FILE: docs/reference/html/navtree.js ================================================ /* @licstart The following is the entire license notice for the JavaScript code in this file. The MIT License (MIT) Copyright (C) 1997-2020 by Dimitri van Heesch 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. @licend The above is the entire license notice for the JavaScript code in this file */ var navTreeSubIndices = new Array(); var arrowDown = '▼'; var arrowRight = '►'; function getData(varName) { var i = varName.lastIndexOf('/'); var n = i>=0 ? varName.substring(i+1) : varName; return eval(n.replace(/\-/g,'_')); } function stripPath(uri) { return uri.substring(uri.lastIndexOf('/')+1); } function stripPath2(uri) { var i = uri.lastIndexOf('/'); var s = uri.substring(i+1); var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); return m ? uri.substring(i-6) : s; } function hashValue() { return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); } function hashUrl() { return '#'+hashValue(); } function pathName() { return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); } function localStorageSupported() { try { return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; } catch(e) { return false; } } function storeLink(link) { if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { window.localStorage.setItem('navpath',link); } } function deleteLink() { if (localStorageSupported()) { window.localStorage.setItem('navpath',''); } } function cachedLink() { if (localStorageSupported()) { return window.localStorage.getItem('navpath'); } else { return ''; } } function getScript(scriptName,func,show) { var head = document.getElementsByTagName("head")[0]; var script = document.createElement('script'); script.id = scriptName; script.type = 'text/javascript'; script.onload = func; script.src = scriptName+'.js'; head.appendChild(script); } function createIndent(o,domNode,node,level) { var level=-1; var n = node; while (n.parentNode) { level++; n=n.parentNode; } if (node.childrenData) { var imgNode = document.createElement("span"); imgNode.className = 'arrow'; imgNode.style.paddingLeft=(16*level).toString()+'px'; imgNode.innerHTML=arrowRight; node.plus_img = imgNode; node.expandToggle = document.createElement("a"); node.expandToggle.href = "javascript:void(0)"; node.expandToggle.onclick = function() { if (node.expanded) { $(node.getChildrenUL()).slideUp("fast"); node.plus_img.innerHTML=arrowRight; node.expanded = false; } else { expandNode(o, node, false, false); } } node.expandToggle.appendChild(imgNode); domNode.appendChild(node.expandToggle); } else { var span = document.createElement("span"); span.className = 'arrow'; span.style.width = 16*(level+1)+'px'; span.innerHTML = ' '; domNode.appendChild(span); } } var animationInProgress = false; function gotoAnchor(anchor,aname,updateLocation) { var pos, docContent = $('#doc-content'); var ancParent = $(anchor.parent()); if (ancParent.hasClass('memItemLeft') || ancParent.hasClass('memtitle') || ancParent.hasClass('fieldname') || ancParent.hasClass('fieldtype') || ancParent.is(':header')) { pos = ancParent.position().top; } else if (anchor.position()) { pos = anchor.position().top; } if (pos) { var dist = Math.abs(Math.min( pos-docContent.offset().top, docContent[0].scrollHeight- docContent.height()-docContent.scrollTop())); animationInProgress=true; docContent.animate({ scrollTop: pos + docContent.scrollTop() - docContent.offset().top },Math.max(50,Math.min(500,dist)),function(){ if (updateLocation) window.location.href=aname; animationInProgress=false; }); } } function newNode(o, po, text, link, childrenData, lastNode) { var node = new Object(); node.children = Array(); node.childrenData = childrenData; node.depth = po.depth + 1; node.relpath = po.relpath; node.isLast = lastNode; node.li = document.createElement("li"); po.getChildrenUL().appendChild(node.li); node.parentNode = po; node.itemDiv = document.createElement("div"); node.itemDiv.className = "item"; node.labelSpan = document.createElement("span"); node.labelSpan.className = "label"; createIndent(o,node.itemDiv,node,0); node.itemDiv.appendChild(node.labelSpan); node.li.appendChild(node.itemDiv); var a = document.createElement("a"); node.labelSpan.appendChild(a); node.label = document.createTextNode(text); node.expanded = false; a.appendChild(node.label); if (link) { var url; if (link.substring(0,1)=='^') { url = link.substring(1); link = url; } else { url = node.relpath+link; } a.className = stripPath(link.replace('#',':')); if (link.indexOf('#')!=-1) { var aname = '#'+link.split('#')[1]; var srcPage = stripPath(pathName()); var targetPage = stripPath(link.split('#')[0]); a.href = srcPage!=targetPage ? url : "javascript:void(0)"; a.onclick = function(){ storeLink(link); if (!$(a).parent().parent().hasClass('selected')) { $('.item').removeClass('selected'); $('.item').removeAttr('id'); $(a).parent().parent().addClass('selected'); $(a).parent().parent().attr('id','selected'); } var anchor = $(aname); gotoAnchor(anchor,aname,true); }; } else { a.href = url; a.onclick = function() { storeLink(link); } } } else { if (childrenData != null) { a.className = "nolink"; a.href = "javascript:void(0)"; a.onclick = node.expandToggle.onclick; } } node.childrenUL = null; node.getChildrenUL = function() { if (!node.childrenUL) { node.childrenUL = document.createElement("ul"); node.childrenUL.className = "children_ul"; node.childrenUL.style.display = "none"; node.li.appendChild(node.childrenUL); } return node.childrenUL; }; return node; } function showRoot() { var headerHeight = $("#top").height(); var footerHeight = $("#nav-path").height(); var windowHeight = $(window).height() - headerHeight - footerHeight; (function (){ // retry until we can scroll to the selected item try { var navtree=$('#nav-tree'); navtree.scrollTo('#selected',100,{offset:-windowHeight/2}); } catch (err) { setTimeout(arguments.callee, 0); } })(); } function expandNode(o, node, imm, showRoot) { if (node.childrenData && !node.expanded) { if (typeof(node.childrenData)==='string') { var varName = node.childrenData; getScript(node.relpath+varName,function(){ node.childrenData = getData(varName); expandNode(o, node, imm, showRoot); }, showRoot); } else { if (!node.childrenVisited) { getNode(o, node); } $(node.getChildrenUL()).slideDown("fast"); node.plus_img.innerHTML = arrowDown; node.expanded = true; } } } function glowEffect(n,duration) { n.addClass('glow').delay(duration).queue(function(next){ $(this).removeClass('glow');next(); }); } function highlightAnchor() { var aname = hashUrl(); var anchor = $(aname); if (anchor.parent().attr('class')=='memItemLeft'){ var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); glowEffect(rows.children(),300); // member without details } else if (anchor.parent().attr('class')=='fieldname'){ glowEffect(anchor.parent().parent(),1000); // enum value } else if (anchor.parent().attr('class')=='fieldtype'){ glowEffect(anchor.parent().parent(),1000); // struct field } else if (anchor.parent().is(":header")) { glowEffect(anchor.parent(),1000); // section header } else { glowEffect(anchor.next(),1000); // normal member } } function selectAndHighlight(hash,n) { var a; if (hash) { var link=stripPath(pathName())+':'+hash.substring(1); a=$('.item a[class$="'+link+'"]'); } if (a && a.length) { a.parent().parent().addClass('selected'); a.parent().parent().attr('id','selected'); highlightAnchor(); } else if (n) { $(n.itemDiv).addClass('selected'); $(n.itemDiv).attr('id','selected'); } var topOffset=5; if (typeof page_layout!=='undefined' && page_layout==1) { topOffset+=$('#top').outerHeight(); } if ($('#nav-tree-contents .item:first').hasClass('selected')) { topOffset+=25; } $('#nav-sync').css('top',topOffset+'px'); showRoot(); } function showNode(o, node, index, hash) { if (node && node.childrenData) { if (typeof(node.childrenData)==='string') { var varName = node.childrenData; getScript(node.relpath+varName,function(){ node.childrenData = getData(varName); showNode(o,node,index,hash); },true); } else { if (!node.childrenVisited) { getNode(o, node); } $(node.getChildrenUL()).css({'display':'block'}); node.plus_img.innerHTML = arrowDown; node.expanded = true; var n = node.children[o.breadcrumbs[index]]; if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); else hash=''; } if (hash.match(/^#l\d+$/)) { var anchor=$('a[name='+hash.substring(1)+']'); glowEffect(anchor.parent(),1000); // line number hash=''; // strip line number anchors } var url=root+hash; var i=-1; while (NAVTREEINDEX[i+1]<=url) i++; if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index if (navTreeSubIndices[i]) { gotoNode(o,i,root,hash,relpath) } else { getScript(relpath+'navtreeindex'+i,function(){ navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); if (navTreeSubIndices[i]) { gotoNode(o,i,root,hash,relpath); } },true); } } function showSyncOff(n,relpath) { n.html(''); } function showSyncOn(n,relpath) { n.html(''); } function toggleSyncButton(relpath) { var navSync = $('#nav-sync'); if (navSync.hasClass('sync')) { navSync.removeClass('sync'); showSyncOff(navSync,relpath); storeLink(stripPath2(pathName())+hashUrl()); } else { navSync.addClass('sync'); showSyncOn(navSync,relpath); deleteLink(); } } var loadTriggered = false; var readyTriggered = false; var loadObject,loadToRoot,loadUrl,loadRelPath; $(window).on('load',function(){ if (readyTriggered) { // ready first navTo(loadObject,loadToRoot,loadUrl,loadRelPath); showRoot(); } loadTriggered=true; }); function initNavTree(toroot,relpath) { var o = new Object(); o.toroot = toroot; o.node = new Object(); o.node.li = document.getElementById("nav-tree-contents"); o.node.childrenData = NAVTREE; o.node.children = new Array(); o.node.childrenUL = document.createElement("ul"); o.node.getChildrenUL = function() { return o.node.childrenUL; }; o.node.li.appendChild(o.node.childrenUL); o.node.depth = 0; o.node.relpath = relpath; o.node.expanded = false; o.node.isLast = true; o.node.plus_img = document.createElement("span"); o.node.plus_img.className = 'arrow'; o.node.plus_img.innerHTML = arrowRight; if (localStorageSupported()) { var navSync = $('#nav-sync'); if (cachedLink()) { showSyncOff(navSync,relpath); navSync.removeClass('sync'); } else { showSyncOn(navSync,relpath); } navSync.click(function(){ toggleSyncButton(relpath); }); } if (loadTriggered) { // load before ready navTo(o,toroot,hashUrl(),relpath); showRoot(); } else { // ready before load loadObject = o; loadToRoot = toroot; loadUrl = hashUrl(); loadRelPath = relpath; readyTriggered=true; } $(window).bind('hashchange', function(){ if (window.location.hash && window.location.hash.length>1){ var a; if ($(location).attr('hash')){ var clslink=stripPath(pathName())+':'+hashValue(); a=$('.item a[class$="'+clslink.replace(/=desktop_vp) { if (!collapsed) { collapseExpand(); } } else if (width>desktop_vp && collapsedWidth0) { restoreWidth(0); collapsed=true; } else { var width = readCookie('width'); if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); } collapsed=false; } } header = $("#top"); sidenav = $("#side-nav"); content = $("#doc-content"); navtree = $("#nav-tree"); footer = $("#nav-path"); $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); $(sidenav).resizable({ minWidth: 0 }); $(window).resize(function() { resizeHeight(); }); var device = navigator.userAgent.toLowerCase(); var touch_device = device.match(/(iphone|ipod|ipad|android)/); if (touch_device) { /* wider split bar for touch only devices */ $(sidenav).css({ paddingRight:'20px' }); $('.ui-resizable-e').css({ width:'20px' }); $('#nav-sync').css({ right:'34px' }); barWidth=20; } var width = readCookie('width'); if (width) { restoreWidth(width); } else { resizeWidth(); } resizeHeight(); var url = location.href; var i=url.indexOf("#"); if (i>=0) window.location.hash=url.substr(i); var _preventDefault = function(evt) { evt.preventDefault(); }; $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); $(".ui-resizable-handle").dblclick(collapseExpand); $(window).on('load',resizeHeight); } /* @license-end */ ================================================ FILE: docs/reference/html/struct_kirurobo_1_1_file_panel_1_1_lib_uni_win_c_1_1_panel_settings-members.html ================================================ UniWindowController: Member List
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    ================================================ FILE: docs/reference/html/struct_kirurobo_1_1_file_panel_1_1_lib_uni_win_c_1_1_panel_settings.html ================================================ UniWindowController: Kirurobo.FilePanel.LibUniWinC.PanelSettings Struct Reference
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    Kirurobo.FilePanel.LibUniWinC.PanelSettings Struct Reference
    Inheritance diagram for Kirurobo.FilePanel.LibUniWinC.PanelSettings:

    Public Member Functions

     PanelSettings (Settings settings)
     
    void Dispose ()
     

    Public Attributes

    Int32 structSize
     
    Int32 flags
     
    IntPtr lpszTitle
     
    IntPtr lpszFilter
     
    IntPtr lpszInitialFile
     
    IntPtr lpszInitialDir
     
    IntPtr lpszDefaultExt
     

    The documentation for this struct was generated from the following file:
    • FilePanel.cs
    ================================================ FILE: docs/reference/html/struct_kirurobo_1_1_file_panel_1_1_settings-members.html ================================================ UniWindowController: Member List
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    Kirurobo.FilePanel.Settings Member List
    ================================================ FILE: docs/reference/html/struct_kirurobo_1_1_file_panel_1_1_settings.html ================================================ UniWindowController: Kirurobo.FilePanel.Settings Struct Reference
    UniWindowController 0.8.2
    https://github.com/kirurobo/uniWindowController/
    Kirurobo.FilePanel.Settings Struct Reference

    Parameters for file dialog More...

    Public Attributes

    string title
     
    Filter[] filters
     
    string initialDirectory
     
    string initialFile
     
    string defaultExtension
     
    Flag flags
     

    Detailed Description

    Parameters for file dialog


    The documentation for this struct was generated from the following file:
    • FilePanel.cs
    ================================================ FILE: docs/reference/html/tabs.css ================================================ .sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:#666;-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}