2022.10月份的总结
2022.10月份的总结
忙忙碌碌一个月又要过去了。离我上次更新已经是1个月前的事情了。一个月,30天的时间内当然会发生很多的事情。但对我而言这30天几乎没有区别,要不是最近突然疫情爆发,我本来想着10月份也就是每天两点一线的度过。不过我仍然是两点一线,只是这其中一点从公司变成了核酸检测点罢了。
10月份,我的确就是这样平凡的度过。本来我也不觉得这样平凡有什么不好,只是当我听到大学舍友的事情,我有了一个疑惑我不知道这样的平凡能持续多久。
我的这位舍友A在大学期间也算不错,做着一些兼职赚了点钱然后在某次期末临时学习的过程交到了女朋友(唉,明明像我这种不临时抱佛脚的才是正道,可是我怎么就没有遇到女朋友呢)。以他的为人处事和学习能力,在毕业后也拿到了和我差不多工资。其实在毕业前,我从来不觉得他会混得不好。没想到年初时候的疫情,他父亲做生意失败了欠了债。可以说这时候他的状况真的不好。可就算是这样我也不会去担心他。因为他还有工作,而且和我差不多工资还比我轻松,再加上他可以自己做饭生活成本比我低太多了。虽然我不会担心但是我还是知道他现在一定过不 ...
2022.9.4最近的小结
2022.9.25最近的小结
林大哥
8月1日,我正式进入我现在的这家公司开始上班。到一个陌生的地方,我多少都有些忐忑不安。与我一起在这一天加入的是一个看起来像一个老大哥,给我一种可靠的感觉让我有些安心。虽然这样有些很奇怪,但是我当时就是这样想的。
随着HR出去复印文件,我开始观察起他。我认为他和我年纪相仿,应该是和我差不多的人。此时房间中就我们两个人,HR又迟迟没有回来因此房间中弥漫着一种尴尬的气氛。尴尬其实也没有持续多久很快我们就开始交谈起来。不过我忘记了谁先打破了这样的氛围,总之我们聊了起来。在交谈的过程中,我才知道这位同事姓林是做策划而且已经工作了八年,怪不得我感觉他像一个老大哥。
当我们聊得起劲之时,HR回来了并带来了我们的合同。我仔细阅读完合同中的内容后便签字然后将合同交给了HR。对于合同我一点问题都没有应该说以我的阅历就算有问题我也发现不了。林大哥倒是发现了公司制度上的几个问题,然后追问了一下HR。HR回答其实我已经忘记了,但是我还记得当时林大哥没有继续追问只是面无表情将未签完的字签完,我只是感觉当时的气氛有一丝的不 ...
关于哈希表
关于哈希表
前言:(一般都是一些废话,可以不看)
我一开始学习哈希表的时候真的觉得哈希表是一种很高大上的东西,然后我就对这种东西有一种莫名的害怕。最近突然想起之前朋友和我说起的哈希冲突又让我回忆起学习哈希表的时候。所以我就想写一篇关于哈希表的文章。
1. 什么是哈希表
散列表(Hash
table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash)
函数。
——来自百度百科
我初次查找哈希表的时候看到上面的解释就觉得哈希表很是高大上。因此我就觉得哈希表是一个非常难的数据结构。但是你完全可以简单地把哈希表理解成数组。其所谓的key值就是数组的下标,而哈希函数就是通过key值找到对应的数 ...
22-8-14最近的总结
22-8-14最近的总结
又过了半月多,我又来写日记了。我本来创建博客的目的是为了存储自己的技术文档,没想到我更多的是用来记录了。其实我自己也明白自己的网站又没有开放出来也没有去进行宣传,大家是不会来我的网站看。但我还是想记录下来自己的感受。
关于工作
我又找到了游戏开发的工作。虽然我现在加入的这个公司是做换皮游戏的,但是对于我这种初出茅庐的小子来说那些老项目的框架也是值得我去学习的。对此,我并没有太多的不满。当然前提是我不于他人比较就是了。每天我都处于996的状态。因为我刚刚接触新的框架和引擎(公司开发是用cocos2dx-lua,招我的时候明明还是说Unity的),我有很多的需求都无从下手。不过经过这两周的开发,我倒是更加熟悉程序断点查找原因。除此之外,我也是第一次接触成熟的商业游戏框架。这个项目中MVC模式的应用和类间的解耦的程度真的令我赞叹。但随之而来的便是难以理解,这是高度解耦的通病。对于某些东西我都不明白为什么它就能调用到。即使打了断点面对着十几个类间的互相调用,我也懵了。而且lua作为一个非面向对象的弱语言写起来真的云里雾里。
...
22-7-27最近的总结
22-7-27最近的总结
离上次小结才刚好过去一周而已。但是这篇文章我想更专注于我辞职后到现在发生的事情。这几天我基本都在复习。我复习了计算机网络、计算机操作系统、Unity相关知识和算法。复习这些都是为了下一个工作的面试。
我想休息
其实我很想去休息一段时间,什么都不管就只要慢慢等待时间的流逝,吃饱了睡,睡饱了吃。但是我的经济实在不允许我这么做。这几天我复习下来,我明显发现我不如以前那样精力充沛。看书学习我学不进去,看文章分析只要文字一多我也觉得头大。只要对某些东西专注一两分钟我就会感到困倦(其实在写到这里的时候,我就已经感觉到困倦了)。我觉得这应该是因为我的焦虑导致的。毕竟我现在已经是毕业生了,但我工作还没有着落。每每想到这点,我总是不能好好的睡觉。我的时间又几乎花在了复习知识点上。这就导致了我睡眠和运动不足。
朋友带来的焦虑
本来我也没有那么焦虑。我本来计划先玩一段时间然后在去找工作。而就在我想着好好享受的时候,我的朋友带给了我两个消息。第一个是他在厦门找到了一份一月一万的工作。第二个他告诉我8月份便不再招人。看到这个消息 ...
C#实现优先队列模板
C#实现优先队列模板
C#并不提供优先队列这个API。所以我们要自己去实现C#的优先队列。这里我参考了知乎这位作者的优先队列实现。(不过他用的是C++,我只是单纯的转换为C#而言)文章链接:https://zhuanlan.zhihu.com/p/35314095。具体的方法可以直接去看知乎的文章。我这里就直接给出C#的实现。(这里我根据自己的需求加了一些东西,你们也可以看文章中的代码改造然后根据自己的需求去修改)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291 ...
22-7-20最近的总结
前言
最近发生了好多事情。本来我计划是一个月一次总结。但是计划总是赶不上变化。上次近况总结还是3月份。但其实直到4月份我依然会更新文章。之所以没有更新总结,还是因为我不觉有什么好更新的。
关于技术
在技术方面,其实我这几个月来技术的增长几乎为0。虽然还是有在学习一些东西,但是这些东西我自己都没有弄明白自然也不会去做一些总结。其实有时候我也想将一些开发中遇到的细碎知识整理起来,但是细碎的知识总结起来还是细碎的知识。我不可能因为突然有一天想起来我有一个知识点忘了但是我在某一篇知识点合集中有写而去一个个翻我的文章。这样我还不如去直接百度,那我自己写文章的意义就没有了。所以我也就没有继续去更新了。
自己的生活
关于生活,这段时间来发生了好多的事情。离上次总结过去了这么久不发生点事情也不太正常。我就挑一些重点的说一下吧。
我和舍友都离职了
舍友比我先离开。他离开的原因很简单,他认为在这个公司他再也学不到新的东西,而且还要忍受老板不断变换的需求。有时候老板的一个更改需求就让他这几天的活全部白干(公司的策略是快速原型开发 ...
Unity Transform扩展(一)
Unity Transform扩展(一)
前言:
在使用Unity的Transform函数时,我们会发现其自身提供的API有时候并不能完全满足我们的需求。因此我们可能会写一些方法去实现我们的需求。但是有时候这个需求在多个不同的类中都需要。这时候我们就要使用一个帮助类去减少我们重复的工作。不过人都是懒惰的,我不希望多声明一个类然后再去使用。那么我们可以使用C#的扩展类方法让Transform直接可以调用我们写的方法。具体实现如下。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354using System.Collections;using System.Collections.Generic;using UnityEngine;public static class TransformHelper{ //通过名字深度优先遍历查找对象 public static Transform FindByNameDFS ...
lua学习笔记整理
Lua 学习笔记整理
前言(废话):
我今年2月份开始进行笔记整理。然后我拖到4月份才整理结束。其实我学完后就再也没有用过了。很多知识点在我整理的时候都有些模糊不清了。但是我真的很少使用lua,而且我又不想自己白学一门知识。所以我在这之中又去查找资料。有些东西不一定正确毕竟我也是在学,但是代码的结果是准确的。最后整理了快七千字已经是我写得最多的文章了。
lua中的数据类型
nil 表示空数据,如同C#中的null
boolean,布尔型。只有true和false。
string,字符类型。
number,数字类型。可以说同C#的float类型,占32位。lua中没有整数类型。
table,表格类型。它是一个关联数组,下标是从1开始的。可以用表示来模拟面向对象。在lua中table有着很重要的作用。
function,函数类型。在lua中函数是第一类值,而在C#、C++或Java等语言中函数是第二类值。
userdata 表示任意存储在变量中的C数据类型。
thread
表示执行的独立线程(本质是“伪多线程”,是协程的概念),用于执行协同程序。
...
如何使用Unity做出在固定大小区域显示主摄像机看不到的画面
使用Unity做出在固定大小区域显示主摄像机看不到的画面
前言:
这次的标题好长啊。但是我也不知道怎么写这样个标题。最近做项目刚好遇到了这个需求,所以标题就是按照需求写的。这个项目后面转给同事了。不过我觉得这个要求挺有意思的,所有我就做了一个Demo。这篇文章希望能给要做这种要求的你提供一个思路。
项目的要求
这次我做的项目要求我做一面照妖镜。然后角色可以使用这个照妖镜去照射出妖怪的样子。所以我需要在一个固定大小的区域中显示出主摄像机看不到的画面。即玩家操纵一个UI,然后UI里面要显示出主摄像机看不到的画面。(Unity版本2020.3)
主要思路
因为要操作UI去看到不一样的画面。所以我打算直接在UI中实现。我设置一个Raw
Image(覆盖全屏)配合Render
Texture进行画面的显示。然后用一个mask遮罩将画面超出照妖镜的部分遮盖掉。一开始照妖镜是不显示的,只有玩家操作时照妖镜才会显示出来。
实现
配置
我们设定主摄像机的Culling
Mask看不到UI层。自然那些“妖怪”就要是UI层的。具体设置什么为主摄像机不可见由你来决 ...