Community이미지github.com

m4bwav/polywright-references

3D 모델에 필요한 참조 이미지, 뷰, 텍스처를 수집하거나 생성합니다. 정면/측면/후면 직교 뷰, A-포즈 턴어라운드, 멀티뷰 세트, 블록아웃 렌더링 재페인팅, 시머리스 텍스처, PBR 맵 생성을 지원합니다.

polywright-references란 무엇인가요?

이 스킬은 3D 모델링 과정에서 필수적인 참조 자료(references)를 체계적으로 수집하고 생성하기 위한 지침을 제공합니다. 실제 객체, 차량, 건물, 캐릭터 등 모델 유형별로 필요한 참조 이미지 유형(실사 사진, 청사진, 블루프린트, 턴어라운드 등)과 생성 방법을 단계별로 설명합니다. 특히 이미지 생성 모델을 사용할 때 일관된 뷰를 얻기 위한 규칙(단일 객체, 중앙 배치, 그림자 없는 평평한 조명, A-포즈 등)과 블록아웃(blockout) 렌더링을 재페인팅하여 일관된 멀티뷰를 만드는 고급 워크플로우를 포함합니다. 또한 CC0 텍스처 선호, 시머리스 텍스처 생성, 사진으로부터 높이/노멀/러프니스 맵 생성, OpenGL/DirectX 노멀 맵 컨벤션 등 텍스처 및 머티리얼 제작에 대한 실용적인 팁을 제공합니다. Blender, image-to-3D 도구, PureRef 등 다양한 플랫폼에서 참조 자료를 활용하는 방법도 안내합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/m4bwav/polywright/tree/HEAD/skills/polywright-references

Installed? Explore more 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

polywright-references은(는) 무엇을 하나요?

참조 자료는 3D 결과물의 대부분을 결정합니다. image-to-3D 모델은 입력의 조명, 원근감 및 실수를 그대로 복사합니다. 모델러나 bpy 스크립트에는 치수와 뷰가 필요합니다. 먼저 수집하거나 생성하여 에셋의 refs/에 넣고, 각각을 pw.py manifest --add-source로 기록합니다(생성된 항목은 모델 이름과 시드를 지정합니다).

허브로 돌아가기: ../polywright/SKILL.md. 프롬프트 템플릿 및 검사: references/reference-kit.md.

1단계: 이 모델에 필요한 것

모델수집 (실물)생성 (상상 또는 누락된 것)
실제 객체평면에 자를 대고 6면 사진, 근접 촬영, 실제 치수(제조사 시트, 위키피디아, 줄자)사진이 부실한 경우에만 직교 정리
차량, 제품, 가구청사진 또는 CAD 도면(알려진 치수 하나 확인), 제조사 치수기술 도면 스타일의 정면, 측면, 상면 입면도
건물바닥면적(OSM), 높이 또는 층수, 각 면 사진, 지붕 모양면별 입면도, 지붕 평면도
실제 장소지도 발췌, 고도, 항공 사진, 랜드마크 지상 사진없음: 장소는 데이터에서 비롯됨(polywright-capture)
상상 속 소품스타일 참조쓰리쿼터 히어로 이미지, 그런 다음 정면/좌측/후면/우측 동일한 축척
캐릭터 또는 생물체스타일 및 의상 참조턴어라운드: 정면, 측면, 후면, 쓰리쿼터, A-포즈, 높이 막대, 평범한 배경
표면(벽, 바닥, 지형)재료 사진, 평평하고 고르게 조명된 상태시머리스 타일러블 알베도, 그런 다음 맵(4단계)

항상 축척 참조를 추가하세요: 알려진 치수, 1.8m 인간 실루엣, 시트의 높이 막대.

역사 조사 팩(historywright 플러그인이 만든 answer.md, refs/index.json 및 anachronism.md가 포함된 폴더)은 이미 유효한 에셋 폴더입니다. 여기서 시작하고 다시 검색하지 마세요. refs/index.json을 읽으세요. 각 참조에는 객체 자체의 날짜, 장소, 기관, 소장 번호 및 라이선스가 있습니다. object_date가 브리프 기간에 맞는 참조만 사용하세요. nc: true가 있는 참조는 상업용 모델에서 제외하세요. 메싱 전에 생성된 모든 뷰를 anachronism.md와 비교하여 확인하세요.

