自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(34)
  • 收藏
  • 关注

转载 Unity移动游戏加载性能和内存管理-学习笔记

前言正在学习Doctor 张.鑫大佬的移动游戏加载性能和内存管理,内容非常非常的干,所以我烧了很多开水,边喝边看,一边拿小本几做好笔记本文只是关于前2章的内容笔记,关于各种资源的加载耗时纹理资源加载耗时重复加载十次,取平均值纹理尺寸测试结论1、纹理资源的分辨率对加载性能影响较大,分辨率越高,其加载越为耗时。设备性能越差,其耗时差别越为明显;2、设备越好,加载效率确实越高...

2019-08-22 02:47:00 253

转载 C#跟Lua如何超高性能传递数据

前言在UWA学堂上线那天,我买了招文勇这篇Lua交互的课程,19块还算值,但是前段时间太忙,一直没空研究,他的demo是基于xlua的,今天终于花了大半天时间在tolua下跑起来了,记录一下我的理解性能,仍然是Lua中与C#混用的大坑Lua跟C#交互的性能问题是老生常谈的了,c#跟lua数据交互是通过lua虚拟栈,进行压栈、出栈来传递的,一次调用就需要执行很多指令,性能会随着调用...

2019-07-21 00:58:00 397

转载 记一次Lua语言中死循环查错

前言如果在Lua语言中某一处死循环了!你特么的怎么去查出这特么的该死的循环到底在特么的哪里!!!重现步骤一打开技能界面,整个游戏就卡死不动了开始排查查看一下cpu占用率,unity占用60%+,应该是死循环一开始采取冒烟式查错法,去一些可疑的地方一个个打断点(我们有lua调试工具可断点)。游戏的大循环,事件派发基层接口,lua调用c#的基层接口等等,都加了很多断点可喜...

2019-05-06 01:00:00 408

转载 数据结构之二叉堆、堆排序

前言上一篇写了数据结构之二叉搜索树、AVL自平衡树,这次来写堆。堆的创造者很久以前排序算法的时间复杂度一直是O(n^2), 当时学术界充斥着“排序算法不可能突破O(n^2)”的声音,直到1959年,由D.L.Shell提出了一种排序算法,希尔排序(Shell Sort),才打破了这种不可能的声音,把排序算法的时间复杂度提升到了O(n^3/2)!当科学家们知道这种"不可能"被突破之...

2019-03-25 00:32:00 146

转载 数据结构之二叉搜索树、AVL自平衡树

前言最近在帮公司校招~~ 所以来整理一些数据结构方面的知识,这些知识呢,光看一遍理解还是很浅的,看过跟动手做过一遍的同学还是很容易分辨的哟~一直觉得数据结构跟算法,就好比金庸小说里的《九阳神功》,学会九阳神功后,有了内功基础,再去学习其他武功,速度就有质的提升内容大概包含这些,会分多篇文章来整理:二叉搜索树平衡二叉树(AVL)二叉堆堆排序四叉树八叉树图,深度优先D...

2019-03-20 20:00:00 120

转载 go语言爬虫 - TapTap用户都喜欢些什么游戏

前面的废话说到爬虫,首先想到的当然是python~ 它在机器学习、爬虫数据分析领域可谓是如日中天,十分热门。但我最近在学习go语言,所以就用go写了TapTap社区这是一个高品质的游戏分享社区,可以说是手机上的steam。上面的用户质量非常高,核心玩家多,看到他们那么用心的写那么多长评论,让我惊叹,所以这次打算拿它来爬取数据练练手,下面先看看成果先看效果,这里的玩家,都喜欢玩啥类...

2018-07-30 00:11:00 1057

转载 Golang vs PHP 之文件服务器

前面的话作者为golang脑残粉,本篇内容可能会引起phper不适,请慎读!前两天有同事遇到一个问题,需要一个能支持上传、下载功能的HTTP服务器做一个数据中心。我刚好弄过,于是答应帮他搭一个。HTTP服务器,首先想到的就是PHP + nginx。于是开撸,先写一个PHP的上传<?php if ($_FILES["file"]["error"] > 0) ...

2018-07-18 00:50:00 194

转载 Lua内存分析工具

最近给公司写了一个lua内存分析工具,可以方便的分析出Lua内存泄露问题(虽然还没正式使用,但我是这样想的,哈哈哈),有图形化界面操作,方便手机端上传快照等功能内存分析我是在c语言端写的,也有人写过lua端的分析工具,也蛮好用的,不过lua分析工具本身也会影响到lua的内存占用(尽管用的是弱表缓存的),也会有些不准确。Lua方案:https://github.com/yaukeywa...

2018-02-25 00:03:00 491

