본문 바로가기

게임 개발

(14)
[Photon] Photon On-Premised Server 구축 윈도우 기반의 실물 서버에 Photon Server를 구축하는 방법 URL : https://www.youtube.com/watch?v=MV-VniEGK2g&list=PL3KKSXoBRRW23kK4zki9esA1nk3Rp_Vyz 이거로 서버 구축 자료는 충분. 딱히 어려운 점은 없지만 서버 실행 및 로그 자동화 부분에서 C# 프로젝트 생성 시 '클래스 라이브러리(.Net Framework)' 로 생성할 것.. 비슷한 이름이 많아서 헷갈리는데 꼭 저 타입으로 프로젝트 생성해야함. 안그러면 빌드가 제대로 안되어서 자동화 실패함 고라니님꺼 따라해서 구축 후에 - Photon PUN2 에셋 설치 - PhotonServerSetting에 내가 접속할 포톤 서버의 공인IP 입력 + UDP 포트 입력(5055) ※ ..
[Unity/Oculus Quest2] 드로잉해보기 (1) - 수정중 - 이전 직장에서 했던 작업물을 백업할 수 없어서 리소스만 가지고 있기에.. 기억을 더듬어 리소스를 가지고 팔레트 UI를 다시 제작해보았다 전 직장에서 했던 VR로 드로잉하는 툴은 왼손에는 팔레트 오른손에는 브러쉬가 부착되어 팔레트의 Color를 브러쉬(오른쪽 컨트롤러)로 Pick하면 Pick한 색상으로 브러쉬 컬러가 변경되고 왼쪽 패널의 브러쉬 타입을 설정하여 유니티 LineRenderer를 이용하여 브러쉬 라인오브젝트를 그림을 그리는 앱이다 일단 브러쉬 부분은 나중에! 구현하고 왼쪽 팔레트 모양부터 갖추었다! ColorPick하는 부분은 UGUI OVRRaycaster 관계에서 UGUI Image 오브젝트를 컨트롤러 포인터로 인식할 수 없어서 Object(Plane) OVRPhysicsRaycaster를..
[Unity/Oculus Quest2] 유니티 개발 준비 넘 귀찮은 작업.. 1. Oculus 개발자 공홈에 개발자 등록을 한다 2. Oculus Developer Hub 설치(오큘러스의 adb 드라이버 설치) 2. Oculus 모바일 앱에서 기기를 찾아서 기기의 개발자 모드를 On 3. 오큘러스 퀘스트2를 재부팅 후 설정 -> 개발자 탭에서 USB디버깅 모드를 On 4. 유니티 프로젝트 생성 후, PackageManger 혹은 AssetStore 통해서 Oculus Intergration Download/Import (현재 v39) 5. 유니티 에디터 Project Settings - Player - 안드로이드 - Other Settings - Graphics APIs를 OpenGLES3가 맨위로 오도록 드래그 앤 드롭! 6. Minimum API Level..
[Unity3D 기초] Unity MonoBehaivour 기본 함수와 생명 주기 유니티는 기본적으로 프로그램의 기본 동작, 골격이 되는 Built-in 함수들이 있다 유니티는 기본적으로 MonoBehaivour 라는 Mono 객체를 상속받는데 유니티가 이 Mono 함수들을 기초로 프로그램 생명 주기를 만든다 Mono 함수들 간에 생명 주기가 존재하며 프로그램 구동 시 한번 혹은 반복적으로 호출된다 https://docs.unity3d.com/Manual/ExecutionOrder.html Unity - Manual: Order of execution for event functions Instantiating Prefabs at run time Order of execution for event functions Running a Unity script executes a numbe..
[VirusDestroyer] 3D City Simulation 게임 제작기 - 3부 : 인게임 스크립팅 (8) - Shop, Inventory - Shop은 인게임에서 유저가 게임을 즐기는데 도움을 주는 요소들을 구매할 수 있는 곳이다 RPG에서 빠질 수 없는 요소이다 이 게임에선 호흡기 바이러스나 좀비가 플레이어의 주된 위협이기 때문에 아이템은 - 마스크 - 백신 - 치료제 - 앰뷸런스 호출 - 경찰차 호출 - 미사일 타격 - 핵무기 타격 이 정도가 아이템으로 사용할 기능이 되겠다 무기는 - 칼 - 둔기 - 권총 - 라이플 - 샷건 가 무기로 사용할만한 것들이다 방어구는 - 마스크 - 헤드기어 - 베스트 - 부츠 가 방어구로 쓸만한 것들이다 Shop을 구현하여 UGUI 버튼으로 사용자와 인터랙션 해야 하기 때문에 해당 아이템을 나타내는 멋진 아이콘을 구하는데 집중했다..정말 구하기 어려웠다.. DataManager에서 스킨, 아이템, 무기, 방어..
[VirusDestroyer] 3D City Simulation 게임 제작기 - 3부 : 인게임 스크립팅 (7) - DataManger - DataManager는 유저의 데이터를 실시간으로 저장/반환하며 게임 상에서 저장되어야 할 유저 데이터 일체를 관리하는 역할을 한다 또한 Manager이지만 Helper의 역할도 한다! 계정정보를 담기 때문에 주로 암호화하고 필요할 때 키를 이용하여 복호화는 방식으로 관리하거나 특히 개인정보같은 경우 해싱을 이용하여 복호화(의미해석)가 불가능하도록 하여 DB에 저장한다 SHA-64, SHA-256 대표적인데 구체적으로 어떻게 동작하는지 잘 모른다 찾아보면 많이 나오겠지!!!ㅎㅎ 하지만! 일단 보안 그런거 고려할 여유가 없기에 일단 구현한다!!ㅋㅋㅋ 그저 내가 고려할 것은 정보은닉! public으로 참조될 수 없도록 하는 일 뿐이다..ㅠㅠ 유저 데이터 Save는 추후 JSON 형식으로 userData를 직..
[VirusDestroyer] 3D City Simulation 게임 제작기 - 3부 : 인게임 스크립팅 (6) - Player - [수정중] Player는 모바일 UI Joystick에 의해 이동, 회전 등 동작을 수행한다 이 유튭 자료와 해당 에셋을 이용하여 1차원, 3차원 캐릭터, 카메라 이동을 구현하였다 https://assetstore.unity.com/packages/tools/input-management/joystick-pack-107631 Joystick Pack | 입출력 관리 | Unity Asset Store Get the Joystick Pack package from Fenerax Studios and speed up your game development process. Find this & other 입출력 관리 options on the Unity Asset Store. assetstore.unity.com htt..
[VirusDestroyer] 3D City Simulation 게임 제작기 - 3부 : 인게임 스크립팅 (5) - 시민(NPC) - [수정중] 이 게임에서 NPCType은 2가지이다 - 시민 - 좀비 대략적인 시나리오는 다음과 같다 핵심 포인트 : 일정 시간이 지나면 감염된 시민은 바이러스 감염으로 인한 데미지를 지속적으로 받게 되고(위협1) 결국 죽게되어 좀비로 환생한다 좀비가 되면 시민, 유저를 마구 공격하여 데미지주고 죽여서 좀비로 환생시킨다(위협2) 모든 시민이 좀비가 되거나 유저가 좀비가 되면 게임 종료(Mission Failed) 디테일 포인트 : 시민은 인게임 내 지정된 여러 생성지점 중 한 곳에 생성되어 이동경로를 부여받고 이동하게 된다 이동 중 감염된 시민이 기침을 하게 되고 바이러스가 일정 거리만큼 퍼지게 된다 그때 주변에 있던 시민들이 바이러스에 노출되어 감염된다 위 시나리오를 바탕으로 NPC에게 필요한 핵심 컴포넌트는 다음..