ツクロウヤ

Unityによるゲーム開発記

【開発記】リザルト画面だよ!

先週はちょっと別のことで自己開発をサボりがちでした><
ちなみに先週やっていたことは
・リザルトの実装+それに伴うデータの設計・外部化
・ノックバック処理の修正(アニメ実装まだ)
・開発補助ツールの拡張
と地味なことばかりやっていました。
Photoshopのリネームツールとか作ってたり、これはまたの機会に)

見た目的にあまり変わりないなぁと思っていましたが、リザルト画面を見せられるなということで。

f:id:ArtAwA:20161018002129j:plain

リザルトはバトル後にバトル画面に乗っける形にしましたが、背景によって見えにくさが変わってくるなと...
スクショを取っていて気づきましたが、4桁の数字とかは3桁区切りをした方が見やすそうですね。

この後はとりあえず先にステージギミックの実装を行っていきます。
単調さの解消にチャージなどを入れようかとしていましたが、この辺りはもう少しゲームシステムを詰めてから実装するか判断しようかと。

それでは今回はこの辺で
(´・ω・`*)ノシ

【開発記】開発時の問題:Sceneがnot loadedから進まない

先日進捗動画を公開して、一時停止画面などを表示して、また戦闘に戻るみたいなことをやっていました。
が... 他のリトライとリタイヤは実はココは正常に動いていませんでした|ω・`)コソ

何故かシーン遷移の際に、Sceneが「not loaded」の表記から一切進まず、BGMが垂れ流されている状態になっていました。
f:id:ArtAwA:20161008232144p:plain

何でだろうと調べた結果...
一時停止時に「Time.timeScale = 0.0f」で一時停止の処理を実装していましたが、リトライやリタイヤへの遷移時に元に戻す処理が抜けていたので、「not loaded」から進まない状態でした。
まぁ何というか... 凡ミスですね...(こんなのに何時間も悩んでいたのか...)

ちなみにロード時はこちらのサイトを参考に
【Unity5】非同期ロードでローディング画面を実装する。 : ねこバタ会議
SceneManagerに変えた形で実装していますが、

private IEnumerator LoadSceneAsync()
{
  SceneManager.UnloadScene(mCurrentScene);

  // 非同期でロード開始
  mAsync = SceneManager.LoadSceneAsync(mNextScene, LoadSceneMode.Additive);

  // シーン遷移をしない
  mAsync.allowSceneActivation = false;

  // 非同期読み込み中の処理
  while (mAsync.progress < 0.9f) //0.9で止まってしまうため
  {
	yield return null;
  }

  yield return new WaitForSeconds(LOAD_WAIT_TIME);

  // シーン遷移許可
  mAsync.allowSceneActivation = true;
}

どうも「mAsync.progress」は進むようで、シーン遷移は許可されている状態でした。
ずっとこの辺りで何かおかしくなっているのではと勘ぐっていましたが無駄足という...

それでは今回はこの辺で
(´・ω・`*)ノシ

【Unity】ショートカットを拡張した便利ツール群

今回は開発記以外の内容を記載!
Unityで作業を行っていて、結構同じことを頻繁に行うことが多く、めんどいなと思いまして。
Unityのエディタ拡張で、よく使う機能や動作をショートカット化してみました。
記事を記載していて思いましたが、uGUIに対応していないですね...
(後ほど修正して更新すると思います...)

(修正しました)

■機能一覧

・オブジェクトのオン、オフをトグルで切り替え : 「Ctr+T」
・PrefabをApply : 「Ctr+Alt+A」
・ゲームオブジェクトのTransformをリセット : 「Ctr+Alt+R」
・グループ化(選択したオブジェクトをEmptyの子にする) : 「Ctr+G」
・Particle Effectをトグルで再生・停止する : 「Alt+P」
・オブジェクトのTransformを四捨五入:「Ctr+Shift+R」

■使い方

1. Projectフォルダ以下に「Editor」という名前でフォルダを作成(階層はどんなでもOK)
2. 「Editor」フォルダ内に「ShortCutExtension」という名前でC#のファイルを作成
3. 以下のソースコードをコピペって保存
4. 上部タブにCustom/ShortCutExtensionが追加されていたらOK
5. 上部タブから選択するかショートカットを入力

※他の拡張などで既にショートカットが割り振られているときの挙動は保証できません。

ソースコード

それでは今回はこの辺で
(´・ω・`*)ノシ

【開発記】進捗動画第一弾!

今週中に動画を撮ると言ってしまったので、動画を撮りました!
(宣言すると逃げられなくなるので良いですね...)

ちなみに今週は一時停止、シーン遷移、ローディング、各種調整などを行っていました。
リザルトまでは実装してから動画を撮りたかったのですが、勉強しながらの実装で想定よりもかなり時間が...

動画はとりあえずyoutubeにアップロードしてみました。(ニコニコは後日...)

所々キャラが直角に動いていたり、コントローラーの見た目が変わっていないのに動いているのはPCで撮影しているので、キーボードで動かしているときです。
仮想コントローラーはUnity上での確認が面倒ですね...
かなりやっつけでキーボードに対応したので、動きがもっさりした感じに...

動画を撮影して表示確認していて、思いましたが作ったものを客観視できて良いですね。
₍最初撮るときはめんどくさいと思ってましたが...₎

攻撃ボタンをタップした時のボタンリアクションやHPバーが徐々に減少など、後回しにしていたものがないと結構見た目的に良くないですね。
攻撃ボタンのリアクションがないのは特に。
あと完全に忘れていましたが、敵が死ぬときのエフェクトが今回用に作ったものじゃないので、見た目がマッチしていない...

これからはテストプレイの他に動画での確認も行うかも...?
次回の動画撮影は実機で行いたいと思います。

 それでは今回はこの辺で
(´・ω・`*)ノシ