일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준 c++ 2468번
- 백준 c++ 2870번
- 백준 17070번 c++
- dfs
- Algorithm
- c++
- 2870번 c++
- 유니티
- 2468 c++
- 백준 2870번
- 오브젝트 풀링
- Lv2
- 백준 1103번 게임
- Unity
- 백준 1103번
- 2870번
- 2870번 수학숙제 c++
- 수학숙제
- C#
- 백준 1103번 c++
- 17070번
- 백준
- 2870번 수학숙제
- 코딩테스트
- 플레이어 이동
- 코테
- Beakjoon
- 프로그래머스
- Lv.3
- 백준 17070번
- Today
- Total
목록GameDevelopment (51)
주녘공부일지

UniRx란?- .NET Reactive Extension을 유니티에 맞게 개량- Linq 스타일 쿼리 연산자를 사용하여 비동기 및 이벤트 기반 프로그램을 위한 라이브러리- 스트림 생성, 오퍼레이터로 가공, 구독 사용 스트림 (Stream)- 연속적인 이벤트(메시지)의 흐름- 분기, 병합 가능 / IObservable로 구독 가능namespace System{ public interface IObserver { void OnCompleted(); void OnError(Exception error); void OnNext(T value); } public interface IObservable { IDisposable S..

클로저(Closure)란?- 외부 함수의 변수를 내부 함수가 참조할 때 발생- 이 경우, 메서드 레퍼런스로 외부 함수의 변수가 힙에 할당됨 ( 외부 변수 캡처 ) UniRx 테스트 중 겪은 예시)for(int i = 0; i OnClickTest(i));}- OnClickTest 메서드는 for문에 있는 하나의 i를 참조하게 되어 i = btns.Length 값인 4가 들어가게 되는 것 for(int i = 0; i OnClickTest(index));}- index는 매번 새로 선언되어 값을 할당받기 때문에 해결 가능

