분류 전체보기(51)
-
UGUI - Canvas
캔버스는 Canvas 컴포넌트가 있는 게임 오브젝트이며 모든 UI 요소는 반드시 어떤 캔버스의 자식이어야 합니다. 캔버스는 메시징 시스템을 돕기 위해 EventSystem 오브젝트를 사용합니다. 캔버스에 있는 UI 요소는 계층 구조에 나타나는 것과 동일 순서로 그려집니다. Render Mode Screen Space - Overlay 캔버스에 있는 UI요소가 씬 위에 그려진다. 카메라를 사용하지 않기 때문에, 카메라 depth에 영향을 받지 않는다. Overlay 모드의 캔버스들은 캔버스의 Order 값에 따라서 그려지는 순서가 결정된다. Screen Space - Camera Overlay와 유사하지만 카메라를 사용하며, 때문에 카메라 모든 속성에 영향을 받는다. 때문에 캔버스의 Order 값 뿐 아니..
2022.10.10 -
Unity - Physics 2022.08.21
-
패러다임 1 - 구조적 프로그래밍
[서론] 데이크스트는 goto 문장이 모듈을 더 작은 단위로 나눔에 있어서 방해가 된다는 사실을 발견하였고, 모듈을 분해할 수 없다면, 합리적으로 증명할 때 필수기법인 분할 정복 접근법을 사용할 수 없음을 알게 되었다. 반면, goto 문장을 사용하더라도 문제가 되지않는 경우가 있는데, 이런 경우는 분기(if/else/then) 또는 반복(do/while/until)과 같은 경우이다. 모듈이 이러한 종류의 제어 구조만을 사용한다면, 증명 가능한 단위로까지 모듈을 재귀적으로 세분화하는것이 가능해보였다. 그는 이러한 제어구조는 순차 실행과 결함했을 때 특별?하다는 사실을 깨달았다. 특별하다고 말하는 이유는 모든 프로그램은 순차, 분기, 반복 세 가지의 구조만으로 표현할 수 있기 때문이다. 즉 모듈을 증명 가..
2022.07.24 -
패러다임
[서론] 소프트웨어 아키텍처는 Code로 부터 시작된다. 따라서 아키텍처에 대한 논의도 Code라고 불리는 것들이 최초로 작성된 시점부터 시작되었다. 바이너리 언어부터 어셈블리어, 컴파일러의 등장과 여러 언어의 탄생에 이어 언어에 맞게 여러가지 패러다임이 생성되었다. 그리고 현재는 세 가지의 패러다임만이 존재한다. [개요] 1. 구조적 프로그래밍 구조적 프로그래밍은 제어흐름의 직접적인 전환에 대해 규칙을 부과한다. 무분별한 점프가 프로그램 구조에 해롭다는 사실을 제시하고, if/then/else와 do/while/until 같은 익숙한 구조로 대체했다. //goto를 지양한다. 2. 객체 지향 프로그래밍 객체 지향 프로그래밍은 제어흐름의 간접적인 전환에 대해 규칙을 부과한다. 함수 호출 스택 프레임을 힙..
2022.07.24 -
Tree
정의 그래프의 일종으로, 여러 노드가 한 노드를 가르킬 수 없는 구조이다. (사이클이 없는 그래프) 스택이나 큐와 다르게 비선형의 자료구조이다. 이진 트리 (Binary Tree) 루트 노드를 중심으로 두 개의 서브트리로 나누어지는 트리이다. 나누어진 트리도 두개의 서브트리로 나누어져야한다. 공집합도 이진트리이다. 이진트리에는 완전 이진 트리, 포화 이진 트리, 정 이진 트리가 있다. 완전 이진 트리 (Complete Binary Tree) 위에서 아래로, 왼쪽에서 오른쪽으로 순서대로 채워지는 이진 트리를 완전 이진트리라고 한다. 이진 힙 (Binary Heap)은 완전 이진 트리의 형태를 기반으로 하고 있다. 이진 힙 (Binary Heap) 이진 힙에는 최대 힙과 최소 힙이 존재한다. 최대 힙은 각 ..
2022.02.06 -
Sprite Atlas - 스프라이트 아틀라스
이전에... 2D 프로젝트는 스프라이트와 다른 그래픽스를 사용하여 씬의 시각적 요소를 만듭니다. 따라서 단일 프로젝트에 다수의 텍스처 파일이 들어 있을 수 있습니다. 일반적으로 Unity는 씬의 각 텍스처에 대해 드로우 콜을 발행합니다. 하지만 많은 텍스처가 포함된 프로젝트의 경우 여러 개의 드로우 콜이 존재하면 리소스를 많이 소비하여 프로젝트의 성능을 저하시킬 수 있습니다. Sprtie Atlas 정의 여러 개의 텍스처를 단일 텍스처로 결합하는 에셋입니다. Unity는 여러 개의 드로우 콜을 발행하는 대신 이러한 단일 텍스처를 호출함으로써 하나의 드로우 콜을 발행할 수 있습니다. 그러면 큰 성능 소모 없이도 패킹된 텍스처에 동시에 액세스할 수 있습니다. 또한 스프라이트 아틀라스 API는 프로젝트의 런타..
2021.11.16