2016-01-01から1年間の記事一覧
モバイル向けに作っていると割と困るのが、Input.touchesで取得した入力位置です。 これは Screen.width, Screen.height の大きさに依存するので、解像度が違う端末でのインタラクションがまちまちになってしまいます。 例えば解像度 1920x1080 の端末で1セ…
前回まででインスペクタに独自UIの入力フォームができました。 入力した値は保存しなければなりません。じゃなきゃ、なんのために苦労して描画したんだって話です。
前回でインスペクタに独自UIを描画する準備が整いました。 今回はOnGUIの記法について書いていきます。
エディター拡張してますか? 最近思うんですよ。エディタ拡張を自分で書くのは大事だなって。 拡張とか敷居高いなあと思ってたんですが、ゲーム開発って自作ツールが結構重要だとひしひし感じています。 拡張ってどうやるの Unityで覚えておきたい拡張方法が…
つい先日5.4がリリースされました。みなさんもうインストールしましたか? ワタシはベータからやってます。 まだ尻込みしてるあなたに向けて、変更点の要約を送ります。
先日 Unity5.4 が正式にリリースされ、さっそく導入した方も多いとおもいます。 その場合、もちろん既存プロジェクトを再インポートすることになると思いますが、使っているアセットが多いとむちゃくちゃ時間がかかりますよね。 モデルやテクスチャのアセッ…
AndroidやiPhoneの通知機能やらなにやらを使いたいときはよくあります。 アセット使えば手っ取り早いんですけど、かゆいところに届かないところもあるので、自前で用意する方法をちょろっと書いてみます。 今回はAndroidです。 Android開発やったことない人…
MonoBehaviourの各種メソッドを使う際、いつ呼ばれるのか、どういうタイミングで呼ばれるのかを把握しておかないと、思わぬところでハマる場合があります。 よく使うメソッドについて、呼び出しタイミングをまとめました。
Android, iOS 端末では、端末についているコンパスを使うことができます。 ただ、マニュアルを見てると値がいろいろあって、ナンノコッチャ結局どれ使えばいいの、って状態になったので、少し調べてみました。
NavMeshObstacleを配置してもNavMeshAgentが回避せず突っ込んでしまう場合、Carveオプションをチェックします。 Carveとは英語で「切る、刻む」という意味で、シーンに焼き込んだ NavMesh を切って穴を開けるという意味で使っているようです。 NavMeshObstac…
GUIで画像を貼り付けたい時、ImageコンポーネントとRawImageコンポーネントでどっちを使うか迷ったりしませんか? 無駄に悩む事がないよう、しっかり違いを把握しておきましょう。
ロゴとか作るときにテキストにグラデーションかけたい場合。
デバッグ用にログ出したい! ってときに、 Debug.Log(“これはログです"); で済ませてませんか? Unityのログ機能を使いこなして便利に開発を進めましょう!
Enum型使ってますか? 変数の状態を直感的に記述できていいですよね。
ScriptableObjectについて書いたのですが、いまいち使いづらいところがあります。 なによりなんとかしてほしいのは、作り方がめんどくさいこと! ということで、ScriptableObjectを出力してくれるスクリプトを自作しました。
目次 ScriptableObjectを作成する ScriptableObject のデータを設定する データを書き換えられないようにスクリプトを修正する 敵の攻撃力や防御力など、「ゲーム全体で共通かつ不変」なデータを持たせたい場合は数多くあります。 そんな時つい、やってしま…
Canvasを配置すると、シーン内に3Dオブジェクトと一緒に表示されるようになります。 そしてなぜかこのCanvas、むちゃくちゃ大きいオブジェクトとして表示されてしまいます。
ゲームの効果として、キャラクターがこれから通る道を線で描画してみるなど。 経路の描画で使用するのはLineRendererです。
私は車の運転が苦手です。 だからせめてゲームの中では得意でいたい。 あわよくば峠を攻めたい... そしてUnityでWheelColliderを使うことをふと思い立ちました。嘘です。 使ってみたらつまづいたことをメモ。
最近はJSONを扱うためのクラスが用意されてるんですよねー JSON文字列からデータを取得する場合 1. データを用意する 今回はWebサーバからJSONを取得してみます。 http://hogehogehoge/hoge.json というアドレスから以下のようなJSONが取得できるとします。
タイトルのエラーはWebPlayerとしてビルドしたスタンドアロンアプリか、WebPlayer向け設定の状態でエディターで実行すると発生します。 メニューの File → Build Settings を開くと次のようになっているはずです。
ジャンプに合わせて効果音をならしたり、足元に煙を出したい! 私はしたい。 そんなときに役立つのがアニメーションイベントです。 アニメーションイベントとは アニメーションの途中のある地点で、スクリプトに設定した関数を呼び出せる機能です。 この動き…
ソースには問題ないんだけど後でちょっと直したい、という時、忘れないように"TODO"としてコメントに書き残したりしますが、それをUnityのコンソールに出すようにすればさらに忘れにくくなります。 C#のみ対応です。 #warning output warning Unityのコンソ…
3Dアニメーションはモデリングソフトで作ってからUnityに読み込まなくちゃいけねい と思ってるそこのあなた! いや、奥さん! むしろJKのお嬢さん!(願望) 実はUnityでアニメーションの作成や、アセットストアから買ったアニメーションの編集ができちゃう…
2019/01/15更新 - 利用環境:Unity2018.3 Mecanim(AnimatorController)はNavMeshAgentやCharacterControllerと一緒に使うケースがほとんどではないでしょうか。 その場合についてまわるのが アニメーションに合わせてGameObjectのTransformを移動するか とい…
3Dモデルのアニメーションで 「腕の角度が足りない!」とか「もっと逸れ!」とか思うことが、まれにあると思うんですよ。 そんな時に既存Assetのアニメーションを編集する方法をお教えします。 アセットからAnimationClipだけ抜き出す 3Dモデリングソフトから…
Appleの審査に出すアプリがIPv6のみを用いた通信の対応必須になるということで、Unityで正式に対応すると発表されました。
開発を進めていくうちに、一つのファイルの行数が肥大化していくのは経験したことがあるとおもいます。 そんなときにC#でクラスを複数ファイルに分割して記述する方法があります。
最近Unityの記事を書く上で動画を配置したい場合が多いのですが、動画を埋め込むとどうしても重くなるのでアニメーションGIFを作る方法を探していました。 Macで、デスクトップで範囲を指定、ワンボタンでキャプチャ、さらに編集までできちゃう。 そんな欲望…
今回はゲームから離れ、Fabulousというアプリを紹介します。 Fabulous - Motivate Me!