Make 3.0 · 오브젝트 네이밍 규칙

네이밍 규칙 릴리스노트

현재 전체 규칙(누적)을 먼저 보고, 아래에서 버전별 변경 이력을 따라갈 수 있는 문서입니다. 규칙 전문은 SSOT doc/MAKE_FORMAT.md 를 따릅니다.

현재 버전  v1.2 · 2026-08-27

현재 전체 규칙 (누적 요약)

v1.0 부터 v1.2 까지 누적된 지금 유효한 전체 규칙의 요약입니다. 실무에선 이 절만 보면 됩니다. (버전별 변경 이력은 아래 「버전 변경사항 요약」)

이름 문법

인스턴스 이름은 아래 순서로 조립합니다. 필요한 토큰만 쓰고 나머지는 생략합니다.

[앞마커]_[Family]_[Name]_[상태]_[역할] 예: Btn_Gnb_Home_On · Header_Title_Txt

패밀리 트리 구조

이름은 트리 안에서 소속이 드러나게 짓습니다. 노드 종류는 색으로 구분됩니다.

Family그룹역할마커

내비게이션 (Gnb · Lnb · Bnb)

  • Screen1 / World1내비는 Screen·World 어디든
    • GnbFamily전역 내비 · 1뎁스
      • Gnb_Body그룹"차체" 메뉴
        • Gnb_Body_Img역할버튼면
          • Gnb_Body_Txt역할라벨
        • Btn_Gnb_Body마커히트영역
    • LnbFamily지역 내비 · 2뎁스 (Gnb 하위)
      • Lnb_Hood그룹"후드" 하위메뉴
        • Lnb_Hood_Img역할버튼면
          • Lnb_Hood_Txt역할라벨
        • Btn_Lnb_Hood마커히트영역
    • BnbFamily하단바 · Screen 기본
      • Bnb_Next그룹이전/다음(선택)
        • Bnb_Next_Img역할
        • Btn_Bnb_Next마커히트영역
      • Bnb_Subtitle_Txt역할자막(Nar_ 오디오와 별개)
      • Pagination그룹페이지 카운터
        • Pagination_Txt역할"1 / 12"

단독 텍스트 블록 (Header · Guide)

  • Screen1 / World1
    • Header그룹상단 블록(래퍼)
      • Header_Title_Txt역할
      • Header_Subtitle_Txt역할있을 때만
      • Header_Caption_Txt역할있을 때만
    • Guide그룹중앙 안내
      • Guide_Title_Txt역할
      • Guide_Caption_Txt역할

어휘 — 앞마커 · Family · 역할 · 상태 · 방향

앞마커 (행동, 닫힌 집합)

마커의미예시
Ani_애니메이션 있음Ani_Cupcake, Ani_Poi_Pump_01_Img
Btn_탭/누름 이벤트(Tap·DoubleTap·PressStart·PressEnd) = 히트영역Btn_Save, Btn_Gnb_Home_Off
Col_콜리전 이벤트(CollisionEnter/Exit) — 끌 객체 등Col_Card
Tts_텍스트 읽어주기(TTS)Tts_StartHeadline
VR_360 비디오 객체 (일반 비디오와 구분)VR_Sky, VR_Tour
(자동계열)OnEnable/OnDisable/PlaybackEnd

UI Family

Family의미예시
GnbGlobal Navigation Bar — 1뎁스(전역·1차) 내비Gnb_Body
LnbLocal Navigation Bar — 2뎁스(지역·하위) 내비 (선택된 Gnb 하위 메뉴)Lnb_Hood
BnbBottom Bar — 이전/다음·자막·페이지 (내비 뎁스와 별개)Bnb_Next, Bnb_Subtitle_Txt
Modal화면 차단 팝업 (딤 O·중앙)Modal_Exit
Popup일반 팝업 (딤 X·비차단)Popup_Guide
PnlPanel (패널·컨테이너 판)Pnl_Rotation
Logo로고·브랜드 마크Logo_Img, Btn_Logo
Toast가이드·알림 (화면 고정·자동소멸)Toast_Save
PoiPoint of Interest (공간 주목 마커)Poi_Pump_01
TagName Tag (이름표, Poi 의 선택적 자식)Tag_Pump_01

