Apple🍎/Metal
-
셰이더(shader)는 무엇인가?Apple🍎/Metal 2025. 3. 20. 22:27
다음은 애플 디벨로퍼 홈페이지에 있는 Metal 의 소개입니다. 일단 Metal 을 사용하면 GPU 프로그래밍을 가능하게 해준다고는 들었는데, 셰이딩 언어는 또 뭘까요? 사실 GPU(Graphics Processing Unit)는 그래픽 랜더링을 하기 위해 만들어진 만들어진 장치입니다.따라서 GPU 프로그래밍을 이해를 위해 그래픽 프로그래밍의 발전과정을 함께 셰이더라는 용어에 대해 알아보도록 하겠습니다. 고정 파이프라인 시대 (1990년대 초반)1990년대 초반, 3D 그래픽을 표현하는 방식은 지금과 매우 달랐습니다. 이 시기에는 '고정 파이프라인'이라는 방식으로 그래픽 렌더링이 이루어졌습니다. 이는 마치 조립 라인과 같이, 3D 그래픽을 처리하는 단계가 하드웨어 제조사에 의해 사전에 정의되고 고정되어..
-
버텍스 노멀과 평균 노멀 : 빛을 어떻게 받는지 결정Apple🍎/Metal 2025. 3. 18. 14:16
노멀(Normal)이란 무엇인가?노멀 벡터는 표면에 수직으로 향하는 벡터로, 마치 땅에서 하늘을 가리키는 막대기와 같이 표면에서 바깥쪽으로 향합니다. 노멀 벡터의 중요성조명 계산빛이 표면에 어떻게 반사될지 결정하는 핵심 요소입니다.빛의 방향과 노멀 벡터 사이의 각도가 표면의 밝기를 결정합니다.빛의 방향과 노멀 벡터의 내적(dot product)이 표면의 밝기를 결정합니다.내적 값이 클수록 표면이 밝게 보입니다.이 각도가 작을수록(빛이 노멀과 같은 방향일수록) 표면이 밝게 보입니다.반대로 각도가 클수록 표면이 어둡게 보입니다.앞면/뒷면 결정 (Backface Culling)3D 모델에서 어떤 면이 보여야 하고 어떤 면이 숨겨져야 하는지 결정합니다.관찰자를 향하는 노멀을 가진 면은 "앞면"으로 간주되어 렌더..
-
3D 모델링 기초 : 삼각형으로 일단 쪼개 보자Apple🍎/Metal 2025. 3. 17. 22:03
평면인 모니터에 어떻게 3d 객체를 모델링해서 표현할 수 있을까요? 위와 같은 3d 모델은 사실 하나의 덩어리가 아니라 여러 다각형들이 서로 연결되어 만들어집니다. 다각형은 선분으로 이루어진 평면 도형을 말하는데요. 예를 들어 삼각형, 사각형, 오각형 등 수많은 종류의 다각형이 존재합니다. 그중에서도 제일 간단한 형태인 삼각형을 이용하면 모델링을 하는데 필요한 연산을 단순하게 만들 수 있습니다. 그렇다면 어떻게 삼각형을 이용해 정보들을 구조화하여 3d 모델을 하는데 사용할 수 있을까요?버텍스( Vertex )로 삼각형 그리기 버텍스는 3D 공간에서의 한 지점을 의미합니다.그리고 각 버텍스 사이를 연결하는 선분을 '엣지(Edges)'라고 부르며세 엣지로 둘러싸인 삼각형의 표면 영역을 '페이스(face)'라..
-
부동 소수점이란?Apple🍎/Metal 2025. 1. 28. 16:24
컴퓨터가 실수를 표현하는 방식 10진법 우리가 일상적으로 수를 사용할 때는 10진수 체계를 사용합니다. 0부터 9까지 총 10개의 숫자를 사용하며 각 자릿수는 10의 제곱의 형태로 표현합니다. 예를 들어 "2025"라는 숫자는 다음과 같이 이해할 수 있습니다. 2 × 10^3 = 20000 × 10^2 = 02 × 10^1 = 205 × 10^0 = 52000 + 0 + 20 + 5 = 20252진법위와 달리 2진법은 0과 1 단 두개의 숫자를 사용하며 각 자릿수는 2의 제곱의 형태로 표현합니다. 예를 들어 "1101"라는 숫자는 다음과 같이 계산됩니다. 1 × 2^3 = 81 × 2^2 = 40 × 2^1 = 0 1 × 2^0 = 18 + 4 + 0 + 1 = 132진법으로 실수를 표현하는 방법정수..