К основному содержанию
скилл CX Codex

3d-high-resolution-textures — скилл для Claude Code: PBR-текстуры

Помогает подобрать разрешение и PBR-карты для 3D-материалов, чтобы близкие планы выглядели резко, а GPU-память не улетала в потолок.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add MengTo/Skills --skill 3d-high-resolution-textures -a claude-code
Открыть на GitHub

Что делает 3d-high-resolution-textures

Скилл разбирает материал по частям: какие поверхности видны вблизи, сколько пикселей они занимают на экране и какое разрешение тайла из этого следует. Советует начать с оценки по покрытию UV, а не назначать 4K или 8K каждой карте. Отдельно идёт таблица карт: base color и emissive в sRGB, normal, roughness, metalness, AO и height — без преобразования цветового пространства.

Дальше — сэмплирование и доставка. Mipmaps и minification-фильтрация для статики, анизотропная фильтрация для полов и крыш под углом, но с оглядкой на renderer.capabilities.getMaxAnisotropy(). Для листвы с прозрачностью — отступы в атласе и заливка края в прозрачные тексели, иначе на дальних карточках появятся тёмные каёмки. Загрузка идёт постепенно: сначала карты стартового вида, потом герой-поверхности, потом дальние комнаты по состоянию сцены или расстоянию до камеры.

Важная деталь про бюджет: текстура 4096² RGBA8 с полной цепочкой мипов занимает примерно 85.3 MiB в GPU-памяти до накладных расходов драйвера. Маленький сжатый файл ничего не говорит о размере аллокации. Считайте весь набор материала и одновременные апгрейды, а не вес загрузки.

Какие задачи решает

  • подобрать разрешение текстуры под ближайший ракурс камеры
  • собрать согласованный набор PBR-карт для дерева, камня или ткани
  • убрать тёмные каёмки у листвы на дальних мип-уровнях
  • спланировать бюджет GPU-памяти для набора материалов
  • загружать текстуры по мере приближения камеры, а не всё сразу

Примеры запросов агенту

  • оцени, какое разрешение нужно для дубовой балки вблизи, и собери карты base color, normal и roughness
  • проверь швы и направление волокна на нормал-карте под движущимся светом
  • настрой постепенную загрузку текстур по главам сцены и посчитай итоговую GPU-память

Как установить 3d-high-resolution-textures

1Через Skills CLI (Vercel)

npx skills add MengTo/Skills --skill 3d-high-resolution-textures -a claude-code

2Вручную: положить файлы

~/.claude/skills/3d-high-resolution-textures/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/3d-high-resolution-textures/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о 3d-high-resolution-textures

Как установить 3d-high-resolution-textures в Claude?

Выполните npx skills add MengTo/Skills --skill 3d-high-resolution-textures -a claude-code. Скилл появится в ~/.claude/skills/3d-high-resolution-textures/SKILL.md.

Что делает 3d-high-resolution-textures?

Помогает строить физически согласованные материалы высокого разрешения: подбирает разрешение по видимому покрытию UV, следит за цветовыми пространствами карт, мипмапами и анизотропной фильтрацией, планирует постепенную доставку ассетов.

С какими движками это работает?

В тексте разбираются примеры на Three.js: цветовой менеджмент, KTX2Loader, renderer.capabilities.getMaxAnisotropy(). Настройки карт нужно сверять с версией рендерера.

Исходный текст

SKILL.md · MIT
---
name: 3d-high-resolution-textures
description: Build sharp, physically coherent high-resolution materials for 3D rendering with appropriate PBR maps, texel density, UV direction, mipmaps, anisotropic filtering, and progressive asset delivery. Use for detailed wood, stone, fabric, foliage, and architectural close-ups without excessive download or GPU memory costs.
---

# 3D High-Resolution Textures

Make materials hold up at the closest intended camera view. Specify visible surface detail, mapping scale, and delivery cost together.

## Choose resolution from the view

