# 3d Paper Material

Build a paper sheet in Three.js that reads as paper up close, washi, cotton rag or...

- Repository: https://github.com/MengTo/Skills (7170 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add MengTo/Skills --skill 3d-paper-material -g -a claude-code -y`
Codex: `npx skills add MengTo/Skills --skill 3d-paper-material -g -a codex -y`
Cursor: `npx skills add MengTo/Skills --skill 3d-paper-material -g -a cursor -y`
Gemini CLI: `npx skills add MengTo/Skills --skill 3d-paper-material -g -a gemini-cli -y`

## Description

Build a paper sheet in Three.js that reads as paper up close, washi, cotton rag or kraft with baked fibre and tooth relief, laid and chain lines, a torn deckle edge with frayed fibres, four-layer thickness, a rolled corner and crease, ink that wicks along the fibres, toasted aged edges, contact shadows and back-lit translucency. Use for a hung sheet, scroll, page, label, shoji pane or card that must survive a macro close-up, or when paper looks like a flat white plane, has ruler-straight edges, no thickness, or does not glow when lit from behind. Use 3d-wood-material, 3d-cloth-material or 3d-metal-material for those materials, and paper-cinder-transition for burning paper.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 3D Paper Material

Paper is a fibre field cut out by a torn outline: a height map of laid fibres and formation clouds gives the surface, an alpha mask with pulled-out fibres gives the edge, offset copies give the thickness, and the back light is transmitted by how thin the formation is at each pixel. Drop any one and the sheet is a white plane.

Reach for `paper-cinder-transition` when the paper burns or is revealed by fire; this skill is the unburnt sheet. It is a hung or laid sheet in a scene. A page-turning book needs a bend rig this skill does not provide.

Read `demo.html` for a working build: MeshPhysicalMaterial patched with `onBeforeCompile`, maps baked once into half-float targets, masks painted with Canvas 2D. Its `NOISE` GLSL, formation, kozo-fibre and bark-fleck expressions, back-light transmission, `tearLine` and the fray loop are ported unchanged from the Kibori workshop page (`kibori.html`, `washiMat`, `footTear`).

## The pipeline

The rest: https://github.com/MengTo/Skills/blob/HEAD/agent-skills/3d/3d-paper-material/SKILL.md
