当前位置: 首页 > news >正文

Three.JS 使用RGBELoader和CubeTextureLoader 添加环境贴图

  1. 导入RGBELoader模块:
    import { RGBELoader } from "three/examples/jsm/loaders/RGBELoader.js";

使用 

  addRGBEMappingk(environment, background,url) {rgbeLoader = new RGBELoader();rgbeLoader.loadAsync(url).then((texture) => {//贴图模式 经纬线映射贴图texture.mapping = THREE.EquirectangularReflectionMapping;//背景贴图if (background) {this.scene.background = texture;}//环境贴图if (environment) {this.scene.environment = texture;}});
}

调用

let url ="./images/FFThree/hdr/hj.hdr"addRGBEMappingk(true, true, url );

hdr:

使用CubeTexture实现球体和街道环境贴图

addRGBEMappingk(environment, background, urlsix){
{//     // 加载环境贴图// 加载周围环境6个方向贴图// CubeTexture表示立方体纹理对象,父类是纹理对象Textureconst textureCube = new THREE.CubeTextureLoader().setPath(urlsix).load(["px.png", "nx.png", "py.png", "ny.png", "pz.png", "nz.png"]);if (background) {//背景贴图this.scene.background = textureCube;}if (environment) {//环境贴图this.scene.environment = textureCube;}}
}

调用

let urlsix: "./images/FFThree/hdr/back/"addRGBEMappingk(true, true, urlsix);

图片资源

添加金属球看效果

 addSphere() {//金属球const sphereGeometry = new THREE.SphereGeometry(5, 30, 30);const material = new THREE.MeshStandardMaterial({metalness: 0.9, // 金属材质 1 黑roughness: 0.1, //光滑});const sphere = new THREE.Mesh(sphereGeometry, material);sphere.position.set(20, 5, 0);this.scene.add(sphere);return sphere;},

http://www.lryc.cn/news/402685.html

相关文章:

  • k8s logstash多管道配置
  • 【CMU博士论文】结构化推理增强大语言模型(Part 0)
  • Odoo创建一个自定义UI视图
  • Day16_集合与迭代器
  • html2canvas + jspdf 纯前端HTML导出PDF的实现与问题
  • 【JVM】JVM调优练习-随笔
  • 如何解决 CentOS 7 官方 yum 仓库无法使用
  • 分布式唯一id的7种方案
  • 嵌入式物联网在医疗行业中的应用——案例分析
  • C语言 底层逻辑详细阐述指针(一)万字讲解 #指针是什么? #指针和指针类型 #指针的解引用 #野指针 #指针的运算 #指针和数组 #二级指针 #指针数组
  • 【人工智能大模型】文心一言介绍以及基本使用指令
  • AI绘画入门实践|Midjourney 的模型版本
  • Web3时代的教育技术革新:智能合约在学习管理中的应用
  • 云计算实训室的核心功能有哪些?
  • 芯科科技第五届物联网开发者大会走进世界各地,巡回开启注册
  • Python创建Excel表和读取Excel表的基础操作
  • JVM(day2)经典垃圾收集器
  • 华为od机试真题 — 分披萨(Python)
  • ubuntu22.04 安装boost
  • 基于JAVA+SpringBoot+uniapp的心理小程序(小程序版本)
  • C语言 ——— 输入两个正整数,求出最小公倍数
  • Langchain 对pdf,word,txt等不同文件的加载解析
  • BL201分布式I/O耦合器连接Profinet网络
  • Pycharm 报错 Environment location directory is not empty 解
  • 【Android】Intent基础用法及作用
  • Web开发:ASP.NET CORE的后端小结(基础)
  • 侧开知识点合集2
  • ARM/Linux嵌入式面经(十六):蔚来嵌入式一二三面面经
  • Apache BookKeeper 一致性协议解析
  • Solana的账户模型