Identify hero surfaces, their nearest camera distance, projected pixel coverage, and target render scale. A texture need depends on visible UV coverage: if a surface spans 1200 physical pixels while showing half a tile, a roughly 2400-pixel-wide tile is a useful starting estimate. Inspect the result rather than assigning 4K or 8K to every map.

Use higher resolution for readable close-up albedo/normal details and lower resolution for smooth roughness or distant surfaces when they look equivalent. Match texel density across connected surfaces. Upscaling a small source cannot invent captured detail; obtain a better source or author appropriate procedural detail when necessary.

## Build a coherent PBR material

| Map | Role | Color interpretation |
| --- | --- | --- |
| Base color, emissive color | Surface color or emitted color | sRGB for ordinary PNG/JPEG/WebP color artwork |
| Normal, roughness, metalness, AO, height | Numerical material data | No color-space conversion |
| HDR lighting image | Radiance for environment lighting | Use the format/loader's linear HDR interpretation |

Keep lighting calculations linear and apply final output conversion once. Configure maps according to the material and renderer version; see [Three.js color management](https://github.com/mrdoob/three.js/blob/dev/manual/pages/color-management.html).

Use base color without baked directional highlights when dynamic lighting is expected. Orient wood grain along the member, stone scale to actual units, and woven fibers to fabric construction. Share tiling transforms across maps belonging to one material. Check tangent-space normal convention and seams under a moving light. Verify the AO UV channel supported by the installed renderer rather than blindly duplicating an obsolete attribute name.

Combine broad color variation, mid-scale structure, and subtle microdetail. Keep bump/normal intensity plausible. Normal and bump maps alter shading; silhouette detail requires geometry or displacement with enough vertices. Wood, stone, and cloth are generally dielectric surfaces, so increasing metalness to make them shiny is not a material fix.

## Preserve detail during sampling

Enable mipmaps and appropriate minification filtering for ordinary static textures. Use anisotropic filtering for grazing-angle floors, roofs, and timber, capped by `renderer.capabilities.getMaxAnisotropy()`. Compare moderate values before assigning the maximum everywhere; anisotropy improves oblique sampling, not missing source detail.

For foliage cutouts, pad atlas cells, bleed edge color into transparent texels, and preserve alpha coverage across mip levels. Inspect distant cards against a bright sky for dark fringes or disappearing leaves. Do not threshold every mip blindly; choose a method compatible with alpha testing or alpha-to-coverage.

## Deliver detail progressively

- Load the opening view's essential maps first. Use a small useful placeholder or lower-resolution variant, then promote near-visible hero surfaces without changing their UV scale or material identity.
- Queue optional rooms and detail views shortly before the camera reaches them. DOM `loading="lazy"` does not schedule WebGL texture requests; use scene visibility, camera distance, or chapter state explicitly.
- Deduplicate requests and cache texture variants by full asset identity plus sampling/color settings. Do not key by a filename suffix that may collide.
- Keep assets external and cacheable. WebP/AVIF can reduce network bytes for color imagery; inspect data maps for compression artifacts. They usually decode to uncompressed GPU textures. KTX2/Basis can also reduce GPU storage where supported; configure and verify the transcoder and fallback. See [KTX2Loader](https://threejs.org/docs/pages/KTX2Loader.html).
- Dispose superseded GPU textures when no material still references them. Reusing image bytes across separate WebGL contexts does not share the GPU allocation.

A 4096² RGBA8 texture with a full mip chain is approximately 85.3 MiB in GPU storage before driver overhead. A small compressed download can therefore still produce a large allocation. Budget the entire material set, decoded CPU images, and concurrent upgrades, not just file size.

For procedural maps, bake stable assets ahead of time where useful. Cache shared noise/height fields, process large work in bounded batches or workers, and avoid millions of canvas drawing calls during startup. Yielding around one huge synchronous operation does not divide its stall.

## Verify

Inspect close-up and grazing-angle views at the intended display resolution, then compare the same material farther away. Check seams, grain direction, alpha rims, normal orientation, and color under neutral and final lighting. Record opening bytes separately from total assets, requested dimensions, estimated GPU memory, texture promotion hitches, and missing assets on mobile.

Read [REFERENCES.md](REFERENCES.md). In Seijaku, inspect `barUV`, `assetTex`, the leaf mip/bleed preparation, shared procedural fields, and chapter-based texture scheduling. Those patterns explain its material detail better than source dimensions alone.

© MengTo · MIT · MengTo/Skills

Похожие скиллы

Всё по теме «Геймдев и 3D: Unity, Unreal, Godot, Blender» →
threejs-textures CloudAI-X Скилл помогает настраивать загрузку изображений, цветовые пространства и типы текстур в Three.js r186. Пригодится при сборке материалов для WebGL или WebGPU. CX Codex +1 12 600установок threejs-materials-lighting gamedev-skills Скилл для three.js: подбирает материал, ставит источники света, включает тени и подключает HDR-окружение, когда модель выглядит чёрной или плоской. CX Codex +1 5 500установок threejs-materials calesthio Справочник по материалам Three.js: PBR, базовые, фонговские, кастомные шейдеры. Помогает быстро выбрать нужный материал для сетки, настроить текстуры и оптимизировать рендеринг. CX Codex +1 1 000установок scenario-textures scenario-labs Скилл настраивает генерацию бесшовных текстур, апскейл с сохранением тайлинга и сборку PBR-материалов через MCP-сервер Scenario. Пригодится при подготовке ассетов для игровых движков. CX Codex +1 500установок blender-materials RobLe3 Скилл создаёт и назначает PBR-материалы в Blender через Principled BSDF: металл, стекло, пластик, ткань, кожа. Пригодится, когда просят «сделай как медь» или «матовую поверхность». CX Codex +1 1 600установок substance-3d-texturing freshtechbro Скилл для работы с Substance 3D Painter: помогает писать PBR-материалы, выгружать текстуры под Three.js, Babylon.js, Unity и Unreal и автоматизировать экспорт через Python API. CX Codex +1 2 400установок

Из того же набора148

web-technique-to-skill Помогает превратить готовый визуальный или интерактивный приём в переиспользуемый скилл для веб-дизайна — с демо, которое доказывает и механику, и точность. CX Codex +1 1 100установок add-mouse-driven-orbit Добавляет плавный параллакс и кинематографичное вращение сцены Three.js вслед за курсором мыши без OrbitControls. Пригодится для интерактивных hero-секций. CX Codex +1 1 200установок 3d-virtual-tour Скилл для сборки виртуальных туров по 3D-сцене: маршрут камеры, переходы между комнатами, осмотр модели. Пригодится для архитектурных обходов и шоурумов на Three.js. CX Codex +1 527установок 3d-retina-resolution Настраивает чёткий 3D-рендеринг на Retina и HiDPI, включая фиксированный масштаб 200%. Нужен для WebGL-превью, где картинка теряет резкость. CX Codex +1 512установок 3d-sky-rays Скилл добавляет в Three.js-сцену лучи света из-за крыш и сквозь листву. Пригодится, когда нужен золотой час в архитектурном рендере. CX Codex +1 506установок 3d-sky-background Настраивает корректный фон неба в 3D-сцене: процедурную атмосферу, туман у горизонта, направленный солнечный свет и окружение для PBR. CX Codex +1 505установок 3d-falling-leaves Скилл для Three.js и похожих сцен: учит агента строить падающие листья в мировых координатах, с переворотом, сносом и переиспользованием инстансов. CX Codex +1 499установок 3d-four-seasons Добавляет смену четырёх времён года в 3D-сцену через шейдерные uniform-переменные. Помогает переключать листву, свет и снег без пересборки геометрии мира. CX Codex +1 497установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой