← 목록
기타 2026-06-23 4KB 읽기 4분

캐릭터 모델러 확장(구체·복셀·포즈·OBJ) + NPC/펫 모델 교체

개요

"둘 다" — ①블렌더 대용 캐릭터 모델러 확장 ②마을 NPC/펫을 모델 캐릭터로 교체. 충돌 회피: 메인이 모델러 코어(구체/포즈/복셀) 먼저 확장 → 독립 파일(OBJ 익스포터·주민/펫)을 병렬 서브에이전트 → 메인이 village.js 통합.

1. 모델러 확장 (캐릭터모델러.한선, 26함수)

  • 구체(타원체) 파츠: 구체(이름,cx,cy,cz,w,h,d,색) (t="구"). 둥근 머리/주둥이/눈/코.
  • 포즈(관절 회전): 회전설정(idx,rx,ry,rz) 도 단위. 대칭X가 ry/rz 부호반전 복제.
  • 복셀 스컬프트: 복셀초기화/복셀칠(x,y,z,색)/복셀메싱(접두) — 균형3진 트릿 복셀 → 1트릿 큐브 박스.
  • 접근자(파츠X~RZ, 파츠종류, 모델스케일) — 외부 익스포터용.
  • JSON 내보내기에 t/rx/ry/rz 추가.

2. OBJ/STL 익스포터 (서브에이전트 → 캐릭터내보내기.한선)

  • 모델OBJ스트림(경로)(Wavefront OBJ, 박스→8정점·12삼각형, o 그룹) · 모델STL스트림(경로)(ASCII STL). 블렌더/3D프린팅 호환.
  • 검증: 라이온 32파츠 → raion27.obj(256정점·384면·32그룹)·raion27.stl(384삼각형). 한계: 회전 미적용·구체 박스근사·STL 법선 0(뷰어 재계산).

3. NPC/펫 모델 (서브에이전트 → 주민.한선/펫.한선)

  • 주민(NPCMODEL 10파츠): 머리(구)·몸통옷·팔/다리(대칭)·머리카락·눈·코. 키 ~2유닛.
  • 펫(PETMODEL 12파츠): 몸통·머리(구)·귀(대칭)·다리앞좌/앞우/뒤좌/뒤우·꼬리. ~1.4유닛.
  • 옷 파츠는 part명 "옷" 포함 → village.js가 actor.c로 틴트.

4. village.js 통합 — 범용 캐릭터 렌더러

  • drawCharacter(model,px,pz,h,T,bob,tint): 박스(5면 깊이정렬) + 구체(투영 타원) + 포즈 오일러 회전(poseRot) + 옷 틴트 + 대각 보행 스윙. project/faceShade/drawQuadTri 재사용.
  • drawLion=drawCharacter(RAION27). 라이온 구체화(머리/주둥이/눈/코/꼬리술 6구체+26박스).
  • drawActor: npc→drawCharacter(NPCMODEL,틴트=옷색), pet→drawCharacter(PETMODEL). actorFacing(이동델타)로 진행방향 바라봄. 스틱/타원 폴백 유지.
  • 생성기 마을월드.한선에 raion27/npcmodel/petmodel 스크립트 결선.

5. 뷰어 도구

raion27-viewer.html에 OBJ/STL 다운로드 버튼 추가(블렌더 반출). index 🦁 라이온 링크.

검증

  • 모델러 구체/회전대칭/복셀 동작. 라이온 구체화 후 종류분포 box26/구6.
  • DOM 스모크: RAION27 32 · NPCMODEL 10 · PETMODEL 12 로드, village.js 5프레임 무throw(라이온+NPC+펫 렌더).
  • OBJ 256정점/384면, STL 384삼각형. 라이브 :9150 village/raion27.js/obj/npcmodel/petmodel/viewer 전부 200. ZIP에 전 모델자산 포함, cowork 동기.

관련 파일

  • crownyc/libs/캐릭터모델러.한선(확장)·캐릭터내보내기.한선(신규, 익스포터)
  • os-site/라이온27.한선(구체+OBJ/STL export)·주민.한선·펫.한선(신규)
  • 출력: 시작화면/raion27.js(+os-site)·npcmodel.js·petmodel.js·os-site/raion27.obj·raion27.stl
  • 시작화면/village.js(drawCharacter)·마을월드.한선(결선)·os-site/raion27-viewer.html(OBJ/STL 다운로드)

함정 (학습)

  • 모델러 트릿→월드는 밀리유닛 정수(÷1000 소비측). [[이전 doc]]
  • 한선씨 double 가져오기(캐릭터모델러 via 라이온+익스포터)는 basename 중복 자동무시로 안전.

잔여 / 다음

  • 레퍼런스(raion.kr) 미확인 — raion27-viewer.html로 보고 실제와 다르면 라이온27.한선 파라미터 수정.
  • OBJ 익스포터 v2: 회전 적용·구체 위경도 메시. NPC 다리 보행 스윙(다리좌/우 네이밍), 모델러 텍스처/UV.