游戏开发
文章平均质量分 78
Bone Breaker
这个作者很懒,什么都没留下…
展开
-
关于UPR的使用及各Profiler参数
工欲善其事,必先利其器对于项目中出现的闪退,卡顿等问题,我们需要有线索去进行分析,就像破案一样,根据现有的信息数据去分析并一步步找到破解方案。在Unity编辑器下,我们可以使用Unity Profiler来进行分析,而对于真机,我们可以使用Unity推出的方案-UPR。关于UPRUPR出现的原因UPR是Unity于2019年提出的性能测试分析解决方案,Unity团队在分析市场上的工具后,...原创 2019-10-20 21:09:58 · 3489 阅读 · 0 评论 -
关于WaitForTargetFPS、Gfx.WaitForPresent等Profiler参数
WaitForTargetFPS在设置了目标帧率Application.targetFrameRate,并且CPU耗时较短时,可以在Profile中看到这个参数的出现。他的主要目的是用于维持目标帧率,编辑器模式下Unity通过WaitForTargetFPS来模拟垂直同步的延迟,Unity引擎通过计算上一帧的CPU耗时来评估这一帧需要等待多久才能达到目标帧率,这个等待的时长就是WaitForT...原创 2019-10-11 22:41:19 · 3326 阅读 · 0 评论 -
Unity中对帧率设置的逻辑
参照的是这份文档:https://docs.unity3d.com/ScriptReference/Application-targetFrameRate.htmlApplication.targetFrameRateApplication.targetFrameRate用于设置Unity游戏的帧率,其默认值为-1。值为0或者-1时,在standalone上表示其最高可达到的帧率,而在手机...原创 2019-08-09 08:48:44 · 2071 阅读 · 0 评论 -
Unity UGUI 本地化方案 - Localiztion Tool
问题及难点相信做海外游戏代理的同学一定会遇到需要做本地化的问题,其中资源可以通过替换合图来处理。而文本是其中一个比较难处理的问题。其中主要难点在于UGUI本身没有提供相应的插件,而对于一开始没规划的项目来说,你需要去找出其中所有的外语文本,找到后再将对应Text控件替换成你自定义的控件,替换后再需要填入对应的Key值。这对于策划来说简直是恶梦~工具的基本原理Localization...原创 2018-06-10 14:22:30 · 4405 阅读 · 3 评论 -
Unity Shader学习-1.渲染流水线
先了解一下什么是流水线:(下面是百度百科的定义) 流水线:流水线又称为装配线,一种工业上的生产方式,指每一个生产单位只专注处理某一个片段的工作,以提高工作效率及产量一、什么是渲染流水线1.概念渲染流水线的概念与上面说到的流水线的概念也是一致的,其主要任务是输入一个三维场景,然后输出一个二维的图像。这个过程是由CPU和GPU一起完成的。2.渲染流水线的三个阶段渲染流水线可以分为三个阶段:应用阶段原创 2016-08-07 16:25:57 · 1178 阅读 · 0 评论 -
Lua入门教程 6.迭代器与泛型for
0x06迭代器与泛型for 所谓迭代器就是一种可以遍历一种集合中所有元素的机制。迭代器与Closure每个迭代器都需要在每次成功调用之间保存一些状态,这样才知道下一步进行到何处,而Closure则为这一任务提供了很好的支持。function value (t) local i = 0 return function () i = i + 1; retur原创 2016-06-19 14:22:45 · 993 阅读 · 0 评论 -
Lua入门教程 7.编译、执行与错误
0x07编译、执行与错误 Lua虽然是一种解释性语言,但Lua允许在运行源码前,先将源码预编译成一种中间形式。1.编译与执行Lua提供了dofile loadfile两个接口来从文件里加载Lua的代码块,但它不会运行代码,而只是编译做对,然后将编译结果作为一个函数返回function dofile (filename) local f = assert(loadfile(filena原创 2016-06-26 14:04:54 · 528 阅读 · 0 评论 -
Lua入门教程 5.函数
0x05 函数定义与调用形式定义:函数是对语句和表达式的抽象。函数的调用形式:无论是语句或者表达式,都需要将所有参数放到一对圆括号中。即使调用没有参数也必须写出一对空括号。 注:此条规则对一种情况例外—一个函数只有一个参数,并且此参数是一个字面字符串或者table构造式(见下列代码)print "Hello World" --只有一个参数且为字面字符串f{x = 20, y = 30}原创 2016-06-04 19:20:49 · 527 阅读 · 0 评论 -
Lua入门教程 4.语句
0x04 语句Lua支持的赋值语句与常规的C或Pascal语言中所支持的语句差不多,此外还还支持多重同仁和局部变量声明赋值###普通赋值a = "Hello World"b = a .. "nooo"Lua的普通赋值的意义就是用于改变变量的值###多重赋值 Lua还支持多重赋值,即*一次性将多个值赋予多个变量*a,b = "Hello", "World"` --> `a = "Hello原创 2016-06-03 20:06:09 · 427 阅读 · 0 评论 -
Lua入门教程 0.环境配置
Lua环境需要依赖一个C++的环境包,开始时安装了VS2010居然也无效,后来到网上下载”vcredist_x86”安装包,并将其放于从Lua官网下载下来的Lua For Windows安装包的同一目录下就行了。# 步骤: 1. 下载 Lua For Windows,下载地址:http://luaforge.net/projects/luaforwindows/ 2.原创 2016-06-03 19:20:00 · 458 阅读 · 0 评论 -
Lua入门教程 2.类型与值
0x02基础类型Lua有总共8种基础类型: nilbooleannumberstringuserdatafunctionthreadtablee.g:print(type("hello")) -->stringprint(type(2)) -->numberprint(type(true)) -->booleanprint(type(print)) -->functio原创 2016-06-03 19:42:59 · 415 阅读 · 0 评论 -
Lua入门教程 3.表达式
0x01 表达式 算术操作符支持常规的算术操作符:二元的 + - * / ^ % 一元的 - 算术操作与C等语言一致 关系操作符Lua提供了以下的关系操作符:<,>,<=,>=,~= 所有这些操作符的运算结果都是true或false== ~=用于相等性测试,这两个操作符可以应用于任意两个值。如果值具有不同原创 2016-06-03 19:08:50 · 477 阅读 · 0 评论 -
Lua入门教程 1.准备知识
0x01 准备知识关于编码 在安装了Lua For Windows后,用户可以有三种方式进行Lua的开发: a.使用内置的SciTE编辑器,自带的编辑器提供了智能提示和编译运行等功能。 b.使用Windows命令窗体进行,使用Lua xx.lua文件便可执行对xx.lua文件的编译和运行 c.使用Lua的控制窗体,直接在里面输入代码即可 e.g > print(原创 2016-06-03 19:27:05 · 481 阅读 · 0 评论 -
[OGRE]1.从0开始,从2D到3D
初识OGRE:很早之前听说OGRE,是在学习Qt的时候,当时只知道Qt可以和一个叫OGRE的"游戏引擎"一起搭配使用,后来才发现原来OGRE不能算是一个游戏引擎,只能说是一个游戏引擎的一部分(一个游戏引擎包括了物理引擎,网络引擎,声音和渲染引擎等),OGRE只是其中的渲染引擎,负责图形方面的渲染而已,而其它那些游戏引擎的其它部分则是以插件的形式存在的.四元数:之前接触到的游戏引擎都是2D的原创 2013-06-17 00:20:12 · 986 阅读 · 0 评论 -
1.RakNet工程设置
1.在VisualStudio中创建一个新的Win32控制台应用程序 .2.应用程序选项中选择"空项目",和"控制台应用程序",Windows应用程序也是可以的3.在项目目录下新建一个文件夹,找到RakNet的Source目录将RakNet的源码加进来4.右键点击项目选择添加新建项来添加一个main文件到你的项目中.5.因为我们把源码文件放在一个目录而不是工程中,我们需要inclu翻译 2013-03-04 10:25:14 · 476 阅读 · 0 评论