전체 글 41

Chapter10: 3차원 콘텐츠 제작

3차원 공간의 설계우리가 보는 화면을 데카르트 좌표계로 표현했을 때, 3차원 공간을 설계하는 방법은 크게 두 가지로 구분된다.오른손 좌표계(Right-handed coordinate system) 모니터 화면에서 사용자 쪽으로 튀어나오는 방향을 +Z 축으로 간주 왼손 좌표계(Left-handed coordinate system) 모니터 화면에서 안쪽으로 들어가는 방향을 +Z 축으로 간주 💡 3D 좌표계를 설명할 때, 위와 아래 방향을 담당하는 축의 정보를 알려주면 유용하다.대표적으로 유니티 엔진은 Y업 왼손 좌표계, 언리얼 엔진은 Z업 왼손 좌표계를 사용한다.3차원 공간의 트랜스폼3차원 공간의 크기 변환 행렬과 이동 변환 행렬은 아래와 같다.3차원 공간 이동 변환을 위해 한 차원 더 늘어난 4차원 공간..

Chapter09: 게임 엔진

게임 엔진의 구성 요소게임 엔진 내에는 개발자들이 다루기 편리한 인터페이스가 있고 크게 게임 공간을 설계하는 작업 공간과 게임 데이터를 관리하는 작업 공간으로 나뉜다. 게임 공간을 씬(Scene) 혹은 레벨(Level)이라고 부르며, 데이터는 리소스(Resource) 혹은 애셋(Asset)이라 부른다.씬의 구조게임 공간 내에서 다양한 종류의 물체를 배치할 수 있는데, 이를 게임 오브젝트(Game Object) 또는 액터(Actor)라고 부른다.게임 오브젝트는 게임 엔진에서 콘텐츠를 구성하는 기본 단위로 관리되며, 게임 오브젝트의 묶음으로 씬을 관리한다.게임 오브젝트 에는 위치, 회전, 크기로 구성된 트랜스폼(Transform) 정보를 사용하여 관리한다.최종 렌더링 과정에서는 모델링 행렬을 사용해 렌더링할..

Chapter08: 삼각형

세 점의 결합 앞서 두 점의 결합을 통해 선분이 만들어진다는 것을 확인했다.세 점을 결합하면 스칼라는 3개로 늘어나며, 세 스칼라의 합은 1이다.각 점인 P1, P2, P3가 있을 때, 아핀 결합 식은 다음과 같이 전개할 수 있다.$$ P' = a \cdot P_1 + b \cdot P_2 + (1 - a - b) \cdot P_3 $$위의 식에서 a와 b의 값을 [0, 1] 범위로 고정시키면 삼각형 도형이 만들어지는 것을 확인할 수 있다.이렇듯 아핀 결합에서 모든 스칼라의 값을 [0,1] 범위로 고정시키는 것을 컨벡스 결합(Convex combination) 이라고 한다.컨벡스 결합 식은 아핀 결합 식에 각 스칼라 범위를 [0, 1]로 제한하는 조건을 추가하여 다음과 같이 표현할 수 있다.$$ \sum..

Chapter07: 내적

