自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

原创 从新建文件夹开始构建ShadowPlay Engine游戏引擎(6)

本篇序言在经历了为期很长时间的调试以及思维纠错后,我们可以开始实现我们的内存管理模块了,我在前面说过如果各位要继续跟着学习的话可能会需要一定的计算机组成原理和操作系统的知识,不过在莽代码的过程中,我逐渐发现由于本引擎无论是从设计思路上还是代码实现上实在是太过于Rookie。所以秉承着简单到底的精神,我将一部分比较贴近底层的实现交给操作系统自己去完成,我们只要完成相关逻辑就好,所以也就不强制要求大家掌握这些方面的知识。毕竟本人技术力和相关经验也不是炉火纯青,能开发完一个初级的游戏引擎已经是谢天谢地了(笑),

2022-01-30 17:43:28 2761

原创 从新建文件夹开始构建ShadowPlay Engine(5)

本篇序言从本篇开始,我们要开始构建引擎核心中的系统组件部分,广义上讲其实我们从开始到现在一直都是在构建引擎核心中的系统部分,但严格的定义中系统组件大概有这么几个:内存管理,线程管理,文件管理,时间系统,特殊格式文件处理(比如XML,json文件等)。接下来的文章更新间隔可能会长一些,说不定哪天就断更了。诶嘿。正如在上一篇文章中我所承诺的那样,接下来我会用大概3至4篇博文的长度来描述本引擎线程管理和内存管理部分,这两个部分同时也是系统组件中不怎么容易理解并且工程量最大的两个模块。我会尽量用通俗易懂的方式描

2021-08-29 21:28:33 231

原创 从新建文件夹开始构建ShadowPlay Engine游戏引擎(4)

本篇序言这次博客更新距离上次的时间间隔变短了好多,因为最近硬是抽出了一大部分时间来进行引擎的开发。而且运气很好的是在写链表这种很“敏感”的的数据结构的时候并没有出现那种灾难性的后果(恐怕是前一段时间在leetcode刷数据结构的原因吧)。于是本人才能在上篇博文发布后不久完成了基本渲染对象,渲染链,场景链这三个系统的实现。能这么顺利,运气其实占了很大的因素(笑)。虽然由于这次更新的速度快的离谱,但还请各位放心,至少不会像法国土豆的年货游戏那样遭(育碧:你礼貌么?)。因为本次的内容会触及本引擎渲染系统最核心

2021-07-22 11:40:21 446 2

原创 从新建文件夹开始构建ShadowPlay Engine游戏引擎(3)

本篇序言各位可能看到博文的名字换了,也就是引擎名字换了,其实是在下想到了一个更棒的名字:皮影戏(ShadowPlay),取这个名字的含义是因为,游戏中的角色(Puppet)不也是由于我们的操作而动起来的么,电子游戏和皮影戏有很多相像的地方(可供人操作的纸偶,音乐,还有精彩的故事背景),不得不说古代人民的文化成果是最值得赞赏的(这或许也就是古时的小孩喜欢看皮影戏甚至自己想上去演的原因罢)。当然,决定改名后需要改动项目中的许多地方,不过不算太费劲,premake帮了很大的忙,这并不影响各位的阅读(如果你的引擎

2021-07-19 17:02:47 591 4

原创 从新建文件夹开始构建UtopiaEngine游戏引擎(2)

本章序言摸了两个月的鱼,又一次拾起了自己引擎的框架,开始完善引擎系统,如果非要用现实中的什么东西比喻的话,那么我们目前实现的框架连个脚手架都不是。把这项目这样晾着显然不符合本人的风格,而且要作为毕业设计的东西可不能蒙混过关。所以现在成了既要准备研究生考试又要忙于设计框架并编码的情况,生活已经充实到必须得抽空来写blog了。还有一件事,就是我们的引擎现在的构建步骤可能要与我曾经参考的Cherno大佬的不同了,其中一个原因是因为他的game engine系列还在更新,对代码的修改也相比刚开始有很大区别,目前

2021-07-15 20:46:27 477 3

原创 用C/C++手撕CPlus语言的集成开发环境(1)—— 语言规范 + 词法分析器

序言之所以叫做CPlus语言,是因为原本是想起名为CMinus的,结果发现GitHub和Gitee上一堆的CMinus的编译器(想必都是开过编译原理课程并且写了个玩具级的语言编译器的大佬们吧)。但是CPlus相较于C多了一些东西,而相较于C++又少了一些东西,又有点C#的影子,而且并不严格遵守编译原理课本上的CMinus标准,所以暂且取个中间值,就叫C+(CPlus,反正目前还没人用,那我就抱走了)。在开始之前,老规矩:如果觉得这篇文章可以帮到你,欢迎一键三连(点赞,收藏,打赏(这一项只适用于在C

2021-05-04 20:28:18 598

原创 从新建文件夹开始构建UtopiaEngine游戏引擎(1)

序言在苦等了半年多之后,我终于开始了向往已久的实时NPR游戏引擎项目——Utopia Engine,这半年多一直为了构建这个引擎在做很多准备:多线程、动态链接库、脚本引擎、立即渲染GUI……统统吃了一遍(就差汇编没学了,话说这学期要开这门课来着,结果老师都已经翘课四周了(╯‵□′)╯︵┻━┻)。于是,等不及的我开始了Utopia Engine的构建项目(汇编的知识就一边做一边学吧)要赶在毕设前做完这个引擎工作量还是有些大的。当然,毕竟游戏引擎脱离不了计算机图形,所以,本博客里的计算机图形学相关内容也不会停

2021-03-29 16:03:00 688

原创 Blinn-Phong光照模型傻瓜式说明

索引序言1.环境光照(Ambient Lighting)2.漫反射(Diffuse Reflection)3.镜面高光(Specular Highlight)结束语序言作为在这个博客上写的第一篇博文,我准备从图形学最基础的部分开始,毕竟也才刚刚学习图形学的知识,在学习Blinn-Phong模型中遇到了一部分困难,毕竟没点基础性的存货是说不过去的。然后是关于Blinn-Phong模型,这是在Phong模型(即“冯氏光照模型”)的基础上对镜面高光部分进行小部分改良后所得到的改进模型。相较于Phong模型,

2021-03-24 23:56:44 1126

Java课程设计作品——《魔改潜艇大战》

本资源是本人曾经的课程设计作品,是一种改进版的类《飞机大战》游戏,结合了潜艇的上浮,下潜特性。使用Java开发,开发用IDE为idea,适用于想要为自己的Java课程设计提供创作灵感或者资源的学生或者初次学习Java的人群。

2020-12-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除