Blender导出gltf格式ThreeJS不显示问题-

1. 检查代码

import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
。。。。。。initRoomGltf() {const _this = this;// const loader = new OBJLoader();const loader = new GLTFLoader();// load a resourceloader.load(// resource URL// this.commonFunc.getPath('移动.obj'),this.commonFunc.getPath('移动.gltf'),// called when resource is loadedfunction (gltf) {console.log('initRoom loaded', gltf);gltf.scene.position.set(0, -2, 0);_this.scene.add(gltf.scene);},// called when loading is in progressesfunction (xhr) {console.log((xhr.loaded / xhr.total) * 100 + '% loaded');},// called when loading has errorsfunction (error) {console.log('An error happened', error);});}

注意加载 _this.scene.add(gltf.scene);

如果加载obj,是 _this.scene.add(obj);

initRoomObj() {const _this = this;let textureLoader = new THREE.TextureLoader();let material = new THREE.MeshPhongMaterial({// color: 0xFF0000,map: textureLoader.load(this.commonFunc.getPath('主体_B.png')),roughnessMap: textureLoader.load(this.commonFunc.getPath('主体_R.png'))});let opacityMaterial = new THREE.MeshStandardMaterial({color: 0x000000,map: textureLoader.load(this.commonFunc.getPath('透明材质_B.png')),roughnessMap: textureLoader.load(this.commonFunc.getPath('透明材质_R.png'))});opacityMaterial.transparent = true; //开启透明// opacityMaterial.opacity = 1; //设置透明度const loader = new OBJLoader();// load a resourceloader.load(// resource URLthis.commonFunc.getPath('移动集装箱机房.obj'),// called when resource is loadedfunction (obj) {console.log('initRoom loaded', obj);obj.position.set(0, -2, 0);_this.scene.add(obj);obj.traverse(function (child) {console.log('initRoom child', child.name);// 对不同物体加载不同材质if (child.isMesh && child.name.startsWith('zhuti_')) {child.material = material;// child.visible = false;} else {child.material = new THREE.MeshPhysicalMaterial({color: DEFAULT_COLOR});}});},// called when loading is in progressesfunction (xhr) {console.log((xhr.loaded / xhr.total) * 100 + '% loaded');},// called when loading has errorsfunction (error) {console.log('An error happened', error);});}

2. Blender导入时注意选项

导出Obj,这个需要手动加载材质
在这里插入图片描述
推荐导出gltf,这个可打包材质到一个文件中,之前导出没注意看,一直不显示物体,或者材质没有加载,折腾很长时间。
在这里插入图片描述
gltf文件可以直接打开查看是不是材质已经打包进去了
在这里插入图片描述

Gltf加载颜色失真问题

颜色偏差: http://webgl3d.cn/pages/c2fd5c/

  this.renderer.outputEncoding = THREE.sRGBEncoding;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/2872.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络核心

1、OSI开放式互联参考模型 1、物理层:机械、电子、定时接口通信信道上的原始比特流传输。2、数据链路层:物理寻址,同时将原始比特流转变为逻辑传输线路。3、网络层:控制子网的运行,如逻辑编址、分组传输、路由选择(IP…

通过无模型多代理强化学习掌握Stratego游戏

Stratego是一款流行的双人不完美信息棋盘游戏。由于其复杂性源于其巨大的游戏树、在不完善的信息下进行决策以及一开始的分段部署阶段,Stratego对人工智能(AI)构成了挑战。以前的计算机程序充其量只在业余水平上运行。 Perolat等人引入了一种…

AD20|原理图导入Pcb时三极管引脚报错 Unkown Pin:Pin Q1-B

完成原理图绘制后,将其导入到Pcb中进行布局时,出现报错;Unknown Pin: Pin Q1-B. 原因是:引脚名称不一致 在原理图中,三个引脚分别定义B、C、E; 而在常见的TO—92A封装中,使用1、2、3作为三个引脚的名称&am…

Windows 下编译 OpenCV 和 OpenCV-contrib

文章目录 导言环境准备源码获取环境获取 配置 CMake 并编译ConfigureGenerate 生成项目总结 导言 在本文中,我们将介绍如何在 Windows 系统下编译 OpenCV 和 OpenCV-contrib。OpenCV 是一个开源的计算机视觉库,它包含了许多图像处理和计算机视觉的功能。…

VS+OpenCV字符动画ikun打篮球

目录 一、环境搭建实现效果模糊知识点资源 一、环境搭建 Visual Studio 2019VSopenCVVS2019配置opencv4.6.0手把手一步一步实现导出OpenCV的VS项目模板从第四步导出项目模板开始看VS安装easyx图形库教程easyx.h报错:无法打开源文件 “xxx.h“ 的解决办法 使用默认的…

Android 图形系统-图解和初步探究

Android 图形系统-图解和初步探究_猎羽的博客-CSDN博客https://blog.csdn.net/feather_wch/article/details/131486729 Android图形系统 2023-7-1 问题:如何将一帧画面显示到屏幕上? 绘制流程 Activity代码 Window的结构 绘制流程 Activity启动后&a…

深度学习(24)——YOLO系列(3)

深度学习(24)——YOLO系列(3) 文章目录 深度学习(24)——YOLO系列(3)1. BOF(bag of freebies)2. Mosaic data augmentation3. 数据增强4. self-adversarial-training(SAT…

Mysql的SQL性能分析【借助EXPLAIN分析】

性能分析 要说sql有问题,需要拿出证据,因此需要性能分析 Mysql查询优化器(Mysql Query Optimizer) Mysql中有专门负责优化SELECT语句的优化器模块,主要功能:通过计算分析系统中收集到的统计信息&#xf…

Spring的存储与获取Bean

Spring的存储与获取Bean 🔎Spring—存储Bean配置扫描路径利用类注解进行存储添加注解存储Bean关于Id为什么需要五个类注解类注解之间的关系 利用方法注解进行存储关于Id 🔎Spring—获取Bean属性注入Set注入构造方法注入总结(Spring的注入方式? 它们之间…

An unexpected connection driver error occured

安装下载好rabbitmq,我在springboot整合mq,启动的时候报错了 An unexpected connection driver error occured 后来又报 Failed to check/redeclare auto-delete queue(s). 综合就是连接问题,端口有问题 我试过添加账户,提高权限&…

【架构】领域驱动设计(DDD)的几种典型架构介绍

文章目录 前言一、专业术语二、架构演变三、限界上下文四、领域驱动设计的四重边界五、整洁分层架构六、六边形架构七、洋葱架构总结 前言 我们生活中都听说了DDD,也了解了DDD,那么怎么将一个新项目从头开始按照DDD的过程进行划分与架构设计呢&#xff…

解决页面等比缩放问题

近些年可视化数据大屏技术早已成熟,在市场上相关技术也是五花八门;通常情况是自行开发,要不找技术比较成熟大厂定制,或者使用较成熟的低代码平台实现。 技术门槛比较低,不过在数据大屏项目实施过程中会发现&#xff0c…