021-顶点法线与反射原理

该系类文章主要用于记录学习three.js的过程,包括做的一些demo,笔记,以及个人思考;主要学习的课程是 神光的小册《three.js通关秘籍》,感兴趣的可以购买学习,质量还是可以的

反射的原理

  1. 当光源射向物体表面的时候,光源与物体表面垂直的线,我们称之为法线。可以理解为光源从不同的角度照射过来的角度不同。
  2. MeshBasicMaterial 不受光照的影响。而 MeshLambertMaterialMeshPhongMaterial 会受光照的影响,也就是会模拟真实的光照效果

如何设置法线

通过设置物体的 attributesnormal 属性

ini 复制代码
const normals = new Float32Array([
    0, 0, 1,
    0, 0, 1,
    0, 0, 1,
    0, 0, 1
]);
geometry.attributes.normal = new THREE.BufferAttribute(normals, 3);

示例

相关推荐
CHNE_TAO_EMSM6 小时前
Android studio 打开文件时自动下载源码
前端·javascript·android studio
竹林8188 小时前
从 ethers.js 迁移到 Viem:一个签名验证 Bug 让我彻底放弃旧爱
javascript
你挚爱的强哥8 小时前
Vue2 实现 1.5s 十连击监听(连续点击若干次),封装通用可复用点击检测工具,不用 data!Vue 封装通用连击监听方法,支持自定义时长与点击次数
前端·javascript·vue.js
半个落月9 小时前
用 LangChain.js 手写一个能读写文件和执行命令的 Mini Cursor
javascript·人工智能·后端
天外天-亮9 小时前
HBuilder X 使用 uview-plus 方式
开发语言·javascript·hbuilder x·uview-plus
我有满天星辰10 小时前
Vue项目脚手架之争:create-vue与Vue CLI全面对比
前端·javascript·vue.js
多加点辣也没关系14 小时前
JavaScript|第9章:对象 — 基础
开发语言·javascript·ecmascript
我有满天星辰14 小时前
Vue 2 与 Vue 3 计算属性完全指南:从 Options API 到组合式 API 的演进
前端·javascript·vue.js
后台开发者Ethan14 小时前
setState组件更新
前端·javascript·react
蜡台15 小时前
uniapp vue2 转 vue3
前端·javascript·uni-app·vue3·vue2