역할 슬러그

역할 슬러그의미
_Img시각 이미지 — 버튼면/배경. 컴포넌트 내 구분용
_Ic_Img아이콘 이미지 — 한 컴포넌트에 이미지가 여럿(버튼면+아이콘)일 때 Ic 한정어로 구분
_Mdl3D 모델/메시 (_Img 의 3D판)
_Txt텍스트 라벨 (구 _Label_Text, v1.1 _Txt)
_Bg배경 — 영역(패밀리) 배경 1개, 영역명 붙임
Btn_ (앞마커)투명 히트영역 + 이벤트 — 뒤 _Btn 아닌 Btn_

상태 (State)

Suffix상태의미
(없음)Default기본 상태 (접미사 생략)
_PressedPressed눌린 상태
_OnOn켜짐 / 활성 (토글)
_OffOff꺼짐 / 비활성 (토글 · 상호작용 가능)
_DisabledDisabled사용 불가 (상호작용 막힘 · 흐리게)

방향 (Direction)

Suffix의미
_LeftLeft
_RightRight
_UpUp
_DownDown
_ClockwiseClockwise (회전 전용)
_AntiClockwiseAnti-clockwise (회전 전용)

씬 계층

최상위 컨테이너는 엔진식 Screen1(2D UI)·World1(3D). 장면 추가 시 Screen2/World2같은 번호 = 한 장면. 형제 변형번호 _01(밑줄+두 자리)과는 별개. 방향은 항상 부모경로 포함(Btn_Pnl_Rotation_Left).

타이포그래피

크기는 fontSize 가 아니라 scale 로 제어. World·Screen 객체가 같은 값을 씁니다.

scale = 디자인px ÷ 137 (137 = fontSize1·scale1 실측 em, Pretendard)
역할굵기pxscale
씬 타이틀 (H1)Bold520.38
모달·Guide 타이틀Bold440.32
섹션 헤더 (H2)Bold380.28
메뉴·정보값·부제Medium340.25
본문·자막·캡션Medium310.23

World ↔ Screen

엔진 배율(스크린 ×1000)과 1px=1mm 가 상쇄돼, 같은 scale 값이면 같은 크기로 보입니다.

Screen 객체

배치anchorPosition (픽셀)
부모Screen1 (scale 1000)
크기scale = px ÷ 137

World 객체

배치position (미터)
부모Scene (scale 1)
크기scale = px ÷ 137 (동일)

미디어 · 한글 정책

미디어

오디오Bgm / Sfx / Nar
비디오내용 이름만 · 360=VR_
3D 모델.glb (자식=부모명 포함)

한글 · 이름

node name영문 PascalCase 통일
표시명name 과 동일(한글 별칭 안 씀)
한글 허용콘텐츠 텍스트 내용에만

샘플 — Screen · World 객체판

v1.2 규칙을 적용해 라이브 Make 에 생성. 같은 scale 값, 배치 좌표계만 다름(Screen=픽셀 앵커 / World=미터). 영문+한글 혼합.

Screen 객체판 — Header(상단)·Guide(중앙)·Bnb(하단) 텍스트가 앵커 배치된 스크린 UI 캡처
Screen 객체판 · anchorPosition 배치 (상·중·하)
World 객체판 — Header/Guide/Bnb 블록이 크기 위계와 함께 렌더된 3D 뷰포트 캡처
World 객체판 · position(미터) 배치

버전 변경사항 요약

각 버전에서 무엇이·왜 바뀌었는지의 이력입니다.

