徹底検証!UnityでJavaScriptはもう使えないの?

以前は、C#だけではなく、Booという言語も使用できていたUnityですが、現在はJavaScriptも公式の対応外になっています

今回は、そんなJavaScriptが本当に使用できないのかについて紹介していきます

JavaScriptはもう使えない?

かつてC#、JavaScript、BooはUnityの三大言語でした。公式の対応外になったとはいえ、その一角でもあるJavaScriptはもう本当に使用できないのでしょうか?

使用できるのはJavaScriptではなくUnityScriptという似た言語

初めに申し上げておきたいのは、使用できるのはJavaScriptそのままではなくUnityScriptというあくまで似た言語であるという点です。例えば、JavaScriptにはないクラスが存在したり、文末には;(セミコロン)が必要といくつか異なる点が存在します

あくまでJavaScriptに似た別の言語であると、まずは認識しておいてください。

以前はBooも使用できた

あまり有名ではないのですが、以前はBooというプログラミング言語も使用できたのですが、バージョンUnity 5以降から公式の対応から外れてしまいました

当時として、ほとんどBooを使用した開発者がいなかったというのがBooが公式の対応から外れた理由のようです。

Unity 2017.2から対応外に

話をJavaScriptに戻しますが、どうやらバージョンUnity 2017.2からUnity上でのJavaScriptスクリプトの生成ができなくなったようです

それに関して、Unityの公式ブログ上にコメントがありました。英語の記事ですがリンクはこちらになります。

内容は様々書いてあるのですが、大まかにこのようなことが書かれています。

現在は、UnityScript(JavaScript)とC#でできることに全く差はないが、使用者の少ないUnityScriptを今後もC#と同じように対応できるようにし続けるのは負担が大きく、今後は対応しないという決断をした。

引用: Unity Blog

Unityは機能のアップデートなどが頻繁に行われ、それら全てにJavaScriptを対応させていくのはコストがかかりすぎるという判断をくだしたのでしょう。

JavaScriptのスクリプトは作れないの?

以前は、Projectウィンドウまたはコンポーネントの追加からJavaScriptのスクリプトの作成ができました。そこで、その2つの方法を使って現在はスクリプトの生成ができないのかどうかを確かめてみました。

使用したバージョンは、もっとも新しいUnity2018.2と以前はJavaScriptの生成のできたUnity5.6.5です。

Projectウィンドウから生成してみる

まずは、Projectウィンドウで右クリックの方法でJavaScriptのスクリプトが作成できるかを検証してみます。

以前は上の画像のように、Projectウィンドウで右クリックし、Createの欄からJavaScriptを選択することができました。

実際に、Unity 2018.2で同様の方法で試してみましょう。

同じようにProjectウィンドウで右クリックしたところ、Createの欄からJavaScriptの項目が消えていました。

コンポーネントから追加してみる

続いては、コンポーネントからJavaScriptのスクリプトを追加できるかどうかを検証してみます。

以前は、コンポーネントでAdd Componentを選択し、New ScriptのLanguageからJavaScriptを選択することができました。

しかし、同様にUnity2018.2で試してみたところ、Languageという項目が無くなっていました。

以前は対応していた2つの方法では、現在はJavaScriptのスクリプトを生成できないようです

もうJavaScriptは動かない?

それでは、もうUnity上でJavaScriptは動作しないのでしょうか?

JavaScriptも動作はする

結論としては、Unity上では生成できないだけで、現在もJavaScriptは動作するようです。しかし、公式が対応しないことを発表している以上、予期せぬ不具合が発生してもサポートなどは望めません。

公式ではすでに対応していないので、これまでJavaScriptで開発を行っていた人でも今後は主流のC#に移行していく必要がありそうです

これから始めるならC#一択

すでに、Unityユーザーの8割以上がC#を使用していると言われるくらい、UnityにおいてはC#のシェアが圧倒的です

これからUnityに触りたいという人は、特別な理由がない限りC#から勉強するのがおすすめです。

まとめ

いかがでしたでしょうか?

今回は、JavaScript(正しくはUnityScript)がUnityでは正式な対応から外れてしまったという内容について紹介しました

これからUnityを勉強するという人は、Unityが公式に対応しており、ネット上でも情報が多いC#から勉強を始めることをおすすめします。

また、これまでJavaScriptをメインで開発を行ってきた人も、徐々にC#に移行する必要がありそうです

C#に関しては、こちらの記事でも解説しています。

Unityに使われるC#とは?言語の特徴や勉強法も解説!

2018.09.01