莆田做网站公司电话/创建站点的步骤

莆田做网站公司电话,创建站点的步骤,怎么运用区块链做网站,郑州商城网站建设本篇主要学习内容 : three常用的几种材质环境贴图、贴图、环境光、遮蔽光、透明度、高光贴图(纹理贴图) 点赞 关注 收藏 学会了 1.three常用的几种材质 1.1) 基础网格材质MeshBasicMaterial、漫反射网格材质MeshLambertMaterial、高光…

本篇主要学习内容 :

  1. three常用的几种材质
  2. 环境贴图、贴图、
  3. 环境光、遮蔽光、透明度、高光贴图(纹理贴图)

点赞 + 关注 + 收藏 = 学会了

1.three常用的几种材质

1.1) 基础网格材质MeshBasicMaterial、漫反射网格材质MeshLambertMaterial、高光网格材质MeshPhongMaterial等网格材质他们都有一个共同的父类Material
1.2) MeshBasicMaterial、MeshLambertMaterial、MeshPhongMaterial等子类网格材质会从父类Material继承一些属性和方法,比如透明度属性.opacity、面属性.side、是否透明属性.transparent等等后面会学到我写了示例代码

2.环境贴图、贴图

请添加图片描述
请添加图片描述

2.1)环境贴图

如果你不设置任何光源和环境贴图,gltf模型默认PBR材质不会正常显示,一片漆黑。
不过你不设置任何光源,只设置环境贴图,物体表面也能看到。虽然环境贴图不是光源,但是会模拟物体周围环境的反射光。就好比你站在街上,周围房子、树木、马路也会反射光线到你身上。
通过.envMapIntensity可以调节环境贴图对模型外表面的影响程度,.envMapIntensity的值可以通过gui交互界面调节。

// 导入加载器
import { RGBELoader } from 'three/examples/jsm/loaders/RGBELoader.js'
// 实例化rgbeLoader
let rgbeLoader = new RGBELoader()
// 环境贴图
rgbeLoader.load('./texture/Alex_Hart-Nature_Lab_Bones_2k.hdr', (envMap) => {// 设置球形映射envMap.mapping = THREE.EquirectangularReflectionMapping// 设置环境贴图scene.background = envMap// 场景设置环境贴图scene.environment = envMap// 设置plane环境贴图planeMaterial.envMap = envMap
})

3.环境光、遮蔽光、透明度、高光贴图 (纹理贴图)

3.1) 纹理贴图

通过纹理贴图加载器TextureLoaderload()方法加载一张图片可以返回一个纹理对象Texture
通过设置纹理贴图各个参数来实现控制以上效果,往下继续学习吧

3.2)纹理对象Texture可以作为模型材质颜色贴图.map属性的值。
// 创建纹理加载器
let textureLoader = new THREE.TextureLoader()
// 加载纹理  基础纹理贴图 .map设置
let texture = textureLoader.load('./texture/watercover/CityNewYork002_COL_VAR1_1K.png')
3.3) 环境光

一般三维场景需要添加环境光,来整体调节三维场景的明暗,环境光强度可以通过参数2,或光照强度属性.intensity设置。
实际开发,可以先给一个大概的值,然后通过gui交互界面微调AmbientLight的光照强度属性.intensity

const ambient = new THREE.AmbientLight(0xffffff, 0.4);
scene.add(ambient);
3.3) 遮蔽光、遮蔽贴图、ao贴图
// 加载ao贴图 环境遮挡贴图
let aoMap = textureLoader.load('./texture/watercover/CityNewYork002_AO_1K.jpg')
3.4)透明度贴图
// 透明度贴图 灰度
let alphaMap = textureLoader.load('./texture/door/height.jpg')
3.3)高光
// 光照贴图
let lightMap = textureLoader.load('./texture/colors.png')
// 高光贴图
let specularMap = textureLoader.load('./texture/watercover/CityNewYork002_GLOSS_1K.jpg')

对应添加至材质的属性即可(这里需要文件的可以私我)

