
学习笔记
文章平均质量分 88
没什么特别的,就是一些学习时做的笔记
CurtainXT
实习游戏程序员
展开
-
工厂模式、回调、委托(学习笔记)
文章目录前言前言感觉自己水平不足,腾出时间了解一下工厂模式 - - - -原创 2022-01-12 11:28:49 · 335 阅读 · 0 评论 -
A*寻路实例项目实践笔记
好久不见!今天使用Unity照着Sebastian Lague大佬的视频做一个A寻路算法的实例项目,包括A寻路的介绍,网格系统的创建,以及一些实际使用案例。原创 2021-11-21 22:41:01 · 4092 阅读 · 3 评论 -
Unity Compute Shader入门(大量对象随机赋值颜色实验)
这里写自定义目录标题前言ComputeShader的简单介绍ComputeShader在Editor中Unity Compute Shader代码原理简介CPU对照组运用Compute Shader解决问题效果前言好久不见!今天使用Unity Compute Shader来实现一个大量正方体的随机颜色赋值,作为我的Unity ComputeShader入门练习。ComputeShader的简单介绍Compute Shader用来将项目中某些大量且简单的算法交给GPU赋值,以此减小CPU的运算负荷。总原创 2021-09-22 17:29:57 · 1654 阅读 · 0 评论 -
Git入门(笔记)
文章目录前言Git简介为何选择Git如何使用Git为什么一定要学命令行Git BASH配置GitGit级别第一次使用Git最后前言git是目前最流行的分布式(Distributed)版本控制系统。学习一下以便工作之需。相关视频链接:Git Tutorial for Beginners: Learn Git in 1 HourGit简介为何选择Gitgit是目前最流行的分布式(Distributed)版本控制系统。免费,开源,传输速度超快,并且可以拓展,同时git开分支和合并分支都很简单。几乎原创 2021-07-19 16:48:08 · 663 阅读 · 0 评论 -
Python入门(笔记)
文章目录前言环境配置下载安装VS Code配置基本语法变量用户输入类型转换字符串格式化字符串字符串方法注:通用的函数叫函数,属于某个类的函数叫方法算术运算函数判断循环数据结构及API表数值APILua语言的面向对象方案复制表方案“成员函数”“构造函数”和“成员变量”“继承”函数闭包方案“类”的设计“继承”最后前言Python快速入门的个人笔记。视频链接:2021国外最新 Python 教程 6 小时入门,目前最好的python教程 (含中文翻译)6小时环境配置下载到python.org下载最原创 2021-06-19 19:05:38 · 346 阅读 · 0 评论 -
Lua入门(笔记)
文章目录前言一、Lua简介简介网站二、Lua配置Win10配置方案最后前言据说做游戏开发要用到Lua,所以提前学一学。一、Lua简介简介Lua是一款基于C语言开发的编程语言,非常小巧并且适合跨平台开发。由于Lua实在是太过于小巧,以至于其不具备很多基本的功能,这些基本功能需要C/C++库来帮忙实现。可以看到,Lua的源代码其实就是C语言写的,所以对于Lua开发来说,实际上是通过Lua来实现逻辑,而功能由C++提供。由于本质上就是C/C++,所以Lua的运行效率很高。网站从http://原创 2021-04-21 15:02:01 · 2622 阅读 · 0 评论 -
材质与外观Materials and Appearances(笔记)
文章目录前言一、材质什么是材质课程的最后前言研究不同材质与光照作用产生的外观。一、材质什么是材质由渲染方程中的BRDF决定的,描述光线如何被物体反射的性质。也可以说,材质就是BRDF。上图表示的为漫反射材质。Glossy材质。玻璃/水材质。折射与反射。课程的最后...原创 2021-04-06 14:15:24 · 773 阅读 · 0 评论 -
设计模式:单例模式(笔记)
文章目录前言单例模式的定义单例模式的用途单例模式的实现前言学习视频链接:五分钟学设计模式.01.单例模式,文章中的部分图片来自该视频教程。单例模式的定义确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。既然只能有一个实例:这个类的构造函数一定是删除的或private这个实例还需要是当前类的静态成员变量为了将这个实例提供给整个系统,我们还要实现一个静态的方法来提供这个实例该实例只能在类的内部实例化单例模式的用途单例模式的主要作用是确保一个类只能有一个实例存在,那么这个模式原创 2021-03-22 21:36:05 · 267 阅读 · 0 评论 -
Unity AssetBundle,AB包(学习笔记)
文章目录前言AB包的概念及作用生成AB包前言为了实习,紧急学习一下AB包的相关知识。魂类项目在做了。学习视频链接: 【唐老狮】Unity热更新之AssetBundle,文章中的部分图片来自该视频教程。AB包的概念及作用做游戏需要用到资源,AB包就是Unity针对不同平台(安卓,IOS,PC)的统一资源压缩包。AB包能存储除了C#脚本之外的几乎所有Unity资产(模型,贴图,预制体,材质,音效)。AB包相对于Resources文件夹这一套资源管理方案,拥有更好的资源管理及资源读取办法,能够压缩资源原创 2021-03-22 16:03:59 · 1421 阅读 · 0 评论 -
光线追踪Ray Tracing(4)(笔记)
文章目录前言十、蒙特卡罗积分(Monte Carlo Integration)蒙特卡罗积分是拿来干嘛的蒙特卡罗积分怎么做蒙特卡罗积分的定义十一、回顾Whitted-Style Ray TracingWhitted-Style的内容Whitted-Style的问题十二、使用蒙特卡罗方法解决渲染方程的积分问题一个简单场景的蒙特卡罗解决方案引入间接光照课程的最后前言今天的内容为路径追踪十、蒙特卡罗积分(Monte Carlo Integration)蒙特卡罗积分是拿来干嘛的如果我们要求上图中a到原创 2021-03-15 13:52:09 · 371 阅读 · 0 评论 -
光线追踪Ray Tracing(3)(笔记)
文章目录前言七、课程的最后前言本篇的内容是光线追踪的光线运动和全局光照(Light Transport & Global Illumination)。七、课程的最后原创 2021-03-14 16:51:02 · 535 阅读 · 0 评论 -
辐射度量学Radiometry(笔记)
文章目录前言∞、辐射度量学辐射度量学的学术动机(Motivation)辐射度量学的概念辐射能量和辐射通量Radient Energy and Flux(Power)其它重要的光线度量方式。Radiant Intensity立体角(Solid Angle)课程的最后前言本篇的内容是辐射度量学入门。∞、辐射度量学辐射度量学的学术动机(Motivation)之前我们提到过Blinn-Phong模型,其中提到了光线的强度(Intensity) I。假如我们说I的值为10。那么10到底是什么。Wh原创 2021-02-10 15:44:55 · 870 阅读 · 0 评论 -
光线追踪Ray Tracing(2)(笔记)
文章目录前言四、Uniform grids预处理(Pre-Processing)——构建加速网格求光线-场景相交格子的分辨率Uniform Grads的利弊五、空间划分Spatial Partitions不同的空间划分示例KD-Tree预处理用于存储KD-Tree的数据结构课程的最后前言今天的内容是光线追踪的加速方法。四、Uniform grids预处理(Pre-Processing)——构建加速网格1.找到场景包围盒。2.创建网格。3.将场景中的每个物体存入重叠的格子中,也就是将于物体表原创 2021-02-10 14:21:16 · 417 阅读 · 0 评论 -
光线追踪Ray Tracing(1)(笔记)
文章目录前言一、光线追踪光线追踪概述光线(Light Rays)光线投射算法(Ray Casting)二、递归的(Whitted-Style)光线追踪算法(Recursive (Whitted-Style) Ray Tracing)递归光线追踪光线和隐式几何物体表面的交点光线和三角形网格的交点Moller Trumbore Algorithm三、光线和表面求交的加速方法课程的最后前言今天的内容是光线追踪中的Whitted-Style。一、光线追踪光线追踪概述光线追踪,简单来说,根据光路可逆性原创 2021-02-07 22:50:36 · 1795 阅读 · 0 评论 -
阴影Shadows(笔记)
文章目录前言∞、阴影(Shadows)阴影映射(Shadows Mapping)阴影映射的实现步骤阴影映射的问题课程的最后前言讲一下之前没讲的阴影(Shadows)∞、阴影(Shadows)在进入到光线追踪的话题之前,我们先将关于光线的重要话题,阴影讲一下。之前我们讲过,着色是局部的事情,我们只考虑着色点的性质,光源和摄像机。不考虑其他物体对该着色点的影响。所以说在着色时无法解决阴影问题。如何在光栅化阶段解决阴影问题,我们将要学习阴影映射(Shadows Mapping)。阴影映射(Sh原创 2021-02-07 13:44:37 · 554 阅读 · 0 评论 -
几何Geometry(3)(笔记)
文章目录前言五、曲面(Surfaces)课程的最后前言曲面的继续五、曲面(Surfaces)课程的最后原创 2021-02-07 12:35:18 · 818 阅读 · 0 评论 -
几何Geometry(2)(曲线和曲面)(笔记)
文章目录前言四、曲线(Curves)贝塞尔曲线(Bezier Curves)贝塞尔曲线的德卡斯特里奥算法(Bezier Curves - de Casteljau Algorithm)三次贝塞尔曲线(Cubic Bezier Curve - de Casteljau)贝塞尔曲线的代数公式(Bezier Curve - Algebraic Formula)贝塞尔曲线的性质(Properties of Bezier Curves)什么是凸包(Convex Hull)分段贝塞尔曲线(Piecewise Bezie原创 2021-02-02 23:49:33 · 847 阅读 · 0 评论 -
几何Geometry(1)(几何的介绍)(笔记)
文章目录前言一、几种表示几何的方式几何的隐式表达方式("Implicit" Representations of Geometry)几何的显式表达方式("Explicit" Representations of Geometry)二、更多隐式几何表示方法代数曲面(Algebraic Surfaces)实体几何构造法(Constructive Solid Geometry, CSG)距离函数(Distance Functions)水平集(Level Set Methods)分形(Fractals)课程的最后.原创 2021-02-01 20:39:23 · 995 阅读 · 0 评论 -
着色Shading(3)(纹理映射的继续)(笔记)
文章目录前言十一、三角形内部插值(Interpolation Across Triangles)为什么要在三角形内部进行插值重心坐标(Barycentric Coordinates)使用重心坐标课程的最后前言十一、三角形内部插值(Interpolation Across Triangles)为什么要在三角形内部进行插值我们需要插值来对三角形内部的点均匀赋值,赋值的内容可能是纹理坐标,颜色,法线向量等等。重心坐标(Barycentric Coordinates)运用重心坐标(Bary.原创 2021-01-30 21:54:40 · 474 阅读 · 0 评论 -
Windows窗口(DirectX3D11学习笔记)
#include<Windows.h>int CALLBACK WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){ while (true); return 0;}原创 2021-01-28 15:52:05 · 833 阅读 · 2 评论 -
着色Shading(2)(着色的继续、管线和纹理映射)(笔记)
文章目录前言三、四、课程的最后前言三、画家算法(Painter’s Algorithm):四、着色(Shading)的定义:课程的最后原创 2021-01-27 21:19:39 · 596 阅读 · 0 评论 -
着色Shading(1)(光照、着色)(笔记)
文章目录前言一、可见性/遮挡(Visibility/Occlusion)二、着色(Shading)课程的最后前言有关光照,着色和图形管线。一、可见性/遮挡(Visibility/Occlusion)画家算法(Painter’s Algorithm):灵感来自于画家的绘画。由远到近绘画,这样在往上画新的近的物体时会覆盖掉原来的东西。画家算法需要需要通过深度(depth)对物体进行分类才能实现,所以可能造成无法解决的深度顺序。比如上图,由于物体之间存在互相遮挡的关系,所以无法定义深度,也.原创 2021-01-25 19:54:39 · 952 阅读 · 0 评论 -
光栅化Rasterization(反走样)(笔记)
文章目录五、反走样Antialiasing六、课程的最后五、反走样Antialiasing采样误差/瑕疵(Sampling Artifact):锯齿,摩尔纹,车轮幻觉,还有更多。这些都是六、课程的最后原创 2021-01-24 21:18:25 · 1053 阅读 · 0 评论 -
光栅化Rasterization(三角形)(笔记)
文章目录一、光栅化Rasterization二、光栅显示设备科普三、基本的原始形状——三角形(Triangles)四、采样方法(Sampling)课程的最后一、光栅化Rasterization屏幕:像素的阵列(array),数组的大小称为分辨率(resolution)。屏幕是一个典型的光栅成像设备(Raster Display)。像素Pixel:Pixel是"Picture Element"的缩写,目前的理解上,像素是指一个带有特定颜色的小方块。颜色为RGB(red,green,blue)的混合。.原创 2021-01-23 19:41:37 · 1773 阅读 · 1 评论 -
变换Transformation(2)(笔记)
文章目录三、三维变换四、视图/摄像机变换(View/Camera Transformation)五、投影变换(Projection Transformation)课程的最后三、三维变换预览:变换Transformation(1)(笔记)三维旋转变换:上图为三维物体围绕x轴,y轴,z轴旋转的公式。当围绕x轴旋转时,对于任意一个点,x轴都不变,对于y,z也是这样。注意绕y轴旋转的公式有一点奇怪,似乎是反着的。原因是因为绕y旋转时是从z到x,而绕x和绕z分别是从y到z和x到y。欧拉角(Euler an.原创 2021-01-20 23:56:19 · 606 阅读 · 0 评论 -
变换Transformation(1)(笔记)
一、二维变换线性变换和矩阵:线性变换=矩阵(和向量相同维度的矩阵)缩放:均匀缩放和非均匀缩放对称(Reflection):x变为-x,y没有变。切变(Shear):如同在水平方向上拖拽图像,水平方向上在y=0的位置没有变化,水平方向上在y=1的位置变化为a。水平方向上任意一点的移动为a*y,竖直方向上都没有变化。旋转(Rotate):一般来说,旋转默认都是绕坐标原点旋转,逆时针方向为正方向。推导过程是通过(1,0),(0,1) 两个特殊点得到变换矩阵。平移(Transl...原创 2021-01-19 20:20:22 · 830 阅读 · 0 评论 -
线性代数的复习(笔记)
前言今天开始看Games101的计算机图形学课程,首先来复习一下线性代数一、向量Vectors向量:向量是从A指向B的一个箭头,具有方向和长度。向量不关心自己的绝对位置。模长Magnitude:向量的长度单位向量Unit Vector:长度为1的向量,我们不关心他的长度只关心他的方向。向量求和:几何上的的加法是将向量首尾相连,代数上将两个向量的坐标相加笛卡尔坐标系:在计算机图形学中,向量默认按照列的写法来书写,A(T)为转制点乘和叉乘:点乘可以方便的得到两个向量的夹角(余弦)原创 2021-01-18 22:01:39 · 1074 阅读 · 0 评论