크라우니 디자인 시스템 v1.0 — libs/디자인.한선
개요
11단계 3D GUI + 누적 UI 패턴을 한선씨 디자인 시스템으로 통합.
4상 테마 색상 팔레트, 컴포넌트 라이브러리, 레이아웃 헬퍼, PS풍 테마 지원.
FB opcode 직접 래핑. 의존성 없음(내장함수만).
완료 항목
libs/디자인.한선 생성 (6196 큐브, 컴파일 OK)
- 샘플 화면 렌더 완료: 800×520 PPM →
/tmp/디자인샘플.ppm (1.2MB)
- PNG 검증:
/tmp/디자인샘플.png (28KB) — 시각 확인 완료
구조
Layer 0 — 4상 팔레트
상_T(0)/상_O(1)/상_A(2)/상_U(3)
_팔레트R(상), _팔레트G(상), _팔레트B(상) — 현재 테마 자동 반영
디자인_밝은테마() / 디자인_어두운테마() 전환
Layer 1 — 레이아웃 헬퍼
- 간격:
간격_xs(4) / 간격_sm(8) / 간격_md(16) / 간격_lg(24) / 간격_xl(36) / 간격_2xl(48)
- 둥글기:
둥글기_sm(3) / 둥글기_md(6) / 둥글기_lg(12) / 둥글기_xl(20)
- 글자크기:
글크기_작은(10) ~ 글크기_히어로(36)
- 중앙 계산:
레이아웃_중앙x(컨텐츠, 컨테이너) / 레이아웃_중앙y
Layer 2 — FB 래퍼
도형_강조채움(x,y,w,h), 도형_배경채움, 도형_음영채움, 도형_구분선, 도형_강조둥근, 도형_그림자
Layer 3 — 컴포넌트
- 버튼:
디자인_버튼(x,y,w,h,텍스트,종류) — 0=기본T/1=보조/2=위험/3=성공
- 카드:
디자인_카드(x,y,w,h) / 디자인_카드제목(x,y,w,h,제목,본문)
- 메뉴타일:
디자인_메뉴타일(x,y,w,h,아이콘,레이블,강조) — PS XMB 풍 반사광+테두리
- HUD:
디자인_HUD바(x,y,w,h,제목,부제) / 디자인_HUD배지(cx,cy,r,텍스트)
- 입력:
디자인_입력(x,y,w,h,힌트)
- 태그:
디자인_태그(x,y,텍스트,종류) — 인라인 알약형 태그
- 그라데이션:
디자인_그라데이션(x,y,w,h,r1,g1,b1,r2,g2,b2,방향) / 디자인_PS배경(w,h)
Layer 4 — 화면 헬퍼
디자인_화면시작(w,h,테마) — 초기화+배경
디자인_화면끝() — 화면저장
관련 파일
- 라이브러리:
/Users/ef/CrownyOS/crownyc/libs/디자인.한선
- 렌더 샘플 PNG:
/tmp/디자인샘플.png
- 기반 뷰 시스템:
/Users/ef/CrownyOS/crownyc/libs/뷰.한선
- 기반 스타일:
/Users/ef/CrownyOS/crownyc/libs/스타일.한선
- 3D 엔진 참조:
/Users/ef/CrownyOS/crownyc/apps/gui3d/3D엔진.한선
컴파일/실행
bashcd /Users/ef/CrownyOS/crownyc
./hanseonc_high libs/디자인.한선 > /tmp/디자인.toau 2>/dev/null && ./crownyc run /tmp/디자인.toau
CROWNY_FB_PPM=/tmp/샘플.ppm ./crownyc run /tmp/디자인.toau
sips -s format png /tmp/샘플.ppm --out /tmp/샘플.png
잔여 이슈
디자인_크라우니배경: 밝은테마에서만 호출 시 그라데이션 수직 상한 미검증
- 그림자 투명도 모방 (RGB알파사각형 789 opcode 활용 가능 — 적용 시 더 자연스러움)
- 애니메이션 전환 헬퍼 미포함 (화면전환.한선 연동 가능)