// 创建材质
let planeMaterial = new THREE.MeshBasicMaterial({color: 0xffffff,// 贴图map: texture,// 允许透明transparent: true,//ao贴图 环境遮挡贴图aoMap: aoMap,aoMapIntensity: 1, //强度默认1// 透明度贴图// alphaMap: alphaMap,// 光照贴图// lightMap: lightMap,// 高光贴图specularMap: specularMap,// 反射强度reflectivity: 0.5,
})通过gui我们还可以调试(回顾上节)
gui.add(planeMaterial, 'aoMapIntensity').min(0).max(1).name('ao强度环境遮挡贴图')
gui.add(planeMaterial, 'reflectivity').min(0).max(1).name('反射强度')

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

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

相关文章

【大模型安全】大模型的技术风险

【大模型安全】大模型的技术风险 1.DDoS攻击2.常见的传统网络攻击方式3.恶意意图的识别4.AI生成虚假信息传播5.利用AI进行黑客攻击6.模型对抗攻击7.后门攻击8.Prompt攻击9.数据投毒攻击10.模型窃取攻击11.数据窃取攻击 1.DDoS攻击 2023年11月9日凌晨,OpenAI在官网公…

C++学习之路,从0到精通的征途:入门基础

目录 一.C的第一个程序 二.命名空间 1.namespace的价值 2.命名空间的定义 3.命名空间使用 三.C的输入与输出 1.<iostream> 2.流 3.std(standard) 四.缺省参数 1.缺省参数的定义 2.全缺省/半缺省 3.声明与定义 ​五.函数重载 1.参数个数不同 2.参数类型不…

本地YARN集群部署

请先完成HDFS的前置部署&#xff0c;部署方式可查看:本地部署HDFS集群https://blog.csdn.net/m0_73641796/article/details/145998092?spm1001.2014.3001.5502 部署说明 组件配置文件启动进程备注Hadoop HDFS需修改 需启动: NameNode作为主节点 DataNode作为从节点 Secondary…

UnrealEngine UE5 可视化 从地球观察火星 金星 土星 运动轨迹

视频参考&#xff1a;https://www.bilibili.com/video/BV1KpXSYdEdo/ 从地球观察土星的运动轨迹 从地球观察火星 轨迹 从地球观察金星的运动轨迹

通用信息抽取大模型PP-UIE开源发布,强化零样本学习与长文本抽取能力,全面适配多场景任务

背景与简介 信息抽取&#xff08;information extraction&#xff09;是指&#xff0c;从非结构化或半结构化数据&#xff08;如自然语言文本&#xff09;中自动识别、提取并组织出结构化信息。通常包含多个子任务&#xff0c;例如&#xff1a;命名实体识别&#xff08;NER&am…

Matlab实现车牌识别

车牌识别技术作为现代智能交通系统、安防监控以及诸多车辆管理应用场景中的关键环节&#xff0c;正发挥着日益重要的作用&#xff0c;它能够自动、快速且精准地从车辆图像或视频流中提取车牌信息&#xff0c;实现车辆身份的智能化识别。 技术原理 车牌识别主要依托于图像处理、…

基于Asp.net的零食购物商城网站

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

Ubuntu20.04双系统安装及软件安装(十一):向日葵远程软件

Ubuntu20.04双系统安装及软件安装&#xff08;十一&#xff09;&#xff1a;向日葵远程软件 打开向日葵远程官网&#xff0c;下载图形版本&#xff1a; 在下载目录下打开终端&#xff0c;执行&#xff1a; sudo dpkg -i SunloginClient(按tab键自动补全)出现报错&#xff1a; …

快速生成viso流程图图片形式

我们在写详细设计文档的过程中总会不可避免的涉及到时序图或者流程图的绘制&#xff0c;viso这个软件大部分技术人员都会使用&#xff0c;但是想要画的好看&#xff0c;画的科学还是比较难的&#xff0c;现在我总结一套比较好的方法可以生成好看科学的viso图(图片格式)。主要思…

C++设计一:日期类Date实现

一、引言与概述 1 引言 日期操作是软件开发中的常见需求&#xff0c;如日程管理、数据统计等场景均需处理日期的比较、偏移及合法性校验。为简化此类操作&#xff0c;本文设计了一个高效且类型安全的C日期类Date。 该类通过构造函数内嵌合法性检查&#xff0c;确保对象初始状…

