はとの豆知識

Unityを中心に手っ取り早い機能の実装を紹介します。

Python初心者がVSCodeで環境構築してnumpyをインポートするまで

Pythonの勉強を始めようと重い腰が上がったので、最初の開発環境の構築について書きます。
(プログラムを書くまでの開発環境構築が激しく嫌いなのでメモもかねて。)

  • VSCodeをインストールする
  • Pythonをインストールする
  • pipでnumpyをインストールする
    • pathを通す
    • numpyをインストール
  • コードを書いてみる
続きを読む

【Unity】正の値、負の値に応じて、絶対値を返す「Mathf.Abs」符号を返す「Mathf.Sign」

正の値、負の値に応じて値を返してくれるMathf(数学関数クラス)の備忘録です。

手っ取り早い確認方法

    private void Start()
    {
        Debug.Log("Mathf.Abs: " + Mathf.Abs(100));
        Debug.Log("Mathf.Abs: " + Mathf.Abs(-100));
        Debug.Log("Mathf.Abs: " + Mathf.Abs(0.01f));
        Debug.Log("Mathf.Abs: " + Mathf.Abs(-0.01f));
        Debug.Log("Mathf.Abs: " + Mathf.Abs(0));
        Debug.Log("Mathf.Sign: " + Mathf.Sign(100));
        Debug.Log("Mathf.Sign: " + Mathf.Sign(-100));
        Debug.Log("Mathf.Sign: " + Mathf.Sign(0.01f));
        Debug.Log("Mathf.Sign: " + Mathf.Sign(-0.01f));
        Debug.Log("Mathf.Sign: " + Mathf.Sign(0));
    }

f:id:HatoHatter:20210627213649p:plain

絶対値を取得できる「Mathf.Abs」

上の実行結果で「Mathf.Abs」は数値の絶対値を返してくれています。

符号を取得できる「Mathf.Sign

上の実行結果で「Mathf.Signは数値が
プラスであれば1
マイナスであれば-1を返してくれます。

【Unity】シューティングゲームの弾の生成などで使える標準搭載のオブジェクトプールを手っ取り早く実装してみる。

シューティングゲームなどで多くのオブジェクト生成を繰り返してしまうと、
CPUの処理能力に負荷をかけてしまします。
そこで今回は最近Unityに標準搭載されたオブジェクトプールを使用してシューティングゲームの一部を作成し
処理負荷を軽減してみたいと思います。


過去にブログで紹介した

スムーズに移動させる方法
【Unity】プレイヤー、オブジェクトをスムーズに移動させる方法 「transform.Translate」の紹介 - はとの豆知識

移動範囲を制限する方法
【Unity】プレイヤー、オブジェクトの移動範囲を制限させる方法「Mathf.Clamp」の紹介 - はとの豆知識

画面外に弾が出たら非表示
【Unity】画面外に出た、カメラから見えなくなったオブジェクトを検知する方法。 - はとの豆知識


これらを組み合わせて
作成します。

  • 手っ取り早い実装方法
  • 今回使用したオブジェクトプールについて
続きを読む

【Unity】画面外に出た、カメラから見えなくなったオブジェクトを検知する方法。

シューティングゲームで弾が画面外に出た時など
カメラの外にオブジェクトが出た事を検知して処理を呼びたいな~って時に使える処理の紹介です。

  • 手っ取り早い実装方法
  • OnBecameInvisible()とは
  • OnBecameVisible()とは
続きを読む