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);

示例

相关推荐
紫_龙21 分钟前
最新版vue3+TypeScript开发入门到实战教程之重要详解readonly/shallowReadOnly
前端·javascript·typescript
蓝莓味的口香糖3 小时前
【vue】初始化 Vue 项目
前端·javascript·vue.js
aikongmeng3 小时前
【Ai】Claude Code 初始化引导
javascript
光影少年3 小时前
数组去重方法
开发语言·前端·javascript
我命由我123453 小时前
浏览器的 JS 模块化支持观察记录
开发语言·前端·javascript·css·html·ecmascript·html5
weixin_443478514 小时前
Flutter第三方常用组件包之路由管理
前端·javascript·flutter
程序员小寒6 小时前
JavaScript设计模式(八):命令模式实现与应用
前端·javascript·设计模式·ecmascript·命令模式
Z_Wonderful8 小时前
在 Next.js 中,使用 [id] 或 public 作为文件夹或文件名是两种完全不同的概念,分别对应 动态路由 和 静态资源托管
javascript·网络·chrome
妖萌妹儿10 小时前
postman怎么做参数化批量测试,测试不同输入组合
开发语言·javascript·postman
Zk.Sun10 小时前
【RK3588 Mali610 适配 Qt6 】
前端·javascript·vue.js