iOS菜鸟联盟程序员Unity跨平台技术分享

iOS与Unity 3D的交互

2016-12-17  本文已影响174人  走向菜鸟的菜鸟

前言: 新手接触,大神勿喷,希望多多指教.
iOS与Unity 3D的交互有两种方式:
第一种:iOS调用Unity 3D提供的方法UnitySendMessage.第一个参数是 unity脚本挂载的gameobject 第二个参数是 unity提供的方法名 第三个参数是参数

UnitySendMessage(<#const char *obj#>, <#const char *method#>, <#const char *msg#>)

第二种:Unity 3D调用iOS的方法.此时需将OC配置成C作为中间桥梁(此代码写可在.m的最下部@end之后)

@interface SpeechRecognizer () 
{
    IFlySpeechRecognizer *_iflySpeechRecognizer;
}

@end

@implementation SpeechRecognizer
// 方法内写unity调用的时候应该走的代码
- (void)initalVoice {
    _iflySpeechRecognizer = [[IFlySpeechRecognizer alloc] init];
    
}
@end

SpeechRecognizer *speech = NULL;
#if defined (__cplusplus)
extern "C"
{
#endif
    // 初始化 InitalSpeechRecognition为提供给Unity调用的方法名
    // initalVoice为自己定的需要unity去调用的方法
    void InitalSpeechRecognition() {
        if (speech == NULL) {
            speech = [[SpeechRecognizer alloc] init];
        }
        [speech initalVoice];
    }
#if defined (__cplusplus)
}
#endif
上一篇下一篇

猜你喜欢

热点阅读