czp杂记

一些乱七八糟的东西

这周末挺多事。安排实习结束到广州玩的表弟、朋友离职、要去我姐那拿车、车前挡被他们磕了下了、打碎了一个碗、突然发了脾气。

变得浮躁,又好像变得沉稳了。没有一个选择一个合适的宣泄情绪的方法,拳头锤在墙壁三次,手指痛得颤抖。锤完之后整个人都泄了气,一下子没什么脾气了,我喜欢这种冷静的感觉。不过达到这种感觉的方式太极端了。也想过摔东西,摔完东西应该也会让我冷静,但是我害怕一些无法挽回的结局,上一次就是把大学留到现在的吉他摔破了,破了就恢复不了。

这周只学了一个小时unity。

早点休息吧。

希望明天我会被裁员。

现在开始学习,学完再继续写日记..

好了学得差不多时间了,再学多一部分就要熬夜了…

感觉效率还是有点低,没能进入到很专注的状态。慢慢来吧。

今天周一,很有厌班情绪… 虽然八点前到了公司,但是一点都不想加班。明天有部署,应该是要加班的,今晚早点休息吧。

什么时候可以裁我啊,不想上班了,想躺平,想做废物。

哦哦哦,对了,今天终于是忍不住了,下单了一个2k 180hz的显示器,由于现在国补暂停了,不想吃亏,就直接内购买了个一千块的。嘤嘤嘤,我的钱钱。

今天晚上清远那边还地震来着,4.3级,周边城市的网友都说有震感,我可能错过了,没感受到。可惜了。

今天天气还行,总算是见到久违的蓝天了。这段时间广州一直下雨,乌云密布,傍晚时瞟了眼窗外,居然有阳光,天色也好看,有了兴致便出门散步了。

image-20250621235656395

路上看到有台收废品的货车,不少大爷大妈或拖或拎着可回收的废品在排队等候。堆得半人高的纸皮,估计顶多也就能换一顿饭钱?感想赚钱也挺不容易的。

另外发现一棵行道树的树干上,长了一片叶子,有点独特哈哈。

image-20250622000340981 image-20250622000415531

后面逛了附近的城中村、尚未建设好(或者工程款没到位而停工)的楼盘。太阳慢慢沉下去,云也慢慢聚拢起来。

image-20250622000612623

今天的心情如下:

image-20250622000759777

自律还是挺困难的,平时懒散惯了,突然要逼自己学习新东西,很难专注。

不过今天断断续续还是学了点东西,再接再厉吧。后面等离职了,得要去图书馆学才行,不然单纯靠自制力不太行。

image-20250622000947971

前言

做此笔记,记录一下Unity的学习过程,也算是一种变相的监督。

Unity简介

一个跨平台的游戏引擎,使用C#编写游戏逻辑,内置物理引擎(碰撞、刚体、布料)。

资金或年收入20w美金以下的开发者(企业)使用personal版本是免费的。

竞品有最近比较火热的开源引擎Godot

Unity官方有不少免费教程(或者收费教程也有),这里我将学这个入门 Ruby’s Adventure:2D 初学者

img

专有名词

  • Texture Type:纹理类型,比如Sprite(2D and UI)就是一种纹理类型
  • Sprite:精灵,通常是一张图片经由Unity处理后得到的一个可绘制的对象

主要组成

编辑器

  • Scene:实时的场景编辑器,支持拖拉拽。
  • Hierarchy:与Scene联动,它将Scene中的所有游戏对象以目录树方式展现出来。
  • Project:管理当前项目中的所有Resource,包括图像、音频、scene、C#脚本等。
  • Console:看运行日志的地方。
  • Game:可以理解为预览,玩家视角。
  • Inspector:管理游戏对象、Resource等的属性的面板。
  • Animator:在这里编排动画

Sprite

精灵是在游戏中绘制的图像。Unity 无法使用你直接为 Ruby 导入的 .png 图像文件,而是需要将此文件转换为可使用的格式。

image-20250621105418651

精灵可以选择sprite mode,用single或者multiple(还有个polygon不知道是啥),选multiple的时候可以在Sprite Editor中自由裁剪图像而产生多个sprite

Input Manager

Unity帮忙封装了一下input,将键盘、鼠标、手柄等设备输入的信号封装成可以直接使用的UnityEngine.lnput对象。

核心概念:

  1. 输入轴(Input Axes)

    将物理输入(如键盘按键、手柄摇杆)映射为逻辑上的“轴”,输出一个 [-1, 1] 范围内的值,渐进的

  2. 输入类型

    按键 Key:键盘上的物理键,比如空格键、shift键

    按钮 Button:手柄、触摸屏上的按键

    鼠标/摇杆轴 Mouse/:连续输入

image-20250621163926416

Tilemaps - 瓦片地图

世界设计。瓦片地图将世界作为一个网格,你可以在其中为每个网格单元格设置不同的精灵

image-20250621224357244

Tile Palette

美taɪl 美ˈpælət

瓦片调色板,一个可视化工具,管理瓦片,可以用它来绘制Tilemap。

可以根据自己喜好,调整Tile Palette的布局(即绘制调色板,注意不是绘制tilemap)

image-20250623222000604

Order in Layer

层显示优先级

可以通过修改sprite renderer的该属性来控制game object的显示优先级,数值越大,优先级越高,与其他低优先级的game object重叠时覆盖在上方。

如果game object的layer order相同呢?

这时候根据Camera Settings来决定谁覆盖谁,比如下面配置是根据game object的y轴(垂直方向)来绘制,也就是谁y属性值更小,谁更应该在“前方”。

image-20250623230534960

那么问题又来了,这个y属性值怎么来的,它的参考系是?

有两种方案,一个是取sprite的center,另一个是取sprite的pivot(轴心)

image-20250623231130017

pivot默认是取底部中心,当然也可以自定义pivot位置。通过sprite editor可以直接修改。

image-20250623231518484

预制件

Game Object也可以拖到Assets里,作为预制件。即一个Game Object模板,可以快速创建同类型的对象。

如果需要批量修改,只需要编辑这个预制件就行!所有Game Object会一起更改!

比如我修改了预制件的scale,三个Game Object都一起变肥了。

image-20250625220724604

物理系统

Rigidbody

  • Mass 质量
  • gravity 重力
  • Linear Drag 线性阻力(空气阻力),直线运动阻力
  • Angular Drag 角阻力,旋转运动阻力

Box Collider 2D

定义一个长方形碰撞器,刚体!

也可以设置Is Trigger,碰撞时只产生事件不产生碰撞效果,以此达到陷阱效果。

甚至连Tilemap也可以添加Box Collider!

C#

跟Java很类似,都是面向对象编程。

controller

UnityEngine

  • transform:对应游戏对象的Transform组件,可以控制对象的位置

MonoBehaviour

  • Start():仅在首次调用Update方法前调用,是异步的吗?会不会出现Start跟Update一起执行的情况?
  • Update():每一帧都会调用
  • FixedUpdate():调用的时间频率是固定的(默认0.02秒一次),独立于帧率。

对象销毁

Destroy方法

image-20250629224347006

NAT

NAT是网络地址转换(Network Address Translation)的缩写,是一种将私有(保留)地址转化为合法IP地址的转换技术。NAT可以解决IPv4地址不足的问题,也可以提高网络安全性和灵活性23。

AWS-VPC

AWS VPC是Amazon Virtual Private Cloud的缩写,是一种在AWS云中创建和管理虚拟网络的服务。您可以在您的VPC中指定IP地址范围、创建子网、添加网关、配置路由表、连接其他网络等。AWS VPC可以提供您的AWS资源与传统数据中心类似的网络环境,同时享受AWS的可扩展性和安全性。

CAP定理(distributed system)

详细可参考https://www.ruanyifeng.com/blog/2018/07/cap.html

分布式系统的最大难点,就是各个节点的状态如何同步。CAP 定理是这方面的基本定理,也是理解分布式系统的起点。

