當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
ThreeJS - 动态更换fbx模型的某个子Mesh现有的纹理贴图为指定的纹理贴图
生活随笔
收集整理的這篇文章主要介紹了
ThreeJS - 动态更换fbx模型的某个子Mesh现有的纹理贴图为指定的纹理贴图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 動態更換fbx模型的指定紋理貼圖
在使用ThreeJS中的FBXLoader的過程中,我們在有的時候只需要Fbx模型的網格信息,而每個網格的紋理我們想自己動態的指定,這在OpenGL中很簡單,在ThreeJS同樣也是非常簡單。
動態更換子mesh中紋理貼圖可參考以下代碼:
var fbxModelfilepath = './example.fbx'; var fbxLoader = new THREE.FBXLoader(); fbxLoader.load(fbxModelfilepath,function(fbxObject){fbxObject.traverse(function(child){if(child instanceof THREE.Mesh){if(child.name.indexOf("Body") != -1){// 如果貼圖格式為tga則使用THREE.TGALoader// var loader = new THREE.TGALoader();// 如果貼圖格式為其他普通格式,則使用Three.TextureLoadervar loader = new Three.TextureLoader();loader.load('./Resource/body.png', // 本地路徑的圖片// 加載完貼圖后的回調函數function (texture) {child.material.map = texture;child.material.needsUpdate = true;console.log("身體貼圖更新完畢");},// 目前不支持加載貼圖過程中的回調函數undefined,// 加載出錯時候的回調函數function (err) {console.error('An error happened.');});}}});scene.add(fbxObject); });如果需要學習更多的有關計算幾何和計算機圖形學、以及下載計算幾何和計算機圖形經典書籍的朋友,大家如果有興趣可以訪問我的個人站:http://www.stubbornhuang.com
總結
以上是生活随笔為你收集整理的ThreeJS - 动态更换fbx模型的某个子Mesh现有的纹理贴图为指定的纹理贴图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 替换重复字符_python
- 下一篇: 【干货】数据集网站汇总!