보통 우리가 수학을 배울 때 사용하는 좌표계입니다. 데카르트가 천장에 붙어 움직이는 파리를 보고 영감을 얻어 만들었다고 해서 데카르트 좌표계라는 이름이 붙었습니다. 2차원 데카르트 좌표계는 좌표평면, 3차원 데카르트 좌표계는 좌표공간이라고 합니다.컴퓨터에서 3차원 좌표
렌더링 파이프라인은 3D 모델링 데이터를 2D 화면에 렌더링하는 복잡한 과정을 체계적으로 수행하는 과정입니다. 각 단계는 특정한 작업을 담당하며, GPU의 성능을 최적화하여 실시간으로 고품질의 그래픽을 생성할 수 있도록 설계되어 있습니다. 이러한 파이프라인은 게임, 영
유니티를 사용하기 위해서는 좌표계를 알아야하고 좌표계에서의 벡터값의 변화와 계산하는 법등을 알고 있어야 합니다. 힘의 크기(Scalar)와 방향을 나타내는 것을 말합니다. 보통 표기를 (x, y, z)라고 하고 (0, 0, 0)에서 (x, y, z) 방향으로 화살표를
행렬(Matrix)은 수학에서 숫자나 기호, 또는 함수들이 직사각형 형태로 배열된 것을 말합니다. 행렬은 여러 개의 행(row)과 열(column)로 이루어져 있으며, 주로 선형 대수학에서 많이 사용됩니다. 행렬의 각 요소는 특정 위치에 있으며, 이 위치는 행과 열로
유니티(Unity)는 3D 게임 개발 및 시뮬레이션을 위한 강력한 엔진입니다. 유니티에서 3D 모델을 구성하는 것은 3D 게임 및 애플리케이션의 중요한 부분입니다. 여기에서는 유니티에서 3D 모델을 구성하는 과정과 주요 요소들을 설명하겠습니다. 3D 모델 가져오기 유
프로그램을 개발 하다 보면 유효하지 않은 메모리인 가비지(Garbage)가 발생하게 됩니다. C나 C++을 이용하다보면 동적으로 할당한 메모리가 대표적으로 가비지입니다. 두 언어에서는 개발자가 직접 free()나 delete()함수로 할당해제를 해야 메모리누수가 일어나
업로드중..이벤트(Event)란 프로그램에 감지되고 처리될 수 있는 동작이나 사건을 의미합니다. 쉽게 말하면 값이나 참조가 변경됨에 따라 실행되는 함수들을 의미합니다. 보통 게임에서 많이 사용하며, 다른 값들과 상호작용이 되기 때문에, 상당히 유용합니다.이벤트 드리븐(
유니티에서 Scene에 마우스로 오브젝트를 배치하거나 오브젝트를 이동시키거나 오브젝트를 선택해봤을 것입니다. 근데 유니티상에서 3D인 물체를 어떻게 2D인 모니터를 통해서 정확히 오브젝트를 집을 수 있을까요? 바로 레이케스트(Raycast)를 이용한 것입니다.Rayca
프로젝트를 시작했을 때 맵하나의 단위를 Scene이라고 합니다. Scene을 사용하여 메인 메뉴, 각각의 레벨 및 기타 여러가지를 만들 수 있습니다. 하나의 Scene 파일은 한 레벨로 생각해야 합니다. 각 Scene에서는 환경과 장애물, 장식을 배치하고 게임을 세세하
유니티에서 스크립트를 작성하다 보면 다른 오브젝트의 정보들이 필요할 때가 많습니다. 그 때 그 오브젝트를 불러올 수 있는 함수들이 유니티 안에 존재합니다. 그 중 GameObject를 그대로 가져오는 함수인 Find계열 함수에 대해 알아보겠습니다.Find계열 함수는 이
Unity에서 높이맵(Heightmap)은 지형(Terrain) 시스템에서 지형의 높이 데이터를 표현하기 위해 사용되는 흑백 이미지입니다. 높이맵을 사용하면 지형의 굴곡과 높낮이를 쉽게 설정할 수 있어, 복잡한 지형을 손쉽게 생성하고 조작할 수 있습니다. 높이맵은 흑백
월드를 구성하는 방법은 크게 3가지로 나뉩니다. Simless(심리스) 방식Zone Loading(존 로딩) 방식Room(룸) 방식각각의 방식은 장점도 있고 단점도 있습니다.현재 존재하고 있는 맵과 현재 맵에 인접해 있는 맵들을 한번에 로딩한 후 플레이어의 이동에 따라
유니티(Unity)에서 Resources 폴더는 특정 리소스를 런타임에 동적으로 로드할 수 있도록 하기 위해 사용되는 특별한 폴더입니다. 이 폴더에 있는 파일들은 빌드 시 자동으로 프로젝트에 포함되며, 코드에서 Resources.Load 함수를 사용해 해당 리소스를 불
Unity에서 입력을 처리하는 방식에는 두 가지 주요한 방법이 있습니다. Input Manager와 Input System입니다. 두 시스템 모두 게임에서 플레이어의 입력(키보드, 마우스, 컨트롤러 등)을 처리하기 위한 목적으로 사용되지만, 각기 다른 방식과 장점을 가
유니티의 이벤트 함수는 게임 오브젝트의 라이프사이클과 관련된 특정 타이밍에 호출되며, 특정 상황에서 유용하게 사용될 수 있습니다.컴포넌트가 활성화될 때 호출됩니다.모든 게임 오브젝트의 초기화가 완료되었을 때, 첫 번째로 실행되는 함수입니다.일반적으로 스크립트 간의 의존
유니티에서 컴포넌트는 오브젝트를 이루고 있는 하나의 단위로 취급됩니다. 오브젝트가 상황에 따른 움직임과 반응을 일으키기 위해서는 컴포넌트가 필요합니다. 그 중 대표적으로 많이 사용하는 컴포넌트들을 소개하겠습니다.유니티에서 모든 오브젝트들이 가지고 있는 컴포넌트입니다.
UI(User Interface) UI는 User Interface의 줄임말로 말 그대로 사용자가 사용하는 용도로 쓰입니다. 여기서 인터페이스의 뜻은 서로 다른 두 개의 시스템이나 장치 사이에서 정보나 신호를 주고 받는 접점이나 경계면을 말합니다. GUI(Graph
RectTransform은 게임오브젝트의 Transform을 상속받은 컴포넌트입니다. UI들은 위치와 크기 조절이 더 자유로운 RectTransform을 사용합니다.Transform을 상속받은 만큼 맨 위는 피봇의 position을 결정하고, Width와 Height로
유니티에서 사용하는 언어는 C#입니다. C#은 객체지향 언어입니다. 객체지향 언어에서 핵심적인 개념중에 하나가 상속입니다. 따라서 상속은 C#에서 중요한 개념입니다. 상속이란? 다른 클래스에 정의된 동작을 재사용, 확장 수정하는 새 클래스를 만드는 것입니다. 좀더 쉽
인공지능이란 인간의 지능을 인공적으로 구현하려는 컴퓨터 과학의 한 분야입니다. 인공지능의 종류 약 인공지능(Weak) : 미리 정의된 규칙에 따라 특정한 문제만 해결 가능한 인공지능 강 인공지능(Strong) : 범용 인공지능(AGI). 특정 작업에 국한되지