Unity/Knowledge (58) 썸네일형 리스트형 객체가 충돌했을 때 회전을 가하는 방법 체크 했을 시 해당 포지션의 움직임을 제한시킴정적인 부분을 원한다면 모두 체크하면 된다 공이 휘는 이유는 컨스트레인츠 z값에 체크를 하지 않았기 때문이다 * 광고 붙이기 유니티 에드를 통해서 광고 붙이기 * 효과음 & 배경음악 넣기 Card 프리팹에 AudioSource 컴퍼넌트를 추가 AudioClip 인스턴스에 원하는 음악을 설정 스타트함수에 들어간 로직은 애드컴퍼넌트로 추가한 AudioSource 안에있는 AudioClip 인스턴스을 실행시킨다 그런데 로직을 작성한 카드 프리팹에는 배경음악을 넣을 일이 없으므로 None으로 두며 Card 스크립트에 있는 Clip 인스턴스를 통해서 효과음만 관리해주면 됄 것이다 카드를 누를때 마다 효과음을 넣고 싶다면 Play()가아닌 PlayOneShot()은 오디오 클립끼리 겹치지 않고 한 번 실행시킨다 ()안에는 변수를 넣어주고 생성된 clip 인스턴스에 효과음을 넣어주면 된다 배경음악은 AudioManager 오브젝트를 생성하고 스크립트를 만들어줘서 관리해주자 가정을 해보자 A씬과 B씬이.. 카드 뒤집기 게임 완성 30초가 지나면 게임이 종료되도록 설정 ⑦ 게임 끝내기 모든 카드의 짝을 맞췄을 때, 게임이 끝나는 기능을 만들어야 한다. 게임이 끝나고 문구를 클릭했을 때 다시 실행이 가능하도록 하는 EndingTxt를 구현해 보자 게임이 끝나기 위한 조건 = 남아있는 카드가 존재하지 않는 경우 END 문구를 눌렀을 때, 재 실행되는 기능을 구현해 보자 ⑥ 카드만들기 - 판정 시스템 두 개의 카드가 열렸을 때 비교를 해보고 동일한 카드라면 파괴시키고 다른 카드라면 다시 닫아주는 로직을 구현해야 한다. 각각의 카드에 Index 숫자값을 넣어줬다. 숫자가 짝을 이루고있기때문에 두 개의 카드의 동일성을 판별하기 위해서는 두 숫자가 같으면 파괴시키고 같지않으면 다시 닫아주자. 카드 두 개의 정보를 갖고 있어야 한다. 두 개의 카드 정보를 갖고 있는 Card 스크립트를 자료형 첫 번째 카드가 열렸을 때, 이 카드가 GameManager에 있는 firstcard에 정보를 넘겨주고 두 번째로 열리는 카드가 firstcard라고 하는 변수에 데이터가 있는지 없는지 확인을 하고 있다면 secondcard라고 하는 변수에 정보를 넘겨주고 Matched라는 함수를 발동 그러기 위해서 카드들.. ⑤ 카드 만들기 - 애니메이션 및 뒤집기 회전하는 느낌을 주기 위해서 20 정도에 로테이션 z값 3을 설정 40으로 옮겨서 로테이션 z값을 다시 0으로 설정 녹화버튼을 눌러서 다시 재생을 눌러 보자 이제 카드를 클릭했을 때 살짝 작아지는 애니메이션을 구현 녹화버튼을 누르고 scale의 x값과 y값을 1.2 녹화 버튼을 풀고 저장한 뒤, Cardflip의 루프타임을 해제 두 개의 애니메이션을 만들었으니 조건에 따라서 실행되도록 해야한다. Idle -> Flip : IsOpen값이 True 일때 작동시킨다. Fip -> Idle : IsOpen 값이 False 일때 작동시킨다. 카드를 눌렀을 때 어떤 기능을 실행시키려면 버튼이 있어야 한다. 이제 코드에서 Set문을 통해 원하는 상황에 애니메이션을 실행시키면 된다. ④ 카드만들기 - 이미지 랜덤 로직 랜덤으로 섞기 전략 OrderBy 정렬한다다는 뜻이며 소괄호안에 조건이 들어간다. x => 배열을 순서대로 한번 씩 순회한다. Radom.Range에서 추출된 값을 기준으로 한다. ToArray() 자료형이 Array가 아니기 때문에 맞춰주기 위함이다. 이제 랜덤으로 섞이는 값을 각각의 카드에 넣어줘야 한다. Card를 위한 스크립트를 만들고 Add Component 랜덤으로 잘 배정이되는지 index를 확인하기 위해서 유니티에서 제공하는 기능을 이용해서 이미지를 넣어보자 단순 문자열로 하지 않기 위해서, 스트링값을 조작하기 위해서 앞에 $를 붙힌다. ③ 카드 만들기 - 배치하기 16장의 카드를 만들기 위해서 기존에 해왔던 복붙으로 오브젝트들을 깔아놓는 방식이 아닌, 수 천개의 카드를 작업할 수 있는 상황까지 대비하기 위해서 코드를 활용한 배치를 할 것이다. 사전 공부해 놓은 반복문 for를 활용해 보자 생성된 16개의 카드들을 Board 안으로 들어가게끔 수정 요망 4x4 형식으로 카드를 배치해야 한다. ② 기본 씬 구성 및 시간 시스템 Phone (760x1280) Layouts 2 by 3 One Column Layout 시간을 표시해줄 UI를 생성하고 폰트 및 8개의 이미지도 함께 준비하자 카드를 깔아줄 판을 만들기 위해 빈 오브젝트 생성 Board 안에 Card라는 빈 오브젝트 추가 생성 각각의 이미지들을 카드화 시켜야 한다. 우선은 녹법1 카드의 앞면과 뒷면을 만들어 보자 카드의 뒷 면에 물음표를 추가하자 프리팹 시키면 카드 한 장이 완성된다. 시간 시스템을 구축하기 위해서 게임매니저 오브젝트와 스크립트를 준비 ① 이번 프로젝트에서 학습할 내용 1) 이번 프로젝트의 목표와 범위 2) 오늘 만들 것 : 카드 뒤집기 게임 위의 영상과 비슷하게 제작할 것 3) 순서 기본 씬 구성하기 : 배경, 타이머, 리소스 받아두기 시간 보내기 카드 깔기 카드 뒤집기 애니메이션 만들기 같은 카드를 뒤집었을 때 없애기 고양이 밥주기 게임 완성 Lv.4 부터 해적냥 등장 이전 1 2 3 4 5 다음