2단계: 뷰 생성 (중요한 규칙)

이미지 도구에 요청하세요: 하나의 객체, 중앙에 배치, 프레임의 약 2/3 채우기; 흰색 또는 밝은 회색 배경; 평평하고 고르며 그림자 없는 조명; 강한 원근감 없음(망원 렌즈 또는 직교 느낌); 1024px 이상; 텍스트 없음. 캐릭터는 편안한 A-포즈(팔을 아래로 30~45도, 다리를 약간 벌림)를 취합니다. T-포즈는 비율을 왜곡하고 액션 포즈는 생성기와 리거에서 실패합니다. 종류별 템플릿은 키트에 있습니다.

하나의 이미지에서 일관된 추가 뷰를 얻으려면 다중 각도 어댑터가 있는 이미지 편집 모델(Qwen Image Edit with a Multiple Angles LoRA, 2025-2026)이 각 뷰를 개별적으로 프롬프팅하는 것보다 정체성을 더 잘 유지합니다. 색상 드리프트가 예상되므로 각 뷰를 정면에 색상 일치시키세요. 생성된 모든 뷰를 정면과 비교 확인하세요: 동일한 비율, 동일한 수의 팔, 동일한 항목, 재조준된 것 없음. 일치하지 않는 뷰는 버리세요. 잘못된 후면 뷰는 없는 것보다 더 나쁩니다. 실제 객체의 색상은 단어가 아닌 사진 픽셀(중간 색조, 채도, 명도)에서 이름을 지정하세요. 편집 모델은 그림보다 단어를 따릅니다(L-003). 후면 뷰는 정면 표시를 등에 복사하는 경향이 있습니다.

Z-Image Turbo 호스트를 위한 준비된 워크플로우: references/zimage-reference.api.json ({SUBJECT} 플레이스홀더; 2026-10-11 테스트 완료).

2b단계: 설계된 소품의 시트는 모델에서 비롯됨

소품이 설계된 경우(단어나 팬 시트에 설명된 무기, 도구, 차량 부품) 텍스트 프롬프트가 계속 절반의 형태만 제공한다면 프롬프팅을 중단하세요. bpy 스크립트(polywright-blender 레시피 "A designed prop from a written description")로 빌드하고 모델에서 시트를 렌더링하세요. 측면 및 상면 직교, 평평한 중간 회색 배경, GPU가 사용 중일 때 CPU에서 Cycles 사용. 모델은 정확하며 각 메모 후 몇 초 만에 다시 렌더링되며, 동일한 파일이 나중에 소품을 사진에 합성합니다(허브: "Compose a model into a picture"). 부품이 거울 이미지 쌍으로 제공되거나 하나가 다른 것 뒤에 숨겨지는 경우 측면 카메라를 10~15도 올리세요.

3단계: 블록아웃에서 뷰 생성 (뷰가 계속 불일치할 때)

대략적인 블록아웃(기본 도형 또는 첫 번째 정면 전용 생성 메시)을 만들고 pw.py render <file> --out refs/blockout --views front,right,back,left --color clay로 렌더링한 다음, 이미지 편집 모델이 각 회색 렌더링을 피사체의 색상과 디테일로 다시 페인팅하도록 합니다(렌더를 첫 번째 참조로, 정면 뷰를 두 번째 참조로 하는 image-to-image). 카메라만 움직이므로 아무것도 재조준되거나 팔다리가 추가로 자랄 수 없습니다. 후면은 블록아웃이 암시하는 것만 보여줄 수 있습니다. 다시 페인팅된 세트를 멀티뷰 생성에 제공하세요.

