SuperAPI AI 工具集

threejs-syntax-materials

办公与效率

查看项目

更新于 10-15 22:18

技能介绍

用途:在 Three.js 中选择或配置材质、加载纹理、搭建 PBR 工作流时提供参考,防止色彩空间设置错误等常见问题。

主要能力:

  1. 材质选型决策树:按用途给出推荐材质,如 UI 与无光照场景用 MeshBasicMaterial、通用 3D 用 MeshStandardMaterial、玻璃与车漆用 MeshPhysicalMaterial、卡通风格用 MeshToonMaterial 等,并列出理由。
  2. 基础材质属性与方法:side、transparent、opacity、depthWrite、blending、alphaTest、wireframe、fog、needsUpdate 等;方法有 clone、copy、dispose、onBeforeCompile、setValues。
  3. PBR 材质参数:MeshStandardMaterial 的 roughness、metalness、各类贴图(map、normalMap、aoMap、emissiveMap、envMap 等);MeshPhysicalMaterial 额外提供 clearcoat、transmission、thickness、ior、sheen、iridescence、anisotropy、dispersion 等。
  4. 纹理系统:色彩空间规则(漫反射/自发光/颜色贴图用 SRGBColorSpace,法线、粗糙度、金属度等数据贴图用 NoColorSpace);加载器包括 TextureLoader、CubeTextureLoader、RGBELoader、EXRLoader、KTX2Loader;包装、过滤、anisotropy、repeat、offset、flipY 等属性。
  5. 关键警告:opacity 小于 1 必须配 transparent: true;数据贴图不可设 SRGBColorSpace;移除对象时须 dispose 材质与纹理防止显存泄漏;LineBasicMaterial 的 linewidth 大于 1 多数平台无效,粗线用 Line2 + LineMaterial;运行时修改影响着色器编译的属性后须设 needsUpdate = true,但不可每帧设置。
  6. 资源释放与 needsUpdate 示例,以及 MeshToonMaterial 的 gradientMap 须用 NearestFilter 的特殊规则。

使用方式:作为 Three.js 材质与纹理专题参考,按决策树选材质,按色彩空间表配置贴图,遵循警告与释放规范。

适用场景:Three.js 3D 场景的材质选型、PBR 流程搭建、纹理加载与配置、调试渲染问题。

限制:本资料为语法与规则参考,未提供具体安装命令、收费方式或完整项目集成步骤。