배운 것들
포톤을 적용시키기 전에 어몽어스 기본 구조를 구현해보는 시간이 있었다.
먼저 스프라이트를 수정해줬다.
Sprite Mode를 Multiple로 하고 Slice에서 GridByCellSize로 128씩 잘랐다.
그리고 2D에서 눈과 몸통으로 나누어 세팅을 했는데 플레이어마다 색을 다르게 표현해야하므로 그런 것이다.
이후 새로운 InputSystem을 설치하였다.
Input System을 Player Input 사용이 아닌 코드에서 동적으로 사용하는 법을 배웠는데 사용하려면 먼저 using InputSystem을 한 뒤 [SerializeField] 속성으로 InputAction을 선언해주어야 한다.
이렇게 SerializeField로 선언하면 컴포넌트에 바인딩 옵션이 뜨게 된다.
그리고 InputAction을 유니티 기본 이벤트인 OnEnable에 Enable해주고 OnDisable에 Disable해준다.
Mathf.Sign(float f)는 음수면 -1 양수면 1을 반환하는 함수이다.
InputAction에서 ReadValue로 바인딩한 Vector2값을 불러왔는데 2D의 Scale을 조정했을 때 좌우측 스프라이트가 반전되는 것을 이용한 코드이다.
캐릭터의 색을 바꾸는 과정에서 Color를 배열로 선언하고 SerializeField를 하면 스포이드 버튼으로 색을 옮길 수 있다는 것을 배웠다.
* 이런 식으로 참조하면 알파 값이 0이 되어있으니 주의!
LightShafting
외부 플러그인인 LightShafting도 사용해보았다.
https://github.com/ckawell/LightShafting
GitHub - ckawell/LightShafting: A simple line-of-sight lighting system for 2D Unity Games.
A simple line-of-sight lighting system for 2D Unity Games. - GitHub - ckawell/LightShafting: A simple line-of-sight lighting system for 2D Unity Games.
github.com
Ignore Me는 이 Layer의 객체는 빛 반사가 안 일어나는 것이고
Get Radius는 범위이다.
Wall Mask은 이 객체는 빛 반사가 일어난다.
Light Rays는 카메라에 TargetTexture를 입힌 Material을 가지고 있는 객체를 통해 Ray를 쏘는 것이다.
* 3D환경에서만 동작한다고 한다. 그래서 이 프로젝트는 3D Collider를 붙이고 작업했다.
한 주 후기
이번 주에는 포톤 어몽어스를 만들기 위해 어몽어스를 기본적으로 구현해보는 시간을 가졌다.
어몽어스가 되게 간단한 게임인줄로만 알았는데 막상 구현을 따라해보니 쉽지 않았던 것 같다. 마피아 역할일 때 자신의 범위 내에 다른 사람이 들어와 있는지 체크하는 것과 거기에서 여러 사람이 있을 땐 어떻게 할 것인지 또 유령이 되었을 때는 신경써줘야할 것이 어떤 것인지 등등 해줘야할 게 많은 게임이었다. 또 다른 어려웠던 점은 새로운 플러그인에 익숙해지는 것이었다. LightShafting은 정말 좋은 툴이지만 아직 제대로 이해하고 쓰진 못한 것 같아 아쉬웠다. 다음에 다른 프로젝트를 할 때 더 이용해보면서 완전히 이해하도록 했으면 좋겠다고 생각했다.
다음 주에는 포톤과 완전한 연동을 한다고 하는데 연동할 부분이 한 두개가 아니라서 쉽지는 않을 것 같다. 하지만 새로운 것을 배우는 것은 항상 재밌기 때문에 열심히 해보도록 할 것이다. 다음 주도 파이팅!
본 포스팅은 유데미-웅진씽크빅 취업 부트캠프 유니티 1기 과정 후기로 작성되었습니다.
'유데미 스타터스 유니티 개발자 1기' 카테고리의 다른 글
유데미 스타터스 유니티 개발자 1기 취업 부트캠프 - 21주차(개발) (0) | 2022.11.12 |
---|---|
유데미 스타터스 유니티 개발자 1기 취업 부트캠프 - 20주차(개발) (0) | 2022.11.06 |
유데미 스타터스 유니티 개발자 1기 취업 부트캠프 - 18주차(개발) (0) | 2022.10.23 |
유데미 스타터스 유니티 개발자 1기 취업 부트캠프 - 17주차(개발) (0) | 2022.10.17 |
유데미 스타터스 유니티 개발자 1기 취업 부트캠프 - 16주차(개발) (1) | 2022.10.09 |