年度归档: 2022年

34 篇文章

thumbnail
GAMES101 L05 Rasterization(Triangles)
标准立方体到屏幕 什么是屏幕? 二维数组 每个元素是一个像素 一种经典的光栅成像设备 Raster在德语中的意思就是表示屏幕 光栅化:在屏幕上绘画 像素: 在屏幕上最小单位的小方块 由红绿蓝三原色混合而成 屏幕空间 像素都是以 (x,y) 的形式表示,其中 x, y 都是整数 像素的范围从 (0, 0) 到 (宽度 - 1, 长度 - 1) 像素的…
thumbnail
TA百人计划 图形 2.1 色彩空间介绍
本文章基于 BV1Qb4y1S7CC 记录 色彩发送 色彩认知 光源是出生点,光源发射出光线,光线通过直射反射折射等路径最终进入人眼; 人眼接收光线后,人眼细胞产生一系列化学反应; 由此把信号传入大脑,最终大脑对颜色产生认知; 光的要素 图中少了折射 光源 定义: 光源就是产生光的物体。若没有光,我们就无法在黑暗中看到色彩,光本质是一种处于特定频段…
thumbnail
TA百人计划 图形 1.3 纹理的秘密
纹理三问 纹理是什么 宏观角度:一张图片(不准确) 微观角度:一种可供着色器读写的结构化存储形式 简而言之,纹理是个容器。 以二维纹理为例,二维纹理以宽高以及想要存储的信息(RGBA 等)构造的一个三维数组 [i,j,k],其中 $i$ 和 $j$ 类比数组或者矩阵,代表像素点,$k$ 代表我们想要存储的 RGBA 或者其他信息。 由二维纹理可推得…
thumbnail
TA百人计划 图形 1.4 PC 手机图形 API 介绍
前言 电脑的工作原理:电脑是由各种不同的硬件组成,由驱动软件驱使硬件进行工作。所有的软件工程师都会直接或者间接的使用到驱动 定义:是一个图形库,用于渲染 2D,3D 矢量图形的跨语言,跨平台的应用程序编程接口(API)。针对 GPU。 基础概念 应用端 即我们自己的程序端,相对用 OpenGL ES,我们属于应用端 什么是应用端?应用端就是我们程序…
thumbnail
JavaScript 进阶
事件 JavaScript 的代码一般通过事件触发。 可以通过 addEventListener 函数为元素绑定事件的触发函数。 常见的触发函数有: 鼠标 click:鼠标左键点击 dblclick:鼠标左键双击 contextmenu:鼠标右键点击 mousedown:鼠标按下,包括左键、滚轮、右键 event.button:0表示左键,1表示中…
thumbnail
Git 提交代码时添加 emoji 图标
在commit时添加一个emoji表情图标 git commit -m ':emoji: 此次提交的内容说明' 添加多个emoji表情图标 git commit -m ':emoji1: :emoji2: :emoji3: 此次提交的内容说明' 在提交内容的前面增加了emoji标签: :emoji:,其中emoji是表情图标的标签,列表见下面的附录…
thumbnail
GAMES101 02 Review Of Linear Algebra
向量 通常写作 $\vec{a}$ 或者加粗的 $a$ 或者使用起点和终点的形式 $\overrightarrow{AB}=B-A$ 有距离和长度 没有具体的起点位置 向量归一化 向量的大小(长度)写为 $\left | \vec{a} \right | $ 单位向量 大小为 1 的向量 求向量的单位向量(归一化):$\hat{…
thumbnail
TA百人计划 图形 1.2.3 MVP矩阵
MVP 矩阵 什么是MVP矩阵? MVP矩阵分别是模型(Model),观察(View),投影(Projection)三个矩阵。我们的顶点坐标起始于局部空间(Local Space),在这里它称为局部坐标(Local Coordinate),它在之后会变为世界坐标(World Coordinate),观察坐标(View Coordinate),裁剪坐…