CrownyBrowser v2.0 GPU렌더러.한선
개요
CrownyBrowser v2.0의 GPU 가속 렌더링 레이어를 한선씨로 구현했다. Metal(macOS) / Direct3D(Windows) / Vulkan(Linux) / OpenGL(폴백) 4백엔드 추상화.
무엇을 했는지
/Users/ef/CrownyBrowser/src/v2/GPU렌더러.한선 작성 (1,637줄, 15섹션):
| 섹션 | 내용 |
|---|---|
| 1 | 전역 상태 — GPU 디바이스 레지스트리 |
| 2 | 내부 유틸리티 (ID생성, 16진수, 색상파싱) |
| 3 | GPU 디바이스 관리 (초기화/종료/정보/백엔드선택) |
| 4 | 텍스처 관리 (생성/업로드/삭제/아틀라스) |
| 5 | 셰이더 관리 (생성/프로그램/유니폼) |
| 6 | 버퍼 관리 (정점/인덱스/유니폼/갱신) |
| 7 | 드로우 명령 (렌더패스, 사각형/그라데이션/그림자/보더/이미지/SDF텍스트/선/원/클리핑/블렌드) |
| 8 | 컴포지팅 레이어 (생성/합성/투명도/변환/필터) |
| 9 | 타일 래스터화 (맵생성/업데이트/무효화/가시계산/렌더링) |
| 10 | SDF 폰트 렌더링 (아틀라스/글리프조회/측정/렌더링) |
| 11 | 애니메이션 프레임 (시작/끝/FPS/예산/더블버퍼) |
| 12 | 메모리 관리 (사용량/풀생성/할당/해제/GC) |
| 13 | 2D 변환 행렬 (항등/이동/스케일/곱) |
| 14 | 색상 유틸리티 (보간/투명도) |
| 15 | 진단 출력 + 통합 테스트 |
4상 균형 3진 상태
- T(+1) = 활성/사용가능/성공
- O(0) = 대기/업로드중/처리중
- A(-1) = 오류/사용불가/해제됨
- U = 미초기화
관련 파일 경로
- 구현:
/Users/ef/CrownyBrowser/src/v2/GPU렌더러.한선 - 기존 렌더러:
/Users/ef/CrownyBrowser/src/native-render.한선 - 브라우저 CLAUDE.md:
/Users/ef/CrownyBrowser/CLAUDE.md
컴파일 명령
bashcd /Users/ef/CrownyOS/crownyc
./hanseonc_high /Users/ef/CrownyBrowser/src/v2/GPU렌더러.한선 > /tmp/gpu.toau
./crownyc run /tmp/gpu.toau
잔여 이슈
글자코드()내장함수 존재 여부 확인 필요 (SDF섹션 사용) — 없으면 문자열 인덱싱으로 대체맵.한선라이브러리 import 필요 여부 확인 (맵생성 등은 내장이나 import 명시)- 실제 백엔드 바인딩은 C 레이어에서
체계()호출로 연결 예정 - 컴파일 테스트 후 VM 한계(문자열 32KB, 배열 1023) 도달 시 섹션 분리 필요