4단계: 텍스처 및 머티리얼

  • 생성된 것보다 CC0 머티리얼(Poly Haven, ambientCG)을 선호하세요.
  • 생성된 타일러블: "seamless, tileable, top-down, flat even light"을 2의 거듭제곱 크기로 요청한 다음 pw.py texture <img> --out refs/tex --seamless(오프셋-블렌드 심)를 실행하고 2x2 타일링을 살펴보세요.
  • 사진 또는 알베도에서 빠른 맵: pw.py texture <img> --out refs/tex [--convention opengl|directx]는 휘도에서 파생된 높이, 노멀 및 러프니스를 작성합니다. 소품 및 지형에 적합하며 측정된 머티리얼에는 잘못됨. 노멀 맵: OpenGL(Y+)는 Blender, Unity, Godot, glTF, three.js, Roblox용; DirectX(Y-)는 Unreal용.
  • 사진의 베이크된 조명은 알베도에 베이크된 조명이 됩니다: 평평한 조명으로 상류에서 수정하거나 --delight를 추가하세요(넓은 그라데이션을 나눔; 날카로운 캐스트 섀도우는 남아 있으므로 페인트로 제거). 노멀 맵은 음영만 변경합니다: 실루엣은 평평하게 유지되고 큰 형태는 얕은 각도에서 깨지므로 큰 형태를 모델링하고 작은 디테일만 맵핑하세요.

5단계: 활용하기

  • Blender에서: 참조 이미지를 정면, 우측, 상단 뷰의 빈 오브젝트로 배치하고 알려진 치수로 스케일 조정(pw.py render의 직교 렌더링은 metres_per_px를 보고함); 레시피는 polywright-blender에 있음.
  • image-to-3D용: 정사각형, 패딩, 1024px; pw.py gen은 자체적으로 패딩 및 배경 제거. GPU 실행 전에 사진을 판단하고 메시보다 사진에서 수정할 사항을 판단하세요: references/images-for-3d.md.
  • 사람용 보드(PureRef 2.1)에서: 뷰별로 그룹화하고 보드에 치수 기록.

유지보수

Evergreen 유닛, 티어 fast. 동반 파일: RESEARCH.md, CHANGELOG.md, LEARNINGS.md, TESTS.md (evals/evals.json 포함), MAINTENANCE.md, evergreen.json의 상태. 사용할 때마다 evergreen.json을 읽고 필요할 때 새로고침하세요.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

m4bwav/polywright

Start here whenever a task needs a 3D model and no sibling below clearly owns it: a model of a real or imagined thing for a game (Unity, Roblox, Unreal, three.js), a 3D print, AI video or AR, or another plugin asking for a mesh. Picks the route (find, capture, generate, code), scaffolds the asset folder and manifest other plugins read, and runs pw.py (inspect, render a sheet, convert, check a budget, bpy headless, match a picture's camera, army blockouts with depth and pose passes for AI...

m4bwav/polywright-blender

Use whenever Blender is scripted, automated or debugged, before writing any bpy code: headless runs that report errors (pw.py bpy), the bpy API traps models still write in Blender 5.x (removed importers, renamed sockets, EEVEE names), tested recipes (modifiers, booleans, remesh, UVs, bakes, turntables, depth passes, batch exports), Blender MCP servers and their risks, and other 3D tools per OS. Use on 'write a Blender script', 'automate Blender', 'batch export .blend', any bpy traceback or...

m4bwav/polywright-finish

Use whenever a mesh must be made ready for a game engine, the web or AR: is it game-ready, too many polygons, LODs, retopology, UVs, baking, PBR and normal-map conventions, collision, rigging, and axis, unit and format export for Roblox, Unity, Unreal, Godot, three.js (meshopt, KTX2), USDZ and video blockouts. Use on 'is this game-ready', 'make this work in Roblox/Unity', 'optimise for the web', 'reduce polygons', 'add LODs', 'retopologise', 'bake normals', 'imports sideways or tiny', 'flip...

m4bwav/polywright-generate

Use whenever an imagined or hypothetical 3D model must be made from a prompt, a drawing, concept art, photos or a blockout: image-to-3D through ComfyUI (TRELLIS.2, Pixal3D, Hunyuan3D-2 via pw.py gen) or hosted (Meshy, Tripo, Rodin), or code (bpy, build123d, CadQuery, OpenSCAD) when it has dimensions; then texturing and the licence record. Use on 'make me a 3D model of a dragon', 'turn this drawing or concept art into 3D', 'image to 3D', 'text to 3D', 'TRELLIS', 'Hunyuan3D', 'Meshy', 'model a...

관련 스킬