Deff_Dev

[내배캠 Unity 4기] 사전 캠프 4주차 본문

부트캠프/내배캠 Unity 4기

[내배캠 Unity 4기] 사전 캠프 4주차

Deff_a 2024. 3. 22. 17:30

 

사전 캠프  4주차 프로젝트는 간단한  '카드 뒤집기' 게임이다.

 

게임 플레이

 

게임의 목표는 뒤집혀 있는 카드들 중 2장의 카드를 뒤집어, 같은 그림의 카드를 30초 안에 모두 찾는 것이다.

 

새롭게 알게된 점

OrderBy()를 이용한 셔플 로직, 리소스 불러오기 등 새로운 접근법에 대해 배웠다.

 

셔플 

OrderBy() 함수를 이용하기 위해선 Using System.Linq를 선언해야 한다.

Linq는 C# 언어에서 쿼리 기능을 사용하는 것으로 데이터를 빠르고 편리하게 추출 및 처리 할수 있다.

 

Linq == (SQL + 람다식)

 

해당 강의에서는 Linq의  OrderBy()를 이용해 카드를 셔플했다.

        arr = arr.OrderBy(_ => Random.Range(0, 8)).ToArray();

 

 

OrderBy() 함수는 요소를 특정 기준으로 정렬 하는 함수로,

여기서는 Random.Range(0, 8)를 사용하여  0부터 7까지의 랜덤한 숫자를 생성하고, 이를 기준으로 정렬을 하기 때문에 카드 셔플 기능을 한다.

 

리소스 불러오기

Resources 폴더를 만들어 그 안에 불러올 리소스들을 저장하고 스크립트에서 불러와 카드에 이미지를 넣었다.

 

Resources.Load<리소스 형식>("리소스 이름");

 

사용한 코드

rtanImage.sprite =  Resources.Load<Sprite>($"rtan{idx}");

 

 

느낀점

오늘도 프로그래밍은 끝없이 다양한 방법으로 접근할 수 있다는 것을 깨달았다.

 

특히 Linq에 대해 찾아보면서 코드를 더 효율적으로 작성하는 방법에 대해 알게됐고, 따로 자세하게 공부해야겠다고 생각했다.