《天谕》手游的内存控制 -笔记

花了100块买了UWA上的这个课程,做个一个笔记 Profiler工具 推荐使用XCode分析内存,更准确 一、内存指标的类型: VSS:Virtual Set Size,虚拟耗用内存。它是一个进程能访问的所有内存空间地址的大小。这个大小包含了 一些没有驻留在RAM中的内存,就像mallocs已经被 ... »

手游防破解防外挂技术方案(一)客户端篇

对于任何一款要长期线上运营的游戏,防破解防外挂是必不可少的。本文总结了手游常用的防破解防外挂技术方案,这些方案都经过了笔者所在团队和线上项目的长期考验。很多方案来自于弱联网手游项目,但大部分思路也同样适用于强联网游戏。以Unity为例,但思路也适用于非Unity项目。笔者尽可能做到总结全面,希望能帮 ... »

Unity ugui Anchor锚点自动适配画布中的相对位置

本随笔参考了以下博客,在此基础上进行优化和改进: https://blog.csdn.net/qq_39640124/article/details/88284191 ugui中的Anchor预设如下: 允许我们快速对齐父物体的一部分轴向顶点或边,但有时我们并不是要对齐这些,而是需要对齐特定位置的某 ... »

Shader专题:卡通着色(一)控制颜色的艺术

什么是 Shader? 关于什么是 Shader ,各种百科各种教程都有说过,但是今天我们就从一个另一个角度去试着理解什么是 Shader? 我们先看下 Shade 的英文意思,如下: v.给...遮挡(光线);把...涂暗 其中 把...涂暗 更贴近我们想要的意思。 所以:Shader 这个单词从 ... »

小班同学学习经历分享(一)游戏程序员成长札记

作者信息 昵称:目及远方 课程设计 HumanFramework: https://github.com/cyclons/HumanFramewo 正文 大四毕业,心血来潮,闲余之际,撰文留念。 萌芽 游戏程序员,把这个分成两块的话就是,游戏,程序。 这两个中,只有一个,游戏,在我很小的时候就开始接 ... »

UniRx精讲(一):UniRx简介&定时功能实现

1.UniRx 简介 UniRx 是一个 Unity3D 的编程框架。它专注于解决时间上异步的逻辑,使得异步逻辑的实现更加简洁和优雅。 简洁优雅如何体现? 比如,实现一个“只处理第一次鼠标点击事件”这个功能,使用 UniRx 实现如下: Observable.EveryUpdate() .Where ... »

UniRx精讲(一):UniRx简介&定时功能实现

1.UniRx 简介 UniRx 是一个 Unity3D 的编程框架。它专注于解决时间上异步的逻辑,使得异步逻辑的实现更加简洁和优雅。 简洁优雅如何体现? 比如,实现一个“只处理第一次鼠标点击事件”这个功能,使用 UniRx 实现如下: Observable.EveryUpdate() .Where ... »

Unity 游戏框架搭建 2019 (五十六/五十七) 需求分析-架构中最重要的一环&从 EmptyGO 到 Manager Of Managers

我们的项目开始立项的时候,最常见的一个情况就是:几个人的小团队,一开始什么也不做,就开始写代码,验证逻辑,游戏就开始写起来了。而公司的一些所谓的领导层面一开始就把游戏定义为我们要做一个大作。这个事情本身就是一个笑话,因为没有任何的规划和设计,我们就妄图写出一个杰出的作品出来是不现实的。Unity 在 ... »

Unity 游戏框架搭建 2019 (五十二~五十四) 什么是库?&第四章总结&第五章简介

在上一篇,我们对框架和架构进行了一点探讨。我们在这一篇再接着探讨。 什么是库呢? 来自同一位大神的解释: 库, 插到 既有 架构 中, 补充 特定 功能。 很形象,库就是搞这个的。我们的库最初存在的目的,就是收集知识,而收集知识是一般的架构(项目)中是没有的,那么我们为了补充特定功能(收集知识),就 ... »

Unity 离线建造系统

很多游戏,特别是养成类手游,都会有自己独特的建造系统,一个建造装置的状态循环或者说生命周期一般是这样的: 1.准备建造,设置各项资源的投入等 2.等待一段倒计时,正在建造中 3.建造结束,选择是否收取资源 大体上,可以将建造盒子分为以下三种状态,每一个状态的逻辑和显示的页面不同: 1 public ... »

[A*算法]基于Unity实现A*算法(二)

写在前面:上一篇当时是非常简单的了解一下A*,昨天还有一些问题没解决,就暂时把自己查阅的文坛摘抄了过来(毕竟人家写的比我要好的多 :> ) 今天终于解决了,就又写了这一篇,正好我自己再梳理一遍,把Unity的实现也记录一下(Unity版本:2019.3.7.f1) 一、Unity UI表现实现 UI ... »

Unity 任意区域截屏创建Sprite

Unity截取全屏静帧的方法较为简单这里不作讨论,指定区域截图用到的最主要的方法就是读取屏幕像素: 1 // 2 // 摘要: 3 // Read pixels from screen into the saved texture data. 4 // 5 // 参数: 6 // source: 7 ... »

[Unity A*算法]A*算法的简单实现

写在前面:之前看过一点,然后看不懂,也没用过。 最近正好重构项目看到寻路这块,想起来就去查查资料,总算稍微理解一点了,下面记录一下自己的成果(哈哈哈 :> ) 下面分享几篇我觉得挺不错的文章 A*算法 A*寻路算法详细解读 搜索区域(The Search Area) 我们假设某人要从 A 点移动到  ... »

[Unity UGUI图集系统]浅谈UGUI图集使用

**写在前面,下面是自己做Demo的时候一些记录吧,参考了很多网上分享的资源 一、打图集 1.准备好素材(建议最好是根据图集名称按文件夹分开) 2、创建一个SpriteAtlas 3、将素材添加到图集中 4、生成图集 到此,我们的图集就准备好了 二、加载图集 1、在工程里面使用(正常包内使用建议打成 ... »

Unity ugui拖动控件(地图模式与物件模式)

拖动在游戏中使用频繁,例如将装备拖动到指定的快捷栏,或者大地图中拖动以查看局部信息等。 Unity的EventSystems中可以直接继承几个接口来实现拖动功能,如下: namespace UnityEngine.EventSystems { public interface IBeginDragH ... »

Unity基于NGUI的简单并可直接使用的虚拟摇杆实现(一)

可能大家都听说过大名鼎鼎的easytouch,然而easytouch是基于UGUI的,两种不同的UI混用,可能会造成项目管理的混乱,并且可能会出现各种幺蛾子,比如事件传递互相扰乱的问题。 于是就想找一种基于NGUI的摇杆,搜索网上的文章,都有很多问题,总结来说三个问题很突出。 一:代码本事存在缺陷或 ... »

关于FFT分析音频的学习

本文部分知识从以下文章学习: https://zhuanlan.zhihu.com/p/19763358 傅里叶变换的知识 https://www.cnblogs.com/RabbitHu/p/FFT.html FFT的知识 最近工作上在做关于音乐游戏的内容,其中需要分析音频找节奏点(或者说是重音点 ... »