v1.22026-08-26현재
단독 텍스트 블록 그룹핑 + 라이브 실측 타입스케일
변경사항
텍스트
버튼에 속하지 않는 단독 텍스트 블록 신설 — Header(상단 식별 제목)·Guide(중앙 안내)·Bnb(하단 자막)·Pagination.
텍스트
텍스트 역할을 Title / Subtitle / Caption 3종으로 통일(모두 _Txt), <컨테이너>_<역할>_Txt 접두 상속.
텍스트
Caption = ‘부가설명’ 의미로 고정(하단 자막과 혼동 방지).
타이포그래피
타입스케일을 라이브 엔진 실측으로 재보정 — fontSize=1 고정, 크기는 scale = 디자인px ÷ 137.
타이포그래피
World·Screen 객체가 같은 scale 값 사용(배치만 anchorPosition 픽셀 / position 미터). 램프 상향 52/44/38/34/31px.
Family
내비를 위치가 아닌 뎁스로 정의Gnb(1뎁스·전역) / Lnb(2뎁스·지역, 구 Snb 대체). 측면에 놓여도 최상위면 Gnb. 배치 방향은 Direction 속성으로 분리(웹 IA Global/Local 정합).
Family
Bnb(하단바)를 Gnb동일 컴포넌트 구조로 정형화 — Bnb_Next_Img + Btn_Bnb_Next, Bnb_Subtitle_Txt. Screen 기본, World 는 Popup 자막·기본 미사용.
버전·메타
이름 = 영문 PascalCase 통일 — 노드 name = 에디터 표시명 일치. 한글 별칭(DisplayTitle) 이원화 폐지(사용자가 표시명만 보고 지목 어려움 해소). 한글은 콘텐츠 텍스트 내용에만(이름·표시명엔 0건), i18n 은 콘텐츠 레이어에서.
패밀리 트리 구조
단독 텍스트 블록 신설 — v1.2
  • Screen1
    • Gnb_Home그룹(v1.1 컴포넌트 모델 그대로)
    • Header그룹변경상단 텍스트 블록
      • Header_Title_Txt역할변경
      • Header_Caption_Txt역할변경부가설명
    • Guide그룹변경중앙 안내
      • Guide_Title_Txt역할변경
타이포그래피

크기 제어를 fontSizescale 로 전환(scale = px ÷ 137), World·Screen 동일 scale, 램프 상향.

