3~5주차 강의 듣기
무려 3주차의 강의를 한번에 들은 만큼 정리할 양도 많을 예정이다. 평소처럼 중요하다고 생각하는 개념, 새로 배운 것들 위주로 복습해보겠다.
| A | B | 결과 |
|---|---|---|
| Collider | Collider | 충돌 감지 ❌, 그냥 통과 |
정적인 오브젝트끼리는 물리 계산이 없음
| A | B | 결과 |
|---|---|---|
| Collider | Collider+Rigidbody | 충돌 감지됨 ✅, 물리 반응 있음 |
| A | B | 결과 |
|---|---|---|
| Collider+Rigidbody | Collider+Rigidbody | 충돌 감지됨 ✅, 서로 밀리고 튕김 |
| A | B | 결과 |
|---|---|---|
| Collider+Rigidbody+isTrigger | Collider+Rigidbody+isTrigger | 감지는 되지만 통과 |
Image.sprite = Resources.Load<Sprite>($"rtan{idx}");
스크립트에서 Resources 폴더에 접근하는 코드. 위 코드에서는 idx에서 int 값을 받아오고 싶지어한다. 하지만 그냥("rtan{idx}")라고 써버리면 문자열이 되어버리므로 ""앞에 $를 쓰는 문자열 보간 기능을 사용해 간편하게 괄호 안에 바로 변수나 식을 사용할 수 있다.
스플래시 이미지란 앱을 켰을 때 떴다가 사라지는 이미지를 말한다. 우리는 무료 유니티 이용자이므로 유니티 로고도 함께 노출된다.
사용할 이미지의 Mesh Type은 Full Rect로 수정한다.

Edit -> Projcet setting -> Plyaer -> Splash Image
Animation : Static-> Draw Mode : All Sequential

이미지 클릭 -> 원하는 이미지 적용
씬은 다르지만 배경음악은 그대로 가져가고 싶을 때 맨 처음 씬에서 AudioManager을 만든 후
DontDestroyOnLoad(gameObject); 코드를 추가하자.
다음으로
audioSource.PlayOneShot(clip);
PlayOneShot()함수는 사운드를 한 번만 즉시 재생해주는 기능을 갖고있다. 기존에 다른 소리가 재생 중이에도 이 함수를 사용하면 덮어쓰지 않고 소리가 겹쳐서 나온다. 주로 버튼 클릭, 총소리, 아이템 획득음 등 짧은 효과음에 사용된다.



정말 배우고 싶었던 광고 넣는 법! 잊기 전에 빠르게 방법을 적어보겠다.
Windows -> Package Manager -> Advertisement Legacy 설치

Project Settings -> Service -> Members밑에 Dashboard 접속 -> Unity Cloud 로그인

Shortcuts에서 Unity Ads Monetization 추가
3-1. 처음이라면 Get Started-> 1단계는 맨 위에 거 선택 -> 2단계는 No 어찌구 선택 -> 3단계는 오른쪽 선택
Setup guide -> Integration guide -> Initializing the SDK in Unity, Implementing rewarded ads in Unity (이 두 곳에 있는 코드를 그대로 사용할 수 있다.)

유니티에서 4번에 있는 스크립트 두개 추가. 아이디는 Unity Cloud에서 봤던 자신의 코드 입력
광고넣기를 진행할 때 오류메시지가 한 번 떴는데 프로젝트를 반쯤 아래로 두고 작업하고 있다보니 어떤 오류 메시지가 나왔는지 확인을 못한 채로 강제 종료를 한 번 했었다. 다시 켜니까 계속 오류가 떠 있었고 해결 방법을 몰라 튜터님께 가서 질문했다. 내가 다운받은 Advertisement Legacy버전이 강사님의 버전과 맞지 않아 생긴 일이었다. 그래서 파일을 열어서 Packages->manifest.json을 열어 "com.unity.ads"버전을 강사님과 같은 버전으로 수동 업그레이드를 시켜줬다. 그랬더니 해결! 해결되기 전까지 다시 만들어야 하나 어쩌나 걱정이었는데 해결되어서 다행히 마무리까지 잘 할 수 있었다.
이렇게 주어진 강의를 모두 수강하게 되었다. 어렵진 않았으나 양이 많다보니 시간이 좀 걸렸다. 후반에는 배우고 싶었던 빌드와 광고를 배우게 되어서 집중해서 들었다.
주어진 강의는 다 시청했으므로 이번 주는 계속 개인 공부를 할 것 같다. 내일은 캠프쪽에서 라이브 강의를 한다고 하셨으니 그거 공부랑 개인 공부를 할 예정이다.
2. 밥에 Rigidbody 2D, Circle Collider 2D 달아주기
→ 참고) 충돌 = 한쪽에 rigidbody + 양쪽에 collider
→ 단! Body Type을 `Kinematic`으로 잡아주기 = 중력의 영향을 안 받겠다는 뜻!
→ 그리고 `isTrigger`에 체크! 중력의 영향을 안 받을 때에는 이것을 체크해 주세요