姑苏区住房和建设局网站,wordpress5.2 注册验证,仙桃网站建设,设计企业展厅的公司在Live2d上下载的资源模型是.cmox格式的#xff0c;无法直接在unity内使用#xff0c;需要在Cubism中导出成.moc文件。1.将下载的.cmox资源直接拖入Cubism2.导出的时候有2.0版本和3.0版本的#xff0c;如图随便哪个版本都OK#xff0c;这里2.0和3.0的区别是#xff0c;3.0…在Live2d上下载的资源模型是.cmox格式的无法直接在unity内使用需要在Cubism中导出成.moc文件。1.将下载的.cmox资源直接拖入Cubism2.导出的时候有2.0版本和3.0版本的如图随便哪个版本都OK这里2.0和3.0的区别是3.0版本导出以后的文件直接拖到unity里面会生成已有的prefab然后模型的变量属性都可以直接在unity内就能观察到啦不用在Cubism和unity之间来回切换。这里都可以开个testscene测试一下我随便导了个2.0版本的。导出以后就会生成.moc格式的文件3.放到unit内加载可能看不到物体需要把camera调成orthographic正交视觉然后调整size和物体位置即可。4.我们可以通过直接加载.moc文件载入live2d的资源也可以把它们转换成.bytes文件再加载。先载入命名空间初始化以后定义变量来存储模型对象//载入命名空间usinglive2d;using live2d.framework;View CodevoidStart(){//初始化Live2D.init();}View Codeprivate Live2DModelUnity live2dModel; //生成对象View Code然后思考如果直接加载moc文件首先我们需要获取到资源内文件的相对地址路径live2DModel Live2DModelUnity.loadModel(Application.dataPath .moc文件的路径);View Code如果是用字节文件加载这里在路径文件夹内先复制一份相对应的moc文件然后修改后缀接着同样需要加载到文件TextAsset mocFile Resources.Load(.bytes文件的路径);live2DModel Live2DModelUnity.loadModel(mocFile.bytes);View Code每次调用完live2d的资源以后需要释放资源Live2D.dispose(); //释放资源View Code接下来是与贴图建立联系可以定义一个公有的Texture2D数组来存储live2d内的贴图资源public Texture2D[] textures;View Code初始化以后遍历就好了for (int i 0; i textures.Length; i){live2DModel.setTexture(i, textures[i]);}View Code5.画布更新private Matrix4x4 live2DCanvasPos; //建立画布View Code画布初始化float modelWidth live2DModel.getCanvasWidth();live2DCanvasPos Matrix4x4.Ortho(0, modelWidth, modelWidth, 0, -50f, 50);View Code在update内更新模型状态voidUpdate () {live2DModel.setMatrix(transform.localToWorldMatrix*live2DCanvasPos);live2DModel.update();}View Code最后绘图private voidOnRenderObject(){live2DModel.draw();}View Code