【问题标题】:Smooth shading using Three.js使用 Three.js 平滑着色
【发布时间】:2014-08-10 20:00:31
【问题描述】:

我需要有人帮助我处理我的工作

在这里工作:

ivanvujnovic.com/Avatar_final/index.html

我会有更好的渲染效果,比如平滑阴影或其他东西。

我该怎么做?

谢谢

【问题讨论】:

  • 我不太确定你想要什么,但我认为你的问题出在模型上

标签: three.js


【解决方案1】:

你已经在那里发生了平滑的阴影。我相信您可能正在寻找“像素着色”或“像素照明”。

这可能有用:

http://www.opengl.org/sdk/docs/tutorials/ClockworkCoders/lighting.php

【讨论】:

    【解决方案2】:

    看起来你的模型中的法线被弄乱了,或者在使用 Three.js 翻译它们时出现了一个小故障,通过弄乱了灯光来造成凹凸不平的外观。

    如果问题可以通过使用不同的配置解决,您可以尝试重新导出模型并检查任何与正常相关的导出选项。

    或者您可以让 Three.js 尝试重新计算几何的新法线,忽略模型中存在的法线:

    geometry.computeFaceNormals();
    geometry.computeVertexNormals(); 
    

    【讨论】:

    • 不,法线看起来适合模型(看起来是扫描的,三角点云)。时髦的图案是顶点光照插值的结果。为了获得更平滑的结果,必须首先在像素着色器中对顶点法线进行归一化(这会在每个像素处重建平滑表面),然后对每个像素执行 NdotL 项。我不知道我的头,但是应该在three.js材料中的一个参数来切换到这个。
    猜你喜欢
    • 1970-01-01
    • 2020-11-28
    • 1970-01-01
    • 2012-08-10
    • 2020-05-04
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 2014-01-30
    相关资源
    最近更新 更多