래스터화/수정 이력

수정 이력

1개의 판이 있어요. 줄마다 펼쳐 바뀐 부분을 보거나, 두 판을 골라 비교할 수 있어요.

왼쪽 동그라미 = 이전 판, 오른쪽 = 이후 판
#304AI 조사: 게임 용어 문서GGWiki 자동 · · 현재 판+3,100자
1번째 줄 근처
추가: ## 개요
추가: 래스터화(rasterisation)는 벡터 그래픽 형식으로 기술된 이미지를 래스터 이미지, 즉 픽셀 또는 복셀 그리드로 변환하는 작업이다. 라틴어 'rāstrum(갈퀴, 스크레퍼)'에서 유래한 독일어 'Raster(격자, 프레임워크, 스키마)'를 어원으로 하며, 화소나 체적 요소가 갈퀴로 긁은 줄처럼 선형으로 배열된 데서 이름이 붙었다. 변환된 래스터 이미지는 컴퓨터 디스플레이, 비디오 디스플레이, 프린터에 표시하거나 비트맵 파일 형식으로 저장할 수 있다. 래스터화는 3D 모델을 그리는 기술이자 폴리곤, 선분 같은 2D 렌더링 기초 요소를 래스터 형식으로 변환하는 기술을 모두 아우른다[1][2][3].
추가:
추가: ## 작동 방식과 유형
추가:
추가: ### 2D 래스터화 기초 요소
추가:
추가: 래스터화는 선분, 원, 다각형 같은 2D 기초 요소를 픽셀 그리드 위에 그리는 것으로 시작한다. 선분 래스터화의 고전적 알고리즘으로는 브레젠험 선분 알고리즘(Bresenham's line algorithm)이 있으며, 원 래스터화에는 중점 원 알고리즘(midpoint circle algorithm) 등이 쓰인다. 이들은 정수 연산만으로 픽셀 좌표를 결정해 초기 하드웨어에서도 고속 동작이 가능했다[3].
추가:
추가: ### 3D 래스터화와 삼각형 처리
추가:
추가: 디지털 3D 모델은 보통 다각형으로 표현되며, 래스터화 전에 모든 다각형을 삼각형으로 삼각분할(triangulation)한다. 따라서 3D 래스터화의 핵심 문제는 삼각형 래스터화로 귀결된다. 인접한 두 삼각형(모서리를 공유하는 삼각형)을 래스터화할 때 다음 두 조건을 만족해야 한다.
추가:
추가: 첫째, 삼각형 사이에 구멍(래스터화되지 않은 픽셀)을 남기지 않아 래스터화된 영역이 인접 삼각형 표면과 정확히 일치하도록 완전히 채워져야 한다. 둘째, 어떤 픽셀도 두 번 이상 래스터화되지 않아야 한다. 즉 래스터화된 삼각형끼리 겹치지 않아야 하며, 이는 삼각형 처리 순서에 따라 결과가 달라지지 않게 하고 불필요한 오버드로(overdraw)로 연산 자원을 낭비하지 않게 한다[2][3].
추가:
추가: ### 래스터화 규칙: 왼쪽 상단 규칙
추가:
추가: 위 조건을 보장하기 위한 규칙 집합 중 대표적인 것이 왼쪽 상단 규칙(top-left rule)이다. 이 규칙에 따르면 픽셀이 다음 중 하나에 해당할 때만 래스터화된다.
추가:
추가: - 픽셀 중심이 삼각형 내부에 완전히 속할 때.
추가: - 픽셀 중심이 삼각형 모서리(꼭짓점인 경우 여러 모서리) 위에 정확히 놓이면서, 그 모서리가 '위쪽 모서리' 또는 '왼쪽 모서리' 중 하나일 때.
추가:
추가: 여기서 위쪽 모서리는 정확히 수평이면서 다른 모서리들 위에 있는 모서리이고, 왼쪽 모서리는 수평이 아닌 모서리 중 삼각형의 왼쪽에 있는 모서리다. 이 규칙은 경계선 상의 픽셀이 어느 삼각형에 속할지 결정해 준다. Direct3D와 많은 OpenGL 구현이 이 규칙을 따른다(OpenGL 규격 자체는 특정 규칙을 강제하지 않고 일관된 규칙만 요구한다)[2][3].
추가:
추가: ### 그래픽스 파이프라인 내 위치와 고정 기능 하드웨어
추가:
추가: 3D 모델을 화면 공간(2D 평면)에 래스터화하는 과정은 그래픽스 파이프라인 내 고정 기능(fixed-function, 프로그래밍 불가) 하드웨어가 수행하는 경우가 많다. 래스터화 기술 자체를 렌더링 시점에 수정할 동기가 적고, 특수 목적 회로가 높은 효율을 내기 때문이다. 반면 래스터화로 얻은 각 픽셀의 색상을 계산하는 쉐이딩(shading) 단계는 현대 GPU에서 완전히 프로그래밍 가능하며, 물리 기반 조명, 근사 모델, 예술적 의도 등 다양한 방식으로 구현된다[2][3].
추가:
추가: ### 품질 향상: 안티앨리어싱과 서브픽셀 정밀도
추가:
추가: 래스터화 품질은 안티앨리어싱(anti-aliasing)으로 개선해 '매끄러운' 모서리를 얻는다. 서브픽셀 정밀도(sub-pixel precision)는 픽셀 그리드보다 더 미세한 스케일의 위치를 고려하는 기법으로, 기초 요소의 끝점이 같은 픽셀 좌표로 떨어져도 서로 다른 결과를 내 더 부드러운 이동 애니메이션을 만든다. 단순하거나 오래된 하드웨어(예: 플레이스테이션 1)는 3D 래스터화에서 서브픽셀 정밀도가 부족해 지터(jitter)나 계단 현상이 두드러졌다[2][3].
추가:
추가: ## 그 밖의 주제
추가:
추가: ### 글꼴 래스터화
추가:
추가: 벡터 폰트(아웃라인 폰트)를 화면 해상도에 맞춰 비트맵 글리프로 변환하는 과정도 래스터화의 한 분야다. 힌팅(hinting), 서브픽셀 렌더링(ClearType 등)과 결합해 가독성을 높인다[2][3].
추가:
추가: ### 광선 추적과의 비교
추가:
추가: 래스터화는 광선 추적(ray tracing) 등 다른 렌더링 기법에 비해 매우 빠르기 때문에 대부분의 실시간 3D 엔진에서 채택된다. 그러나 래스터화는 장면 기하학에서 픽셀로의 매핑만 계산할 뿐, 픽셀 색상 계산 방식(전역 조명, 반사, 굴절 등)을 규정하지 않는다. 광선 추적은 물리적 광선 전파를 시뮬레이션해 더 사실적인 결과를 내지만 계산 비용이 훨씬 크다. 현대 GPU는 하드웨어 레이 트레이싱 유닛을 탑재해 두 기법을 혼합(하이브리드 렌더링)하기도 한다[2][3].
추가:
추가: ### 은면 제거와의 관계
추가:
추가: 래스터화 과정에서 깊이 버퍼(z-buffer)나 기타 은면 결정 알고리즘(hidden-surface determination)을 함께 사용해 가려진 면을 제거한다. 이는 래스터화 자체의 정의에 포함되지 않지만 실시간 파이프라인에서 필수적으로 결합된다[3].
추가:
추가: ### 스캔라인 렌더링
추가:
추가: 한 줄씩(scanline) 픽셀을 채워 나가는 전통적인 래스터화 방식으로, 초기 소프트웨어 렌더러와 일부 하드웨어에서 쓰였다. 현대 GPU는 병렬 처리에 적합한 타일 기반 또는 계층적 래스터화를 주로 사용한다[3].
추가:
추가: ### 래스터 이미지 프로세서(RIP)
추가:
추가: 인쇄 시스템에서 벡터 기반 페이지 기술 언어(PostScript, PDF 등)를 프린터 해상도의 비트맵으로 변환하는 장치나 소프트웨어를 래스터 이미지 프로세서라 부르며, 이 또한 2D 래스터화의 응용이다[3].
추가:
추가: ### 역변환: 래스터-벡터 변환
추가:
추가: 래스터 이미지를 벡터 그래픽으로 되돌리는 작업(이미지 트레이싱, 벡터화)은 래스터화의 역연산에 해당하며, 별도의 알고리즘과 용도(CAD 변환, 아트웍 복원 등)를 가진다[3].
추가:
추가: 이 문서는 GGWiki AI가 공개 자료(아래 출처)를 조사해 새로 쓴 초안입니다. 틀린 내용은 편집하거나 이의 제기로 알려 주세요.

편집 요청

편집 요청이 없어요.