解决react vr加载js模型失败的问题
2017-07-31 17:16
701 查看
react vr中文网:www.vr-react.com
截止本文发稿时,react vr 的版本是1.4.0,而three.js的版本是0.80.1,具体如下:
如果你要是在client.js中加载自己用maya或者3dmax导出的js模型,会报错,报错,报错如下:
这是因为0.80.1版本的three.js有问题,导入资源有问题,下面就我的做法如下:
1、打开 node_modules/three/src/loaders/MaterialLoader.js,添加 import * as THREE from '../Three';
因为下面会有一个
var material = new THREE[ json.type ]();
这行代码里有three,但是上面并没有导入
2、(也可以)也可以按照0.85.2版的threejs,在 materials 新建一个 Materials,具体的看0.85.2以上的版本的源码,同时需要把上面的three改成Materials
3、因为three.js采用的是rollup打包的,所以在修改完后,在three目录下新建一个rollup.config.js文件,内容如下:
4、然后需要在three下打开终端,进入three目录,安装依赖:npm install,也可以用 sudo npm install
5、安装完成后,删除build下面的两个three文件,然后输入 npm run build-uglify,等待打包完成
最后你在重新启动项目的服务:npm start,再次打开浏览器就可以看到你的项目啦
截止本文发稿时,react vr 的版本是1.4.0,而three.js的版本是0.80.1,具体如下:
如果你要是在client.js中加载自己用maya或者3dmax导出的js模型,会报错,报错,报错如下:
这是因为0.80.1版本的three.js有问题,导入资源有问题,下面就我的做法如下:
1、打开 node_modules/three/src/loaders/MaterialLoader.js,添加 import * as THREE from '../Three';
因为下面会有一个
var material = new THREE[ json.type ]();
这行代码里有three,但是上面并没有导入
2、(也可以)也可以按照0.85.2版的threejs,在 materials 新建一个 Materials,具体的看0.85.2以上的版本的源码,同时需要把上面的three改成Materials
3、因为three.js采用的是rollup打包的,所以在修改完后,在three目录下新建一个rollup.config.js文件,内容如下:
4、然后需要在three下打开终端,进入three目录,安装依赖:npm install,也可以用 sudo npm install
5、安装完成后,删除build下面的两个three文件,然后输入 npm run build-uglify,等待打包完成
最后你在重新启动项目的服务:npm start,再次打开浏览器就可以看到你的项目啦
相关文章推荐
- jquery easyui easyloader加载外部js文件失败问题解决
- 多层动态加载js文件出现的问题终极解决【深海原创】
- 解决Weblogic 配置连接池加载数据库驱动失败问题
- 关于ENU OS加CHS VS2008出现包加载失败问题解决方法存档
- WinCE6.0流驱动开发的两种方法及驱动加载失败问题解决
- 解决ajax加载的页面js无法找到的问题
- 故障解决:VS2005的水晶报表在WEB应用程序中多次使用后,就会出现加载报表失败.重启WEB服务器又正常了.过一段时间又出同样问题
- WinCE6.0流驱动开发的两种方法及驱动加载失败问题解决
- (转)解决在firefox下js调用as失败问题
- dwzjs在firefox下遇到页面加载问题解决方法
- hibernate懒加载导致对象json化失败问题解决
- 巧妙解决js内容调用导致页面加载慢的问题
- 解决在firefox下js调用as失败问题
- Ext界面做图片动态加载的图片放大镜效果并解决JS内存泄漏问题
- vs2005水晶报表WEB打印问题、加载报表失败。-解决办法 (ZT)
- vs2005水晶报表WEB打印问题、加载报表失败。-解决办法
- Windows Server 2003 下Apache加载PHP失败的问题解决
- vs2005水晶报表WEB打印问题、加载报表失败。-解决办法
- 【解决问题】加载网络映射盘中的assembly失败
- 对fckstyles.xml加载失败问题的解决