javascript - ThreeJS 纹理与原始渲染不匹配
问题描述
以下是一些截图来描述我的问题:
这是 .glb 文件及其质量的原始渲染。
这是它在浏览器中呈现的样子,如果你看看他所戴的帽子的边缘,你会发现它们似乎有一些纹理问题。此外,如果您旋转头部,您会看到模型本身将有部分您可以看穿。
这是我正在使用的代码,您会看到我正在尝试更改 gamma 并使用适当的技术来更好地应用纹理。
function ( gltf ) {
gltf.scene.traverse( function ( child ) {
if ( child.isMesh ) {
child.material.alphaTest = .5;
child.material.map.anisotropy = maxAnisotropy;
}
} );
scene.add( gltf.scene );
this.renderer.gammaOutput = true;
this.renderer.gammaInput = true;
this.renderer.gammaFactor = 2.2;
this.encoding = THREE.sRGBEncoding
this.anisotropy = maxAnisotropy;
this.mipmaps = true;
gltf.animations; // Array<THREE.AnimationClip>
gltf.scene; // THREE.Group
gltf.scenes; // Array<THREE.Group>
gltf.cameras; // Array<THREE.Camera>
gltf.asset; // Object
},
请让我知道您认为我应该怎么做才能让这个模型以更高的质量加载。
解决方案
推荐阅读
- sql - 从 Oracle SQL 获取 Excel 中的数据时出错
- javascript - 在 GraphQL 中使用布尔过滤器查询时,如何覆盖“无过滤器”的情况?
- javascript - 如何比较 2 个不同的数组索引?
- r - 使用 DBI::dbWriteTable() 在 Netezza 中创建临时表
- pytorch - 如何使用 PyTorch 的预训练模型理解训练损失的周期性?
- forecasting - 不同数据时间窗下的模型选择
- python - 使用电机异步框架运行 fastapi
- php - 如何更改数据透视表中的字段值
- user-interface - Glade3 和在 GUI 中更改字符串
- datatables - 根据另一列中的数据隐藏 Datatables.net 表中的元素