查看: 2846|回复: 6
打印 上一主题 下一主题

【转载】Js To C# 和 Easytouch 插件笔记

[复制链接]

955

主题

164

听众

7万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
59338
精华
28

活跃会员 荣誉管理 突出贡献 优秀版主 论坛元老

跳转到指定楼层
楼主
发表于 2012-10-26 11:52:24 |只看该作者 |倒序浏览
Mr.野猪 2012/10/25 凌晨1点



野猪已经好久没有写东西与大家分享了。最近遇到了些事情,曾一度的让野猪先生失去信心分享他的学习过程与学习的经验分享。在这里,野猪只想说一句,我们要对那些帮助我们的人给予感激感恩之心,不对他感激也就罢了,就不要在背后说人家的坏话了。毕竟他曾是你学习道路上的朋友。嘿嘿。小小的唠叨下,知情的朋友都替野猪感觉到不公平撒!罢了。继续野猪先生的分享之路吧,将知识分享到底。最近朋友分享给我了很多插件,感觉很有用,在工作之余就进行了测试和动手做下小笔记吧!



在本教程中呢,野猪先生不会在为大家截图来讲解插件的具体使用了,但是不会改变野猪先生一贯的作风,野猪还是会给大家尽量的讲解他自己对这些插件的使用的心得和一些经验分享。

首先呢,我们先讲解一下JS To C#这个插件,你可以去商店里购买。这个对于那些熟悉c#语法,但是对js不太熟悉的朋友,或者是习惯了使用C#编码的人,但是其他插件里面使用的是js编写的,或者是别人分享的一个不错的脚本,你想用到自己的项目中,但是你使用的是c#,这个时候你想把JS的改成C#的脚本。他就排上用场了。当然你也可以手动的敲写成c#的,但是一般来说会浪费很多时间。利用这个工具我们就可以快速的转换JS的脚本成为C#的脚本。当然查看这个转换插件你也可以知道,作者说他并不确保每次的转换都是有效的。也就是说,会有些地方需要你手动进行修改。目前我测试的版本,他的转换方法都是转换为void类型的。但是脚本中可能有的带有返回值,这个时候,你需要手动的进行修改为你需要的。还有地方需要注意的就是你需要手动给方法名加上public。因为他的转换默认是不带有这个访问修饰符的。那就意味着类里面的方法就是私有的了。这个是C#语法的限制了。稍微提示下,C#语法中不手动写上public或者其他访问修饰符,默认情况下是private。所以找个地方会让很多不熟悉c#语法的朋友陷入一个小困境。下面,我们继续讲解如何使用找个插件。方法其实很简单。大体如下:



1.    新建一个空的project,导入我们使用的这个插件JS To C#。在项目可以看到如图的内容:







然后选择我们需要转换的脚本文件,单击菜单中的Tools-下面的转换js到c#代码。这样转换就已经完成。我们需要做的就是删掉原有的js脚本。这样是因为项目中不能有重名的脚本文件。

2.在完成1之后,打开脚本可能会发现很多错误。这个时候,我们需要做的就是把这些错误,在编辑器中给修改掉。在u3d的输出面板中不再有红色的错误提示的时候。项目已经转换并修改成功了!window下的朋友,建议使用微软的vs作为u3d的编辑器,因为他有很多不错的优点例如他优秀的智能提示,C#语法的智能验证等等,但是在u3d的使用中需要注意的一些地方可以查看u3d的官方文档说明,或者是看圣典上由野猪先生翻译的用户手册部分的Visual Studio C#继承。地址:http://game.ceeger.com/Manual/VisualStudioIntegration.html。



看完上面的这些你可以具体的转换个脚本看看效果了!

下面野猪先生要讲解的就是easytouch这个插件了。这个插件的优点很多,他可以使用户很快的上手去处理ios,android,ipad等设备上的手指滑动,单击,双击等的操作。这个插件里面的很多操作都是可以扩展的。具体的要看自己的需要进行修改了。由于野猪先生一直都是在使用C#,所以看到这个插件之后有点不爽,没有找到c#版的。只好自己手动的敲写了一遍,主要是因为野猪先生要熟悉他里面的一些机制和一些对手势的判断方法等等吧!用了一上午的时间弄完了这个插件的c#版本,运行之后发现,效果没有出来,后来才发现,是在脚本的某个角落里,野猪写错了一行参数的单词拼写。有点无语。呵呵。但是还好解决了!



下面给大家一个快速的方法去把js版本的插件脚本,修改成为C#版本的。

利用前面野猪先生提到的JS To C#插件,选择easytouch里面的脚本转换为C#,方法参考上文。转换之后,野猪发现很多错误啊。不过这些错误修改起来就很快解决的。因为咱们有用一个不错的编辑器微软的vs studio。利用u3d输出面板提示的错误结合vs,三下五除二很快的就解决掉了转换后的哪些错误。但是野猪有点喜欢整洁美感。利用vs的缩进功能进行脚本的排版,ok!下面没有错误了,开始我们的动手学习之旅吧。



在easytouch插件1.0中,只有核心的4个脚本文件,一个是处理所有处理信息的脚本叫做easytouch,这个脚本要给主摄像机,或者是场景中一个空的物体上。另一个是EasyTouchInput可以使我们这些穷b的人使用鼠标按钮和键盘的ctrl,alt键的组合来模拟手指滑动,触摸单击,双击,长按等的操作。这个很给力。接着就是EasyTouchTemplate脚本,这个里面给我们提供了很多参考的事件方法模板。我们在项目需要参考使用的模板。最后一个就是EsayTouchS***ct,里面枚举了,我们经常使用的手势。根据这些手势,我们进行相应的操作。



基本上这个easytouch 1.0核心的脚本就是这几个。他是基于sendmessge()方法进行对象之间消息传递的。这个算是他的通讯机制啦!

下面简单的提下,如何使用他的例子。这个也是野猪先生经常使用的方式。

首先,查看例子的效果。对这个插件可以提供的功能可以实现的效果。

接着,看看各个部分的大体关系。



再就是删除例子中的脚本,自己动手来搞一遍。嘿嘿,差不多ok!

先上手了,再去花些时间研究他,深深的爱上他,成为自己的一部分。是专属你个人的。



本教程,只是野猪先生的一点理解。如有任何疑问,可以和野猪先生一块交流,共同进步。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏1 支持支持0 反对反对0
回复

使用道具 举报

955

主题

164

听众

7万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
59338
精华
28

活跃会员 荣誉管理 突出贡献 优秀版主 论坛元老

沙发
发表于 2012-10-26 16:10:57 |只看该作者
感谢野猪先生的无私分享!
回复

使用道具 举报

0

主题

0

听众

18

积分

设计初学者

Rank: 1

纳金币
4
精华
0
板凳
发表于 2012-10-28 11:21:05 |只看该作者
顶起!!
回复

使用道具 举报

2317

主题

54

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
20645
精华
62

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

地板
发表于 2012-10-28 19:48:00 |只看该作者
呵呵,野猪的文章很有感触啊
回复

使用道具 举报

2508

主题

2

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
32806
精华
12

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2012-11-21 10:46:06 |只看该作者
很喜欢野猪发表的文章,都是很有用的哦~
回复

使用道具 举报

Zack    

459

主题

1

听众

5478

积分

高级设计师

Rank: 6Rank: 6

纳金币
5531
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

6#
发表于 2012-11-21 19:26:42 |只看该作者
学习了,谢谢!
回复

使用道具 举报

may    

8830

主题

81

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
52344
精华
343

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

7#
发表于 2012-11-22 01:06:24 |只看该作者
这个好,学习学习!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-7-20 14:09 , Processed in 0.201557 second(s), 33 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部