본문 바로가기

Unity

[Unity] 플레이어를 이용한 선택적 무한 배경(2)

728x90

플레이어를 이용한 무한 배경 응용(1)의 연장이기 때문에 추가되는 코드만 보여주겠다.

 

1
2
3
4
5
6
7
8
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class Player : MonoBehaviour
{
    public GameObject background;
    BackgroundScrolling[] back;

 

  • background - 백그라운드 스크롤링을 사용하는 배경들을 저장할 게임 오브젝트 변수이다.
  • back - background에 저장되어있는 BackgroundScrolling 스크립트를 저장할 변수이다.
1
2
3
4
void Start()
    {
        back = background.GetComponentsInChildren<BackgroundScrolling>();
    }

 

background의 자식들의 BackgroundScrolling을 back에 저장해준다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 void Update()
    {
        if (hInput == 1)
        {
            for (int i = 0; i < back.Length; i++)
            {
                back[i].OnRightMove();
            }
        }
        else if (hInput == -1)
        {
            for (int i = 0; i < back.Length; i++)
            {
                back[i].OnLeftMove();
            }
        }
    }

 

hInput이 1이라면 back의 OnRightMove를 실행시켜주고, hInput의 값이 -1이라면 back의 OnLeftMove를 실행시켜준다.

 

위의 코드를 전부 입력하면 플레이어가 입력하는 방향에 따라서 이동하는 백그라운드 스크롤링을 만들 수 있다.

 

결과 화면

728x90