随笔分类 -  Torque2D 2.0 学习笔记

1 2 下一页
Torque2D MIT 学习笔记(27) ---- ImageFont的使用以及字体ImageAsset的工具生成
摘要:前言 ImageFont继承于SceneObject,是一个场景对象,支持例如旋转,缩放,移动加速度以及物理碰撞等一切Torque中场景对象的一切功能. ImageFont只支持ASCII编码表中的32-127这么96个字符,字符的表现是通过一个ImageAsset文件配合一个对应的PNG图片来... 阅读全文
posted @ 2013-07-19 19:52 Kevin Game 阅读(1271) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(26) ---- 关于SimSet的一些注意事项
摘要:前言 SimSet在TorqueScript中可以说是最重要,也是用的最多,使用方法简单,但是有些地方需要注意,毕竟脚本调试不是那么容易.如何组建脚本对象 在TorqueScript中,可以像C++中一样,定义类,有自己的变量(DynamicField),方法(Method),只要不是帧更新的对象,比如管理器,封装体等等都推荐使用脚本类来完全实现,而不是修改C++代码. 脚本类非常灵活,它是作为一个独立的方法集合嵌入到某个控制台对象的,比如SceneObject,Sprite,SimObject,SimSet都可以,视情况而定.比如: 1: 要实现一个独立的管理器或者服务类 有两... 阅读全文
posted @ 2013-04-10 21:26 Kevin Game 阅读(949) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(25) ---- 记录
摘要:// 卡片排序(冒泡算法)function SortCards( %cards ){ %changed = true; while( %changed ) { %changed = false; for( %index = 0; %index < getWordCount( %cards ) - 1; %index++ ) { %card = getWord( %cards, %index ); %cardNext = getWord( %cards, %index + 1 ); ... 阅读全文
posted @ 2013-04-06 10:25 Kevin Game 阅读(172) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(24) ---- NetWork系统机制(1)
摘要:前言 Torque2.0用的是UDP连接方式,UDP和TCP的长短这里不做品论,这里只就事论事,全面分析Torque当前的网络模式. 从代码说明,超详细网络模块注释,方便大家一起学习,今天先放出WinNet的实现代码,后期再说明上层的NetConnect以及NetObject,NetEvent的实现细节和相互关系.代码 #include "platformWin32/platformWin32.h"#include "platform/platform.h"#include "platform/event.h"#include < 阅读全文
posted @ 2013-03-31 23:34 Kevin Game 阅读(551) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(23) ---- 编写自己的多语言文本库
摘要:前言 Torque2D对于汉字的支持可以说目前很差,虽然支持Freetype,但是内部的字符串编码是UTF系列,基本没有Ascii,Unicode这种Win32常用的编码格式. 如果你想让你的程序支持汉字输入,那就要改不少东西,但是如果是显示,那就另当别论了,你可以使用它们提供的LangTable来实现(本人看的吃力,貌似不支持关键字查找,只能索引序列,而且不是按行读取的,不知道它是怎么操作的,难道有什么工具先编译,反正Torque3D有个编译的函数,2D里没有.) 作者们最近忙文件格式和Leap,问了好多次什么时候修好多语言输出输入,都没有给出具体的日程安排.所以还是自己动手,毕竟是M... 阅读全文
posted @ 2013-03-28 22:37 Kevin Game 阅读(957) 评论(0) 推荐(1)
Torque2D MIT 学习笔记(22) ---- 自己编译查询手册
摘要:前言 学习一种新的开发工具时,随之而来的是一套新的API,越是庞大,完善的工具库API越多,一份完整,实时更新的开发手册非常重要. Torque2D不仅仅是套完善的库,还有自己专属的脚本语言TorqueScript,而且每天都在更新,如果没有一本好的手册,那么对于初学者将是很大的阻碍. 好在设计者在这方面很重视,在接口设计的时候就已经考虑到了动态生成手册的问题,如果你有一个Torque的执行文件,那么你就可以随时导出他的帮助手册.问题 在tools\documentation\目录下面有生成帮助手册的批处理,手册有两种格式,一种网页版,一种CHM格式. 如果要生成CHM,需要在scr... 阅读全文
posted @ 2013-03-26 19:37 Kevin Game 阅读(973) 评论(1) 推荐(0)
Torque2D MIT 学习笔记(21) ---- 名称空间和脚本函数入口的用法
摘要:前言 如果你选择了Torque,那么TorqueScript对于你来说就变得非常重要,因为为了直接跨平台和与最新版本同步,你就要尽量少的修改源代码,多多的用脚本开发. 使用脚本,不是光有一些变量支持,语法支持就行的,它最重要的作用是与引擎通信,通过接口调用和事件的捕获来完成各种各样的任务,而对于接口调用这里不再多说,你只要搜索工程(Console*****)就会看到. 我在这里分享一下脚本中对象方法的创建,引擎事件的捕获以及内部原理.举例 举个例子先:function Test(){ %set = new SimSet() { class="SetClass"; }; Ga 阅读全文
posted @ 2013-03-23 13:12 Kevin Game 阅读(977) 评论(0) 推荐(1)
Torque2D MIT 学习笔记(20) ---- 一个界面编写和事件响应的例子
摘要:前言 好几天没写,刚到新公司要好好工作,尽快熟悉环境和项目.这里补一个Torque例子中没有说到的,那就是具体的界面自创建(当然SandBox里面有,但是不是那么明显,因为载体窗口是从gui.taml中加载的). 现在给一份我做塔防时,需要的一个箭塔操作面板,目前有两种功能,升级和变卖.代码如下:代码片段 // -------------------------------------------------------// 文件名: TowerOperatePanel.cs// 描 述: 塔楼操作面板界面// 日 期: 17/3/2013// 作 者: KevinYuen// 版... 阅读全文
posted @ 2013-03-23 10:29 Kevin Game 阅读(1037) 评论(1) 推荐(1)
Torque2D MIT 学习笔记(19) ---- 关于几个缺陷
摘要:Torque2D 2.0的框架设计和接口友好度还是很不错的,但是有几个缺陷,因为时间关系是从老版本上搬过来的,比如IO,GUI等等. IO系统: 比如对国际化的支持,代码中虽然有IME的处理,而且内部是UTF8格式,但是输入和显示完全是两码事,对不上,作者说后期会改,目前需要等等,当然你自己改也可以. GUI系统: 目前GUI系统用法比较复杂,再加上没有可视化编辑器,很折磨人,不过作者说后期会有大改动,建议大家一起来做GUI系统,毕竟是开源了,不能全靠作者了,而且建议大家的GUi能基于Sprite. 目前论坛上已经在讨论新编辑器的构架和外壳的事情了,相信永不了多久就会有结果,在学习To... 阅读全文
posted @ 2013-03-21 19:37 Kevin Game 阅读(249) 评论(0) 推荐(0)
Torque2D MIT 实战记录: 塔防进度(3)
摘要:增加了场景切换和关卡选择 阅读全文
posted @ 2013-03-19 13:19 Kevin Game 阅读(366) 评论(0) 推荐(0)
Torque2D MIT 实战记录: 塔防进度(2)
摘要:做个记录,完成打击系统和升级界面. 阅读全文
posted @ 2013-03-17 16:51 Kevin Game 阅读(235) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(18) ---- 关于对象复制
摘要:Torque对对象的复制提供了一个方法,叫做clone.ConsoleMethod(SimObject, clone, S32, 2, 3, "([bool copyDynamicFields? = false]) - Clones the object.\n" "@param copyDynamicFields Whether the dynamic fields should be copied to the cloned object or not. Optional: Defaul... 阅读全文
posted @ 2013-03-16 20:08 Kevin Game 阅读(935) 评论(0) 推荐(0)
Torque2D MIT 实战记录: 塔防进度(1)
摘要:前言 Torque2D虽然工具不齐全,而且加入MIT不久,但是有老底在,所以即使是第一版也是非常好用和完善的,这几天准备开发一款塔防类的游戏. :) 熟悉了TorqueScript的用法后,写东西还是很快的.进度 1. 完成了道具库模块 2. 场景系统 3. 阵营逻辑 4. 攻击系统雏形截图 效果还不错吧 :)设计要点 1. Toque引擎主要是使用TorqueScript开发,所以在代码编写和结构上需要很留心,毕竟纯脚本开发对于数据的管理和访问是很麻烦的,特别是用惯了std, boost的人来说 :) 2. 善于解耦,独立化Module可以加快开发速度,对于后期有很大的好处... 阅读全文
posted @ 2013-03-16 11:41 Kevin Game 阅读(1315) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(17) ---- 如何遍历与查询资源
摘要:问题 如何对资产进行模糊查询和精确查询.精确查询 %assetId = "ToyAssets:Crosshair2"; // Acquire the asset object itself. %asset = AssetDatabase.acquireAsset( %assetId ); // Do some work with it. echo( %asset.ImageFile ); // Release the asset. Must do this! ... 阅读全文
posted @ 2013-03-14 23:29 Kevin Game 阅读(416) 评论(0) 推荐(0)
Torque2D MIT 代码阅读(1) IME的一个BUG?
摘要:看代码发现一个BUG,记录一下,并告知作者 :) 为Torque做点贡献目前的版本,对于IME的支持显然没有进行过测试,是直接搬代码过来的,这也能理解,人家都不用这玩意,各种开源的好东西多了去了,而国内要想用,大家都知道,第一件事不是考虑如何Hello World,而是是不是支持中文输出/输入,悲剧啊!Torque2D MIT作为成熟引擎 Torque2D和iTorque2D的结合,IME相关代码在发布的时候就支持,但是看情况是没有进行过测试的.具体情况如下:// IME输入处理函数 static void processCharMessage( WPARAM wParam, LPARA... 阅读全文
posted @ 2013-03-09 21:55 Kevin Game 阅读(414) 评论(0) 推荐(0)
GarageGames动作真快,几天没消息引擎已经支持安卓了!
摘要:效果还不错,不过貌似在筹款,代码没放出来,我们关注吧 :)WHAT IS TORQUE 2D?Torque 2D is an engine developed by GarageGames as their flagship 2d engine. It currently works on Windows, Mac OS X, and iOS. GarageGames recently released the Torque 2D engine source code under the MIT license and Max Gaming thought it was a great tim 阅读全文
posted @ 2013-03-08 16:52 Kevin Game 阅读(493) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(16) ---- 物理系统(2)
摘要:世界空间与本地空间 世界空间坐标系用于场景对象的组织,但是对象本质上还是存在于自身的本地坐标系中,Torque的本地坐标系原点为对象的中心位置. 另外两种坐标系的XY轴不是重合的,本地坐标系的轴与其当前旋转角度有关. 引擎提供了相关的坐标系转换方法,如下: getLocalPoint( worldPoint )getWorldPoint( localPoint )getLocalVector( worldVector )getWorldVector( localVector )质心 当你为一个场景对象设置碰撞形状的时候,引擎同时会根据它的密度计算出质量.但是可能由于对象的形状不对称,... 阅读全文
posted @ 2013-03-07 11:42 Kevin Game 阅读(436) 评论(0) 推荐(0)
Torque2D MIT 学习笔记(15) ---- 物理系统(1)
摘要:前言 Torque2D的物理系统建立是以Box2D作为基础,Box2D是一个纯粹的面向2D刚体的物理仿真引擎,详细的说明这里跳过,有兴趣的朋友可以参考Box2D的使用手册,地址: http://wenku.baidu.com/view/dee1281c650e52ea551898a1.html### TorqueScript导出了Box2D大部分的物理特性,所以结合Box2D的手册来学习是一种有效的选择.世界单位 和其他的引擎一样,Torque2D使用浮点型的逻辑数值作为世界单位.像Box2D一样,在引擎中,世界单位是米,也就是说一个单位仿真现实中的一米.参照Box2D的原文: "B 阅读全文
posted @ 2013-03-07 09:52 Kevin Game 阅读(1550) 评论(0) 推荐(0)
Torque2D MIT 脚本阅读(4) ChainToy
摘要:创建几条带链球的锁链,并模拟之间的物理碰撞.代码片段 创建一条锁链需要分四步: 1. 创建一个静态对象作为整条链子的锚点,这个对象是固定不动的 // 创建一个精灵%fixedObject = new Sprite();// 设置为静态固定类型%fixedObject.BodyType = static;// 图像资源%fixedObject.Image = "ToyAssets:chain";// 位置设定%fixedObject.setPosition( %posX, %posY );// 尺寸%fixedObject.setSize( %linkWidth, %link 阅读全文
posted @ 2013-03-06 10:36 Kevin Game 阅读(272) 评论(1) 推荐(0)
Torque2D MIT 脚本阅读(3) CollisionToy
摘要:物理碰撞演示,主要演示了两种物体类型之间的碰撞交互,关键技术有碰撞体定义和碰撞回调.代码片段 碰撞边界划定:function CollisionToy::createBackground( %this ){ // 精灵创建 %object = new Sprite(); // 静态物体 %object.BodyType = static; // 位置 %object.Position = "0 0"; // 尺寸 %object.Size = "100 75"; // 设置背景层,最远,最先绘制 %ob... 阅读全文
posted @ 2013-03-05 20:00 Kevin Game 阅读(828) 评论(1) 推荐(1)

1 2 下一页