1) 오브젝트 풀링- 게임 플레이 중에 반복적으로 생성/파괴되며 사용되는 비용(가비지, 등) 부담을 줄이기 위해 사용- ResourceMgr에게 생성/파괴 요청된 오브젝트가 풀링 대상이 되는 오브젝트라면 ObjectPoolMgr에게 위탁public class ObjectPoolMgr{ class Pool { ... } Dictionary pools = new Dictionary(); Transform root; int poolCount = 5; public void Init() { if (root == null) { root = new GameObject { name = "@Pool_Root" }.transform; ..

플레이 영상해피스케치의 요청에 따라 모션 감지를 이용한 AR게임 프로토타입 모델- 여러 가지 미니게임 스테이지를 구현하여 2명의 사용자가 대전을 하는 AR 멀티 게임- PC버전으로 선 구현 후 채택 시 AR 멀티 게임으로 확장 스테이지 관련 StageController는 Stage를 제어 및 관리- Stage는 콘텐츠에 따라 SingleStage와 MultiStage를 상속받아서 구체화하며 스테이지를 구현- 구체화된 스테이지 클래스는 OnReceiveStageParam 메서드로 스테이지의 정보가 변경됨을 알림 Stage는 스테이지 진행 상황에 대한 정보와 플레이어를 관리- 싱글 스테이지 : 하나의 스테이지에 2명의 플레이어가 소환되어 플레이하는 환경- 멀티 스테이지 : 동일한 스테이지 2개의 각각의 플..

1. 발생한 이슈 런타임에서 각 스테이지에 따라 다른 SkyBox, Ohter Settings의 Fog 세팅 값을 변경해야 하는 상황에서 발생한 이슈로, SkyBox를 런타임에 세팅했을 때, Lighting, Fog 값이 갱신 및 적용되지 않아 화면이 어두워지는 현상이 발생2. 발생 원인 - 전역 조명(GI)- Lighting이 어두워지는지는 이유는 전역 조명(GI)에 있다고 함https://discussions.unity.com/t/loading-scene-additively-causes-change-in-lighting/687635위 링크 내용에 따르면, 유니티의 스카이박스는 Light를 "Sun"으로서 하늘을 어떻게 렌더링할지 정한다고 함+ 스카이박스가 렌더링되고 Lighting이 계산되는데, 이 ..

플레이 영상해피스케치의 요청에 따라 모션 감지를 이용한 AR게임 프로토타입 모델- 여러 가지 미니게임 스테이지를 구현하여 2명의 사용자가 대전을 하는 AR 멀티 게임- PC버전으로 선 구현 후 채택 시 AR 멀티 게임으로 확장 에디터 인스펙터 툴- 기획자는 프로그래머를 거치지 않고, EditScene에서 각 스테이지를 플레이해보며 카메라 뷰를 변경하여 저장하거나 각 스테이지에서 사용되는 객체에 대한 엑셀 데이터 값을 변경하는 것으로 인게임에 대한 값 조정 및 테스트를 할 수 있게 함1. 스테이지 에디터- 인게임에서 사용되는 Stage를 소환하여 테스트해볼 수 있음- 기획자가 직접 특정 스테이지를 플레이해보며 엑셀 데이터를 변경하여 제이슨으로 파싱하고 인게임에 적용된 데이터로 플레이해볼 수 있음 ex) 몬..

게임 플레이 영상 종스크롤 슈팅 게임 ( WinAPI )- 유니티 강의에 나오는 리소스를 이용하여 만든 종스크롤 슈팅 게임 ( 리소스 출처 : 골드메탈 )- 어소트락에서 제공하는 Win32API 무료 강의를 레퍼런스로 아키텍처 설계- 스테이지를 클리어하며, 최고 점수를 기록하는 게임- 스테이지는 텍스트 데이터로 세팅 할 수 있으며, 설정된 모든 스테이지를 클리어 했을 경우, 마지막 스테이지가 반복되며 보스 몬스터의 패턴이 강화됨 https://github.com/godgjwnsgur7/WinAPI_FlightShootingGame GitHub - godgjwnsgur7/WinAPI_FlightShootingGameContribute to g..
1. 벽돌깨기 게임 ( WinAPI )- 알카노이드를 레퍼런스로 하여 제작한 게임https://github.com/godgjwnsgur7/WinAPI_BrickBreaking/tree/main/BrickBreaking WinAPI_BrickBreaking/BrickBreaking at main · godgjwnsgur7/WinAPI_BrickBreakingContribute to godgjwnsgur7/WinAPI_BrickBreaking development by creating an account on GitHub.github.com2. 게임 핵심 구현 요소1) Vector2- 위치 벡터, 방향 벡터 등 범용적으로 사용하기 편리하도록 Vector2 구조체를 구현하여 사용함struct Vector2{ ..
0. 게임 플레이 영상 1. 콘솔 비행 슈팅 게임- 스테이지를 클리어하며, 최고 점수를 기록하는 게임- 스테이지가 지날수록 적 기체의 수, 체력이 늘어나며 난이도가 올라감https://github.com/godgjwnsgur7/C_FlightShootingGame/tree/main GitHub - godgjwnsgur7/C_FlightShootingGameContribute to godgjwnsgur7/C_FlightShootingGame development by creating an account on GitHub.github.com2. 게임 핵심 시스템 1) 핵심 기능- 오브젝트 메모리 풀 ( Struct Array )- 더블 버퍼링 ( Ingame ) // window.h- View와 ..

게임 소개 영상 https://github.com/godgjwnsgur7/Project_IH GitHub - godgjwnsgur7/Project_IHContribute to godgjwnsgur7/Project_IH development by creating an account on GitHub.github.com유한 상태 기계 (FSM)을 기반으로 한 플레이어, 몬스터 AI 상태 관리1) 플레이어 상태 관리 ( Condition, Exit, Enter )protected EPlayerState _playerState = EPlayerState.None;public virtual EPlayerState PlayerState{ get { return _playerState; } protect..