ぱふの自由帳

ぱふの技術ブログ。メインはUnity。最近はUnity1Weekの放送してます。良ければフォローお願いします、、

Unity

Rayを飛ばすのはもう古い?!簡単にオブジェクトのクリックを検知だ!

はじめに オブジェクトのクリックを検知する際にどうやっていますか? ググったサイト見て、Ray飛ばすコード書いて...ってやってるあなたに朗報です!もっと簡単に実装できますよ! さっそく実装 まず動かしたいオブジェクト(今回はCube)を用意します。 Cu…

string型をint型に変換する【Unity】

私「文字列を整数に直すぞー。キャスト変換とか慣れたもんよ。」 int num = (int) "123"; 私「よゆーよゆー。」 Unity「Cannot convert type 'string' to 'int'」 私「...。」 というわけで文字列を整数に直す方法を紹介します。 変換方法 以下の方法で変換…

【Unity公式チュートリアル】スクリプティング〈レッスン2.1-2.18〉

この記事について 注意事項 レッスンタイトル&概要一覧 オーバーロード時、どれが実行される? new と overrideってどう違うの? ひとこと この記事について 注意事項 特に断りがない限り、C#について記述しています 私&誰かの役に立ちそうなプチ知識をまと…

publicな変数をInspectorに表示しない方法

はじめに 前回の記事《privateな変数やクラスをInspector上に表示する方法》の逆のようなことをやっていきます。 方法 その1: [HideInInspector] [HideInInspector] public int hoge = 10; 上のような使い方をするとInspector上から消えます。 しかし、注意…

privateな変数やクラスをInspector上に表示する方法

はじめに 「privateで扱いたい、でもpublicのようにInspector上に可視化したい...。気をつけながらpublic使うしかないのか...。」という方向けの記事です。 表示方法 変数 [SerializeField]を変数の前につけるだけです。 クラス [System.Serializable]をクラ…

【Unity公式チュートリアル】スクリプティング〈レッスン1.13-1.28〉

この記事について 注意事項 レッスンタイトル一覧 n秒後にDestory GetKey と GetButton OnMouseDown 値型と参照型 値型 参照型 Invoke系まとめ Invoke(string methodName, float time) InvokeRepeating(string methodName, float time, float repeatRate) Ca…

【Unity公式チュートリアル】スクリプティング〈レッスン1.8-1.12〉

この記事について 注意事項 レッスンタイトル一覧 Awake()に注意 Start()の実行タイミング ベクトルのプチまとめ 長さ 内積 外積 enable と SetActive() activeSelf と activeInHierarchy ひとこと この記事について 注意事項 特に断りがない限り、C#につい…

【Unity公式チュートリアル】スクリプティング〈レッスン1.1-1.7〉

この記事について 注意事項 レッスンタイトル一覧 スクリプトの作成とアタッチ方法 作成方法 アタッチ方法 デフォルトのアクセス修飾子 public修飾子の罠? ひとこと この記事について 注意事項 特に断りがない限り、C#について記述しています 個人的に知ら…

【Unity公式チュートリアル】インターフェースと基本〈Unityのインターフェース〉@ヒエラルキーウインドウとオブジェクトの親子関係 編

ヒエラルキーウインドウとは シーン内に存在するオブジェクトを追加された順に表示、かつ親子関係も階層的に表示する。また、以下の機能を持つ。 表示順番は任意に変更することが可能 ヒエラルキーウインドウからオブジェクトの削除や複製も行うことが可能 …

ゲーム再生中のエディタの色を変更する方法【Unity2017.1】

はじめに 今回は下の画像のようにエディタの色を変える方法です。 再生中ってことを視覚的に理解する助けになりますよ〜。 やり方 メニューバーからUnity → Preferencesを選択(Macであれば "commnd" + "," でも可)します。 ウィンドウが開いたら下画像の赤…

【Unity公式チュートリアル】インターフェースと基本〈Unityのインターフェース〉@ゲームビュー 編

ゲームビューとは ゲーム内のカメラから見たものをレンダリングする。最低でも1つ以上のカメラが必要となる。再生 / 一時停止 / 1フレーム送り は以下のボタンで行う。 なお、再生中に変更した内容は再生を終えると再生前の内容に戻る。 ゲームビューコント…

【Unity公式チュートリアル】インターフェースと基本〈Unityのインターフェース〉@シーンビュー 編

シーンビューとは ゲームを視覚的に構築することが可能なインターフェース 操作方法 下の画像にあるボタンで操作方法を切り替えます。画像下部の文字はキーボード上の該当キーで切り替えが行える英字を示しています。 Hand Tool 左クリック+ドラッグ:シーン…

【Unity公式チュートリアル】インターフェースと基本〈Unityのインターフェース〉@インターフェース概要 編

Unityのインターフェース紹介 メインとなるパネル Unityのインターフェースは "Scene View / Hierarchy / Game View / Project / Inspector" の5つのパネルで構成されている。 Scene View:ゲームを視覚的に編集可能 Hierarchy:シーン上のオブジェクトを階…

【Unity公式チュートリアル】ブログ更新がんばるぞい!

お知らせ・・? 「ブログを毎日更新したい!」と熱いあの思いはどこに行ってしまったんだ...「更新内容がない」とかいろいろ文句をつけている現状....と言うわけでUnityの公式チュートリアルを見てまとめていこうかと思います。 公式チュートリアルって皆さ…

