您的位置:首页 > 移动开发 > Unity3D

IOS高级界面发送消息与Unity3D消息的接收

2013-10-08 10:49 267 查看
原文来自:http://www.xuanyusong.com/archives/517

本例实现游戏背景是Unity3D 的游戏世界,前面添加IOS的高级界面的按钮,并且点击这些按钮可以将消息传递给背景的Unity3D ,让它做一些事情。

打开Unity3D导出的AppController.mm这个类,头文件处先导入我们的这个类 #import “MyView”找到下面这个方法,来添加view

int OpenEAGL_UnityCallback(UIWindow** window, int* screenWidth, int* screenHeight, int* openglesVersion)

在return之前加入

MyView * myView = [[MyView
alloc] init];
[UnityGetGLViewController().view
addSubview:myView.view];

如果发现显示的是白色,把view的背景色设置为透明。

[self.view
setBackgroundColor:[UIColor
clearColor]];

然后再在MyView中编辑按钮。
按钮的响应事件方法

-(void)LeftButtonPressed{
UnitySendMessage("Cube","GRight","");
}

这里主要说一下下面这个方法,它是Unity底层帮我们写好的一个方法,意思iPhone向向Unity发送消息,

参数1:场景中的模型名称,Cube就是我们定义的一个箱子。

参数2:脚本方法名称MoveLeft就是上面脚本中的方法,

参数3:为一个char *类型的 可以向Unity中传递数据。

UnitySendMessage(“Cube”,”MoveLeft”,”");

我们可以向Unity3D中任意模型发送消息调用它绑定的脚本中的方法,当前前提是模型名称、方法名称、 参数都填写正确。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: