太空射击项目总结
太空射击项目项目总结一 游戏整体框架做这个游戏项目之前没想那么多,认为这就是一个简单的游戏项目。但是实践之后发现远远超出了我的能力,在这个过程中也学习到了很多模块化的思想。如果将教程中的内容一一照搬到博客中,那么工作量是巨大的。这里也很感谢教程的作者,是他做出来这个教程并且制作了免费的教学。
这个游戏项目的类型是清版射击游戏(STG),游戏玩法就是控制Player发射子弹消灭敌人。为了完成这个目的,作者完成了几个方面。这里列一个表格作为教程时间线的简单整理,一步一步来先整理上半部分。
1. 地图无限卷轴移动
通过控制地图材质的offset实现
2. 玩家输入系统
通过input system实现
3. 移动和视觉位置限制
通过玩家机体的pivot限制玩家移动
4. 玩家加速
通过贝塞尔曲线对玩家机体速度控制,使其拥有惯性
5. 玩家射击及子弹的制作
通过引入对象池对产生的预制体进行控制生成
6. 对象池
通过队列控制所有生成的预制体的Active,整个游戏项目的核心
7. 敌人的生成和限制敌人的移动
通过对象池对敌人的生成进行管理
8. 生命值系 ...
提交unity到github
提交UNITY项目到GITHUB部署流程1 - UNITY个性化设置在Version control 中将模式设置为 Meta,.meta 文件确保了资源在项目中的唯一性和一致性
在edit中,将模式设置为Force Text。让 Unity 资源以文本格式(YAML)保存
部署流程2-gitignore文件配置在需要上传到git的文件中,打开cmd配置git init
需要上传的文件夹有两个,Assets和projectSettings。其他文件夹都是unity自带的
其他需要忽略的文件,我们将之添加到gitignore中。由于在编写文件的时候不够明显,转而使用vscode来编辑这个文件。这里使用git官方中的屏蔽方案
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273# This .gitignore file should be placed at ...
配置新电脑链接github
配置新电脑链接github配置步骤1-创建SSH-Key在电脑中输入如下命令,一路回车。根据输出的文件路径找到指定的SSH秘钥
1$ ssh-keygen -t rsa -C "你注册github的邮箱@XX.com"
在键盘中输入win + E 打开此电脑,根据输出的路径找到带有公钥的文件,带有后缀的.pub的是公钥,我们复制这个来到github中,另一个文件是私钥注意保管好。
配置步骤2-将公钥输入github中点击右侧的三杠按钮,然后点击设置
点击左侧的SSH and GPG keys,
添加SSH Key
输入此电脑的名称,在key中填入上面复制的SSH,之后等待验证即可。
绑定的作用是什么提供简易操作,每次从此电脑提交的项目都不用重复输入你的账号密码。例如,我在新电脑中需要重新上传一个项目补丁,以hexo举例我在新的电脑中需要添加笔记,通过上面的步骤已经完成的绑定的操作,就可以使用git的提交命令,来提交我们的项目了
部署blog
部署blog本文讲述了如何将hexo博客部署到vercel中,使用CF来加速github page的访问速度。
部署步骤1-登录github将提交的hexo仓库,改名为XX.github.io这个步骤是实现了github page的功能
部署步骤2-登录vercel在前面创建github账号之后,在vercel中使用github账号登录
选用带有hexo标识的仓库导入到vercel中
如果有报错就搜索一下,通常报错的原因是不同npm包冲突了。
配置步骤3-用自己的域名替换vercel的域名在阿里云或者其他运营商中购买一个域名,完成备案操作。我们需要使用它的解析功能
在vercel中点击setting跳转到Domains中,新增我们购买的域名
也即如下操作,将对应类型的解析添加到阿里云上即可
填写完成即可,之后等待一段时间vercel同步成功
结果如下,就算同步成功了。
然后使用网址登录即可,显示成功
配置步骤4 - 添加Cloudflare配置过程中可能会出现如下问题,这个时候尝试使用cloudflare
先将域名绑定到CF上,登录完成之后注册域,填写你买入的域名 ...
vscode适配unity
VSCode配置Unity运行环境配置环境的视频
配置步骤1-unity选用在edit中点击preferences。
在上面的代码编辑script editor,选用vscode。
配置步骤2-安装依赖需要安装一些依赖才可以编写
打开vscode的拓展按钮,安装如下拓展
返回unity,在顶部中打开package manager窗口
在拓展中搜索vscode包记得注意网络问题可能需要翻墙,安装即可同时对于旧版本需要重装
配置步骤3-验证可以标注显示,同时支持代码提示,配置完成
ensp校园网实现
ensp实现校园网
跟着b站上的一个视频制作的,新手多多包含
实现结果预览目的是实现一个校园网,这里是拓扑图预览。目的是要让
内网访问到DMZ和外网区域。
DMZ访问到外网区域
外网能访问到DMZ区域(这里不知道为什么无法实现 )
外网不能访问内网
实现所使用到的技术有:动态主机配置协议(DHCP),多生成树协议(MSTP),动态路由协议(OSPF),访问控制列表(ACL),双机热备份协议(VRRP),网络地址转换协议(NAT),防火墙的配置,无线AC,AP 的配置,VLAN划分,IP地址划分
具体实现截图如下:
教学楼ping外网
教学楼ping dmz
教学楼访问服务器
教学楼访问外网服务器
外网访问DMZ,这个实现不了我也不知道为什么
DMZ访问外网,这个也实现不了,估计是NAT服务没有配置成功
实现过程中的相关配置汇聚层接口配置配置汇聚层交换机core-1
在核心交换机中分置vlan
1vlan batch 5 7 10 20 30 40 50 60 100 to 101
配置VRRP配置一下VRRP,命名为10实例。VRRP的作用是 ...
计算机网络
计算机网络
记录学习计算机网络的知识点,参考书和参考课程来自于慕课
协议教程: https://getiot.tech/zh/protocol/
Cloudflare: https://www.cloudflare.com/zh-cn/learning/
第一章 概述互联网是20世纪末期形成的一个全球性计算机网络系统,连接了成千上万的私人、学术、企业和政府网络。这些网络通过一系列标准的网络协议相互连接,使用电子、无线和光纤技术等多种手段实现数据传输。
在计算机网络中,internet 和 Internet 有不同的含义。internet 指的是一般的计算机网络,而 Internet 特指按照 TCP/IP 协议连接的全球最大网络系统。
在大多数情况下,我们讨论的就是 Internet,它也可以视为一个虚拟的“云”网络,用于理解和学习计算机网络的基本概念。
ISP:的全称是Internet Service Provider,因特网服务提供者。国内主要由三个通讯公司提供
从第一层提供给大公司的情况像是阿里云,公司贩卖域名和ip给与用户,但是它不是ISP。
组成部分:由网络和网络接入 ...
操作系统
操作系统
参考哔哩哔哩的课程:https://www.bilibili.com/video/BV1YB4y1i7xe/?spm_id_from=333.337.search-card.all.click&vd_source=731595967596af37618c926a191e7811
参考了博客:https://lfool.gitbook.io/operating-system/untitled-1/2.-cao-zuo-xi-tong-de-si-ge-te-zheng
参考了大纲:https://mubu.com/doc/d9TGd1--LY#m
参考了图解系统:https://xiaolincoding.com/os/1_hardware/how_cpu_run.html#%E5%9B%BE%E7%81%B5%E6%9C%BA%E7%9A%84%E5%B7%A5%E4%BD%9C%E6%96%B9%E5%BC%8F
参考了视频:https://www.bilibili.com/video/BV19r4y1b7Aw/?spm_id_from=333.337.search ...
谷歌恐龙小游戏复刻
谷歌小恐龙游戏复刻素材导入在作者的GitHub中,找到对应素材的png,也就是照片导入到我们创建的2D工程中,这里创建了一个Sprites文件夹容纳这些照片素材.当然也可以在谷歌小恐龙游戏按F12拉取。
然后设置一下这些图片素材的PPU,这里设置为96。是为了适应我们素材中的跑到
Pixels Per Unit 表示在 Unity 中一个单位(Unity单位)的长度对应多少个像素。
然后设置一下图片的过滤模式,调为Point(no filter)
在Unity中,”Filter Mode”(过滤模式)是用于控制纹理在被缩放或拉伸时的采样方式的设置。Unity支持三种主要的过滤模式:
Point: 这是最基本的过滤模式,也称为“最近邻”或“点采样”。在这种模式下,当纹理被缩放或拉伸时,像素的颜色值采用最近的一个像素的值,而不会进行插值。这可能导致在纹理上看到锯齿状的边缘或失真,特别是在纹理被放大时。
Bilinear: 这是一种插值技术,使用周围的四个像素的加权平均来计算新的颜色值。这会在缩放或拉伸时产生相对平滑的结果,减少了锯齿状的边缘。
Trilinear: 这是在Bil ...
横板移动游戏(Ruby)
Ruby’s Adventure
前面创建角色啥的就不细谈了,这里直接快进到画地图
使用Tile制作瓦片地图创建一个Tilemap,作用是显示格子让我们铺设瓦片。
导入在官网下载Sprite。
简单铺一下地板,这里直接用涂刷就行。
只有一个瓦片太单调了,这里把包中的瓦片切割一下。
打包切割完成开始绘制地图:
这里需要注意的是,Tile Palette 这里的瓦片会被不小心覆盖掉,上面的几个按键的功能如下:
1.选择,没啥好说的,选中的可以拖动
2.移动,移动对应的Tile
3.画笔,主要用的是这个,就用来绘制地图的
4.填充,可以填充多块地图
5.选择器,选择片段然后一起填充
6.橡皮擦
7.大块填充
下面就绘制一下地图:
添加碰撞物体添加物体和添加人物的操作是一样的,只不过我们需要注意一些问题。例如,角色和物体的层次是怎么样的,有什么碰撞效果。
我们需要指示 Unity 根据游戏对象的 y 坐标来绘制游戏对象(请记住,y 是垂直轴,x 是水平轴)。
在教程中我们需要这样:将Sort Axis 改为 X:0 Y:1 Z:0
轴向量 x = 0, y = 1, z ...