ITとライオンズと自転車と

野球は西武ライオンズ。ロードはビアンキ。元々プログラマー現PdM

UnityScript2CSharpでUnityScriptからC#へ変換

年末年始の休みを利用して会社にあったUnity5入門(通称ひよこ本)を完走。

 

Unity2017入門 最新開発環境による簡単3D&2Dゲーム制作 (Entertainment&IDEA)

Unity2017入門 最新開発環境による簡単3D&2Dゲーム制作 (Entertainment&IDEA)

 

 

 

Unity5版ではScript部分がUnityScript(JavaScript)になっていましたが、どうやら2017.1系からまだ使えるものの、非推奨となってしまったようで。

 

UnityScriptからC#への変換を行ってくれる「UnityScript2CSharp」なるものがありましたので、メモしておきます。

 

「UnityScript2CSharp」はGithub上で公開されていますので、最新版をDL。

私がDLしたものは「UnityScript2CSharp_1.0.6549.34518.zip」です。

github.com

 

現在のUnityプロジェクトに組み込まれているUnityScriptをC#に変換してくれるもので、使い方はexeをコマンドプロンプトで叩くと。

Github上にもオプションが色々とありますが、exeをそのまま叩くとオプション一覧が出てきます。

Cドライブ直下に「UnityScript2CSharp_1.0.6549.34518」を置いてexeを叩いてみました。

f:id:watzsons:20180107152329p:plain

 

 

ERROR(S):
Required option 'projectPath, p' is missing.

 

エラーが出てしまいました。

projectPathが足りないようなので、-pオプションでUnityScriptがAssetに入ってるいるプロジェクトを指定します。

今回はひよこ本の「Chapter7Game」プロジェクトをターゲットに。

 

f:id:watzsons:20180107155742p:plain

 

 Scriptは読めたみたいですが、UnityEngine.UIが見つけられないと。

-rオプションでUnityEngine.UI.dllの場所を指定します。

 

f:id:watzsons:20180107160048p:plain

 

WARNIGは出ていますが

Finished converting 4 scripts in 'C:\Chapter7Game' with 0 error(s).

で変換完了したようです。

WARNINGは「UnityEngine.Application.LoadLevel(String)」が古いコードなので「SceneManager.LoadScene」を使えという事みたいですね。

 

 早速プロジェクトを開いてみましょう。

 

f:id:watzsons:20180107161144p:plain

C#にちゃんと変換されて、scriptの読み込みもC#に変わってますね。

f:id:watzsons:20180107161458p:plain

 

ちゃんと中身もC#に変わってました。

 

簡単なスクリプトで試したので、どこまで有用かはわからないですが、試してみる価値はあるかと。