【PAT (Basic Level) Practice】——【数论】1013 数素数

文章目录 一【题目难度】二【题目编号】三【题目描述】四【题目示例】五【解题思路】六【最终得分】七【代码实现】八【提交结果】 一【题目难度】 乙级 二【题目编号】 1013 数素数 三【题目描述】 令 Pi 表示第 i 个素数。现任给两个正整数 M≤N≤104&#xff0c;请输出…

HCIA—IP路由静态

一、概念及作用 1、概念&#xff1a;IP路由是指在IP网络中&#xff0c;数据从源节点到目的节点所经过的路径选择和数据转发的过程。 2、作用 ①实现网络互联&#xff1a;使不同网段的设备能够相互通信&#xff0c;构建大规模的互联网络 ②优化网络拓扑&#xff1a;根据网络…

雷池WAF的为什么选择基于Docker

Docker 是一种开源的容器化平台&#xff0c;可以帮助开发人员将应用程序及其所有依赖项打包到一个称为容器的独立、可移植的环境中。Docker 的核心概念包括以下几点&#xff1a; 容器&#xff1a;Docker 使用容器来封装应用程序及其依赖项&#xff0c;使其能够在任何环境中都能…

图像分类项目2:鸟类图像分类

1 数据集处理 1.1数据集下载 数据集来源&#xff1a;kaggle&#xff0c;网址&#xff1a;https://www.kaggle.com/&#xff0c;点击进入网站&#xff0c;左侧选择Datasets。 进入后搜索栏搜索关键词bird。此时出现很多数据集可以选择&#xff0c;推荐选择第一个或者第三个。…

利用opencv_python(pdf2image、poppler)将pdf每页转为图片

1、安装依赖pdf2image pip install pdf2image 运行.py报错&#xff0c;因为缺少了poppler支持。 2、安装pdf2image的依赖poppler 以上命令直接报错。 改为手工下载&#xff1a; github: Releases oschwartz10612/poppler-windows GitHub 百度网盘&#xff1a; 百度网盘…

IDEA入门及常用快捷键

IDEA是java常用的IDE。当run一个.java文件时&#xff0c;其实是经历了先编译为.class&#xff0c;再运行的过程。 在project文件夹中&#xff0c;out文件夹存储编译的.class文件&#xff0c;src文件夹存储.java代码文件。 设置自动导包 快捷键&#xff1a; 格式化快捷键&…

io学习----->文件io

思维导图&#xff1a; 一.文件io的概念 文件IO&#xff1a;指程序和文件系统之间的数据交互 特点&#xff1a; 1.不存在缓冲区&#xff0c;访问速度慢 2.不可以移植&#xff0c;依赖于操作系统 3.可以访问不同的文件类型(软连接&#xff0c;块设备等) 4.文件IO属于系统调…

深入探索WebGL:解锁网页3D图形的无限可能

深入探索WebGL&#xff1a;解锁网页3D图形的无限可能 引言 。WebGL&#xff0c;作为这一变革中的重要技术&#xff0c;正以其强大的功能和广泛的应用前景&#xff0c;吸引着越来越多的开发者和设计师的关注。本文将深入剖析WebGL的核心原理、关键技术、实践应用&#xff0c;并…

从开发和对抗的角度思考web网页中的接口逆向

如何从开发和对抗的角度去思考web网页中的接口逆向。 文章目录 前言1.从开发和对抗的角度思考接口逆向1.1 什么是接口逆向1.2 开发的角度思考如何开发策略1.3 对抗的角度思考遇到的问题1.4 正常情况下开发者如何防护1.5 正常情况攻击者如何做&#xff1f;1.6 对抗中的胜者 2.某…

C++24--右值引用C++11新特性

目录 1.C11简介 2.统一的列表初始化 2.1{}初始化 2.2std::initializer_list 3.声明 3.1auto 3.2decltype 3.3nullptr 4.范围for循环 5.智能指针 6.右值引用和移动语义 6.1左值引用和右值引用 6.2左值引用与右值引用比较 6.3右值引用使用场景和意义 6.4右值引用引…