一般来说,分区容错无法避免,因此可以认为 CAP 的 P 总是成立。CAP 定理告诉我们,剩下的 C 和 A 无法同时做到。

image-20230807225544422

1998年,加州大学的计算机科学家 Eric Brewer 提出,分布式系统有三个指标。

  • Consistency 一致性
  • Availability 可用性
  • Partition tolerance 分区容错性

Partition Tolerance

大多数分布式系统都分布在多个子网络。每个子网络就叫做一个区(partition)。分区容错的意思是,区间通信可能失败。比如,一台服务器放在中国,另一台服务器放在美国,这就是两个区,它们之间可能无法通信。

Consistency

一致性,意思是,写操作之后的读操作,必须返回该值。

  • user A ==w==> DB
  • user B ==r==> DB,总是返回最新写入的值
  • user C ==r==> DB,总是返回最新写入的值

Availability

可用性,意思是只要收到用户的请求,服务器就必须给出回应。

WSL: Windows Subsystem for Linux

有问题,找AIGC~

环境setup

安装WSL

安装 WSL | Microsoft Learn

wsl –install -d 分发名(Ubuntu)

ohmyzsh

1.需先安装zsh

1
sudo apt install zsh

2.安装ohmyzsh

1
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

3.设置random~~

编辑家目录下的 .zshrc 修改theme为random

docker

安装

1
2
3
4
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# 启动
sudo service docker start

好的,前面安装了docker,但是只能加sudo来操作emm

1
sudo docker ps

不过它为docker专门创建了一个用户组“docker”,可以将当前用户加进该用户组里

1
2
3
4
5
6
7
8
# 看看用户组
cat /etc/group | grep docker
# 把当前用户(k8s)加入docker用户组
sudo usermod -a -G docker k8s
# 验证用户组已经加入
groups k8s
# 重新进一下wsl,验证权限
docker ps

搞个分发模板

导出分发

1
wsl --export Ubuntu  E:\WindowsSubsystemForLinux\导出的分发\uu

导入分发

1
wsl --import k8s E:\WindowsSubsystemForLinux\k8s E:\WindowsSubsystemForLinux\导出的分发\uu

导入后,默认用root登录,要手动切一下用户

或者设置一下默认用户

1
2
3
4
5
6
7
8
vim /etc/wsl.conf
# 追加
[user]
default=k8s
# 重启一下该分发。注意假死状态
wsl --shutdown k8s
# 验证一下~
whoami

k3s

https://k3s.io/

1
2
3
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
# Check for Ready node, takes ~30 seconds
sudo k3s kubectl get node

配置一下别名

1
2
# .profile 淦,又是权限不足
alias k="sudo kubectl"


充了微信阅读的会员,所以接下来应该会慢慢拾起阅读的习惯。在阅读过程中可能会看到一些对自己比较有启发的知识,好记性不如烂笔头,新建这个文件记录一下。

新摄影笔记 - 宁思潇潇

关于焦距

35mm(一般广角)

“大师的焦距”,“人文眼”。比较适合拍摄人文题材——适合表达交代主体与背景环境之间的关系。

50mm(标准镜头)

中规中矩,成像近似人眼的透视效果。

85mm(人像镜头)

拍人物特写好看(135mm也是)。

200m+(长焦镜头)

打鸟~

关于取景

取景的这个“景”就是您拍摄的照片的内容。对摄影来说,这个“景”要首先能触动您。

1、不值得记录的东西,会让人觉得有点莫名奇妙,为什么会有这样一张照片,你想表达什么?记录什么?

2、善于找衬托,让画面丰满点。比如地面衬托绚丽的天空,前景衬托主题(增加层次感)。

3、不要过分追求前景,没有必要加就不加。

4、通常来说,拍主体要拍全,也要交代一下主体所在的环境。

5、学会适当裁切取景范围,寻找一些反差。

6、空镜,还是找个主体吧,找个“着眼点”。

7、寻找具有代入感的拍摄角度。最简单的方式是视角一致,比如拍猫猫,降低角度,平视拍摄。

8、利用延伸线,去引导视线到达主体。

