首页/新闻资讯/正文详情

Three.js 灯罩教程

发布时间:2026/11/14 8:29:56 来源:云帆数科 栏目:资讯中心
Three.js 灯罩教程
灯罩 ·Lampshade· ▶ 在线运行案例案例合集三维可视化功能案例threehub.cn开源仓库github地址https://github.com/z2586300277/three-cesium-examples400个案例代码:网盘链接你将学到什么ShaderMaterial 自定义着色器实现核心视觉效果OrbitControls 相机轨道交互requestAnimationFrame渲染循环与resize自适应效果说明本案例演示灯罩效果基于 WebGL 实现「灯罩」可视化效果附完整可运行源码核心用到 ShaderMaterial、OrbitControls。建议先打开文首在线案例查看动态画面再对照下方源码逐步理解。核心概念Scene / Camera / WebGLRenderer构成最小渲染闭环大场景可开logarithmicDepthBuffer缓解 Z-fighting。ShaderMaterial通过uniforms 自定义 GLSL 控制逐像素/逐点效果透明粒子常配合depthTest: false。OrbitControls提供轨道旋转/缩放开启enableDamping后需在 animate 中controls.update()。实现步骤创建 OrbitControls 并处理 resize定义 uniforms在 rAF 中更新并 render搭建灯光与环境如有requestAnimationFrame 循环 update render代码要点import {Color, CylinderGeometry, Group, Mesh, MeshBasicMaterial, MeshStandardMaterial, PerspectiveCamera, PlaneGeometry, PointLight, Scene, ShaderMaterial, SphereGeometry, WebGLRenderer } from three import { OrbitControls } from three/examples/jsm/controls/OrbitControls.jsconst size { width: window.innerWidth, height: window.innerHeight } const scene new Scene() scene.background new Color(#070630)const camera new PerspectiveCamera(45, size.width / size.height, 0.1, 1000) camera.position.set(30, 30, 30)const renderer new WebGLRenderer({ antialias: true }) renderer.setSize(size.width, size.height) renderer.setPixelRatio(window.devicePixelRatio) document.body.appendChild(renderer.domElement)const controls new OrbitControls(camera, renderer.domElement)class DeskLamp extends Group { constructor() { super() this.#createWick() this.#createLampshade() }/*灯芯/ #createWick() { const geometry new SphereGeometry(1, 32, 16, 0, Math.PI * 2, 0, Math.PI / 2) const material new MeshBasicMaterial({ color: 0xffffff }) const sphere new Mesh(geometry, material) sphere.position.set(0, 3, 0) this.#createLight(sphere) this.add(sphere) }/*灯罩/ #createLampshade() { const cylinderGeometry new CylinderGeometry(1, 5, 3, 32) const cylinderMaterial new ShaderMaterial({ transparent: true, uniforms: { color: { value: new Color(#CB00E3) } }, vertexShader:varying vec2 vUv; void main() { vUv uv; gl_Position projectionMatrixmodelViewMatrixvec4(position, 1.0); }, fragmentShader:uniform vec3 color; varying vec2 vUv; void main() { gl_FragColor vec4(color, vUv.y); }}) const cylinder new Mesh(cylinderGeometry, cylinderMaterial) cylinder.position.set(0, 1.7, 0) this.add(cylinder) }/*点光源/ #createLight(mesh) { const pointLight new PointLight(0xffffff, 1, 100) pointLight.power 1000 mesh.add(pointLight) } }const light1 new DeskLamp() light1.position.set(0, 10, 0) scene.add(light1)const light2 new DeskLamp() light2.position.set(10, 10, 0) scene.add(light2)const light3 new DeskLamp() light3.position.set(0, 10, 10) scene.add(light3)/**创建地面/ const planeGeometry new PlaneGeometry(100, 100) const planeMaterial new MeshStandardMaterial({ color: 0x999999, side: 2 }) const plane new Mesh(planeGeometry, planeMaterial) plane.rotation.x -Math.PI / 2 scene.add(plane)animate() function animate() {renderer.render(scene, camera) requestAnimationFrame(animate) }完整源码GitHub小结本文提供灯罩完整 Three.js 源码与在线 Demo建议先运行案例再改 uniform/参数做二次实验更多 Three.js 实战案例见 three-cesium-examples 合集 与 GitHub 开源仓库

相关推荐

如何5步完成中兴光猫配置解密:终极免费工具使用指南
如何5步完成中兴光猫配置解密:终极免费工具使用指南

如何5步完成中兴光猫配置解密:终极免费工具使用指南 【免费下载链接】ZET-Optical-Network-Terminal-Decoder 项目地址: https://gitcode.com/gh_mirrors/ze/ZET-Optical-Network-Terminal-Decoder 中兴光猫配置解密工具是一款专为网络技术爱好者和初级网络… · 2026/10/25 19:45:02

2026无水印短视频怎么下载,无水印短视频下载方法与工具教程
2026无水印短视频怎么下载,无水印短视频下载方法与工具教程

在日常个人素材整理、内容学习、自有作品备份的场景中,很多用户都需要获取无水印短视频素材。平台自带的保存功能大多会自动叠加水印,影响素材的存档和二次整理使用,因此靠谱的无水印短视频下载方法、适配多场景的无水印短视频下载工具&#… · 2026/10/26 4:50:36

前端 ttf / woff2 字体资源完整优化方案
前端 ttf / woff2 字体资源完整优化方案

前端 ttf / woff2 字体资源完整优化方案一、核心基础认知 字体格式优先级 woff2 > woff > ttf > otf • woff2:压缩率最高(比ttf小40%~70%),现代浏览器全支持,生产首选 • ttf:无压缩,… · 2026/10/27 8:16:23

