UnityのC#でプラグインコードを探しつつ。。

Unityのエディターをついて、内容を展開して簡易説明しながらボツボツ書いて行きましょうか。。

1.「create」ー「Create Empty」から オブジェクトで作成した「InitStage」を設定する

Unityのエディターの概略図を見ました。ヘタですなぁ。すいません。 _(__)_

 

 

 

 

 

 

 

 

 

 

 

 

2. オブジェクトで作成した「InitStage」を繋がり、「InitStage」からスクリプトのCtrlUnityView.csを設定する
(「Assets」「Resources」ー「Scripts」から PouMenuで「Create」ー「C# Script」で作成すると、新Classのテンプレートが出て行きます。)

 

3.  CtrlPlugins.csに、プラグインの初期化を設定する

 

4.  Objective-C++C#のコードがラッパされて行き、Swiftコードは鈍行電車は繋がれて行きのです。。
   CtrlPlugin.cs ➡️➡️ PluginConnector.mm ➡️➡️ Example.swift
で、PluginConnector.mmの先頭コードに
    #import “unityswift-Swift.h” // Required
が入ってあきます。 〜ー これが、PluginConnector.mmで、XCodeでコンパイル&ビルドすると、”unityswift-Swift.h” が引込み(のかな?)、最後は、XcodeにSwiftに行くたのでしたが、”unityswift-Swift.h”はソースコードとして見えないのでした。。

 

5.  プラグインでSwiftコードを追う時は、NSObject が大事なことです。。

NSObjectの基底Classの最初のMyClassが必要です。ここでイベント関数を作りました。そこにunityから設置し

UnityGetGLViewController() ;

を親元のUnityのViewControllerの取得に必要になります。

そこに、UnityのViewControllerからUINavigationControllerを一巻きした後、UINavigationControllerに、もう一枚の一巻きしたユーザー向けのViewController(→RundaLttyRsltViewController())が設置しました。

で、RundaLttyRsltViewController()に、TableViewやButtonなど貼り付けって、それなりの格好になりました。(^^)

最後に、
//抽選結果View(TableView)をModalViewで表示する
// 画面遷移.
unityViewController?.present(nav, animated: true, completion: nil)
と、設定でした。

 

 

 

 

 

 

 

 

 

ここまでで、Unityから鈍行電車からのXcode(Swift)への片道が終わりました。ここから、Xcode(Swift)の始発が始まって、Unityの終着駅へと向きえのかなぁ。。