logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

设计模式小记

抽象工厂用于创建一组相互配套、属于同一个产品族的对象,保证成套资源统一创建,实现上抽象工厂定义整套对象创建接口,具体工厂产出完整一套相关实体,游戏开发中适用于不同阵营套装(人族装备 / 魔族装备)、不同风格 UI 套件、不同主题特效组、不同关卡配套怪物 + 道具组合。public:public:public:void ShowWeapon() override { cout << "人族长剑" <

#设计模式
GAMES101:现代计算机图形学入门-笔记-04

首先是对上次课的一些补充:shading课程介绍了很多东西,从最开始的布林-冯反射模型,到后来的采样频率,实时渲染管线,纹理映射,重心坐标,纹理反走样,今天我们要继续做纹理的应用。在现在的GPU中,纹理可以被视作一块内存加一个范围查询的结合,可以被应用的地方也很多:环境光照(环境贴图)右图:犹他茶壶。如果把环境贴图全部存储在一个物体上,就可以再利用这个物体去渲染别的物体,比较生动的例子就是材质球。

文章图片
GAMES101:现代计算机图形学入门-笔记-02

第二节课开始信息量大大增加且内容难度开始提升,也有部分原因是不再全是我们之前有所了解的内容。紧接着上节课的内容,我们成功将一个三维图像转换成二维图像之后,我们就要考虑如何在我们的屏幕空间上将这个二维图像显示出来:即光栅化。采样是我们的光栅化最重要的步骤之一,而采样总是伴随着一些问题如锯齿,摩尔纹等,归根到底就是采样率不够,采样速率跟不上信号变化速度的原因,而这几乎是无法完全避免的。

文章图片
关于Docker:基本原理介绍与使用

一般来说只有当我们需要与本地截然不同的运行环境(或者需要模拟服务器),但是真正运行的内容又很少不想搞虚拟机的时候,我们就会选择使用Docker来构建一套运行环境支持特定的软件运行。这样,容器本质上仍然是宿主机上的进程,但这个进程被限制在一个独立的“视角”里:它看到自己的进程列表、自己的网络端口、自己的根文件系统和自己的环境变量。用AI的话说就是,当我们需要一个隔离、可复现、可移植的运行环境,又不想

#docker#容器#运维
什么是KCP?QUIC?Websocket?

KCP是一个基于UDP的可靠传输协议,其核心目标是。它并非一个全新的传输层协议,而更像是在应用层对UDP数据包进行可靠性、顺序和流量控制的“增强外壳”。其底层具体来说就是在UDP的基础之上,加入了TCP有的诸如拥塞避免,流量控制等保证可靠性传输的手段,也就是所谓的ARQ机制与窗口协议。(Automatic Repeat-reQuest),即自动重传请求,是传输层的错误纠正协议之一,它通过使用累计确

#websocket#网络协议#网络
计算机组成原理-笔记

如何理解计算机组成原理呢?如图所示,如果把计算机世界这样划分的话,可以清晰地看到计算机的由软件,硬件与操作系统组成,软件主要涉及的是数据结构,那么硬件主要涉及的就是操作系统。

LearnOpenGL-笔记-其三

在之前的章节中我们学习了基本的窗口构建方法、着色器的定义与使用以及摄像机的构建,而从今天这个大章节开始我们要来学习光照有关的知识。

GAMES101:现代计算机图形学入门-笔记-06

从今天开始正式进入光线追踪的部分,由于关于之前四篇笔记的总结还没有写完,我们暂时先写06的笔记。为什么要光线追踪?当然是因为光栅化的过程依然存在一些问题,比如光栅化基本都只针对点光源,只考虑光线只反射一次的情况,无法处理软阴影,那在这个过程中我们就需要使用光线追踪来提高我们的成像效果。值得一提的是,目前为止的光线追踪对计算性能要求都比较高,在针对较大的地图场景时,很多时候出于GPU计算性能的考量会

文章图片
GAMES101:现代计算机图形学入门-笔记-12

还有就是学这门课让我明白一个道理就是:不要把学习的周期拉太长,知识的遗漏只是一方面,主要是你的思维没有去熟悉这门课的体系,很多时候你只是在接受知识,而很难自己去举一反三,这样的学习只能说效率非常一般,所以如果是再给我一次选择的机会,我宁愿压缩到两到三周来全部学完这门课的知识,相信这样我的记忆会深刻很多。于是我们进一步优化,最后面的归一化是计算方向,而前面的红框内的数直接将b的速度(向量)与a的速度

文章图片
到底了