3

我以前在 gltf 1.0 上工作过,现在正在尝试更新我的应用程序以呈现 khronos 提供的 gltf2.0 示例模型。我了解着色器(glsl)和技术不再是 gltf 2.0 中核心属性的一部分。

所以我的问题是:

  1. 着色器信息现在是否与 .gltf 分离?我知道有由技术和着色器属性组成的 KHR_technique_webgl 扩展(就像 gltf1.0 表示着色器的方式一样),如果我们的材质不是 pbr,我们是否应该使用它?

  2. 渲染引擎现在如何从普通的 .gltf 中获取着色器信息(没有扩展名)?我们是否像老派的方式那样做,即加载我们自己的着色器并手动将模型属性映射到着色器属性?

4

1 回答 1

5

KHR_technique_webgl扩展最终将完成,并将提供一种在您的 glTF2.0 模型中包含自定义着色器的方法。但在撰写本文时,该扩展尚未完全定义,工具无法实现它。

更一般的情况(如果适合您的需要,建议使用)是使用 PBR 或 Blinn-Phong 材料。这些在 glTF 中抽象地声明,以便渲染引擎可以为这些材质类型构建自己的着色器,并且通常可以更好地与引擎自己的照明和/或阴影集成。

于 2017-07-11T16:39:15.627 回答