OnCollisionExit2D()はDestroyでも呼ばれるのか

はじめに 2Dのことだけしか調べてません(`・ω・´) ”多分”3Dでも一緒じゃないかなー。ってことなんで、誰か実際に調べて結果だけください。 本題 悩み OnCollisionExit2D()という関数はTriggerではないCollider同士が接触から離れた際に呼び出される関数です…

Scene画面で移動したオブジェクトが自動で中心にくる方法

はじめに またタイトルだけでは「?」ですね。 というわけで動きを下に示しておきますー。 結構役に立ちそうですね! 「こういった場面に使えるよ!」とハッキリ断言できませんが(笑) やり方 オブジェクトを選択して《shift+F》 はい!とても簡単です(`・…

Scene画面でオブジェクトをある単位ずつずらす方法

はじめに タイトルだけでは「?」が浮かぶ方もいると思いますので... こういう動きのことでーす。 何かを均等に並べる時に便利です。例えば、2DのSpriteを等間隔に並べてマップを作る時に使えたりしますヨ。 ちなみにですが、この移動方法は"Snap"という名前…

【unity2017】Animationで設定した値を相対的な値として扱う方法

はじめに Animtionの使い方は ”unity Animation 使い方” で素晴らしいサイトが沢山ありますのでそちらを参考にしてください!今回はAnimationの小技(?)の話です。 「前置きはいいから、解決方法だ早く教えて!」という方は《解決したいこと》を読み飛ばして…

Actionを使おうとして「あれ?エラー...?」となった話

はじめに 現環境でもActionを使うのが良いのか分かりませんが、Action使ってみたい!と思った時に少しだけ時間を無駄にしたのでメモ。 メイン 「コルーチンとAction組み合わせてみよう!Qiitaに良き記事があるね。良きかな良きかな。」カキカキ using System.Col…

Admobの動画広告を連続で表示したい

はじめに 「Admobの動画広告を何度も表示させたい!でも、公式サイトのサンプルのままじゃ1回しか読み込めない…」ということがあったのでメモついでの記事になります。 もっとスマートな方法があると思いますが…ネ 実装 細かいAdmobの使用方法は以下のサイ…

DateTimeを文字列から生成する

はじめに 文字列のセーブは出来るけどDateTime型をセーブでが出来ない!そんな場面に出くわしたのでDateTime→文字列や文字列→DateTimeに変換する方法をメモして置きます。 変換方法 DateTime→文字列 ToString()を使用するだけですー。下のような感じで…。 Da…

型変換メソッドのConvert.ToXXX() を使用する

はじめに 型変換であるConvert.ToInt32()やConvert.ToBoolean()を使用する時に少しエラーを出してしまったので使い方メモです 使い方 using System; を追加してからConvert.ToXXX()を実装しましょう。 おわり ググればすぐ見つかりますが、とりあえずメモし…

Prefab変更したのにPrefabから生成したオブジェクトが変更されない件

はじめに 「Prefabを変更することで一括で値を変えて…っと。あれ?反映されない…(´・ω・`)」という実話を元に作成しました(笑 理解してしまえば当たり前のことだったので、内容は入門者向けです。 注意:D&Dという用語を多用しますが、ドラッグ&ドロップの…

【unity2017】コライダーを1つ持ったオブジェクト同士の反射をスクリプトで実装する《2D》

はじめに おはこんばんにちは。ぱふです。今回はタイトルの様な事を行なっていきたいと思います。今回はタイトルに書いてあることを実装していきます。今回は様々な方の意見を頂きつつ実装に至りました。私一人では解決しなかったと思うので未来の誰かの参考…

キャスト演算子とas演算子の違い

データ型を変換する方法としてキャスト演算子やas演算子があります。 この二つの違いがあやふやな方からすると、intからfloatに変換する際には以下のように書く方法を思いつくんじゃないでしょうか。 int hoge = 1234; float s1 = (float)hoge; int piyo = 1…

型を取得する

typeof()とGetType()って何が違うんじゃと思ったら全然違ったので、誰かの役に立てばと思って記事に残しておきます。 何が違うの? typeof() 「型の情報」型(Type型)のインスタンスを生成します。 GetType() インスタンスの型を取得します。 GetType()の使…

Time.timeScaleの効果について

連投3つ目です。毎日書いてる風にしようかと思ったんですが面倒なので一気に投稿します。今回はTime.timeScaleを簡単にまとめます。 Time.timeScaleについて ゲーム内の時間を操作することができます。Time.timeScale = 0であるとゲーム内の時間が止まりま…

ToStringの時に数値の表示桁数を指定する

ちょっとハマったのでメモです。 float hoge = 12.345f; hoge.ToString("f1"); このようにすることで 12.3と表示されます。

OnApplicationPauseとOnApplicationQuitについて

どうもお久しぶりです。久しぶりの記事の投稿になってしまいました><。 今回はOnApplicationPause(bool)とOnApplicationQuit()を分かっている範囲で簡単に記事にまとめておきます。 OnApplicationPause(bool) アプリケーションが停止された際に呼び出され…

クリックで一番上にあるオブジェクトだけを取得する

概要 「重なっているオブジェクトの一番上を取得したい…!」「UIをクリックした際にUIと重なっているオブジェクトが反応しないようにしたい!」という方に役に立つかもしれません。 以下のような動作をするように実装していきます! 実装 1.適当なオブジェク…