벡터의 내적(Dot product)벡터의 내적은 같은 차원의 두 벡터가 주어졌을 때, 벡터를 구성하는 각 성분을 곱한 후 더해 스칼라를 만들어내는 연산이다.내적의 결과값은 실수이며 ⋅ 으로 표현한다. 2차원 벡터의 내적을 계산하는 수식은 다음과 같다.$$ \vec u = (a, b) \\ \vec v = (c, d) \\ \vec u \cdot \vec v = a \cdot c + b \cdot d $$내적의 성질내적은 스칼라의 곱셈과 덧셈으로 구성되어있으므로 교환 법칙이 성립하며, 결과가 벡터가 아닌 스칼라로 나오는 성질로 인해 결합법칙은 성립하지 않는다.$$ 교환 법칙 : \vec u \cdot \vec v = \vec v \cdot \vec u \\ 결합 법칙 : \vec u \cdot (\vec ..

Chapter06: 아핀 공간

지난 챕터에서는 세 변환은 행렬 곱을 사용해 표현할 수 있었지만, 이동 기능은 행렬 곱이 아닌 벡터의 덧셈을 사용해서 구현했다.일반적인 행렬로는 이동에 대응하는 선형 변환을 구현할 수 없기 때문이다. 이번에는 행렬 곱으로 이동 기능을 구현하는 방법에 대해서 배워보자. 벡터 공간의 일부 중, 이동이 가능한 부분 공간을 아핀 공간(Affine Space)라고 부른다.이동 변환을 위한 아핀 공간임의의 벡터 (x,y)를 지정한 크기(a,b)만큼 이동시키는 기능은 다음과 같이 행렬의 덧셈으로 구할 수 있다.하지만 선형성이 되기 위해서 기저벡터는 원점에서부터 출발해야 한다는 조건을 만족해야 하기 때문에, 행렬 곱을 만족하는 정방행렬 A가 존재하지 않는다.$$ \begin{bmatrix} x \\ y \end{bma..

Chapter05: 행렬

선형성: 예측 가능한 비례 관계수학에서 선형성을 다음과 같은 가법성(additvity)과 동차성(homogeneity of degree 1) 두 가지 조건을 모두 만족하는 함수의 성로 정의한다.가법성 - 함수가 입력값들의 합에 대해 아래와 같은 성질을 만족하는 것$$ f(x+y)=f(x)+f(y) $$동차성 - 함수가 입력값에 상수를 곱한 것에 대해 아래와 같은 성질을 만족하는 것(c는 스칼라 상수)$$ f(cx)=cf(x) $$선형 함수(linear function)입력에 사용하는 요소 x와 출력이 모두 실수인 함수에서 원점을 지나는, 다음과 같은 직선의 함수를 생각할 수 있다.$$ f(x)=ax $$출력의 원소를 y로 표시했을 때 $y = ax$로 표현되며, 이를 그래프로 나타내면 다음과 같다.이 함..

Chapter04: 삼각함수

삼각비직각삼각형을 구성하는 세 변에서 두 변을 뽑아 각각의 비례관계를 나타낸 것을 삼각비(Trigonmetric Ratio) 라고 한다.삼각비에는 사인(sine), 코사인(cosine), 탄젠트(Tangent)가 대표적이다.밑변의 길이를 c, 높이의 길이를 a, 빗변의 길이를 b로 설정하고 빗변과 밑변의 사잇각을 θ라고 했을 때, 삼각비의 관계는 다음과 같이 분수식으로 표현할 수 있다.$$ sin\theta = \frac{a}{b}, \ \ cos\theta = \frac{c}{b}, \ \ sin\theta = \frac{a}{c} $$ 직각삼각형에서 측정할 수 있는 사잇각은 0도 보다 크거나 90도 보다 작아야 한다.위와 같은 삼각형을 데카르트 좌표계에 배치하고 사잇각의 범위를 실수 전체로 확장한 대..

Chapter03: 벡터와 스칼라

데카르트 좌표계직선의 수 집합을 수직으로 배치해 평면을 표기하는 방식이다.데카르트 좌표계의 한 원소는 곱집합과 동일하게 순서쌍으로 표현하며 이것을 좌표(Coordinate)라고 부른다.벡터(Vector)와 스칼라(Scalar)벡터(Vector)크기와 방향이 있는 양이다.화살표로 표현한다. (길이는 크기, 화살표 방향은 방향)숫자와 방향을 같이 표현해야 한다.$\vec v = (x, y)$ 와 같이 표현한다.스칼라(Scalar)크기만 있는 양이다.방향은 존재하지 않는다.숫자 하나로 표현이 가능하다.벡터 공간의 연산공리적 집한론의 관점에서 정의된 벡터 공간은 두 가지의 기본 연산이 존재한다.벡터의 합$$ \vec v_1 + \vec v_2 = (x_1, y_1) + (x_2, y_2) = (x_1 + x_2..

신호와 소음

한 청년이 지혜로운 현자에게 물어보았다."성공을 하려면 어떻게 해야 합니까?"현자는 대답했다."물이 꽉 찬 항아리를 머리에 지고 내일 다시 찾아오시오. 단, 한 방울이라도 물이 바닥에 떨어져서는 안 되오."다음 날, 젊은이는 물이 꽉 찬 항아리를 머리에 지고 현자를 찾아갔다.현자의 집을 가기 위해서는 마을의 시장을 지나야 했는데 큰 장이 서서 물건을 파고사는 사람들의 소리로 매우 북적였다.젊은이는 한 방울의 물도 떨어뜨려서는 안 됐기에 온 정신을 항아리에만 집중할 수밖에 없었다.그렇게 겨우 현자의 집에 도착한 젊은이에게 현자가 물었다."오는 길에 시장을 들렸소?""그렇습니다.""시장에서 무엇을 보았는지 말해주시오"물항아리에만 온 정신을 집중했던 젊은이는 시장에서 무엇을 보았는지 아무것도 기억하지 못했다...

Daily Life 2025.09.11

Chapter02: 수(Number)

수와 집합집합(Set)이라는 개념은 서로 구분되는 원소(Element)로 구성된 묶음을 의미한다.이러한 집합론을 소박한 집합론(Native set theory)라고 한다.자연수 : 물건을 세거나 순서를 지정하기 위해 사용되는 수정수 : 자연수와 자연수의 음수 0을 포함하는 수유리수 : 분수로 나타낼 수 있는 수무리수 : 두 정수 비 혹은 분수로 나타낼 수 없는 수실수 : 유리수와 무리수를 모두 포함하는 수복소수 : 실수와 허수 단위 i를 곱한수(a+bi)사원수 : 실수와 3개의 허수 단위 i, j, k를 이용한 수(a+bi+cj+dk)위 집합들의 관계를 벤 다이어그램(Venn diagram)으로 나타내면 다음과 같다.위처럼 나타내려면 집합의 성질을 참과 거짓으로 명확하게 구분해줄 수 있는 명제가 필요하다..