Unity, UTF-16, JavaScript, キャッシュ
筆者がこれまでに作成したアセットを紹介します.
各アセットの詳しい説明は, 別ページになります.
このページは筆者が作成したJavaScriptのライブラリが公開されます.
本稿では, C++でバージョンに左右されずに文字を扱うために, 以下の機能を持つライブラリを紹介します.
- 型依存しないUTF-8, UTF-16, UTF-32間の相互変換
- UTF-8, UTF-16文字(コードポイント)ごとのイテレート
- 標準イテレータを使ったイテレート
- 型依存しないイテレータの対応
よりモダンで, 完全に要素ベースの[JavaScript/画面分割ライブラリ SplitView]をご使用ください.
多くの編集ソフトには, 一つの画面を分割する機能があります. 一つの画面を分割することで, 同じ画面で複数の作業を行うことができます.
Splitterは, ウェブブラウザ上で動作する画面分割ライブラリです. 分割境界にあるスライドバーを動かすことで領域のサイズを調節できます.
ウェブブラウザ上で動作する, 画面分割ライブラリ.
スクリプト内に一切の状態を持たず, 完全に要素のデータ (例えば, 属性やスタイル) と要素の構造をベースに動作します. このことで, 次の三つの特徴が得られます.
- ページロード時のレイアウト変化なし
- 他スクリプトによるビューへの自由な変更
- カスタム可能
PHPで, キャッシュを管理するライブラリ
よりモダンで, 完全に要素ベースの[JavaScript/画面分割ライブラリ SplitView]をご使用ください.
多くの編集ソフトには, 一つの画面を分割する機能があります. 一つの画面を分割することで, 同じ画面で複数の作業を行うことができます.
Splitterは, ウェブブラウザ上で動作する画面分割ライブラリです. 分割境界にあるスライドバーを動かすことで領域のサイズを調節できます.
ウェブブラウザ上で動作する, 画面分割ライブラリ.
スクリプト内に一切の状態を持たず, 完全に要素のデータ (例えば, 属性やスタイル) と要素の構造をベースに動作します. このことで, 次の三つの特徴が得られます.
- ページロード時のレイアウト変化なし
- 他スクリプトによるビューへの自由な変更
- カスタム可能
PHPで, キャッシュを管理するライブラリ
Unityでゲーム制作もしくはツール制作においてちょっとしたUIを表示したい時があります. HUDMessageManagerはその時のために製作されたものです.
HUDMessageManagerはちょっとしたUIの表示に最適です. 特徴は以下のとおりです.
- 固定されないUIの表示場所
- フェードイン, フェードアウトエフェクト
- 表示時間設定
Unity 2018.2.5f1で動作確認済みです.
Unityでゲーム制作もしくはツール制作においてちょっとしたUIを表示したい時があります. HUDMessageManagerはその時のために製作されたものです.
HUDMessageManagerはちょっとしたUIの表示に最適です. 特徴は以下のとおりです.
- 固定されないUIの表示場所
- フェードイン, フェードアウトエフェクト
- 表示時間設定
Unity 2018.2.5f1で動作確認済みです.
LanguagePackManagerとは言語パックを管理するものです. もちろんですがUnity上で動作します.
これを使うと以下のことができます.
- 言語パックの管理
- 各シーンでのアンロードとロード
言語パックといいながらファイル形式はテキスト形式です. 言語関係の編集が簡単になります.
また言語パックを各シーンでアンロードされるのでロードした言語パックが残り続けることがありません. これはすなわち使っていないメモリを開放します.
LanguagePackManagerを改良、強化、何でもしてください(;´∀`)
このページで書かれている書かれている内容が実際のスクリプトと異なる可能性があります.
このページの内容は2016年に執筆されています.
CameraControllerとはCameraを制御するものです。これは次のことができます。
- 一人称,三人称カメラの切り替え
- カメラ移動の線形補間,曲線補間
- コライダーを自動で避けるAutoAvoidCollider機能
- 任意の場所にカメラ位置を設定可能
- 任意の方向にカメラを向けることが可能
上の機能が一つのカメラで実現できるためカメラ管理がしやすくなります。
CameraControllerを改良、強化、何でもしてください(;´∀`)
このページで書かれている書かれている内容が実際のスクリプトと異なる可能性があります.
このページの内容は2016年に執筆されています.
![EventControllerEditor画面](/Master/Unity/Images/EventController/Img1.png)
Gameは必ずイベントを含みます. イベントがないGameはほとんどないでしょう.
イベント製作時によくあるのが, イベント管理のしにくさと, Debugのしにくさです. イベントを作っていくとどのイベントがどのイベントにどうつながるのかが重要ですが, 大量のイベントを作るとどんなイベントがどれほどあるのかが把握しにくくなります. 特にスクリプトでイベントを製作している場合はそうでしょう. Debugのしにくさとして, ある特定のイベントをDebugする際そのイベントに到達するのに時間がかかります. そのイベントの前にn個のイベントがあり, そのイベントに対するフラグがm個あり, またそのイベントに到達するのにt時間かかるとするならば, そのイベントのDebugに要する時間は $n \times m \times t$ となります.(n = 6; m = 3; t = 5分とするとDebug時間は90分になります. 非常に長いです)
上のような問題を解決するために, ’EventController’を紹介します. EventControllerができるのは次の通りです.
- Eventの遷移, 登録を直感的に行えるEditor
- Game中現在実行しているEventをお知らせ
- パラメータのアクセスは外部スクリプトでも可能
- Game実行中パラメータの値はEditor上でも設定可能
EventControllerを改良、強化、何でもしてください(;´∀`)
このページで書かれている書かれている内容が実際のスクリプトと異なる可能性があります.
このページの内容は2016年に執筆されています.
LanguagePackManagerとは言語パックを管理するものです. もちろんですがUnity上で動作します.
これを使うと以下のことができます.
- 言語パックの管理
- 各シーンでのアンロードとロード
言語パックといいながらファイル形式はテキスト形式です. 言語関係の編集が簡単になります.
また言語パックを各シーンでアンロードされるのでロードした言語パックが残り続けることがありません. これはすなわち使っていないメモリを開放します.
LanguagePackManagerを改良、強化、何でもしてください(;´∀`)
このページで書かれている書かれている内容が実際のスクリプトと異なる可能性があります.
このページの内容は2016年に執筆されています.