読者です 読者をやめる 読者になる 読者になる

いんでぃーづ

個人でゲーム開発してる上で吸収したモノたち紹介。UnityからGIMPまでなんでも。デザインとかゲーム論まで語っちゃうよ的なアレ。

MENU
{スポンサーリンク}

uGUIのサイズを変えたときに赤いバッテンが出る理由 : Unity

GUIのPanelのサイズをいじってるときに、赤いコンニャロウに会ったことはありませんか。 これはアンカーが離れていると発生します。

Unity : アプリ内ストアを最小限のスクリプトで実装する

Unityのアプリ内購入は、コードをほとんど書かずに実装することができます。

Unity : 二種類の StandardShader の違い

Unity5で鳴り物入りで追加されたStandardShader ですが、みなさん使いこなせているでしょうか。 一口に StandardShaderと言っていますが、このシェーダーは実は二種類あるんです。

AndroidプラグインからUnityの関数を呼び出す - UnitySendMessage

以前の記事でAndroidのプラグインの関数を呼び出す方法を書きました。 逆にAndroidからUnityのメソッドを呼び出したい場合、もう一手間必要となります。

C#のEnumのtips

System.Enum クラス のメソッドを使うことで、いろいろ便利なことができます。

Unityで使用できる3Dモデルファイル

Unityではいろいろな形式の3Dモデルファイルに対応していて、そのほとんどが ドラッグ&ドロップ のみでインポートできます。 ソフトウェアに依存するファイル形式 .mb .ma .blend .3ds .max .c4d ソフトウェアに依存しないファイル形式 .fbx .obj 番外:MMD

Unity : ゲーム画面にAdmobを表示する一番かんたんな方法

Admob表示させるだけなら、アセットなんて買わなくたってできます なにせ本元GoogleさんからUnity用のプラグインが出ているのである。 github.com なお、すでにAdmobのアカウントは取得済みで、広告も作成済みとします。 Unityプラグインを導入してみる まず…

Unity : Android向けビルド時にエラーダイアログが出たらJDKのバージョンかも

Androidビルド時に下のようなダイアログが出たら、 Unable to convert classes into dex format. See the Console for details. と出た場合はまずコンソールのエラーログを見ます。 対象のエラーをタップすると、その下に詳細エラーが出ます。 この欄に Unsu…

UnityのHTTP通信クラスがいろいろできて便利

UnityにはHTTP用の WWWクラス が用意されています。 このクラス、ダウンロードしたデータを 各種コンポーネントで使えるように自動変換 してくれるスグレモノなのです。

Unity : Android向けにビルドするまでの最短手順

UnityからAndroid用にアプリを書き出す際の手順をまとめました。 実機インストール用のビルド設定です。(シミュレータではない)

Unity Ads でテスト用広告しか表示されなくなってしまった場合

UnityAdsでは、広告表示メソッドの第二引数に true を指定することで、テスト用の特殊な広告を表示させることができます。 Advertisement.Initialize("XXXxxxxx", true); が、falseにしてもテスト広告しか表示されなくなってしまうケースがあります。そのま…

Apple Developer Programに登録する

UnityでiPhone用のゲームを作ったら、ぜひともAppStoreで公開したいですよね。 そのためにはまず、Appleのサイトから Developer Programに登録することが、アプリ公開の第一歩となります。

Unity : iOS実機デバッグまでの必要最低限の作業

AndroidではUnity上から即ビルド&実機インストールまでできるんですが、iOSはそういきません。 今回(ほぼ)はじめてiOSビルドに挑戦したので、やったことをまとめました。

Unity : ロード済みシーンの切り替えを一定時間待つ

普通にシーンをロードしてしまうと、完了した瞬間に新しいシーンに切り替わってしまいます。 たとえば、バックグランドでシーンをロードしつつ、少なくとも1秒以上はなにかしら画像を表示したい、というとき 今回紹介するテクニックを使ってみてください。

Unity : プロジェクトに埋もれたアセットを一瞬で探し出す方法

スクリプトやらプレハブやらが増えてくると、プロジェクトから探し出すだけで一苦労になったりします。 今回はそんなときに迷わずにすむ、ナイスな機能をご紹介。

Unity : モバイルでのスワイプ、ドラッグ入力量を補正する

モバイル向けに作っていると割と困るのが、Input.touchesで取得した入力位置です。 これは Screen.width, Screen.height の大きさに依存するので、解像度が違う端末でのインタラクションがまちまちになってしまいます。 例えば解像度 1920x1080 の端末で1セ…

Unity : 不要なアセットを削除して、プロジェクトをスリムに保とう

先日 Unity5.4 が正式にリリースされ、さっそく導入した方も多いとおもいます。 その場合、もちろん既存プロジェクトを再インポートすることになると思いますが、使っているアセットが多いとむちゃくちゃ時間がかかりますよね。 モデルやテクスチャのアセッ…

