목록전체 글 (114)
Game Tech Blog
퇴근하며 시간날때 언리얼 공부를 틈틈히 하고 있다. 하나하나 오류날때마다 언리얼은 팝업하나 로그하나 던져주고 찾아라~ 하는 뭔가 투박함이 있는것 같다 유니티는 그에비하면 문제있으면 뭐가 안되는지 다알려주긴 하는데, 많이 성격이 다른것 같다.. 오늘은 입력 시스템, 플레이어의 간단한 이동정도를 강의따라하면서 구현해보았다.
Canvas ? Canvas 란, UGUI 에서 ui요소들을 그리기 위한 하나의 컨테이너이다. 이 것을 특별히 분할하여 사용해야하는 이유가 있는가? Canvas 는, 일반적으로 Main 하나를 두고 사용하는 경우가 있는데, 내부에서 동적으로 이동, Fill 등의 조그마한 움직임 처리, Canvas 내부에 마우스 포인터가 왔다갔다 하는 행위들이 일어날때, 하나의 Canvas 로 이루어진 UI의 경우 하위에 모든 오브젝트들을 다시 렌더링해야하는데 이는 ReBuild 된다라고 한다. 예전에, Scroll View 를 사용하면서, 제대로 배치 되지않아서 LayoutRebuilder.ForceRebuildLayoutImmediate(); 함수를 사용해서 다시 렌더링하거나, GameObject.SetActive(f..
Unity Addressable Asset System이란? - "주소" 별로 Asset을 로드하는 방식을 제공하는 시스템 - 비동기식 로딩을 사용하며, 모든 종속성 컬렉션이 있는 모든 위치에서의 로딩을 지원. - 기존 Asset Bundle 또는 리소스 폴더를 사용하든 관계없이 Addressable Asset 은 게임을 더욱 동적으로 만드는 간단한 방식을 제공. 기존에 잘 쓰던것도 있는데 왜 또 개발되었는가? - 기존에 잘 쓰던 방식은 리소스 폴더, 에셋 번들을 사용하는 방식이 있었다.다만, 각각의 치명적인 이유가 있어서 이 문제들을 해소하기 위하여, Addressable 이 개발된 것으로 보아도 무방하다. 1. 리소스 폴더 사용 방식 1) Apk 사이즈가 커진다. -> Resources 폴더 안에 들..
자랑할 만한 일도 아니지만 브론즈에서 올라오는데 의외로 많은 문제를 풀어야했다. 급하게 준비하고 bfs,dfs 를 많이 풀어서 내용 정리를 못한 부분도 있으나, 추후 정리가된다면 포스팅할 예정.
DFS / BFS 란? 그래프 탐색 알고리즘들 이다. 이들을 사용해서 구할 수 있는건 무엇인가? 1) 최단 경로 구하기 2) 지나온 경로 구하기 3) 사이클링 구하기 4) 조합 수들 구하기 정도가 있다. DFS / BFS 의 차이점은 무엇인가? 1) DFS => 루트에서 시작해서 시작한 가지를 완전히 탐색 후 다음 분기를 탐색하는 방식 => Stack, 재귀함수를 이용해 구현한다. a) 장점 i) 인접한 관계가 아닌 Depth 상 깊이 있을때, BFS 보다 더 우선적으로 탐색된다. ii) 일련의 다른분기로 넘어가기 전에, 끝까지 탐색하면서 완전 탐색을 수행한다. b) 단점 i) 앞 선, 가지의 수가 많은 경우에 매우 비효율적이다. c) 사용효율 i) 모든 노드를 방문 할 경우, DFS ii) 서로 다른 ..
Draw Call (드로우 콜) 이란? CPU가 GPU에게 가지고 있는 오브젝트의 정보 기반으로 메쉬를 렌더링하라! 라는 명령을 일컫는다. 여기서 오브젝트가 렌더링 되기 위한 정보는 아래와 같다. 1) 메쉬 정보 2) 버텍스 정보 3) 텍스쳐 정보 4) 이외 다수 정보. CPU의 명령과 렌더링 되기 위한 정보를 기반으로 GPU 는 오브젝트를 그릴 수 있다. 어떤 과정을 기반으로 그리는가? CPU 와 GPU 는 긴밀한 협업관계를 가지고 있다. 먼저, GPU가 메쉬를 렌더링 하기위해선 그릴 버텍스 데이터, 텍스쳐 머티리얼, 쉐이더 정보들이 있어야한다. 이들을 미리 CPU가 로딩하여, GPU 메모리에 올려놓고, 그 재료들을 이용하여 GPU가 렌더링 연산을 수행한다. 중요한 것은 CPU에서 로딩한 데이터들은 복..