Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 27주차 - 알까기 게임 제작, 알고리즘, 수료 이번주는 마지막 수료 테스트인 알까기 게임을 구현하느라 바빴다. 이후 유익한 알고리즘 관련 특강을 들었으며 수료를 진행했다. 알까기 게임 기능 명세서 기능 명세서를 작성하면서 만드는 중간에 리팩토링도 하고 그랬다... 알까기 게임에서 우리가 구현하려고 했던 것이 2가지 버전이었는데 강사님께서 하나를 기본으로 생각하고 다른 하나를 거기에 추가 기능을 덧붙이는 식으로 개발하는 것이 더 좋은 방식이라고 알려주셨다. 나도 그렇게 생각한다. 단지 실천에 옮기지 못했을 뿐...ㅋㅋㅋ 기획개발 테스트 알까기 게임 stump-measure-fb3.notion.site 알고리즘 특강 내용 정리해보았다. 시간 복잡도를 알고 예제 입력의 최대 개수나 자릿수를 볼기만 해도 대충 어느 알고리즘을 써야하는지 감이 온다는 말이 인.. 2022. 12. 25. [Unity] Photon RPC 에러 Exception: Write Failed. Custom type not found 문제 배열을 동기화하는 RPC 호출에서 에러가 났다. 에러를 잘 읽으면 감이 올 텐데 Custom type not found이다. 데이터 타입을 잘 못 읽었다는 뜻이렷다? 원인 RPC로는 List 데이터 타입은 동기화할 수 없다. 바보같이 데이터 타입 생각 안 하고 그냥 동기화해달라고 했네...^^ 해결 Photon View를 받아오고 싶으면 Photon View가 아니라 Photon Player라는 데이터 타입으로 동기화하면 된다. Photon Player를 담아놓으면 PhotonPlayer.playerId로 view id를 접근할 수 있다. 내 경우 PhotonView의 List를 가지고 PhotonView.OwnerActorNr을 받아오기 때문에 차라리 deadBodyPVList를 int[]로 만들.. 2022. 11. 20. Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 21주차 - Among Us 기능 추가 임포스터의 Vent 이동 기능을 추가했다. Vent 이동 Player Prefab에 Animation 추가 Create New Clip으로 VentIn 애니메이션을 생성한다. AU_Player의 자식으로 있는 Player의 Position을 조절한다. 10 Frame : Position Y 1 30 Frame : Position Y -1 AU_Player의 자식으로 있는 Player의 Is Active 30 Frame : 체크 해제 AU_Player의 Sphere Collider-Enabled, Capsule Collider-Enabled 30 Frame : 체크 해제 만든 Animation의 Loop Time 해제 결과 Animation 연결 Vent In 복사해 Vent Out 만든다. Vent 나오.. 2022. 11. 13. [Unity] 어몽어스 미니게임 (멀티) - 스위치 켜기 (Among Us - Light Switch task Multi ver) 스위치 켜기는 어몽어스 게임 중 임포스터가 크루를 방해하기 위해 암전시켰을 때 수행하는 임무이다. 개인 미션이 아닌 크루 중 누구라도 완수하면 모두가 오나수한 것처럼 인정되는 공용 임무이기 때문에 Photon을 이용해 다른 사람에게도 미션 상태가 공유되도록 해야만 했다. Light Switch On Off game 자료 직접 누끼따서 만들었다... 포토샵 없는 나같은 사람들은 Pixlr를 애용합시다. 멀티로 만들기 전 코드 처음부터 멀티로 생각하면 만들기도 어렵기 때문에 일단 멀티가 아닌 버전부터 생각해서 만들었다. 모든 불빛은 꺼져있다고 생각하고, 랜덤으로 일부 불빛만 켜고 스위치가 위로 가 있는지 아래로 가 있는지도 랜덤으로 설정했다. using System.Collections; using Syst.. 2022. 11. 13. [Unity] Photon Serialization - RPC 동기화 가능한 데이터 타입 Photon에서 RPC를 통해 동기화할 때나 PhotonSerializeView를 통해 동기화할 때나 동기화할 수 있는 데이터 타입에 제한이 있다. 특히 Photon을 사용할 때 게임 오브젝트 자체를 동기화하려고 하면 안 되는 경험을 많이 해보았을 것이다. Photon에서 동기화할 수 있는 데이터 타입에 제한이 있어서 그렇다. 동기화하고자 하는 변수가 지원하는 데이터 타입에 포함되어 있지 않으면 동기화할 수 없고, 따로 사용자 정의를 통해 동기화해주어야 한다. 아래 사이트에 들어가면 친절하게 설명되어 있다. Photon에서 동기화할 수 있는 데이터 타입 Photon의 직렬화(Serialization) | Photon Engine doc.photonengine.com 정리하자면, 기본적인 C# 데이터 타입.. 2022. 11. 8. Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 20주차 - Among Us 미니 게임 제작 이번주는 어몽어스에 통신 기능을 추가해보았다. 과제로는 미니게임을 추가로 만들어보았다. 동기화 되는 캐릭터 생성 Script GameSetup.cs 이 Script가 달린 빈 오브젝트를 게임 scene에 배치 Tip) Path.Combine() 사용해 Resources 폴더 내의 폴더 안에 있는 오브젝트도 생성 가능함 using System.Collections; using System.Collections.Generic; using UnityEngine; using Photon.Pun; using System.IO; public class GameSetup : MonoBehaviour { // Start is called before the first frame update void Start() { .. 2022. 11. 6. [Unity] 베지어 곡선 활용해 오브젝트 곡선 이동 시키기 목표 베지어 곡선을 활용해 오브젝트가 예쁜 곡선을 그리며 이동하게 할 수 있다. 참고한 영상은 여기 Bezier 곡선을 따라 이동하는 오브젝트 구현 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; public class BezierCurve : MonoBehaviour { public GameObject obj; [Range(0, 1)] public float testVal = 1; [SerializeField] public float moveSpeed = 0.0001f; public Vector3 P1; public Vector3 P2; public Vector3 P3; pub.. 2022. 11. 3. Udemy STARTERS (유데미 스타터스) Unity 취업 부트캠프 19주차 - Among Us 클론 코딩 이번주는 Among Us를 비슷하게 만들면서 기존의 Input Manager가 아닌 Input System을 실습해보았다. 그리고 살짝 Photon 끼얹기(는 다음주에). 그동안 웬만하면 3D 프로젝트로 제작했는데 이번에는 2D 프로젝트로 시작했다. 참고로 Among Us는 유니티로 제작된 게임이다. InnerSloth & Among Us Discover how InnerSloth's Among us has used Unity Gaming Services to build and manage the most popular mobile game in the world with 500+ million players. unity.com 준비 자료 순서대로 캐릭터 몸통, 캐릭터 눈 글라스 파트, 맵, 오브젝트 S.. 2022. 10. 30. [Unity] Photon, Photon View 이용한 멀티 게임 만들기 (간단 예제) 나도 공부 중이지만 일단 정리. 설치 Photon 종류 PUN 설정 후 이름 짓고 어플리케이션 작성. Unity Asset Store - Pun 2 Free 다운로드 프로젝트 Window - Package Manager - My Asssets에서 다운로드 후 Import Window - Setup Networking - Server cloud setting - Add ID 에 Photon 사이트의 어플리케이션 아이디 입력 캐릭터 생성 움직일 캐릭터에 Rigidbody, Capsule Collider, Photon View 추가 Resources 폴더에 캐릭터 넣어 Prefab화 주의) 반드시 이름이 Resources여야 함. 그렇지 않으면 Resources 폴더에 갖다두라는 에러 창이 뜸. 주의) 캐릭터.. 2022. 10. 23. 이전 1 2 다음