下载 App

开发者日志02 窗口移动,鼠标和crt效果实现

2025/10/22171 浏览综合
这里主要阐述一些技术上的实现思路。
窗口移动首先不能干扰游戏内物理变化,因此我们需要使用投影摄像机和RenderTexture来将游戏界面投影到一个平面上,从而将窗口变化和游戏内场景分隔。
在此基础上,只需要写一个鼠标拖动窗口移动的简单脚本即可实现对窗口的操控。(通过自动吸附保证像素精确,否则画面在非整数格会变模糊)
鼠标操控核心原理就是屏幕坐标和世界坐标的转化。由于摄像机使用了PixelPerfectCamera组件实现像素精确,所以屏幕坐标与真实屏幕坐标仍有区别,需要获取该组件才能真正实现屏幕坐标到世界坐标的对齐。虚拟鼠标的实现是将鼠标与玩家操作分离的重要逻辑,未来如果需要实现任何鼠标相关的功能都可以从这个地方延申。
当前版本URP renderer2D与PixelPerfectCamera叠加的后处理实现方法比较抽象,我并没有研究明白,在近一个通宵的尝试无果后,我决定同样使用投影相机的方法,绕过后处理麻烦的部分。为了不干扰已经完成部分的正常运行,我选择将新投影画布覆盖在原主相机的z轴后侧,将原主相机的改为投影相机,投影在新投影画布上,在原位置的z轴后侧添加新主相机。这种方法既使得crt效果可以仅渲染在投影画布-上,避免与其它组件冲突,也可以使鼠标与摄像机的屏幕坐标位置不会发生改变,防止滑块,拖动等功能失效。在比赛上,这可能会为大家省下很多临时学习的时间成本,使用简陋的方法和较短的时间实现不错的效果。
猜你想搜
迷途猫 窗口移动实现
04:09
初版已经完成,预计25号上传试玩截图
初版已经完成,预计25号上传试玩
bug谜题:第一层:键盘失控、损坏、串键bug。第二层:游戏窗口bug。第三层:卡墙bug。第四层:卡出游戏窗口bug
18 赞
14 回复
开发日志06截图
开发日志06
我们给游戏加了存档和重置档功能,因为我们的游戏是拟态一个电脑桌面,所以加上和其他游戏一样的“开始游戏”按键和“新游戏”按键会显得很突兀,所以我们索性直接去掉这些 ui,并把他们放在了桌面的图标上,比如左下角的关机键就是退出游戏,文件夹图标是重置存档,直接点小猫图标就是直接继续游戏,这样可以很好的把 ui 拆开融入到游戏里,玩家每进入下一关就会自动保存存档不用担心数据丢失,并且通话后会自动重置存档并
官方
5 赞
3 回复
开发日志04截图
开发日志04
关于该项目的进展 我们在立项之初就基本上决定好了游戏的玩法,机制,甚至大部分关卡谜题,利用键盘bug当作贯穿游戏的一个机制,窗口、穿墙、穿窗口、双猫bug当作每一个阶段的小机制。如果除去bug部分,该游戏的本质是一个以冲撞和跳跃为核心资源的平台游戏,而由于键盘bug贯穿始终,玩家需要不断根据关卡改变冲刺或跳跃资源的分配,实现对于新关卡谜题的应对 下期计划: 我们计划将游戏完善后添加更加深层次的谜题
官方
6 赞
开发者日志03
该游戏采用管卡模式,对于这种小型游戏为了方便操作已经切换场景,我采用预制体场景的方法,把每个场景单独为一个预制体,这样既方便测试更改,也方便实现代码架子的调用,在每个关卡中,猫咪人物都是不同的,有着自己的不同bug,在这些bug的影响下要顺利通关也是需要动点脑筋和操作,目前游戏里的桌面上只有猫咪游戏图标可以互动,后面打算在扩充管卡的同时添加一些其他图标的互动,或许利用图标通关也说不定。由于主题偏向
官方
10 赞
1 回复
开发日志05
存取系统实现 本期进展:随着关卡数量的增多,游戏进度的存取系统也提上日程。我们目前采用的方案是通过Json的序列化/反序列化方法将一个存储数据的类保存到本地,鉴于游戏体量很小同时也是方便测试,目前并没有做加密功能,文件以txt形式存在。 存取通过SaveSystem模块来管理,SaveSystem是一个单例模块,外部使用时仅需要调用SaveLocalArchive和LoadLocalArchive
官方
4 赞