Unity : モバイル端末のコンパスを使うときに気をつけること

Android, iOS 端末では、端末についているコンパスを使うことができます。 ただ、マニュアルを見てると値がいろいろあって、ナンノコッチャ結局どれ使えばいいの、って状態になったので、少し調べてみました。

NavMeshObstacleを避けて移動してくれない場合

NavMeshObstacleを配置してもNavMeshAgentが回避せず突っ込んでしまう場合、Carveオプションをチェックします。 Carveとは英語で「切る、刻む」という意味で、シーンに焼き込んだ NavMesh を切って穴を開けるという意味で使っているようです。 NavMeshObstac…

Unity : Image と RawImage は何が違うのか

GUIで画像を貼り付けたい時、ImageコンポーネントとRawImageコンポーネントでどっちを使うか迷ったりしませんか? 無駄に悩む事がないよう、しっかり違いを把握しておきましょう。

GIMPでテキストにグラデーションをかける

ロゴとか作るときにテキストにグラデーションかけたい場合。

Unity : ログ機能を便利に使う

デバッグ用にログ出したい! ってときに、 Debug.Log(“これはログです"); で済ませてませんか? Unityのログ機能を使いこなして便利に開発を進めましょう!

Unity : Enum型をシリアライズ保存するときのコツ

Enum型使ってますか? 変数の状態を直感的に記述できていいですよね。

Unity : ScriptableObjectを書き出すウインドウを自作してみた

ScriptableObjectについて書いたのですが、いまいち使いづらいところがあります。 なによりなんとかしてほしいのは、作り方がめんどくさいこと! ということで、ScriptableObjectを出力してくれるスクリプトを自作しました。

Unity : 不変データはScriptableObject を使って管理するとドヤ顔できるかもしれない

敵の攻撃力や防御力など、「ゲーム全体で共通かつ不変」なデータを持たせたい場合は数多くあります。 そんな時つい、やってしまいがちなのが、プレハブ自体に値を持たせる方法。 こんなふうに持たせてしまうと、Instantiateするたびにこれらの変数がメモリに…

Unity : 3Dシーン内のCanvasが邪魔

Canvasを配置すると、シーン内に3Dオブジェクトと一緒に表示されるようになります。 そしてなぜかこのCanvas、むちゃくちゃ大きいオブジェクトとして表示されてしまいます。

Unity : NavMeshAgentで、これから通る経路を描画する

ゲームの効果として、キャラクターがこれから通る道を線で描画してみるなど。 経路の描画で使用するのはLineRendererです。

Unity : WheelColliderを初めて使うときにつまずくこと3つ

私は車の運転が苦手です。 だからせめてゲームの中では得意でいたい。 あわよくば峠を攻めたい... そしてUnityでWheelColliderを使うことをふと思い立ちました。嘘です。 使ってみたらつまづいたことをメモ。

UnityでJSONを扱う [C#]

最近はJSONを扱うためのクラスが用意されてるんですよねー JSON文字列からデータを取得する場合 1. データを用意する 今回はWebサーバからJSONを取得してみます。 http://hogehogehoge/hoge.json というアドレスから以下のようなJSONが取得できるとします。

Unity : AnimationClipに合わせて処理をしたいなら

ジャンプに合わせて効果音をならしたり、足元に煙を出したい! 私はしたい。 そんなときに役立つのがアニメーションイベントです。 アニメーションイベントとは アニメーションの途中のある地点で、スクリプトに設定した関数を呼び出せる機能です。 この動き…

Unity上で3Dアニメーションを編集する - Animationウインドウ

3Dアニメーションはモデリングソフトで作ってからUnityに読み込まなくちゃいけねい と思ってるそこのあなた! いや、奥さん! むしろJKのお嬢さん!(願望) 実はUnityでアニメーションの作成や、アセットストアから買ったアニメーションの編集ができちゃう…

Unity : アニメーションとGameObjectの位置を同期させたい時に気をつけること

Mecanim(AnimatorController)はNavMeshAgentやCharacterControllerと一緒に使うケースがほとんどではないでしょうか。 その場合についてまわるのが アニメーションに合わせてGameObjectのTransformを移動するか という問題です。 思ったとおりの動作をさせる…

Unity : アセットのAnimationClipを編集する

3Dモデルのアニメーションで 「腕の角度が足りない!」とか「もっと逸れ!」とか思うことが、まれにあると思うんですよ。 そんな時に既存Assetのアニメーションを編集する方法をお教えします。 アセットからAnimationClipだけ抜き出す 3Dモデリングソフトから…

Unity : C#のファイルが大きくなりすぎるのを防ぐには

開発を進めていくうちに、一つのファイルの行数が肥大化していくのは経験したことがあるとおもいます。 そんなときにC#でクラスを複数ファイルに分割して記述する方法があります。

UnityでAndroid 端末の正確な傾きを取得したい→とりまCardboardSDK使えばいけるよ

*CardboardSDKはGoogle VR SDKに名前が変わりました Androidで端末の傾きを取りたいとき、思いのほか苦労します。 Input.gyro などUnity単体のジャイロセンサーでとれる値は、どうやってもズレが発生してしまうようです。 GoogleのVR用デバイスCardboard用…

Unity : Clothコンポーネントでユニティーちゃんのスカートをひらひらさせる

今回は布や旗、はてはスカートまで、ひらひらしたものを表現したい場合に使うClothコンポーネントの基本的な使い方をまとめます。 ただ普通にまとめても実際のゲームでどう使うかわかりづらいと思うので、この子に手伝ってもらいましょう。 ユニティーちゃん…

ビルド時にエラー:Unable to convert classes into dex format

今回は完全に自分用の覚書です。 UnityでAndroid用ゲーム作ってネイティブ用の機能を使いたいときは自分は下のアセットを使っています。 Android Native Plugin https://www.assetstore.unity3d.com/jp/#!/content/10825 このアセット、ちょっとダイアログ出…

デバッグに便利な UnityEngine.Assertions

Unity5.1 で UnityEngine.Assertions ネームスペースのクラスが追加になりました。 ゲームを動かしながら値の正当性をチェックできる便利な機能です。

Unity 5.1 変更点

先日 Unity5.1 がリリースされたので、リリースノートをチェックしました。 http://unity3d.com/unity/whats-new/unity-5.1 箇条書き気味だけど許してね(thpr)

Unity5の Lighting ウインドウの見かた ~GI編~

indie-du.com 前回は環境光とライトマップの設定を見ていったので、今回は目玉機能のGIの設定を見ていきます。(とか言いながらライトマップ自体の設定もちょっと出てきます。ここらへんが Lightingウインドウのよくわからんところです。。)

Unity5の Lighting ウインドウの見かた ~基本編~

Unityのライティングシステムは非常に強力です。 ライティングウインドウでは環境光、ライトマップ、GI、フォグなど多彩な設定を行えます。 Unity - マニュアル: ライティングウィンドウ

Gem Shader を Unity5 で使う

最新のGem Shaderでは専用の FX/Gem というシェーダーを使っているため、ここで書いた方法を使わなくてもより綺麗な宝石になりましたこの Gem Shader というアセットGem Shader - Asset StoreUnity が出してて、無料で良い感じの宝石オブジェクトが使えて重…

Unityのインスペクターをハックしよう:初級編

今回はスクリプトを書いたときの、インスペクタと連携を取る上でのあるあるを。 インスペクタから設定しない public 変数が邪魔

Unity : レイヤーマスク値のつくりかた

Physics.Raycast などで当たり判定を使う場合、レイヤーマスクを使うと余分な当たり判定処理を防ぐことができます。 で、レイヤーマスクを扱う方法が色々ありますよという、お話。

Unity : 衝突検出のOnCollisionEnter, OnTriggerEnter が呼ばれない、反応しない(Collision Detection)

衝突(Collisionや Trigger)検出に OnCollisionEnter, OnCollisionExit, OnCollisionStay, OnTriggerEnter, OnTriggerExit, OnTriggerStay 関数は欠かせないわけですが、これらを使うにもいろいろ制約があります。 引っかかりやすいものを挙げてみました。

uGUIのレイアウトを理解する 〜 多種解像度対応 : Canvas Scaler

前回まででRect Transform の数値の見方が分かりました。 が、アンカーの位置は相対値、要素の位置は絶対値で決めているため、画面の大きさが変わった場合に見え方が変わってしまうという問題があります。実際に見てみましょう。

uGUIのレイアウトを理解する 〜 Rect Transform編(3)

前回は、アンカーがくっついている状態でのレイアウトについて解説しました。 今回はアンカーが分離している状態でのレイアウトです。

uGUIのレイアウトを理解する 〜 Rect Transform編(2)

アンカーについての続きです。 アンカーはくっついているときと分離しているときで使い方が変わるものでした。ではそれぞれどう違うのでしょうか。

uGUIのレイアウトを理解する 〜 Rect Transform編(1)

Unity4.6 から導入された新GUIについてです。 表示画面に合わせたレイアウトなどやってくれるようになったのですが、ちゃんと使いこなすにはコツがいります。今回はその中でも基本となる Rect Transform の要素についてです。「新GUI使ってるけど配置のルー…

Invoke , Coroutine , SendMessage で文字列を使わない方法

タイトルにあげた関数は遅延処理、並列処理、オブジェクト間通信を簡単に記述できるので便利なのですが、関数名を文字列で指定して呼び出す場合は注意する必要があります。 Invoke("TestInvoke"); 上記のように書き、あとで関数の名前を変更したときに、どう…

Amazon.co.jpアソシエイト