shader基础语法1.1

本文介绍了ThreejsShader的基础应用、学习前提(需掌握Three.js阶段1和2),推荐先学习WebGL,以及Threejs底层的WebGL渲染器工作原理。对于时间紧张者,可跳过WebGL直接学习但难度会提高。
摘要由CSDN通过智能技术生成

1. 学前说明

在正式学习Threejs Shader之前,先说下通过Threejs Shader可以做什么,怎么去学习的问题。

Three.js Shader可以做什么

先简单展示几个Threejs Shader相关的效果。

  • 建筑流光效果
  • 智慧城市特效
  • 地球、地图可视化飞线Shader
  • 网页波浪背景

学习基础

学习Threejs Shader之前,确保《Three.js可视化系统课》 ,阶段1、阶段2内容你已经学习了,对threejs有一个基本的了解。

【阶段1】Threejs基础、中级部分 【必修】

【阶段2】Threejs进阶数学几何计算 【必修】

【阶段1】阶段1对应案例【选修】

【阶段2】阶段2对应案例【选修】

【阶段3】原生WebGL 【选修,建议最好学】

WebGL基础问题

如果你时间比较充足,最好先入门WebGL,再学习Threejs Shader,这样更容易理解threejs Shader代码。

不过有一点学习WebGL要求相对高点。

当然如果你不想花时间学习WebGL,项目着急写threejs shader,你跳过《原生webgl课程》 (opens new window)也行,只是这样有个小缺陷,学习threejs shader难度会更高点,要有心理准备,不过好处就是不用折腾WebGL的API了。

Threejs底层:WebGL

像你平时写threejs代码的WebGL渲染器WebGLRenderer,本质上就是对WebGL API的封装。

WebGL渲染器执行.render()渲染的过程,本质上就是调用WebGL API,控制你的电脑或手机的GPU渲染3D场景。

const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera();
// WebGL渲染器
const renderer = new THREE.WebGLRenderer();
renderer.render(scene, camera);

如果想了解WebGLRenderer是如何封装WebGL API的,你可以查看threejs官方文件包,src/renderers目录下与WebGL渲染器WebGLRenderer有关的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值