역할굵기pxscale
씬 타이틀 (H1)Bold520.38
모달·Guide 타이틀Bold440.32
섹션 헤더 (H2)Bold380.28
메뉴·정보값·부제Medium340.25
본문·자막·캡션Medium310.23
v1.12026-08-21
행동 앞마커 체계 도입 + T2 워크북 정합
변경사항
앞마커
행동(애니·이벤트·음성·360)을 이름 맨 앞 마커로 통일 — Ani_/Btn_/Col_/Tts_/VR_. 이름만 봐도 그 노드가 무슨 행동을 갖는지 즉시 판별.
버튼·히트영역
히트영역을 접두 Btn_ 로 일원화(뒤 _Btn 폐지). 모든 상호작용 요소가 투명 Btn_ 노드를 갖게 해 “이벤트 찾기 = Btn_ 찾기”로 AI·린트가 예측 가능.
컴포넌트 역할
역할 슬러그 정비 — _Ico 폐지→_Img(아이콘도 이미지로 흡수, 다중 이미지 구분 시 _Ic_Img), _Text_Txt(컴포넌트명 길이 정합), 3D 모델용 _Mdl 신설.
Family
Family 확장 — Popup(비차단 팝업)·Toast(구 TipPoi·Tag 추가, NavBnb 통합. Ico·Bg 는 Family 에서 역할로 이동.
씬 계층
씬 계층을 엔진식 Screen1/World1 로 변경(구 World_01/Screen_01). 장면 추가 시 Screen2/World2 — 같은 번호 = 한 장면. 방향은 부모경로 포함(단독 Left 금지).
미디어
비디오 카테고리(Info/Bgv) 폐지 — 내용 이름만 사용, 360 비디오는 VR_. (오디오 Bgm/Sfx/Nar 는 유지.)
버전·메타
비개발자 워크북 정본(xlsx)과 완전 정합. 단서 불명한 이름은 지어내지 말고 Tbd_ + 사람 확인.
패밀리 트리 구조
메뉴 버튼 예시 — v1.1 명명
  • Screen1변경엔진식 번호
    • Gnb_Home그룹메뉴 그룹
      • Gnb_Home_Img역할버튼면 이미지
        • Gnb_Home_Ic_Img역할변경아이콘 이미지(_Ico→_Ic_Img)
        • Gnb_Home_Txt역할변경라벨(_Text→_Txt)
      • Btn_Gnb_Home마커변경히트영역(앞마커 Btn_)
타이포그래피

타이포그래피는 v1.0 램프(40·34·30·26·24) 유지 — 이번 버전은 명명 체계 위주, 크기 변경 없음.

v1.02026-07-02
정식 버전 번호 도입
변경사항
버전·메타
반복 개정 리비전 v1–v8 을 정식 릴리스 1.0 으로 확정. 이후 정수 대신 MAJOR.MINOR(SemVer) 사용, 버전 SSOT = 문서 front-matter naming_version.
컴포넌트 역할
컴포넌트 서브오브젝트 모델 — 메뉴는 번호 대신 이름 그룹(Gnb_Home), 자식은 부모 상속 접두(<부모>_<역할>). 역할 슬러그 _Img/_Txt/_Ico/_Btn/_Bg 신설.
버튼·히트영역
인터랙션(이벤트)은 항상 투명 _Btn leaf 에 부착하고 최전방 Z에 배치 — 잘림·z-fighting 방지, 이벤트 위치 예측 가능.
타이포그래피
타이포그래피 램프(40·34·30·26·24px) 도입, 전체 Pretendard 단일 폰트 패밀리로 고정.
텍스트
노드 name영문 PascalCase 고정, 사용자 대면 한글은 DisplayTitle 필드로 분리 — 인코딩·토큰비용·C# 비호환 부담 제거.
씬 계층
구분자는 _ 만(하이픈·이중밑줄 금지), 숫자 경로 최대 3자리(Contents_3_1_1)로 정리.
패밀리 트리 구조
메뉴 버튼 예시 — v1.0 명명
  • Screen_01구 씬 표기(밑줄+두 자리)
    • Gnb_Home그룹메뉴명 그룹(번호 대신 이름)
      • Gnb_Home_Img역할버튼면 이미지
        • Gnb_Home_Ico역할변경아이콘
        • Gnb_Home_Text역할변경라벨(구 _Text)
      • Gnb_Home_Btn마커변경히트영역(뒤 _Btn 접미)
타이포그래피

텍스트 타입 스케일(램프) 신설 — 전체 Pretendard 단일 폰트로 고정.

역할굵기px
씬 타이틀 (H1)Bold40
모달 타이틀Bold34
섹션 헤더 (H2)Bold30
메뉴·정보값Medium26
본문·라벨·자막Medium24
이전 리비전 상세 (v1 → v8, 정식 버전 이전)
v7 → v8 보강 근거 — "컴포넌트 서브오브젝트 + 추적성 + 실제 제작(MCP) 정합"

v7 은 인스턴스 개별 이름은 정리했으나, 버튼처럼 이미지·텍스트·인터랙션이 한 덩어리인 UI 의 내부 구성·이벤트 위치·정렬이 미규정. MCP 로 실제 제작·수정할 때 "어느 객체가 어디에 연결됐는지" 찾기 어렵다는 피드백 반영.

Family
메뉴명 그룹(Gnb_Home) 우선, 번호는 fallback
← 메뉴가 번호(Gnb_01)뿐 — 이름만으로 무슨 메뉴인지 모름
앞마커
부모 상속 접두사 <부모>_<역할> (Gnb_Home_Txt) — grep 한 번에 서브트리
← 자식 이름이 트리 컨텍스트에만 의존 → 트리 밖 검색 시 소속 불명 (Text 1)
버튼·히트영역
역할 슬러그 _Img/_Txt/_Ico/_Btn/_Bg 신설
← 이미지·텍스트·인터랙션 역할 구분 슬러그 부재
버튼·히트영역
**이벤트는 항상 *_Btn leaf** (투명 사각형) — 예측 가능
← 이벤트가 어느 객체에 붙는지 규칙 없음
버튼·히트영역
_Btn여유 마진 + 최전방 Z(−0.02)로 주변 영역까지 선택
← 정확 경계만 클릭 → VR 게이즈·터치 오차로 선택 실패
버튼·히트영역
Z 레이어(_Img 0 / _Txt −0.01 / _Btn −0.02), 전역 통일 부호
← 이미지·텍스트 같은 평면 → 잘림·z-fighting
Family
메뉴 그룹이 위치를 갖는 이동 단위, 자식 상대좌표
← 메뉴 이동 시 연결 객체 분리 위험
Family
패밀리 컨테이너 레이아웃 규칙(Direction/Align/Spacing), 트리 순서 = 배치 순서
← 같은 바의 메뉴 정렬·간격 미규정
텍스트
name 영문 고정 + 한글 DisplayTitle 분리, 필드 부재 시 구조 토큰만 영문·슬러그만 한글 허용
← 한글 직접 저작 시 name 오염(인코딩·토큰·C#)
Family
축약 규칙(중복어 제거·핵심 명사 1개·승인 약어·2어 상한, 정식명은 DisplayTitle)
← 긴 메뉴명 축약 기준 없음
v6 → v7 보강 근거 — "단순화 + 가독성 + 실사용 정합"

v6 의 3-Tier·약자 체계가 실제 운영에서 과하다는 피드백 반영. 핵심: 사용자가 안 만지는 것은 규칙에서 빼고, 사람이 쓰는 것은 약자 대신 풀어쓴다.

버전·메타
T3 삭제 → 2-Tier. 자동 생성 객체는 ResourceID 기반 시스템 관리
← T3(시스템 파생) 명명 규칙이 사용자·문서 부담만 늘림 (시스템이 자동 생성)
미디어
3D 텍스처 명명 규칙 삭제, PNG = UI 스프라이트 전용
← 3D 텍스처 Role 토큰(ALB/NRM/...)·tex_ 채널 — 사용자가 다루지 않음
버전·메타
풀어쓰기 (Pressed/On/Off/Disabled, Left/Right/...)
← 약자(_Def/_Prs, _L/_R, Rot/Scl) 학습 비용·모호성
버전·메타
Off(토글 꺼짐) 와 Disabled(사용 불가) 분리
_On/_Off 가 토글·가용성 두 의미 통합 → 디버깅 모호
버전·메타
Selected 제거
_Sel(Selected) 가 _On 과 기능 중복
버전·메타
2종 Info(정보 전달) / Bgv(배경 영상)
← 영상 5종(CUT/TUT/LOOP/INTRO/OUTRO) 과세분
버전·메타
효과 기반 (Bounce/Spin/ZoomIn/...), 대상 이름 제외, 속성 4종(Position/Rotation/Scale/Color)
← 애니메이션 <Target>_<Act>_<Dir> — 대상 이름 의존·약어 난해
Family
3글자+ PascalCase (Gnb/Bgm), 2글자(UI)만 대문자
← 도메인 약자 대소문자 혼재 (GNB/BGM)
Family
Family 뒤에도 단일 _, 숫자 경로 최대 3자리, __ 제거
← Family 약자 뒤 구분 불일치, 숫자 경로 길이 무제한
앞마커
접두사 Ani_(애니메이션 모델), TTS_(음성 변환 텍스트), Modal 패밀리 추가
← 애니메이션 포함 모델·TTS 텍스트 구분 부재
씬 계층
씬 하이어아키 표준(디바이스별) + C# 대조표 신설
← 씬 계층 구조·코드 컨벤션 정합 가이드 부재
v5 → v6 보강 근거 — "컨텍스트별 형식 분리 + 사용자 간결성"

v5 까지는 .make 내부 식별자 전체에 단일 형식 (lower_snake_case + kind prefix) 강제. 실측 (Make Templete_20260512.make, 513 노드 분석) 결과 다음 갭 노출:

앞마커
T2 인스턴스 prefix 폐지 (PascalCase + family vocab)
← Make Editor UI 가 타입 아이콘 보유 → kind prefix 가 인스턴스명에서 redundant
텍스트
단일 _ 통일, 트리 컨텍스트 활용
__ 이중 언더스코어가 이름 길이 증가, 부모-자식 트리가 이미 위계 표현
씬 계층
하이픈 명시 금지, _
← 하이픈(Contents 3-1-1-2) 과 _ 혼용 — 구분자 정책 불명
버전·메타
3-letter 축약 (_Def/_Prs/_On/_Off/_Sel)
← State 풀어쓰기 (_default/_pressed/...) 길이·일관성 부족
버전·메타
제거
_hover·_focused·_highlight 가 VR/터치 환경에 부재
버전·메타
_ 삽입 (BGM_Tutorial)
← Audio 카테고리·description 붙임 (BGMTutorial) — GNB_Active 패턴과 불일치
앞마커
prefix 폐지, <Target>_<Act>_<Dir>
← 애니메이션 anm_ prefix — animations[] 배열 위치가 이미 타입 선언
타이포그래피
property 순서 결정론적 (Rot→Scl→Mov→Clr→Op)
← 다중 속성 클립 (rotation+scale+translation) 명명 미규정
버전·메타
9종 vocab 권장 사용
← UI family (GNB/LNB) ad-hoc — 인계 직관성 부족
버전·메타
T1 옵션, T2 금지
_v<NN> marker 필수 — 임포트 후 모든 인스턴스에서 무의미
v4 → v5 보강 근거 — "소스 파일 레이어 명시"

v4 까지는 .make 내부 식별자(L2) 만 규정. 외부 소스 파일(FBX/PNG/WAV/MP4) 이 어떤 형식으로 납품되어야 임포트 파이프라인이 깨끗하게 L2 로 변환할 수 있는지 미정의. 모델러·아티스트가 임의 명명 → 임포트 시 정규화 실패 또는 메타데이터 손실 위험.

미디어
채택 (L1 규칙)
← ✅ 타당 — 동일 디렉토리에서 소스/인스턴스 혼동 방지
버전·메타
채택 (L1 한정)
← ✅ 타당 — 모델러 도구(Maya/Blender) 산업 관례, L2 와 분리됨
버전·메타
채택 (L1 한정)
← ⚠️ 부분 채택 — L1 파일시스템에서만 유효. L2 는 순번 금지(v4) 유지
미디어
채택 (L1 한정), L2 변환표 추가
← ✅ 타당 — PNG 만 확장자로 용도 분간 불가
씬 계층
채택 (L1 한정)
← ✅ 타당 — 파일 탐색기 정렬·검색 효율
버전·메타
채택, L2 의 __<state> 로 매핑
← ✅ 타당 — 형태 변형의 명시적 표현
미디어
채택 (L1 한정)
← ✅ 타당 — 파일명 자체기술
버전·메타
외부 인터페이스 호환용으로만 유지
← ⚠️ 보조만 — L2 의 mdl_*__* 가 권위 표기
버전·메타
L1 → L2 임포트 시 자동 부착
← ❌ L2 호환 안 됨
버전·메타
L1 → L2 임포트 시 자동 변환
← ❌ L2 호환 안 됨
v3 → v4 보강 근거 — "에이전트도 읽는다 + 사용자 노동 절감"

v3 는 자가설명을 강제하면서 명명 비용 을 고려 못 했음. 사용자 지적 2개로 노출:

버전·메타
시스템이 source mirror 로 자동 생성 (사람 0 작업)
← 모든 263 머티리얼을 손으로 의미 부여
버전·메타
채널 타겟 분석으로 자동 파생
← 모든 7 애니메이션을 손으로 의미 부여
버전·메타
사용자 명명 부담: ~192 항목 (Tier A·B 만, ~70% 감소)
← 사용자 명명 부담: ~660 항목
v2 → v3 보강 근거 — "이름만 봐도 알 수 있다" 목적

v2 의 "Kind prefix 선택화" 가 실무 목적과 충돌. v3 보강 매핑:

앞마커
3-letter prefix 필수 (mdl_, mat_, tex_, img_, aud_ 등)
← Kind prefix 선택화 → 이름만으로 종류 파악 불가
버전·메타
<asset>__<component> namespace — mat_laptop__screen
← Material 이 어떤 모델 소속인지 이름에 없음
앞마커
tex_ vs img_ prefix 분리
← Texture (3D 입력) vs UI Image 미구분
버전·메타
Channel suffix vocab — _albedo, _normal, _roughness ...
← Texture 채널 (albedo/normal/...) 표현 없음
앞마커
Kind prefix → 확장자 매핑 표 명문화
← 파일 확장자 추론 불가
버전·메타
State suffix vocab — _default, _hover, _pressed ...
← UI image 상태 (default/hover/pressed) 미규정
버전·메타
로마자 + 용어집 (doc/GLOSSARY.md) 정책
← ASCII 강제가 한국어 고유명사 자가설명 해침
v1 → v2 보강 근거

v1 규칙의 8가지 허점과 보강 매핑 (역사적 기록):

앞마커
Kind prefix 선택화. VNT type 필드가 이미 분류
← 단일 문자 prefix (M = Model? Material?) 모호
버전·메타
순번 자체 제거. 필요 시 별도 order: 10 (10단위)
<NN> 2자리 — 실측 142개 vs 최대 100
씬 계층
순번 제거 → 삭제·삽입 자유. 정렬은 order 필드
← 순번 renumber 캐스케이드
텍스트
3-layer 분리 (ID / Name / DisplayTitle), source of truth = ID
← Name vs ID 권위 불명
텍스트
DisplayTitle 은 Unicode 자유. Name 만 ASCII
← 영문 강제 → 한국 사용자 대면 문구 손실
버전·메타
Definition 명명, instance 표기 제거 또는 _inst<idx>
← Material instance·definition 미구분
버전·메타
ID=global, name=parent-local (glTF 스펙 따름)
← 유일성 scope 불명
버전·메타
identifier 정규식 + display 정규식 분리
← 단일 정규식이 표시명까지 ASCII 강제
버전·메타
위험
← 위치
버전·메타
---
← ---
버전·메타
cross-platform 이슈, 검색·diff 어려움
← F1 nodes[], meshes[]
버전·메타
메시·이미지 구분 어려움
← F2 "Logox4.png", "btn_start.png" 가 노드명
버전·메타
디버깅·검색 불가
← F2 모든 머티리얼
버전·메타
어떤 애니메이션인지 식별 불가
← F1·F2 모두
버전·메타
정보 누설·이식성↓
VNT_ExternalResources
버전·메타
매핑 추적 어려움
← F1 mp3 노드
버전·메타
✅ v1.1
← ❌ 현재
버전·메타
---
← ---
컴포넌트 역할
Logo_Img
Logo_Img.png
버튼·히트영역
Btn_Gnb_Home_Off
Gnb_Home_Btn
Family
Gnb_Settings_Ic_Img (또는 _Img)
Gnb_Settings_Ico
Family
Gnb_Home_Txt
Gnb_Home_Text
버튼·히트영역
Btn_Pnl_Rotation_Left
Left / Right
앞마커
Tts_StartHeadline
Tts_Start_Headline
앞마커
Cupcake (마커만 차이)
Cupcake_01, Cupcake_02 (다른 씬)
앞마커
Tour, VR_Sky
Info_Tour, Bgv_Sky
앞마커
VR_Tour
Tour (360인데)
앞마커
Tour/VR_Tour, Bgm_Workshop
Tour_vid, Bgm_aud
버튼·히트영역
Btn_Gnb_Start / _Txt / _Ic_Img / _Img 분리
Gnb_Start (이미지+글자+히트 통짜)
버전·메타
Tbd_Excavator + 사람 확인
← 임의 이름
타이포그래피
디자인 px(em)
← 굵기
버전·메타
---
← ---
버전·메타
52
← Bold
버전·메타
44
← Bold
버전·메타
38
← Bold
버전·메타
34
← Medium
버전·메타
31
← Medium
자동생성 — scripts/build_naming_release_notes.py · 소스 doc/MAKE_FORMAT.md · 새 버전은 스크립트의 CHANGES 에 항목 추가 후 재실행