最近在弄一个vue3的项目,需要添加一些3d效果的东西,比如obj跟glb格式的文件,再网上找了很多案例,直接修改glb文件路径,结果发现加载的东西黑漆漆的,更别说鼠标滚动,拖拽什么效果的。整个场景都是黑的,从glb文件有问题,可以去http://three-gltf-viewer.gongzuoshijian.com/上传你的3d模型去看下效果,如果可以基本上就是代码问题了。后来放弃度娘,直接去官网https://github.com/mrdoob/three.js看教程,有中文跟英文的还是没看懂,最后发现官网有很多案例,在examples下面,不过不能直接通过电脑端文件管理器访问,类似file:///C:/Users/Administrator/Desktop/zk_by_888H/zk/PHP/examples/index.html,直接在文件管理器中双击打开是不行的,你要准备一个服务器端,通过http://zk.com/examples/index.html才能正常加载,接下来就简单了,全局搜索.glb,然后调一个其中的案例,把自己的glb替换进去,果然就老实了,效果直接呈现出来了,什么原理我就不清楚了,不过学东西最好还是去官网,最根源的地方找东西,不要去学二手三手的东西,弯路可以少走很多。在vue3中加载的时候代码如下。
import * as THREE from 'three';
import Stats from 'three/examples/jsm/libs/stats.module.js';
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js';
html例子中是这么写的
import * as THREE from '../build/three.module.js';
import Stats from './jsm/libs/stats.module.js';
import { OrbitControls } from './jsm/controls/OrbitControls.js';
热门文章
dataV是个不错的选择,就是原生支持vue-cli的webpack打包工具,不支持vite,不过站长还算完美地解决了这个问题。
本文主要分析下子组件如何调用父组件的变量跟函数。
vue使用font-spider压缩字体文件的爬坑记录
vue3下快速获取网址中的url参数,网上基本上都是vue2的,所以站长整理了下解决方案
mui轮播还是ok的,循环轮播就不行了哈,通过简单的JavaScript代码完善下就解决
pnpm跟360有冲突,我也是第一次见识。
three.js一个js三维模型库,陌生是挺陌生的,不过学习的话,我们还是要从官网开始,别随便拿别人的代码套。
让electron支持vite2,非常不错,让vue3跑mqtt,十分完美的组合,还支持cnpm。
vite2 vue3 兼容库包,站长用完才能偷偷告诉你。
整理vue公共函数,放置到main.js,在main.js设置全局变量,实现main.js跟.vue文件间的数据通信。