如何把gltf material 改成cartoon material?
How to change gltf material to cartoon material?
我不熟悉 three.js 和着色器。我从 C4d 导出带有纹理的 gltf 龙模型并将其加载到 three.js 中的 meshstandard material。我想把它们改成卡通material。使用模型笔画,我可以像这样遍历 gltf material
mesh.traverse((node: any) => {
let newMat = new THREE.ShaderMaterial({
uniforms: {
},
vertexShader: vertexShader,
fragmentShader: fragmentShader,
});
node.material = newMat
});
找到卡通渲染教程https://blog.csdn.net/weixin_37683659/article/details/79953500
但是我还是不知道怎么结合这个
图书馆已经为您提供了 MeshToonMaterial
,我不确定您为什么要使用 ShaderMaterial
。 ShaderMaterial 非常高级,需要您编写自己的自定义着色器。你可能想要这样简单的东西:
mesh.traverse((node: any) => {
let newMat = new THREE.MeshToonMaterial(parameters);
node.material = newMat
});
要查看您可以使用哪些参数,visit the docs for ToonMaterial。
我不熟悉 three.js 和着色器。我从 C4d 导出带有纹理的 gltf 龙模型并将其加载到 three.js 中的 meshstandard material。我想把它们改成卡通material。使用模型笔画,我可以像这样遍历 gltf material
mesh.traverse((node: any) => {
let newMat = new THREE.ShaderMaterial({
uniforms: {
},
vertexShader: vertexShader,
fragmentShader: fragmentShader,
});
node.material = newMat
});
找到卡通渲染教程https://blog.csdn.net/weixin_37683659/article/details/79953500
但是我还是不知道怎么结合这个
图书馆已经为您提供了 MeshToonMaterial
,我不确定您为什么要使用 ShaderMaterial
。 ShaderMaterial 非常高级,需要您编写自己的自定义着色器。你可能想要这样简单的东西:
mesh.traverse((node: any) => {
let newMat = new THREE.MeshToonMaterial(parameters);
node.material = newMat
});
要查看您可以使用哪些参数,visit the docs for ToonMaterial。