일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- frontend
- AWS
- spring
- 코딩
- jwt
- netlify
- RiotAPI
- springboot
- express
- 깃
- 파이썬
- JSON
- c#
- 프로그래밍
- unity
- 게임개발
- oAuth
- 백준
- Python
- OAuth2.0
- MongoDB
- 스프링
- 백엔드
- node.js
- react
- 게임
- 유니티
- IntelliJ
- 스프링부트
- bcrypt
- Today
- Total
목록c# (15)
Unwound Developer
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/eK5cu4/btrrYRiXsfU/YuwnckxvfZasm8gbmMessK/img.png)
이번엔 플레이어 스크립트를 봐볼게요. 아직 계속 작성중인 스크립트라 미완성이긴 합니다. 원래 유튜브를 보고 했을 땐 전부 RayCast를 이용해 오브젝트간 상호작용을 구현했는데, 전 최대한 유니티의 유틸리티를 사용하고 싶어서, collider와 rigidbody 컴포넌트를 사용하는것으로 바꿨어요. bool 변수들은 player가 현재 어떤상태인지를 알려줍니다. 그 외에는 점프의 세기 같은 이런거네요. enum을 이렇게 선언하면 안에 선언된 애들로 상태를 관리할 수 있어요. bool형 변수들도 있는데 이건 없어도 될 것 같기도 한데요? UpdatePlayerPosition 메소드는 player를 실제로 움직이게 하는 기능을 가져요. 메소드 안에는 단순한 움직임을 구현한 것들이에요. 하지만, 입력을 받는 메..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bInnLF/btrrYRiQQjA/DCYwY8QDhvVhZix0eQTuQ0/img.png)
첫번째 클론으로 슈퍼마리오를 선택했는데, 생각보다 어려웠습니다. 일단 시작하자마자 슈퍼마리오 특유의 카메라 시점부터 막혔어요.. 도움받을 곳을 찾아본 결과로 외국인 유튜버의 설명을 보면서 따라했는데, 뭔가 이상했어요. 카메라 무빙 부분은 괜찮았는데, 캐릭터와 적 AI를 구현할 때, 유니티에서 제공하는 Collider, RigidBody이런 기능을 놔두고 레이캐스트를 이용해서 비효율적으로 하는 것 같더라구요. 레이캐스트를 이용해서 오브젝트간의 상호작용을 관리하는게 더 수준 높은 방법인건가요..? 어쨌든 저는 다 따라해놓고 맘에 안들어서, 전부 갈아엎느라 시간을 많이 쓴 것 같네요. 우선 카메라 무빙을 제어하는 CameraFollow 스크립트입니다. 슈퍼마리오의 카메라 무빙을 생각해봐요. 항상 캐릭터가 중심..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/lRXZK/btrrDOZskKD/5XU3Tp8floWr6j6ZOlZWYk/img.png)
옵션 창 추가에 이어서 게임 내부에 이벤트를 추가해봤습니다. 그리고, 게임 도중에 타이틀 화면으로 이동하는 버튼과, 타이틀 화면에서 게임종료 버튼도 추가하였습니다. 추가한 게임 진행에서의 이벤트로는 발판에 가시외에 몬스터 장애물 추가와, 게임 진행 후 10초가 지난 시점부터 공중에 새가 리스폰 됩니다. 가시와 마찬가지로 발판에 자식으로써 종속시킨 후, 발판 생성시에 일정 확률로 나타나게 설정했어요. 가시와 다른점은 플레이어가 점프할 때 몬스터도 점프를 하게 설정했습니다. 사진 속 몬스터도 플레이어가 몬스터를 피하려고 점프를 눌렀을 때 같이 점프를 한 모습입니다. 플레이어 컨트롤과 유사한 스크립트를 가지고 있습니다. 차이점은 점프가 한 번에 최대 1회까지만이에요. 새는 이런식으로 공중에 생성됩니다. 새가 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cKhnQU/btrq7U1SU7i/T0F4GkpBLk16glKu5zTpy1/img.png)
레트로 유니티 교재를 따라만든 2D 런 게임이 있었는데, 그냥 연습용으로 지나친 프로젝트였기에, 정말 게임이라 보기에는 미흡한 점이 많습니다. 그래서, 교재를 끝마치고 첫번째로 하고 있는 것은 2D 런 게임, 이른바 '유니런'의 수정입니다. 새로운 프로젝트를 진행하는 것도 게임개발 학습에 많은 도움이 되겠지만 기존에 진행한 프로젝트를 수정 보완해 나가는 것도 그 만큼 도움이 될거라 생각했어요. 실제로 지금 수정,보완을 해보면서 교재에서 다루지 않았던 부분들도 많이 깨닫고 있습니다. 수정을 진행하면서 사용했던 유니티나 C#의 클래스,메소드 등의 기능들은 따로 정리해보려 합니다. 우선, 현재까지 보완한 게임의 모습이에요. 우선 타이틀 화면입니다. 기존에는 실행하자 마자 바로 게임이 시작되어서 불편했기에 이 ..