image-20230423220741146 image-20230423220804842 image-20230423220925319

一些黑话

  • 紫边:相机镜头导致的,照片边缘颜色不太对,可以通过相机参数校准调回来
  • 影调里的,偏灰,偏暗,偏亮

一些小技巧

  • 亮部处理:降低高光,提升一下白色色阶(让高光更通透一点)
  • 暗部处理: 降低黑色
  • 人的皮肤都是橙色系,所以可以直接去HSL降低橙色的纯度(饱和度),提高橙色的明度,从而实现美白的效果
  • 将饱和度拉到0(纯度0%),可以观察影调信息~
  • 怎么把照片中某种颜色给替换成另外一个颜色?蒙版工具👉➕👉颜色范围👉选取颜色(这时候会自动选区)👉调整色相
  • 可以用渐变滤镜,调整暗部,让主体更加突出
  • P出一条光路:用画笔+羽化,另,按住shift键可以画直线

一些常见调色方案

青橙色调

青色色相往蓝色靠

紫色往蓝色靠

蓝色微微往青色靠

然后如果觉得颜色不太够,调节色温来补

电影感

在青橙色调的基础上

暗部偏青色

亮部偏黄色

画面有点发灰(曲线把最左边拉上去)

黑金色调

整个画面只有橙色(其它颜色饱和度调最低)

橙色不够的话,将它旁边那两兄弟拉过来,红色色相调偏橙色,黄色色相也一样

LR调色步骤

确定影调

影调:画面的明暗

拍照的时候要尽量避免平光,得要有光影~

调整白平衡

调整色调

色温:蓝👉黄

色调:绿色👉洋红

对比度:调整灰度

调色之王 - 色调曲线

色调曲线分四条:

  • Y:明度曲线
  • R:红色与青色
  • G:绿色与洋红
  • B:蓝色与黄色

调色之王之大弟子 - 颜色分级

可以所见即所得地全局范围内,根据阴影、中间色调、高光这三大明度来调整它们的颜色。

色调曲线会比较细一点,可以在任何明度来调整。

统一色调

通过HSL来统一色调,可以说是所有色调参数都列出来,让你可以高自定义调节

加强光影

最后调整一下

  • 去一下污点
  • 通过纹理实现磨皮~

基础概念

影调,色调。

色彩三要素:色相(色调)、明度、纯度(饱和度)

一、描述亮与暗

1、黑白灰与明度

黑、白、灰。这三个家伙,可以理解成色彩的基本要素,不管是调红色、蓝色还是其他什么色,都会有黑白灰。

明度:一种颜色的明暗程度,明度越高,颜色越明亮,明度越低,颜色越深沉。比如蓝色:藏蓝、群青、深蓝、中蓝、海蓝、天蓝、浅蓝。

色阶是表示图像亮度强弱的指数标准,色阶指亮度,和颜色无关(区别于明度)。

直方图:黑👉灰👉白的排列,即0~255,可分为五个区域黑色色阶、阴影、中间调、高光、白色色阶。

  • 白色色阶:白色色阶对应的是画面中比较亮的部分,它影响的范围一般比高光更大
  • 黑色色阶:黑色色阶对应的是画面中比较暗的部分,它影响的范围一般比阴影更大。

2、影调

所谓影调,就是画面的整体明暗情况,有暗调、中间调、明调。

在直方图里:

  • 黑色色阶+阴影(暗部)区域面积大:暗调
  • 中间调面积大:中间调
  • 高光+白色色阶面积大:明调

也可以用暗部、高光来描述照片的明暗情况。

3、曝光

增加曝光:黑向灰偏移,灰向白偏移。减少曝光则相反。

二、色彩

1、色调

也叫色调。指的是色彩的外相,是在不同波长的光照射下,人眼所感觉不同的颜色

在颜色直方图上,靠右(比如高光或者中间调)占据面积较大的色彩,决定了照片的整体色调。

RGB十二色相环:

image-20230225211309211

2、色调之饱和度

每个颜色的纯度也叫饱和度。

3、互补色 - 调色参考

