uLua学习之HelloWorld(一)

前言

好久都没有写过文章了,现在正好在看有关unity3d的热更新方案,在网上找了很久,发现了ulua这个插件,感觉还是不错的,反正自己是个初学者,多了解一些知识应该是没有什么问题的。说起ulua,就不能不提及lua这个大名鼎鼎的脚本语言,这是一个很小巧的语言,并没有提供大多繁杂的功能,因为它并不是一个独立的语言,但是它可以很方便的嵌入到其它的程序语言中,实现可配置性和可扩展性。由于lua的优良特性,很多游戏都用它来做脚本,十分方便和精巧。有关lua的详细情况,大家可以去网上了解,资料很多。

这么好的脚本语言,在unity3d中如何使用呢,这里就提到了我们要说的ulua,这是一个比较完善的插件,可以让我们在unity3d中很方便地使用lua,至于性能方面什么的,就不是我这样的初学所关心的事情了,先来一睹它的风采吧!

环境搭建

一、在这里下载这个插件(点我下载),然后导入到unity3d的工程目录中(注意不能有中文路径,否则会出错的),如下所示:

二、然后将ulua文件夹下的Plugins目录整体复制到Assets下,最后的目录结构如下所示。(此步完成后,建议关闭unity3d然后重新打开,否则可能会出现一个DLL无法找到的错误)

第一个程序

开始入门当然是我们的"HelloWorld "程序了,新建一个脚本,如下所示:

挂在场景上的任意物体上,运行就可以看到效果了。效果如下:

结束语

在unity3d这个领域中,我也才刚刚入门。我会把在学习过程中了解到的东西一点点发上来,虽然很浅陋,却也能让我自己多多思考。本人菜鸟一个,希望诸位大神发现错误或者不当之处,能够多多指出,让我能够受益。如果有什么建议,请访问我的个人网站:http://chunqiuyiyu.sinaapp.com/

时间: 2024-10-14 14:52:30

uLua学习之HelloWorld(一)的相关文章

storm记录--5-- Storm学习的HelloWorld

Storm学习的HelloWorld 1.下载Storm-start(https://github.com/nathanmarz/storm-starter/archive/master.zip) 2.进入下载目录,对zip文件解压 3.进入解压后的文件目录,修改m2-pom.xml(将twitter4j-core和twitter4j-stream替换为下面的部分) <dependency> <groupId>org.twitter4j</groupId> <ar

AspectJ基础学习之三HelloWorld(转载)

AspectJ基础学习之三HelloWorld(转载) 一.创建项目 我们将project命名为:aspectjDemo.然后我们新建2个package:com.aspectj.demo.aspect 和 com.aspectj.demo.test 前者用来方apsect.后者用来放测试类.如果你仔细的话,你会发现Aspectj的项目上面有个AJ的标志. 二.创建Aspect 首先我们创建HelloWorld.java.他包含main()方法,但是没有方法体,代码如下: [java] view

ulua学习资料及问题解决方案

ulua群里的一些资料,转过来方面查看 ulua学习顺序.请根据自身了解的知识入座. 初级:SimpleFramework框架 中级:ulua插件.cstolua 高级:底层库编译. 框架的角色定位分为2种, 第一种,对于有框架的大厂,它就是个使用ulua+cstolua的一个比较完整的demo. 第二种,对于没有框架的同学,可以自己基于它修改.扩展. wrap就是c#类提供给lua用的接口文件 attempt to index global 'System' (a nil) 刚下载后,需要做两

从零开始学习C#——HelloWorld(一)

从零开始学习C# 老规矩Hello World 您的第一个程序 visual studio 如何使用就不说了 //编程的开始,Hello World! program in C# using System; namespace HelloWorld { class Hello { static void Main() { System.Console.WriteLine("Hello World!");//编程人生就是从这里开始的 System.Console.ReadKey();//

uLua 学习笔记 之一 lua脚本 打包与读取

最近要学习热更新,搜了下,选择了ulua这个插件,本人也是新人.对这个插件也是一知半解,不过幸好加了专门讨论这一块的群,这个群的技术氛围还是很浓重的,特别是已经形成了一套自己的lua学习框架.最近周末就抽空研究了一下. 群号这里分享一下给大家 Unity3D&uLua技术交流群 341746602 开始这篇我希望你对热更新有一定了解,并且对ulua有初步的尝试. 一.打包 lua的后缀是不被支持打包进assertbundle的,所以我们一般把 .lua后缀 变为.lua.txt 或者 .lua.

OSGI学习(1) - HelloWorld

工作后第一个项目就用的OSGI.连Java都不怎么会,一下子就用OSGI,各种概念名词都不懂,而且没有时间去深入学习,只能在已经搭好的框架上写交易,写业务流程,数据库的增删改查,过了很久才慢慢理解. 这个系列的笔记主要以实例的方式介绍我们项目中用到的OSGI技术和原理,主要包括OSGI的HelloWorld,OSGI的服务封装与发布,OSGI与Spring的结合SpringDM,OSGI的类加载原理,OSGI的测试. OSGI HelloWorld (1) 打开Eclipse,新开一个Works

Emit学习(1) - HelloWorld

之前看过Dapper(使用到了Emit), CYQ.Data(另一种思路,没有使用Emit)类的框架之后, 也想自己做一个小框架玩一下, 不过此时能力太过欠缺, 做不了Cyq.Data或者PDF.Net此类的框架, 所以开始了学习之路. 先制定一个能达到的小目标吧, 从Emit开始. 一.使用场景 Emit的使用场景了,通常我们在下面几种情形时可以选择使用Emit来实现: 1.  运行中动态的创建类型.模块等,同时又需要提高效率(可以动态编译一次,然后就不用再处理了). 2 .延迟绑定对象的使用

[Unity热更新]ulua学习笔记01:一个小坑

看了一下以前写的文章,发现都好水啊..我也想写出能真正帮到别人的文章,但没办法啊,自己的脑子太笨了..希望可以通过不断学习,终有一天能写出点好文章! 最近在学习unity中的热更新,既然大神都说ulua效率最高(就现在来说),那就学习ulua吧!首先要下载的是ulua的包,现在的最新版本是1.08,而且根据官网上说的,网上流行的1.03/1.05含有大量的bug,所以我选择了最新的版本,谁知道就掉进了第一个坑! 因为是菜鸟,所以先复制一下网上的代码看看效果如何,结果碰到这样的错误: 搜索了这些错

uLua学习之调用Lua函数(五)

前言 在我开始这个系列的第一篇文章中,我就提到了Lua脚本用来实现宿主脚本的配置性和扩展性.上节说到的调用外部Lua脚本就对应了它的两大特性之一的配置性,那么另一大特性如何来体现呢?这就要说我们今天的话题了:Lua函数.uLua插件是用来解决unity3d热更新的方案,在我们需要对宿主程序做一些局部逻辑上的修改时,Lua函数就变得至关重要.那么如何在uLua中来调用Lua函数呢,现在就来看看吧!我们将通过两个例子来了解如何调用Lua函数. 第一个例子 首先,这个例子的函数是非常简单的,所以我们就