チャックブログ

UnityやC#などをメインに公開していきます。C++も勉強始めました!

【Unity】全てのGameObjectについているタグの中から指定した文字列の一部でもあれば取得する方法

初めに 知恵袋にて「FindGameobjectsWithTagのような指定したTag名のオブジェクトをすべて取得するのではなく、指定した文字列が含まれているオブジェクトを取得する関数はないの?」という質問がありました。 自分もそういえば考えたことがなかったのでどう…

【Unity】事前に決めた座標を行ったり来たりする方法

行ったり来たりする処理 身近で行ったり来たりする処理どうする?的な話題になったので自分なりに考えた処理 サンプルコード [SerializeField, Header("移動速度")] float speed = 5; [SerializeField, Header("感知できる距離")] float range = 0.5f; [Seri…

【C++】値渡し、ポインタ渡し、参照渡しについてと自分が陥った穴

C++

注意 この記事はC++初心者がインプットしたものをアウトプットしたものなのでもしかしたら間違いがあるかもしれませんご了承ください。 値渡し サンプルコード void test(int num) { num++; std::cout << num << std::endl; } int main() { int value = 1; s…

【Unity】Unity2019 2DLight実装方法

Unity 2DLight Unity2019

【C++】テンプレート完全に理解したぃ

初めに C++のテンプレートを触ってみたい、テンプレートってなに?って人向けの記事となっています。 (ぶっちゃけ自分も最近知ったものなので完璧ではないような気がします) 例えば こんな関数があったとします int Add(int a,int b) { return a + b; } floa…

アクセス修飾子のおさらい

初めに 最近他人(プロ)のコードを見る機会があったのですが普段自分が使わないアクセス修飾子が見えて「あれ?これなんだっけ?」となったので改めおさらいを込めて記事にします。 (Unityで実験しています) サンプルコード1 public class test : MonoBehavio…

【C#】delegate(デリゲート)とevent(イベント)

初めに 「delegate?event?なにそれ…」「名前は聞いたことあるけど使ったことない」という人向けの記事です。 (Unityでテストしています) delegateってなに? delegate(デリゲート)はメソッドを参照するための型です、C言語やC++言語やったことある方なら関数…

【Unity】簡単にFadeIn,FadeOutを実装

UnityでFadeIn,FadeOutを簡単に実装

【Unity】Gameビューにグリッドを表示

UnityのGameビュー上にグリッドを表示させる方法。

【Unity】三角関数で円運動

Script [SerializeField, Header("半径")] float radius; [SerializeField, Header("θのやつ")] float rotation; void Update() { TrigonometricFunction(); } void TrigonometricFunction() { transform.position = new Vector3(Mathf.Sin(rotation), Mathf…

【Unity】円形状の移動制限のかけ方

Script ```C#:test public GameObject centerObj; //中心となるオブジェクト(ゲームオブジェクトじゃなくても中心点がわかればOK) [SerializeField, Header("半径")] float radius; [SerializeField, Header("速さ")] float speed; // Update is called once…

【Unity入門】Scene遷移しても値を保持する方法

*一番簡単に実装するなら 一番簡単にこの機能を実装するならStaticClassを作るのが一番楽だと思います。 *StaticClass public static class test { public static int num; static float fl; static string str; static char ch; public static void SetInt(…

【Unity】3D座標を2D座標に直す方法

*3D座標を2D座標に変換 オブジェクトのxとyの値だけを使えばそれは2Dの座標なのでは?と最初自分は思っていましたがCameraの位置や角度を変えるとうまくいかなくなるのでそれらに対応したものを作っていきましょう。 *Script公開 public GameObject obj; //3…

【Unity】なぜGetComponentを毎フレーム取得することが推奨されていないのか

*毎フレームGetComponent よくGetComponentは毎フレームやることはよろしくないという話を聞きますがなぜダメなのでしょうか? *試してみよう! 今回は二つのScriptを用意しました 片方は先にComponent取得してから10万回Transform.positionにvector(0,0,0)…

【Unity】RenderTextuerからTextuer2DへしてからSpriteに変換

*前回記事にしたRenderTextuerからTextuer2Dの応用です。 tilyakuda.hateblo.jp *前回公開したScript //このScriptはMainCameraにアタッチしてください public RenderTexture renderTexture; //mainCameraにつけるRendertexture(アタッチしてね) public Text…

【Unity】RendererTextureからTexture2Dの作り方

今回やること Cameraで描画されているものをTexture2Dに変換させる。 用意するもの RendererTexture (ProjectWindowで右クリック > Create > RendererTextureで作成可能) Camera Script //このScriptはMainCameraにアタッチしてください public RenderTextur…

【Unity】何かを動かす時に必ずやるべきこと

今回やること Unity上でオブジェクトを動かしたりする時にやっておくべきことをご紹介します。 例えば 1秒間にX座標60移動させるとします。 { transform.position=new Vector3(0,0,0); void Update() { transform.position += new Vector3(1,0,0); } } これ…

【Unity】簡単なセーブとロードの方法{ランキング編}

今回やること 前回やったUnityで簡単なセーブとロードの方法でやったPlayerPrefsを用いて簡易的なランキングを実装しようと思います。 仕様 一度ゲームを閉じてもデータが保持される 高い点数を取得したらランキングを更新する これらを実装して組んでいこう…

Unityで簡単なセーブとロードの方法

セーブ方法 Unityでセーブorロードを実現するのであれば一番楽なものはPlayerPrefsが最も楽だと思います。 Unity PlayerPrefsのリファレンス 例 PlayerPrefs.SetInt("HP" , 10); PlayerPrefs.SetFloat("MP" , 10.0f); PlayerPrefs.SetString("名前","Unityち…