电工证高级考试软件多久拿证?实操考试心里没底怕挂科怎么办?
电工证高级考试软件多久拿证?实操考试心里没底怕挂科怎么办?

电工证高级考试软件多久拿证?实操考试心里没底怕挂科怎么办? 实操考试心里没底怕挂科,这是很多准备报考电工证高级考试的学员最真实的想法。尤其在周口这样的三四线城市,很多从事电气工作的人员希望通过考取高级电工证来提升职业竞争力。但问题来了:… · 2026/11/14 8:29:38

小榄哪可以年审电工证?上岗必备的电工证年审流程全解析
小榄哪可以年审电工证?上岗必备的电工证年审流程全解析

小榄哪可以年审电工证?上岗必备的电工证年审流程全解析 之前考的证在外省能不能转过来?这个问题困扰了很多人,特别是像你这样在驻马店从事房建工程的工友。现在国家统一管理,特种作业操作证已经实现全国联网,只要符合规定,外省的电工证是可以转到小榄来… · 2026/11/14 8:29:38

成都在哪里学电工证官方报名入口全攻略实操考试心里没底怕挂科
成都在哪里学电工证官方报名入口全攻略实操考试心里没底怕挂科

成都在哪里学电工证官方报名入口全攻略实操考试心里没底怕挂科 实操考试心里没底怕挂科,这是很多想报考电工证的学员共同的焦虑。特别是在成都,作为一个经济发展迅速、建筑与制造行业蓬勃发展的城市,电工证的需求量逐年上升,但报考流程、考试内容、培训机… · 2026/11/14 8:29:38

铜陵电工证补贴怎么拿?官方报名入口帮你搞懂流程
铜陵电工证补贴怎么拿?官方报名入口帮你搞懂流程

铜陵电工证补贴怎么拿?官方报名入口帮你搞懂流程 学历不高怕报不上名?其实电工证考试对学历要求并不高,只要你能看懂题、听懂课,就完全有资格报名。铜陵电工证补贴政策也在不断推进, 官方报名入口… · 2026/11/14 8:29:38

济南低压电工作业证通过率揭秘:实操考试心里没底怕挂科?全攻略来了
济南低压电工作业证通过率揭秘:实操考试心里没底怕挂科?全攻略来了

济南低压电工作业证通过率揭秘:实操考试心里没底怕挂科?全攻略来了 实操考试心里没底怕挂科,这几乎是所有准备考【济南低压电工作业证】的学员的真实写照。尤其是像洛阳涧西区这些工程类应届生,刚毕业就面临证书考试,既紧张又迷茫。别急,这篇文章就是为… · 2026/11/14 8:29:38

江西低压电工证题库考前押题全攻略,上岗找工作不再难
江西低压电工证题库考前押题全攻略,上岗找工作不再难

江西低压电工证题库考前押题全攻略,上岗找工作不再难 你是不是正被“没有特种作业证就找不到工作”这句话逼得焦头烂额?别急,今天咱们就来聊一聊【江西低压电工证题库】和【考前押题】这两大关键词,帮你打通从“无证”到“持证上岗”的最后一公里。… · 2026/11/14 8:28:38

电工证丢失还能补吗?千万别踩坑,丢了证等于失业
电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。… · 2026/11/13 22:30:50

电力电缆作业证直播报名入口与办理流程良心建议
电力电缆作业证直播报名入口与办理流程良心建议

电力电缆作业证直播报名入口与办理流程良心建议 你是不是也担心学历不高报不了名?别急,今天就给你讲讲 电力电缆作业证直播 的报名流程和那些你必须知道的干货, 良心建议 在这里,别错过。 电力电缆作业证直播报名需要什么条件?… · 2026/11/13 5:40:45

英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑
英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑

英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 怕考不过白交培训费?英德电工证报考费多少钱,你真的了解吗?现在市面上培训机构五花八门,价格参差不齐,很多人一不小心就花了冤枉钱,结果还考不过。别急,今天就来给你说清楚英德电工证的… · 2026/11/12 23:27:43

有初级电工证怎么工作 2026河南最新政策怎么应对
有初级电工证怎么工作 2026河南最新政策怎么应对

有初级电工证怎么工作 2026河南最新政策怎么应对 之前考的证在外省能不能转过来?这个问题我每天被问上百次。2026年河南最新政策对证书跨省转移有了明确说明,特别是南阳市的从业者,需要特别关注。… · 2026/11/14 0:00:31

电工证过期了不知道怎么复审?考电工证自学书+官方报名入口全攻略
电工证过期了不知道怎么复审?考电工证自学书+官方报名入口全攻略

电工证过期了不知道怎么复审?考电工证自学书+官方报名入口全攻略 证书过期了不知道怎么复审延期?很多人遇到这种情况,要么是工作太忙没时间处理,要么是不知道具体流程,导致证书失效,影响工作和项目进展。其实复审并不难,关键是要找准官方报名入口,掌… · 2026/11/14 0:00:31

为什么要低压电工证实操考试考什么
为什么要低压电工证实操考试考什么

为什么低压电工证值不值得考?别再被中介骗了 你是不是也经常看到网上有人在问“低压电工证到底值不值得考”?或者在找报名点时,担心被中间人骗钱?这些问题,我懂,我也经历过。作为一名在应急管理行业摸爬滚打多年的从业者,我深知低压电工证不仅是一个从… · 2026/11/14 0:00:31

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/13 6:12:21

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/13 6:11:51

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/13 22:31:30

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码