カテゴリー: Unity

うにのトゲは刺さると痛い(´・ω・`)-16

Windows Updateとの苦闘を繰り返した間に、何をどれくらいやったか忘れた(“・ω・゙)

まあでも内部的な変更とか追加ばっかりだったから、あんまりC#やUnityがどうこうって話は少ないかな…?


と思ったが、一つ二つUnity絡みで不可解な事象にハマっていたことを思い出した。

謎エラーに遭遇(´・ω・`)

或るタイミングで以下のエラーが表示されてUnityが起動しなくなった…んだったかな?

そのタイミングは確かVisual Studioの更新かなんかを促されて適当にやってしまった後だったような…

メッセージにある通り、”unity editor resources”がおかしいらしい。これの復旧方法が解らず、結局インストーラを再び叩いて再インストール(?)したら、このエラーは表示されなくなった。本当にVSの更新が原因かどうかは解らないが、何はともあれ再インストールというか上書きインストールすれば一応回避出来た。


謎例外に遭遇(´・ω・`)

結論から言えば、コードに問題があったのだが、なんでこの例外になるのかが解らなかった。

ハンドルされない例外が 0x000000014087332F (Unity.exe) で発生しました: 0xC0000005: 場所 0x0000000000000000 の読み取り中にアクセス違反が発生しました。 が発生しました

具体的にどういう状況かと言うと、GameManagerで

public Text MessageDisplay;

というモノを作り、Editor上でD&Dしておいて、メッセージを表示させる。→ ゲーム終了時にDestroy → タイトル画面に戻らずに(シーン遷移せずに)リスタートしようとした時に再び利用としていた。

まあ、Destoryしてるものを再び利用しようとしたらエラーになるのは解るのだが、例外が起きてUnity毎落ちてしまうのかが謎(´・ω・`)

もしかしたら、今まで遭遇して来なかっただけで、これが正しい挙動なのかな? 或るいはうちの環境だけの問題なのかも。まあ、Destroyしないで

MessageDisplay.gameObject.SetActive(false);

みたいな感じにしたら問題は起きなくなったので良いか。

何はともあれ、少なからずうちの環境でまたこれが起きたら、Destroyしたオブジェクトを触ろうとしていないかを疑えばいいのかな。


設定ダイアログ

そう言えば、ボタン用のテクスチャをコード内で作成するようにしようとして結構時間を費やしてしまったのを思い出した…(ヽ’ω`)

頑張った割にアンチエイリアスとかが上手く出来ていないのでアレな出来になってしまった。いずれもう少しブラッシュアップしたいところではあるが…

ゲームプレイ中に効果音とBGM、オーバーレイ表示を切り替えられるようにした。これも元々のコードがそんなことを想定していない感じで書いていたので、直すのに苦労した(ノ∀`)

切り替え用UIにはToggleを使用したが、大きさを変えるとチェックボックスが消えた(´・ω・`) 何処を設定すれば表示されるかは解らず、まあこのままでもいいかと放置w GUIContent等を利用してアイコンにノーチェック時とチェック時の画像をセットすればいいだけなのかもしれないけれども、そこまでチェックボックス自体は重要ではないかなと思ったので。


得点演出

カードがマッチした後に何にもないと寂しいので得点時演出を追加する。と言っても、得点とコンボ数、コンボ内容に応じた褒め言葉が上に上がって消えるだけ(ノ∀`)

得点体系がいまいちしっくり来ないのでこれも直さないとな。まあでも、正直なところ、この神経衰弱ゲームにおける得点という要素はあくまでもおまけなのでそんなにこだわらなくても良いような気がしないでもないw


得点結果

一応、得点結果の表示をするようにもした。得点もカウントアップするけれども、ちょっと時間を調整しないとすぐに終わってしまうな(´・ω・`)

色とかもどうしようかなぁ…(´・ω・`)


設定画面にしろ、得点時演出にしろ、痛感したことは

俺氏、この手のことに
ガチでセンスがねぇ( ;・´ω・`)ゴクリッ

思いっきり時間をかければ、いくらかはマシになるかもしれないけれども、パッと出せる俺氏のセンスではこんなのが精一杯だw なんつーか「ゲームってこーいう風だよね(・∀・)」って頭で、センスではなくロジックで作ったという感じの出来(ノ∀`)

まあこの辺は今は措いておくしかないw
この神経衰弱の本当の狙いはゲームとしての楽しさではなくもっと消極的時間潰しだし、習作故にゲームに必要な要素を一通り舐めることが目的なので、この辺は今は切り捨てておく。

本当は6月中に機能を全部載せて、7月にカードコンテンツを増やしてリリースするつもりだったが、PCに色々あったり、暑くなり死にかけ始めているので思うように進んでいない…_| ̄|○