우선 project뷰를 통해 Graphics 폴더에 있는 Backgrounds 폴더에 desert-background 이미지 파일을 선택합니다. 그 다음에 배경이미지의 Inspector 뷰에서 Texture Type을 Texture로 바꿔주고, Wrap Mode를 Repeat로 바꿔주고, Filter Mode를 Point로 바꿔줍니다.
그 다음에 Scene 안에다가 3D 오브젝트인 Quad를 생성해줍시다.
그리고 이 Project에 3D 오브젝트를 위한 Material(재질)을 관리하기 위한 폴더인 Materials라는 폴더를 만들어 줍시다. 그리고 Material을 하나 생성해 줍니다. 그리고 Material을 선택해서 Inspector 뷰에서 Shader를 Particle/Alpha Blended로 변경해 주고, 우측 아래의 select를 클릭해서 아까 만든 Texture를 선택해 줍니다.
그리고 BackgroundRepeat 스크립트를 생성해서 배경을 움직이기 위한 코드를 만들어 봅시다. 그리고 다음과 같은 설명에 따라 코드를 작성해 줍시다.
이제 Quad의 Inspector 뷰에서 아까 만든 Material과 Script를 적용해줍니다. 마지막으로 게임을 실행해 보고 결과를 확인합니다. results matching ""No results matching ""2D 게임에서 캐릭터가 달리거나 점프를 해서 아이템을 획득하는 등의 플레이를 진행할때 배경이 무한대로 지나가는 모습을 구현할 수 있습니다. 시간차를 주어 각각의 배경레이어를 각기 다른 속도로 조절해서 좀더 입체적인 배경을 만들 수 있습니다. #무한반복배경 #무한스크롤링배경#유니티기초강좌 Mathf.Repeat(value, max); Mathf.Repeat()는 일정 범위 내에서 값을 반복(순환)시키고 싶은 경우 사용. value 값은 0보다 작을수 없고 max값보다 클수 없다. 반드시 0 ~ max 범위의 값이 반환. Mathf.Repeat(3, 10)은 0 ~ 10 범위내에 있으므로 3을 반환. Mathf.Repeat(12, 10)은 Max범위를 넘은 만큼인 2반환(12 - 10 = 2). Mathf.Clamp(value, min, max); Mathf.Clamp()는 value값을 최소값(min)에서 최대값(max)범위 내에 강제로 넣기 위해 사용. value 값이 min ~ max 범위 안에 있을 때는 그대로 값이 반환. value값이 min보다 작을 때는 min이 반환되고 max보다 클 때는 max가 반환된다. [RepeatBG.cs]
[N-Cube채널] www.youtube.com/channel/UCu48WEd7-leQbXoKiA_QM0w?sub_confirmation=1 엔큐브 스튜디오 [N Cube Studio] www.youtube.com |