基础入门

更新时间: 2024-12-13 14:53:22

# 前言

当今3D变得越来越流行,并且在视频游戏以外的领域也广泛使用,其中之一就是网站。

近几年来3D网页已经成为一种趋势,这主要归功于现代浏览器和移动设备都能支持3D。

如果你是希望制作含有3D的网页或app的前端开发人员,有些概念需要简单了解一下。

  • OpenGL
    OpenGL是一个应用程序编程接口(api),其作用是能够使应用程序与显卡交互,并在显示屏上渲染东西。

  • WebGL OpenGL以某种方式编写的应用程序连接着图形和显卡,但web浏览器并不能运行OpenGL。2011年3月,WebGL首次发布,它是轻量级的OpenGL,也被称作OpenGL ES,可以在浏览器上运行。
    webgl只是一些用来连接浏览器和显卡的JavaScript函数,这些函数可以在网页上显示2d和3d的内容。

  • Shader
    webgl是浏览器和显卡之间的媒介,那么shader就是我们给显卡发送的指令,它们本质上是被嵌入应用程序代码的一些小的程序。

有两种shader: 顶点着色器vertex shader 和 片元着色器fagment shader

顶点着色器的作用是简单的指定一个或多个组成网格的点的位置。

片元着色器负责每个像素点的颜色

  • 3D库
    threejs,babylonjs,以及其他库都充当着实际的程序和webgl api之间的中间层,大大的简化了代码复杂度。

这些库的api不重要,重要的是要知道api是怎样在幕后运行的

# 创建项目

  • 新建文件夹,在terminal中输入 npm create vite@latest

  • 给project命名

  • 使用vanilla js

  • 使用JavaScript

  • 打开刚刚新建的项目文件夹,npm install, npm run dev