Javascript 如何在3D json资产上实现基本LOD机制

Javascript 如何在3D json资产上实现基本LOD机制,javascript,three.js,3d,Javascript,Three.js,3d,我无法使用json数据实现3d对象的LOD。 以下是我的实现: loader.load('models/robot-threejs/robot.json',函数(object){ var lod=新的三个lod(对象); 对于(var i=1;i您实现的THREE.LOD错误 构造函数不接受任何参数,因此当您这样做时:new THREE.LOD(object);,它什么也不做。您只需使用new THREE.LOD(); 您将同一网格添加到LOD中3次,因此不会看到任何差异。如果您希望看到任何详

我无法使用json数据实现3d对象的LOD。 以下是我的实现:

loader.load('models/robot-threejs/robot.json',函数(object){
var lod=新的三个lod(对象);

对于(var i=1;i您实现的
THREE.LOD
错误

  • 构造函数不接受任何参数,因此当您这样做时:
    new THREE.LOD(object);
    ,它什么也不做。您只需使用
    new THREE.LOD();
  • 您将同一网格添加到LOD中3次,因此不会看到任何差异。如果您希望看到任何详细更改,则需要使用不同的几何体创建单独的网格。请记住,您必须自己生成这些几何体。Three.js不会自动为您更改几何体。但您可以使用
  • 不知道你为什么要玩矩阵更新。这里没有理由这么做
  • 如果希望详细查看更改,还需要在渲染循环上调用
    lod.update(camera)

  • 我强烈建议您仔细阅读中的代码,以便更好地理解它的工作原理。

    您正在实现
    THREE.LOD
    错误

  • 构造函数不接受任何参数,因此当您这样做时:
    new THREE.LOD(object);
    ,它什么也不做。您只需使用
    new THREE.LOD();
  • 您将同一网格添加到LOD中3次,因此不会看到任何差异。如果您希望看到任何详细更改,则需要使用不同的几何体创建单独的网格。请记住,您必须自己生成这些几何体。Three.js不会自动为您更改几何体。但您可以使用
  • 不知道你为什么要玩矩阵更新。这里没有理由这么做
  • 如果希望详细查看更改,还需要在渲染循环上调用
    lod.update(camera)
  • 我强烈建议您仔细阅读中的代码,以便更好地理解其工作原理