互补色搭配比较符合大众审美。可以根据场景的颜色来选择衣服的颜色,也就是衣服的颜色跟场景的颜色有互补关系。

但是!!!黑白灰,不属于色轮一员,所以,它们比较百搭!

image-20230225211109800


心情:多云,微风

其实也不是因为有了一些深刻的思考而想要写这么个东西,而是想要思考一下才要写这么个东西。


工作时间

大概是最近的工作生活比较枯燥,我突然觉得,自己好像一直在浪费时间,总是浪费时间在一些收益不大的支线任务上,有出于认真的态度的原因,抑或是自己的工作效率实在太低了。不过不管怎么样,时间就那么溜走了,看着不多的任务量,自己却搞得忙里忙外的,心里不太好受。尤其是看到隔壁同事在摸鱼时候。这种工作是带不来什么进步的,至少目前来说是这样子。做得不尽人意,也是可以过关的,至少看别人是这样子。没完成工作,银行卡也是会到账工资的…

所以我有了个想法:对于工作任务,首要是追求效率,然后是质量,把时间节省下来去做自己的事情才是大方向。再过个几十年,回头看,我也只是个互联网搬砖民工而已——用时间和cv脑力劳动来换取薪水。会敲那么几行代码,还真不是设计师,至少我不是。

另外还有一个,该加班就加班,不该加班也可以加班,加班单该提就提,”别给公司省钱”,难得企业是遵守劳动法的,有加班费为啥不多拿点,又没人卡你。真想不明白自己不好意思提加班单是种什么心理,是觉得钱拿多了会被赶走吗?赶走就赶走呗,N+1不舒服吗..

睡眠时间

睡眠时间真的超级重要(虽然我把它放在第二位…),睡不好,精神状态就不好,心情也不好,从而办事效率也不好,进而办事效果也不好,最终啥啥都不好。

所以,要睡好好。

晚上睡眠要在6~8小时以内,午间休息0.5小时以内。

不能熬夜到凌晨,不能嗜睡到9、10点。

就这样。

学习时间

最近不怎么学习。

所以,0 hour。

娱乐时间

拉满!!!!

时间泄露

拍拖有个比较烦的点,我感觉少了好多私人空间,有时候也会因为作息时间要强制同步,这引发不少矛盾。在处理矛盾的过程中,时间就这么泄露了。每次闹矛盾,我都会想,我不能成家,不然这些琐碎的、无益的东西,迟早要把我弄疯掉的。

准备刷牙睡觉。


心情:阴,雨

昨日

昨天晚上下班后去附近的ktv唱K,搞到十一点多才坐上末班地铁回来,回来还吃了个宵夜,回到家的时候,已经快到凌晨一点钟了,便没有履前天的约。

23:22分的末班地铁,下图:

微信图片_20230405233241

今日

今天白天在emo,晚上去了同事家玩了一下,同事说想借我的相机玩一下,我便背书包带过去了。不过最后也没有借给他,单反又大又重,不适合带出去旅游。

同事的皮卡丘,下图:

微信图片_20230405233150

我日

“我感觉我应该去看一下心理医生”,忘了第几次有这种念头了,今天又把它说了出来。

以前看过一些心灵鸡汤类的文章,记得是毕淑敏说的?如果觉得有心结打不开(烦恼),不妨拿出纸笔,把它们一一罗列出来,逐一攻破,会是个很好的解决方案。

那么我最近的烦恼:

  1. 缺少长远的目标,我觉得我应该找到一个能让自己投入5~10年或以上的时间去做的事;
  2. 对生活缺少憧憬,并质疑活着的意义(关联1);
  3. 厌倦&逃避社交,跟人打交道的时候,会有个奇怪的想法:我该用什么表情去面对他们(我应该经常扑克脸了);
  4. 质疑自己能否有那个责任担当去组建一个家庭(顾虑);
  5. 有时候会跟女朋友会闹得不愉快,大多情况是因为我对她不怎么上心(关联4);
  6. 。。

明天补充吧,十二点了,要熄灯睡觉