- 博客(27)
- 资源 (4)
- 收藏
- 关注
转载 ToLua热更新之LuaFramework框架之示例程序(10)
现在,大家对LuaFramework有个全方位的理解了吧!接下来通过一个例子总结ulua,作为“lua逻辑”的延伸,说明lua的写法。这个例子中玩家能够控制2D游戏角色走动,并且发射炮弹。1、目标制作如图所示的游戏,玩家可以通过键盘控制角色上下左右移动,角色有4个面向,走动过程中会播放行走动画。当玩家点击鼠标左键,角色会发射一颗炮弹。2、游戏资源使用下图所示的图片作为游戏角色(...
2018-09-17 00:03:05
406
转载 ToLua热更新之LuaFramework框架之线程管理器(9)
LuaFramework内置了线程管理器ThreadManager,一开始我以为这是个创建线程、终止线程等方法的封装。然而不是,它是热更新时使用线程下载资源的具体实现。那让我们来看看线程管理器的工作原理吧。1、GameManager的调用那么先看看在热更新过程中哪些地方调用到ThreadManager。热更新由GameManager执行(相关代码如下图所示),它在对比本地文件和网络资源的差...
2018-09-17 00:01:51
264
转载 ToLua热更新之LuaFramework框架之声音管理器(8)
LuaFramework内置的管理器包括GameManager(处理热更新)、luaManager(lua脚本管理器)、PanelManager(界面管理器)、NetworkManager(网络管理器)、ResourceManager(资源管理器)、TimerManager(时间管理器)、线程管理器(ThreadManager)和SoundManager(声音管理器)。其中GameManager、...
2018-09-17 00:00:45
315
转载 ToLua热更新之LuaFramework框架之PureMVC(7)
LuaFramework使用了PureMVC框架。百度百科上说:“PureMVC是在基于模型、视图和控制器MVC模式建立的一个轻量级的应用框架”。PureMVC框架可以做到较好的解耦,减少游戏代码的相互调用。然而LuaFramework整合PureMVC属于“杀鸡用牛刀”,实质上只用到了事件分发(也可能是我理解得不够透彻)。如果单纯写一套事件分发系统,可能不到100行代码就能完成。1、解耦的好...
2018-09-16 23:59:56
561
转载 ToLua热更新之LuaFramework框架之网络(6)
如今大部分的游戏都是网络游戏,网络游戏便涉及到网络连接发起、网络数据接收等内容。LuaFramework内置了网络模块(NetworkManager、SocketClient、ByteBuffer、Converter、Protocal),本篇将会介绍该模块的调用方法以及其原理。1、发起连接发起连接是客户端网络通信的第一步,LuaFramewor中,只需通过LuaFramework.AppC...
2018-09-16 23:59:06
468
转载 ToLua热更新之LuaFramework框架之UI(5)
界面系统在游戏中占据重要地位。游戏界面是否友好,很大程度上决定了玩家的体验;界面开发是否便利,也影响着游戏的开发进度。Unity3D 的UGUI系统,使用户可以“可视化地”开发界面,那么怎样用Lua去调用UGUI呢?1、显示UI界面下面演示如何显示一个UI界面。由于UI界面也是一种资源,使用第二篇“资源热更新”的方法即可。这个例子中,制作一个含有按钮的界面,然后组成名为Panel1的UI预...
2018-09-16 23:57:58
990
转载 ToLua热更新之LuaFramework框架之Lua组件(4)
1、设计思想在需要添加Lua组件的游戏物体上添加一个LuaComponent组件,LuaComponent引用一个lua表,这个lua表包含lua组件的各种属性以及Awake、Start等函数,由LuaComponent适时调用Lua表所包含的函数。下面列举lua组件的文件格式,它包含一个表(如Component),这个表包含property1 、property2 等属性,包含Awake...
2018-09-16 23:57:02
557
转载 ToLua热更新之LuaFramework框架之编写Lua逻辑(3)
1、Lua的Update方法第一篇“代码热更新”演示了用lua打印HelloWorld的方法,第二篇“资源热更新”演示了加载坦克模型的方法。这一篇要把两者结合起来,用lua实现“用键盘控制坦克移动”的功能。用Lua和用c#编写的Unity3D程序大同小异,只需正确使用API即可,Lua语言的知识请参见《programing in lua》这本书。 1)Update方法出于效率的考虑...
2018-09-16 23:55:01
609
转载 ToLua热更新之LuaFramework框架之资源热更新(2)
1、创建物体为了调试的方便,笔者先将框架配置为本地模式,待测试热更新时再改成更新模式。图:配置为本地模式 先测试个简单的创建物体,新建一个名为go的物体,然后设置它的坐标为(1,1,1)。这段代码虽然不涉及资源加载,但能展示“把物体添加到场景中”的过程。Main.lua的代码如下:function Main() local go = UnityEngine....
2018-09-16 23:54:05
1124
转载 ToLua热更新之LuaFramework框架之代码热更新(1)
1、安装框架只要在ulua.org/index.html下载LuaFramework,然后用Unity3D打开,这里用的是LuaFramework_UGUI-1.0.4.109版本以及Unity3D 5.2,其他版本理应相似。打开之后需要点击lua菜单里面的Generate All和LuaFramework菜单里Build XXX Resources,以生成一些必要的文件。安装过程可以参见...
2018-09-16 23:52:17
610
原创 Unity3D 资源热更新之AssetBundle(Unity5.x)基础用法
笔者用的版本是Unity3D 5.5.1 1.新建Unity3D项目,接着 File -> New Scene 命名 abTest。2.创建AssetBundles文件夹(放打包资源)、Editor文件夹(放编辑器脚本)、创建Resource文件夹(放预设资源)Unity3D特殊文件夹参考(http://www.xuanyusong.com/archives/3229)3.在层
2017-03-02 20:59:29
3782
转载 Unity之基础知识-Mathf函数【C#】
http://www.manew.com/blog-76890-3801.html数学运算在编程中挺重要的,所以看到了就顺便摘录下来,方便以后用。1.Mathf.Abs绝对值计算并返回指定参数 f 绝对值。2Mathf.Acos反余弦static function Acos (f : float) : float以弧度为单位计算并返回参数 f 中
2017-02-17 00:13:03
579
转载 Unity之 - 资源管理
一、资源管理原理:制作:1.创建AssetBundle,用BuildAssetBundleExplicitAssetsName(可以根据Asset名称来加载资源,优先),BuildAssetBundle,BuildStreamScenexxx.记得需要指明Assets资源名称,地址,创建所在的平台。2.创建资源依赖关系,可以用Push/Pop AssetDependencies来减
2016-03-17 23:46:29
1199
原创 Unity之 - 导航网格寻路
地板、箱子、斜坡等行走路面设置,设置完点Bake。 挂上NavMeshAgent 和 脚本SmartPlayer 物体行至鼠标所点位置using UnityEngine;using System.Collections;public class SmartPlayer : Mono
2016-03-17 00:06:11
1688
转载 Unity3D架构系列之- FSM有限状态机设计六(总结)
原文:http://www.manew.com/thread-37964-1-1.html 由于最近一直赶项目进度,没时间写,昨晚终于项目终于完成了,空闲下来,做一个总结。在这一篇中主要是把前五章一起总结一下,以及通过举例演示如何使用?有限状态机在游戏中使用的地方非常多,比如我们界面之间的切换,角色的状态切换等等。所以非常值得大家去学习一下,接下来我们主要实现的
2015-09-01 15:10:24
1307
转载 Unity3D架构系列之- FSM有限状态机设计五
原文:http://www.manew.com/thread-37894-1-1.html在设计五中,我们把事件系统EventSystem实现一下。这个EventSystem类主要实现的是事件的注册,触发,以及分发Event消息的作用。提供接口对外使用的。在这里面为了功能扩展方便用了好多模板函数,方便大家调用。 分发消息的时候,我们采用的是队列的方式,就
2015-09-01 15:06:25
512
转载 Unity3D架构系列之- FSM有限状态机设计四
原文:http://www.manew.com/thread-37511-1-1.html 接下来,我们继续我们的FSM有限状态机的设计,在设计三中我们实现了FSState这个类,我们继续实现FSEvent事件处理类。在FSEvent类里面我们声明了FiniteStateMachine里面定义的委托函数。代码如下:protected FiniteStateMachine.Ent
2015-09-01 15:02:55
701
转载 Unity3D架构系列之- FSM有限状态机设计三
原文:http://www.manew.com/thread-37318-1-1.html在设计二中,我们实现了有限状态机管理类,接下来,我们实现FSState这个类,这里类主要是状态的基本操作以及事件触发。在这里我们定义了在FiniteStateMachine类里声明的三个委托。在FSState里面使用的代码如下:protected FiniteStateMachine.En
2015-09-01 14:59:30
702
转载 Unity3D架构系列之- FSM有限状态机设计二
原文:http://www.manew.com/thread-37244-1-1.html在设计一中,我们把IState类设计了一下,接下来,我们写一下FiniteStateMachine这个类,这个类主要的作用就是对于外界调用,这个类是独立封装的,不继承Mono。这个类的功能是提供一个栈,用于存放FSState,还有通过Update进行状态的切换,以及对栈的管理,Pop和Pu
2015-09-01 14:57:29
877
转载 Unity3D架构系列之- FSM有限状态机设计一
原文:http://www.manew.com/thread-37136-1-1.html我们在游戏开发中经常面临架构设计问题,在蛮牛问答里面也有好多朋友问关于架构方面的问题,在这里我就将一些经常使用的游戏开发方面的知识跟大家介绍 一下, 一是给大家提供一个设计思路,在此基础上可以举一反三,二是大家可以通过这个平台共同学习。闲话不多说了,切入正题,FSM有限状态机,在游戏开
2015-09-01 14:50:17
1182
转载 C#网络编程(接收文件) - Part.5
源地址:http://www.tracefact.net/CSharp-Programming/Network-Programming-Part5.aspx这篇文章将完成Part.4中剩余的部分,它们本来是一篇完整的文章,但是因为上一篇比较长,合并起来页数太多,浏览起来可能会比较不方便,我就将它拆为两篇了,本文便是它的后半部分。我们继续进行上一篇没有完成的步骤:客户端接收来自服
2015-08-12 08:48:57
317
转载 C#网络编程(订立协议和发送文件) - Part.4
源地址:http://www.tracefact.net/CSharp-Programming/Network-Programming-Part4.aspx文件传输前面两篇文章所使用的范例都是传输字符串,有的时候我们可能会想在服务端和客户端之间传递文件。比如,考虑这样一种情况,假如客户端显示了一个菜单,当我们输入S1、S2或S3(S为Send缩写)时,分别向服务端发
2015-08-12 08:47:24
285
转载 C#网络编程(异步传输字符串) - Part.3
源地址:http://www.tracefact.net/CSharp-Programming/Network-Programming-Part3.aspx这篇文章我们将前进一大步,使用异步的方式来对服务端编程,以使它成为一个真正意义上的服务器:可以为多个客户端的多次请求服务。但是开始之前,我们需要解决上一节中遗留的一个问题。消息发送时的问题这个问题就是:客户端
2015-08-12 08:46:21
289
转载 C#网络编程(同步传输字符串) - part.2
源地址:http://www.tracefact.net/CSharp-Programming/Network-Programming-Part2.aspx服务端客户端通信在与服务端的连接建立以后,我们就可以通过此连接来发送和接收数据。端口与端口之间以流(Stream)的形式传输数据,因为几乎任何对象都可以保存到流中,所以实际上可以在客户端与服务端之间传输任何类型的
2015-08-12 08:42:00
411
转载 C#网络编程(基本概念和操作) - part.1
源地址:http://www.tracefact.net/CSharp-Programming/Network-Programming-Part1.aspx引言C#网络编程系列文章计划简单地讲述网络编程方面的基础知识,由于本人在这方面功力有限,所以只能提供一些初步的入门知识,希望能对刚开始学习的朋友提供一些帮助。如果想要更加深入的内容,可以参考相关书籍。本文是该系列第一篇,
2015-08-12 08:38:45
465
转载 Unity中创建二维码
再来一篇,希望对人有帮助。源地址:http://www.cnblogs.com/jenke/p/4718104.htmlusing UnityEngine;using ZXing;using ZXing.QrCode; 1 private static Color32[] Encode(string textForEncoding, int width, int hei
2015-08-10 20:55:32
373
转载 Unity中游戏的声音管理
从来没写过博客,作为一名菜鸟也不知道写些什么。特地偷同事点料/源地址:http://www.cnblogs.com/jenke/p/4608422.htmlusing UnityEngine;using System.Collections;using System.Collections.Generic;/// /// 用来管理音频的各种播放方式/// ----
2015-08-10 20:53:21
3786
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人