← 목록
브라우저 2026-05-19 2KB 읽기 2분

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진수, 색상파싱)
3GPU 디바이스 관리 (초기화/종료/정보/백엔드선택)
4텍스처 관리 (생성/업로드/삭제/아틀라스)
5셰이더 관리 (생성/프로그램/유니폼)
6버퍼 관리 (정점/인덱스/유니폼/갱신)
7드로우 명령 (렌더패스, 사각형/그라데이션/그림자/보더/이미지/SDF텍스트/선/원/클리핑/블렌드)
8컴포지팅 레이어 (생성/합성/투명도/변환/필터)
9타일 래스터화 (맵생성/업데이트/무효화/가시계산/렌더링)
10SDF 폰트 렌더링 (아틀라스/글리프조회/측정/렌더링)
11애니메이션 프레임 (시작/끝/FPS/예산/더블버퍼)
12메모리 관리 (사용량/풀생성/할당/해제/GC)
132D 변환 행렬 (항등/이동/스케일/곱)
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) 도달 시 섹션 분리 필요