facebook twitter hatena line email

「Unity/Cinemachine/2D」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(2Dでの対応)
行8: 行8:
 
*ChinemachineVirtualCameraのAimをDo nothingになってることを確認。
 
*ChinemachineVirtualCameraのAimをDo nothingになってることを確認。
  
プレイヤー操作サンプル
+
プレイヤー入力操作のための適当なサンプル
 
<pre>
 
<pre>
 
void Update()
 
void Update()

2022年1月4日 (火) 12:40時点における版

2Dでの対応

基本的にBodyがFramingTransposerであること以外、3Dとかわらない。

  • MainCameraのInspectorから、AddCompornentして、CinemachineBrainを追加する
  • UnityメインのCinemachineのCreate 2D Cameraを追加する
  • 追っかけるPlayerImageオブジェクトを作って、ChinemachineVirtualCameraのFollowとLookAtへ、それを追加する
  • ChinemachineVirtualCameraのBodyがFramingTransposerになってることを確認。
  • ChinemachineVirtualCameraのAimをDo nothingになってることを確認。

プレイヤー入力操作のための適当なサンプル

void Update()
    {
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            playerImage.transform.localPosition = new Vector3(
                playerImage.transform.localPosition.x - 1,
                playerImage.transform.localPosition.y,
                playerImage.transform.localPosition.z);

        }
        else if (Input.GetKey(KeyCode.RightArrow))
        {
            playerImage.transform.localPosition = new Vector3(
                playerImage.transform.localPosition.x + 1,
                playerImage.transform.localPosition.y,
                playerImage.transform.localPosition.z);
        }
        else if (Input.GetKey(KeyCode.UpArrow))
        {
            playerImage.transform.localPosition = new Vector3(
                playerImage.transform.localPosition.x,
                playerImage.transform.localPosition.y + 1,
                playerImage.transform.localPosition.z);
        }
        else if (Input.GetKey(KeyCode.DownArrow))
        {
            playerImage.transform.localPosition = new Vector3(
                playerImage.transform.localPosition.x,
                playerImage.transform.localPosition.y - 1,
                playerImage.transform.localPosition.z);
        }
    }