dhb861832993-star/pbr-render

PBR 3D model preview plugin for DeepSeek Harness — GLB/GLTF game art with textures, material channel inspector, orbit controls. pbr3d fence + pbr_render tool.

Bundle 已验证 MIT JavaScript 未知
Bundle 已验证

已收录

0

Ui

Bundle 已验证

版本未知
语言JavaScript
许可证MIT
在 GitHub 查看

预览

功能介绍

游戏美术 PBR 3D 模型预览:GLB/GLTF 带贴图纹理、IBL 环境光照、轨道控制,以及材质通道检查器(基础色/法线/粗糙度/金属度/AO/自发光/线框),标量通道按 PBR 规范以灰度显示,通过 pbr3d 围栏与 pbr_render 工具使用。

适合

  • 需要直接在 DSH 回复中检查带纹理 GLB 或 GLTF 资产的游戏美术人员。
  • 需要分别查看基础色、法线、粗糙度、金属度、AO、自发光和线框的材质制作工作流。
  • 需要在多种内置 HDR 环境下通过轨道、缩放、曝光和自动旋转控制比较 PBR 资产的用户。

不适合

  • 使用 GLB、GLTF 以外 3D 格式的工作流。
  • 需要模型编辑、绑定、动画制作或纹理绘制,而非交互预览和检查的用户。
  • 位于工作区之外、扩展名不受支持或超过文档所述 512 MiB 上限的资产。

README

PBRRender 🎨

PBR(基于物理)3D 模型预览插件 for DeepSeek Harness —— 渲染 GLB/GLTF 游戏美术资源,带贴图纹理、环境光照、轨道控制、材质通道检查,直接在模型回答里交互预览。

🔌 生态:仓库已挂 #dsh · #dsh-plugin · #pbr · #gltf topic,欢迎社区收录。

🖼️ 效果展示

同一模型的材质通道检查(点击模式栏实时切换,以下为各模式渲染截图):

PBR(完整物理渲染) 基础色 法线
pbr basecolor normal
粗糙度(灰度) 金属度(灰度) AO(灰度)
roughness metallic ao
自发光 线框
emissive wireframe

标量通道(粗糙度/金属度/AO)按 PBR 规范以灰度显示——正是游戏引擎(Unity/UE)读取的原始贴图通道数据。

✨ 特性

  • PBR 渲染:金属/粗糙度/法线/自发光/AO 贴图自动加载(GLB 内嵌或 GLTF 兄弟文件)
  • 材质通道检查:viewer 顶部模式栏一键切换 —— PBR / 基础色 / 法线 / 粗糙度 / 金属度 / AO / 自发光 / 线框
  • 真实 HDR 环境光:内置 5 种 CC0 HDR 环境图(Poly Haven 1K)—— studio 棚拍 / sunset 黄昏 / outdoor 户外 / sunrise 日出 / night 夜晚,env 字段切换,envBackground 可显示为背景;未指定时回退程序化 RoomEnvironment。viewer 顶部有”环境”切换栏,预览时可直接点击换环境
  • 交互:拖拽旋转、滚轮缩放、自动旋转、曝光调节、一键全屏(右上角 ⛶ 按钮,Fullscreen API + 移动端覆盖层降级)
  • 主动触发:模型发现 3D 模型文件(API 生成/下载/工作区出现)时自动调用 pbr_render 工具并渲染预览,无需用户提示
  • 安全:文件服务工作区限定 + 扩展名白名单 + 512 MiB 上限

安装

# GitHub 仓库安装
dsh plugin --profile web add github:dhb861832993-star/pbr-render

# 或本地开发
pnpm install
node scripts/build.mjs
dsh plugin --profile web add link:/path/to/pbr-render

重启 dsh web,新会话生效。

使用

插件自动注入系统提示教学。模型在合适场景主动调用 pbr_render 工具验证路径,然后输出 pbr3d 围栏:

```pbr3d
{"model":"E:/generated/robot.glb","autoRotate":true,"label":"API 生成的机器人"}
```
围栏规格
字段 类型 默认 说明
model string 必填 模型路径(绝对或相对工作区),.glb/.gltf
autoRotate boolean true 自动旋转
background string #14161c 场景背景色(envBackground:true 时被 HDR 背景覆盖)
env string studio 内置 HDR 环境图:studio / sunset / outdoor / sunrise / night(CC0, Poly Haven 1K)
envBackground boolean false 同时把 HDR 环境图显示为场景背景
envIntensity number 1.0 环境光照强度(HDR/IBL 亮度)
exposure number 1.0 曝光 0.2–3
viewMode string pbr 初始材质视图
label string — 视图说明文字
材质通道模式
模式 显示
pbr 完整物理渲染
basecolor / normal / emissive 彩色贴图通道
roughness / metallic / ao 标量通道灰度显示(R/G/R 通道提取)
wireframe 线框

架构

  • lib/index.js — host 半边:pbr_render 工具 + 文件服务路由 + 系统提示段
  • lib/client.js — 浏览器半边:DOM 观察 pbr3d 围栏 → 按需加载 three 资产 → PBR 渲染
  • src/three-entry.js + scripts/build.mjs — three.js 引擎打包(esbuild)
  • lib/assets/env/*.hdr — 内置 HDR 环境图(CC0, Poly Haven 1K,RGBE 格式)
  • test-model.glb / test-tex.glb — 演示模型(单色 + 全套贴图)

安全

  • 文件服务仅暴露工作区内的路径(防目录穿越)
  • 仅放行模型/纹理扩展名(.glb/.gltf/.bin/.ktx2/.hdr/.png/.jpg/.webp/.avif)
  • 文件上限 512 MiB

License

MIT

常见问题常见问题

在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:dhb861832993-star/pbr-render。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。