Ink'n Paint Material不适用于ThreeJS?

时间:2013-09-06 01:10:59

标签: three.js paint

我想渲染网格中的所有顶点和线条。

我试过

1)此链接后的自定义着色器

https://github.com/mrdoob/three.js/issues/2028

2)使用材料等设置透明度:

THREE.MeshNormalMaterial( { transparent: true, opacity: 0.5 } ),

3)在3dMax中将墨水材质设置为模型并导出到obj文件并使用objloader

将其加载到Threejs中

它们都不正常。

是否有任何解决方案从3dMax模型加载mashes(使用objloader)并将其应用于Threejs中的墨水材质,就像我们在3DMax中可以做的那样?

见下面的例子 http://makeitcg.com/wireframe-rendering-techniques-in-3ds-max/160/

1 个答案:

答案 0 :(得分:0)

首先,Number 3)永远不会使用OBJ,因为obj不会从3dsMax导出墨迹着色器。而且为了清楚起见,我认为没有任何方法可以导出3dsMax着色器。 然后,我不明白2)是什么。无论如何,你想要达到什么目的?您想将对象设置为透明吗?这与Ink'n Paint有什么关系?顺便说一句。我不确定透明度是否适用于MeshNormalMaterial,我想它应该,但Lambert和Phong肯定会使用透明度。

问题是你没有陈述你想要达到的目标。从1)看起来你想要一个对象周围的轮廓。有关大纲,请参阅此示例:http://stemkoski.github.io/Three.js/Outline.html或此作为更高级的示例:http://stemkoski.blogspot.de/2013/07/shaders-in-threejs-glow-and-halo.html

如果你想设置透明对象,如果MeshNormal不起作用,请尝试使用MeshLambert或meshBasic材质(我现在不确定并且无法检查)

3)如果你想要一个Ink'n Paint着色器,你需要一个自定义着色器。请参见此处的示例:

http://www.chromeexperiments.com/detail/cel-shader/ 并且已经在这里完成了three.js: http://learningthreejs.com/data/THREEx/docs/THREEx.CelShader.html 只需应用着色器,请参阅设置ShaderMaterial的示例。