最强蜗牛
最强蜗牛
前言
或许是因为无聊,或许单纯是我对那段时间的怀念,或许就是我矫揉做作想着记录游戏,总之这篇文章就摆在这里了。
正文
听到《最强蜗牛》这款游戏的名字,你或许会想起在某些平台的小广告中出现过《最强蜗牛》的推广广告。而我确实就是想聊聊这款“雁过拔毛”的氪金游戏。这游戏确实和我之前所写的任何一款游戏都不一样。它既不是单机,也没什么令人感动或是引入深思的剧情。它就是一款再常见不过的休闲氪金类游戏。但也正是因为它是一款休闲氪金类游戏,所以我才想写它。
休闲氪金类游戏无疑是最近最能赚钱的游戏类型,无论是《最强蜗牛》还是其他的能在广告中看到的休闲氪金类游戏,他们都可以靠着题材和养成稳定来吸引一批用户并为其氪金。我自己也没能抵住《最强蜗牛》的魔性广告而去玩。在这篇文章中,我想用自己游玩《最强蜗牛》的体验来记录并分析一下这款游戏。
最开始吸引我去玩《最强蜗牛》的原因就是因为它魔性的广告。几乎病毒式的宣发,让你可以在各各软件平台上看到关于《最强蜗牛》的广告。宣发广告对于任何一款游戏而言都十分的重要,因为游戏上线后的知名度 ...
Unity的八股收集(持续更新)
Unity的八股收集(持续更新)
前提说明:答案都是个人的理解 +
网络搜寻,不一定正确,请谨慎参考!
我个人认为面试回答应该尽量精简一些,防止被面试官追问太多,但是这样做可能也会给面试官留下不好的印象。所以才有回答中的扩展。大家可以根据自己的能力来挑选部分扩展的内容进行回答。如果自身能力不行,我建议还是不要展开太多扩展内容,以免给面试官机会被其追问。
有些面试题非常的基础,比如关于数据结构方面的知识。对于多年的程序员而言,我不建议大家把时间花费在这些基础知识上,因为这些知识在实际面试一般不会再提及了,当然你要是想巩固知识倒是可以看看。
下面的代码中,有部分我会标记为答案存疑,这是因为我个人感觉这有点问题,但是我也找不到权威的资料证明。那些没有被标记的答案实际上也不能说是百分百的正确,只能说是我个人感觉这样回答是没问题的。
通用概念
Q: 内存中,栈和堆的区别是什么?
答:
栈内存是为线程留出的临时空间,而且栈空间存储的数据只能由当前线程访问,所以它是线程安全的。其用于存储局部变量和方法调 ...
关于贝塞尔曲线/面
贝塞尔曲线/面
环境
windows 10
Unity 2022.3.52f1c1
贝塞尔曲线
在游戏开发的过程中,贝塞尔曲线是一个十分常用的知识。它常用来实现游戏中投掷物的抛物线效果。除此之外,游戏引擎中的动画曲线也是用类似的逻辑来实现。
什么是贝塞尔曲线
贝塞尔曲线(Bézier
curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。贝塞尔曲线于1962年由法国工程师皮埃尔·贝塞尔(Pierre
Bézier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul
de Casteljau于1959年运用de
Casteljau演算法开发,以稳定数值的方法求出贝兹曲线。(上述段落取自百度百科。)虽然上文说是在二维图形中的应用,但是现在贝塞尔曲线在三维中也有广泛的应用。
一次(一阶)贝塞尔曲线
一次贝塞尔曲线是最简单的形式。我们值需要做两点间的线性插值简单的代码如下:
1234public Vector3 OneLevelBezier(Vector3 ...
Unity将预制体渲染到RenderTexture上
Unity将预制体渲染到RenderTexture上
前言
本篇文章会介绍一个简单想法,所以会有很多限制。比如无法设置光源、对预制体中的物体位置有一定的要求和在使用Unity默认的URP材质有一些奇怪的bug。
环境
Windows11
Unity2022.3.56f1c1
正文
本篇文章的想法非常简单简单到我都觉得水的程度。我们只要使用Unity提供的CommandBuffer就可以实现了。首先我们先设定好摄像机。不过我们不是真的要创建一个Camera组件,而是我们设定一个虚拟的摄像机。这个摄像机的屏幕比就是我们要渲染的RenderTexture的长宽比。然后我们再定好摄像机是否要进行透视投影,如果是透视投影的话,fov(Field
of view)是多少。如果是
正交投影的话,它窗口的大小又要是多少等等。最终我们通过这些属性建立我们投影矩阵和视图矩阵。听到这,如果你不了解整体的渲染流程或许你会很懵逼。所以我这边提供给你一个简单方法。我们只需要拿一个空场景设定好这个空场景的中的摄像机参数,千万别忘记将Unity编辑器的 ...
关于图片采样
关于图片采样
前言
在游戏开发中,我们经常会对图片进行采样。比如物体的纹理信息,阴影贴图的信息等等。我们都需要对图片进行采样,以丰富游戏的表现。
我们时常会遇到这样的一个问题,我们需要将一个图片渲染到屏幕上,而图片所覆盖的屏幕像素远大于图片自身的像素。这时候我们就需要对图片进行放大处理。又或是反过来,我们需要对图片进行缩小处理。这些都会涉及到如何对图像本身进行采样。
图像采样的方法和规则
我们假设现在我们有一张256x256的图片。我们需要分别将其渲染成64x64和1024x1024的图片。对于64x64的处理,你或许会觉得很简单,因为256刚好是64的4倍,我们直接按照他们的比例进行像素的选取就好了。但是对于1024x1024的处理,你是否有想法呢?如果我需要的是100x100的图片,那么你又该如何处理呢?
无论是放大(上采样)还是缩小(下采样),我们都可以去做一个映射操作。比如我想知道64x64中坐标为(31,31)(这里我依照程序里面下标从0开始计算)的像素点是什么颜色。我先计算出此坐标在原图中的比例,显 ...
我对直播弹幕游戏的理解
我对直播弹幕游戏的理解
前言
我做直播弹幕类游戏也有一段时间了。这是一个刚刚兴起的游戏类型,我刚开始制作的时候还一头雾水,但现在我也有了一些自己的想法。我正好写一篇文章来阐述自己对于其的理解。下面文章中的大部分数据并没有实际考究,很多也是我从业以来的听闻,如果有错欢迎指正。本篇文章封面由豆包生成。
特别用标题来提醒,本篇文章充满作者个人想法请仔细甄别
对弹幕游戏的简单介绍
什么是直播弹幕游戏?
直播弹幕游戏,是一种以主播直播,观众通过向主播发送弹幕和送礼物的方式来进行游玩的游戏。直播弹幕游戏可以分为两大类:一类是玩家与主播之间的互动,另一类是玩家与玩家之间的互动,在直播平台中又被称为“弹幕互动类玩法”。
玩家与主播之间互动的弹幕游戏,通常是获取主播直播间弹幕和礼物信息转换为对应游戏内的指令。而这游戏本身可以是市场上已有的游戏。比如说,《超级马里奥》、《我的世界》、《黑神话:悟空》等。以《超级马里奥》为例,玩家可以发送弹幕或是送出礼物来对主播的操作进行干扰,从而让主播出洋相或是让其过不了关卡。本质上这属于是通过工具获取直播间信 ...
四元数学习记录
四元数学习记录
前言
如果你去看网络上的游戏开发教程,他们大都告诉你四元数是用来防止欧拉角的万向锁。但是他们都不会去深究或者说讲明。因为四元数确实很困难,但是在开发的过程中,我们确实需要一些关于四元数的知识来为我们的开发做理论基础。这篇文章,我只说明我自己所了解的部分,也算是我对于学习四元数的阶段总结。
特别说明,本文全部的计算都按照右手坐标系法则,所有的旋转都是逆时针旋转。
正文
四元数(Quaternion)是一种扩展复数的数学概念,它可以用来表三维空间中的旋转。它由威廉·罗恩·哈密顿于1843年提出,形式为:
\[q=a+bi+cj+dk\]
其中,\(a,b,c,d\)是实数。\(i,j,k\)是虚数单位,满足以下乘法规则:
\[i^2=j^2=k^2=ijk=-1\]
四元数的实部\(a\)、虚部为\(bi,cj,dk\),所以也有下面这样的表示:
\[q = (a,\vec{v})\]
其中,\(\vec{v}=(b,c,d)\)是三维向量(在我看到的资料中也有\(q =
(\vec{v},a)\)的表 ...
UGUI拖拽效果实现2
UGUI拖拽效果实现2
前言
之前我个人写过一个版本的拖拽效果实现,但是后面在一些场景中发现了一些问题,比如:应用窗口任意变换的时候,拖拽效果的设定显得麻烦,且会照成跟不上鼠标的问题;如果拖拽的物体本身的情况复杂,比如其锚点和其UI对齐格式奇葩或者其父节点也存在问题,那么判断是否在屏幕的方法就会错误,等等。
所以,为了解决这些问题,我又写了一个新的版本,这次我将会详细介绍一下这个版本的实现。
环境
Windows10操作系统 Unity2022.3.34f1c1 Unity UI 1.0.0
正文
这个版本的实现,仍然是基于UGUI本身提供的事件接口IBeginDragHandler、IDragHandler和IEndDragHandler。这次我还额外多加了IPointerDownHandler,这个接口。至于为什么我要多加这个接口,这个我在后面来说明。与前面的版本不同的是,这次的版本我并不考虑是否在屏幕外,我仅考虑UI是否在画布内。如果你要实现是否在屏幕内,其实就是将这个限制移动的画布设定为主画布就好了。 ...
2025.1水文
2025.1
救不了的项目
熬到现在,我的这个项目能改的地方都改了个变,可惜这个项目还是凉了。虽然现在又有海外的人想拿我们项目做测试,但是我觉得机会不大。首先这个海外的平台本就不大,而且这个平台我们之前也合作并上过项目。最终的结果就是连服务器的费用都赚不回来。我认为现在无非就是用这个项目再赚一点点,按照现在的趋势,这个项目估计撑不到今年的三月。我到是想着这个项目起来,然后公司多一份收入进军一下小游戏。我也能去做一下小游戏,看看什么叫做多平台的差异。现在看来,这份想法又是遥遥无期,甚至今年我们的部门撑到结束都是一个问题。现在我都开始想部门结束了也好,那我拿一份离职钱再毫无负担地找下一份工作。现在的我贪图大家的氛围,又嫌弃低价的工资。或许是我太贪心了,想干一份氛围又好,工资又高的工作。可回看现在的世道,那有这么容易。
## 帕鲁开玩
最近帕鲁又进行了一次更新,前面还有传出帕鲁后面不能再玩的新闻。所以朋友在一起不免会说这个话题,于是乎我又和朋友开始玩起了帕鲁。结果我没玩多久就记起来之前我为什么不想玩帕鲁了。没有丝毫意思地收集材料,朋友故意设定的高难度, ...
Unity中广告牌效果实现
Unity中广告牌效果实现
前言
我并非没写过关于广告牌效果的文章,但是那时候我是在写《Unity
Shader入门精要》读书笔记的时候提过。那时候我不明白书中实现的原理,所以我就没给出具体的代码。现在我终于明白了一些便想着补上这个实现。
环境
Unity版本:2022.3.34f1c1
操作系统:Windows 10 Universal RP 14.0.8
广告牌的效果的原理
在了解原理之前,我们首先要了解一下什么是广告牌效果(Billboarding)。在《Real-Time
Rendering 4th Edition》中是这么描述它的:
1234原文:Orienting a textured rectangle based on the view direction is called billboarding, and the rectangle is called a billboard.As the view changes, the orientation of the recta ...