转载 C和Lua之间的相互调用

前面的话第一次接触Lua是因为Unity游戏中需要热更,但是一直没搞懂Lua是怎么嵌入到别的语言中执行的,如何互相调用的。这次打算好好了解一下C跟lua是如何交互的那么如何使用Lua语言?lua是c语言编写的,而且开源。可以在https://www.lua.org官网上下载Lua的源码,然后尝试编译它!是不是跟我一样好激动,一直用集成环境,写上层语言,今天居然要碰编译了!!~ 可怎...

2018-01-14 20:57:00 130

转载 UGUI表情系统&超链接解决方案

最近帮一个同事解决图文混排的问题,发现了一种犀利的UGUI表情系统的解决方案https://blog.uwa4d.com/archives/Sparkle_UGUI.html使用重新生成UGUI文字Mesh的方式来支持表情图片。在Shader中判断是否有第二个套UV传入来渲染表情,动态表情也在GPU端计算~ 可以合并DrawCall,支持UGUI的遮罩、自适应等等我在原作者的基础上...

2017-12-23 15:16:00 219

转载 UnityShader-菲涅尔反射(Fresnel Reflection)

菲涅耳公式(或菲涅耳方程),由奥古斯丁·让·菲涅耳导出。用来描述光在不同折射率的介质之间的行为。由公式推导出的光的反射称之为“菲涅尔反射”。菲涅尔公式是光学中的重要公式,用它能解释反射光的强度、折射光的强度、相位与入射光的强度的关系在计算机图形学中的应用一般运用于水面效果,试想一下你站在湖边,低头看向水里,你会发现近的地方非常清澈见底(反射较少),而看远的地方却倒映着天空(反射较多...

2017-12-09 23:39:00 664

转载 Unity中的Mono & Linux上编译Mono的流程

前段时间编译了一下Unity的Mono,看了很多相关的文章,也遇到很多新坑。所以来总结一下,加深自己对Mono的理解为什么Unity可以跨平台运行呢通常Unity的脚本有C#、JS、Boo。不过现在官方都只推荐使用C#了,为什么Unity可以支持用不同的语言编写代码呢?因为它使用了一种叫CIL的中间语言,C#、JS、Boo最终会被编译成一种叫IL的中间语言,然后通过Mono运行时编译...

2017-11-12 19:39:00 538

转载 【转】腾讯资深产品经理谈敏捷开发于游戏

原文:http://blog.csdn.net/sjchappysky/article/details/46618799敏捷开发思想谈 敏捷的原则 敏捷开发其实并没有标准型的流程。SCRUM也只是众多衍生体中的一个。实际上就算是SCRUM的实际使用也情况千差万别。所以首先,请大家有这么个概念: 敏捷开发绝对不是一套一成不变的标准化流程。而更多的是一种自适应,自...

2017-11-06 20:15:00 105

转载 帧同步-自动化战斗测试流程

小小的代码,提升大大的效率(^o^)/工作中有很多繁琐的流程,重复的流程,是可以编程实现让计算机去做的。编程其实就是教机器去做某些事情,而程序语言,就是跟机器对话的工具~经常听牛人说用代码改变世界,虽然我改变不了整个世界,但至少还可以改变一下身边的世界哦~自动化测试我们游戏的战斗测试同步问题比较麻烦,每次改动了战斗(主动技能、被动技能、BUFF、怪物等等)都需要开多个号测试一遍战...

2017-10-14 22:42:00 201

转载 VS Code 快捷键(中英文对照版)

原文地址:https://segmentfault.com/a/1190000007688656常用 General按 Press 功能 FunctionCtrl + Shift + P,F1 显示命令面板 Show Command PaletteCtrl + P 快速打开 Quick OpenCtrl + Shift + N 新窗口/实例 New window/instanc...

2017-10-07 11:21:00 990

转载 Linux下SVN提交时强制写日志

Linux版本:1、在svn的hooks目录下新建一个名为pre-commit的文件并为其添加执行权限(用vi pre-commit直接创建)2、pre-commit文件的内容如下:#!/bin/shREPOS="$1"TXN="$2"SVNLOOK=/usr/bin/svnlookLOGMSG=$($SVNLOOK log -t "$TXN" "$REPOS" | gr...

2017-09-26 14:08:00 87

转载 如何搞定SVN目录的cleanup问题和lock问题

最近在使用SVN的时候碰到一个问题,就是操作时由于粗心大意,在更新的过程中点击取消,使得该目录出现cleanup的操作提示。OK,按照cleanup提示操作后,又提示目录被lock...网上有解决方案称,在SVN目录下找到 .svn 隐藏目录,一般是在项目的根目录下,在 .svn 目录下有一个 wc.db 数据库文件。我们使用 sqlite3.exe 打开这个数据库,并对它进行操作...

2017-09-04 14:45:00 132

转载 游戏里的动态阴影-ShadowMap实现原理

ShadowMap是比较流行的实时阴影实现方案,原理比较简单,但真正实现起来还是会遇到很多问题的,我这里主要记录下实现方式先看效果实现原理ShadowMap技术是从灯光空间用相机渲染一张RenderTexture,把深度值写入其中所以称之为 深度图 ,在把接受阴影的物体从模型空间转换到灯光空间中,获取深度图里的深度进行比较,如果深度值比深度图中取出的值大就说明该点为阴影。《Cg...

2017-07-24 22:39:00 452

转载 游戏里的跨地图寻路算法

前段时间遇到一个跨地图寻路的需求,需要在任意两个地图之间自动寻路。我们的寻路算法用的是AStar,每个地图都有一份格子数据,地图之间有传送门通过。首先这是一个最短路径问题,常用的最短路径算法有Dijkstra、Floyd。这里我的思路是选择Dijkstra来实现。具体的Dijkstar算法原理可以参考这两篇文章:(反正我是学完就忘记了 笑哭~)透彻理解迪杰斯特拉算法最短路径—D...

2017-07-11 13:54:00 579

转载 Unity-Shader-动态阴影(上) 投影的矩阵变换过程

【旧博客转移 - 2017年1月20日 01:20】前面的话最近很长时间没写博文了,一是太忙 ( lan ) 了,二是这段时间又领悟了一些东西,脑子里很混乱,不知道从何写起。但感觉不能再拖延下去了,来不及解释了,快上车(一脸滑稽)目前我在做一款3D二次元动作游戏,后面可能会用到动态阴影,有的人可能会直接找一个插件分分钟就把阴影做出来了,这样做当然可以,但自己不去熟悉一下底层...

2017-05-16 15:32:00 433

转载 Unity-奥义技能背景变黑效果

【旧博客转移 - 2016年8月29日 12:51】前段时间做了一个放技能的时候,背景缓慢变黑,放完后再变回来的效果,可以很好的突出技能特效的感觉。 算是一种屏幕后期特效,这个特效说难不难,说简单也不简单 反正换做以前的我是没这么快做出来的 随着对Unity引擎跟Shader的更加了解,很快就把这个需求做完了效果如下实现方式刚开始我想改变场景中物品的Shade...

2017-05-16 15:30:00 486

转载 UGUI学习笔记

【旧博客转移 - 2016年7月7日 23:13】最近用了下UGUI,毕竟是Unity官方内置的,估计以后也会慢慢取代NGU了,现在资料也还算丰富图集打包方式 看了雨松MOMO的几篇文章UGUI研究院之全面理解图集与使用(三),看完后自己弄了一些图片实验了一下sprite packer这是UGUI自带的打包工具,同一个图集这里面会很智能的分成多个小图集,纹理格...

2017-05-16 15:26:00 137

转载 Unity-Shader-镜面高光Phong&BlinnPhong-油腻的师姐在哪里

【旧博客转移 - 2016年4月4日 13:13】油腻的师姐:以前玩过一款很火热的端游《剑灵》,剑灵刚出来的时候,某网页游戏广告视频中有句台词:“我不断的在寻找,有你的世界在哪里”,该广告中的人物,音效都模仿了剑灵,而《剑灵》中的人物模型表面看上去油光发亮,所以就被网友改成了:“我不断的洗澡,油腻的师姐在哪里”像这样(皮肤表面的高光)这样...

2017-05-16 15:24:00 209

转载 Unity-Shader-光照模型之漫反射

【旧博客转移 - 2016年4月3日 23:27】前面的话:在现实生活中,我们看见能看见的东西都是光反射出来的颜色,如果反射光太弱,或者没有进入你的视角范围,你看到的就是黑色的。在游戏中光分为几种,平行光源(太阳光),点光源(灯泡)等等,最常用的是Directionallight(平行光源)。当然在计算机中光不过是一些数据罢了,方向,颜色,亮度就可以决定一个平...

2017-05-16 15:18:00 98

转载 Unity3D-Shader-热扭曲效果

【旧博客转移 - 2016年1月13日 13:18】前面的话:本来我是想写一个水的原理的,但是发现涉及的知识太多,还有好多不懂的,所以就先一步一步来最近呢,我在网上捡到了一本《热扭曲秘籍》,修炼数日,甚觉精妙这次分享一个很简单的热扭曲原理先看效果:1.这是原图2.加了特效之后~显得很亮,很柔..3.这个神秘的图,才...

2017-05-16 15:14:00 643

转载 Unity3D-Shader-人物残影效果

【旧博客转移 -2016年1月7日 00:24】前面的话上一篇讲了一下人物边缘发光效果,链接:Unity-ShaderLab-实现X光效果,这次我们利用这个Shader来实现人物残影效果先来看一下效果 →_→大概的原理创建残影:拷贝人物当前Mesh数据作为残影,用MeshFilter+MeshRenderer渲染出来残影有生命周期、创建间隔:...

2017-05-16 15:06:00 974

转载 Unity3D-Shader-实现X光效果

【旧博客转移 - 2016年1月3日 16:40】最近学习了一些Shader效果,打算把学到的知识总结一下,这篇讲一下这种轮廓发光的效果(如下图所示),也有一些地方管这个叫X光1.原理可以看到图上的蓝色人物,边缘颜色比较深,而中间的比较浅,这是利用法线跟视线向量的点乘值计算出颜色浓度来实现的2.代码Sha...

2017-05-16 15:03:00 494

转载 Unity3D-Shader-复古电影荧幕特效

【旧博客转移 - 2015年12月6日 18:12】今天用Shader做了一个复古荧幕效果,老电视机放映的感觉,写篇文章记录一下原始图片:没错,这就是电影《泰坦尼克号》的剧照。船撞到冰山上翻了,气温非常低,男主角杰克,找到了一块木板,让女主角睡在上面保住了性命,自己被冻成冰块沉入海底,还是蛮感人的。实现原理...

2017-05-16 14:59:00 943

转载 反编译Unity3D手机游戏

【旧博客转移 - 2015年11月17日 10:08】现在大部分U3D手游都没有进行加密处理,要反编译其实很简单APK是安卓的安装包,安卓是基于Linux的,Linux的安装包一般都是zip,所以我猜APK有可能其实就是zip之类的压缩格式,把后缀名改成zip后用压缩工具打开一般用c#做unity脚本的,都会编译生成三个主要的dll...

2017-05-16 14:41:00 478

转载 网络游戏的前后端通讯(二)

【旧博客转移 - 2015年9月20日 22:48】1.Socket的粘包拆包tcp协议是有缓冲区的,如果发送的数据太小,会被放置缓冲区里,累积更多的数据再一起发送,发送后不会立马清除缓冲区,等待TCP应答消息到了,才会清除缓冲区。没应答就会继续重发,造成粘包的原因有几种。发送端的多个数据包在缓冲区里一起发送接收端由于网络原因阻塞,然后一次性接受多...

2017-05-16 14:40:00 148

转载 网络游戏的前后端通讯(一)

【旧博客转移 - 发布于2015年9月14日 22:25】通讯是网络游戏的最重要部分之一,好的游戏通讯协议设计包括一下特点:包体积小、解析速度快、支持加解密等等,下面就简单说一下通讯协议的设计1.游戏中常用的通讯协议以及数据格式HTTP: 早期的SLG游戏一般会采用HTTP协议进行通讯,后端大多采用PHP,通讯格式用XML、JSON等字符串,由于HTTP...

2017-05-16 13:32:00 830

转载 Unity3D中使用BMFont制作图片字体 (NGUI版)

【旧博客转移 - 发布于2015年9月10日 16:07】有时美术会出这种图片格式的文字,NGUI提供了UIFont来支持BMFont导出的图片字体BMFont原理其实很简单,首先会把文字小图拼成一张大图(合成一张图上传GPU性能会高一些)然后生成一份配置,描述了每张小图字符的Unicode编码(这里是10进制),坐标,宽高,偏移量,等等信息下面...

2017-05-16 13:27:00 162

转载 Linux下mysql远程连接问题

【旧博客转移 - 发布于2015年9月6日 18:42】在Linux上装好Mysql后 发现远程客户端连接不上出现这种情况是因为mysql服务器出于安全考虑,默认只允许本地登录数据库服务器。由于对Linux不熟悉,搜索了一些资料后找到几个解决方案一.找到mysql配置文件 etc/mysql/my.cnf注释skip-externa...

2017-05-16 13:25:00 71

转载 Unity3D-游戏中的技能碰撞检测

在游戏战斗中,我们会用到各种各样的碰撞检测,来判断是否打中了目标比如扇形检测/圆形检测还有矩形检测,王者荣耀里后羿的大招就是一个很长的矩形碰撞体这些在Unity3D引擎中其实都封装好了一些Collider组件去检测碰撞,但是我最近写帧同步算法的时候,发现U3D中的碰撞算法执行顺序不可控,会导致不同步的现象,所以就只好苦逼的自己写碰撞检测算法了。我们游戏...

2017-04-16 15:03:00 795

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除