79

Unityでプログラミングする場合、どの言語を使用する必要がありますか?それとも多くの言語のAPIですか?

ドキュメントを読みましたが、使用されている言語のポイントを見逃したと思います。

iOSがデプロイされていると書いてありますが、これでもプログラマーはObjective Cでコーディングできますか?

Unityは多くのプラットフォームで使用できるSDKですか、それともどのように機能しますか?複数のプラットフォームに同じコードをデプロイすることについて言及しています。

4

11 に答える 11

123

すべての開発は、C#、Boo、またはJavaScriptの方言を使用して行われます。

  • C#は説明を必要としません:)
  • Booは、Pythonと非常によく似た構文を持つCLI言語です。ただし、静的に型付けされており、他にもいくつかの違いがあります。「本当に」Pythonではありません。見た目は似ています。
  • Unityで使用されるJavaScriptのバージョンもCLI言語であり、コンパイルされます。初心者は、JSが他の3つほど良くないと思うことがよくありますが、コンパイルされており、同じように高速で機能的です。

ドキュメントのサンプルコードのほとんどはJavaScriptです。公式フォーラムやウィキをざっと見てみると、C#とJavascriptがかなり均等に混在していることがわかります。Booを使用している人はほとんどいないようですが、同じように優れています。あなたがすでに知っている、または最も幸せな学習である言語を選んでください。

UnityはC#/ JS / Booコードを取得し、iOS、Android、PC、Mac、XBox、PS3、Wii、またはWebプラグインで実行できるようにコンパイルします。プラットフォームによっては、Objective Cなどになる可能性がありますが、それは完全に透過的です。ObjectiveCを知ることには実際には何のメリットもありません。あなたはそれにプログラムすることはできません。


2019/31/01を更新

Unity 2017.2以降、「UnityScript」(UnityのバージョンのJavaScriptですが、同一ではありません)は、UIから「JavaScript」ファイルを追加するオプションを削除することにより、完全な非推奨に向けた最初の一歩を踏み出しました。JSファイルは引き続き使用できますが、それ以降のバージョンではサポートが完全に廃止されます。

これは、コンパイラが実際にはUnityScriptの上にレイヤーとして構築されているため、Booが使用できなくなり、削除されることも意味します。

これは、将来的にはC#のみがネイティブサポートを持つことを意味します。

unityは、2017年8月にUnityScriptとBooの非推奨に関する完全な記事をリリースしました。

于 2011-02-27T09:56:46.113 に答える
45

私の知る限り、c#を使用できます。

あいまいな言語「Boo」を使用することもできます。(https://boo-language.github.io/にあります

過去(2012年頃以前)には、Javaの奇妙なバリアントを使用することが可能でしたが、現在は非推奨であり、機能しません。

UnityはAndroid/iOSおよび他の多くのプラットフォームにビルドされることに注意してください。iOSプログラミングがobjective-cまたはSwiftを使用しているという事実は、Unity3Dレベルではまったく関係ありません。Unityはc#を使用してプログラムされます。

于 2011-02-14T08:48:24.407 に答える
6

UnityでiPhone用にビルドすると、モノラルアセンブリ(C#またはJavaScriptで記述)のネイティブARMコードへのAhead of Time(AOT)コンパイルが実行されます。

オーサリングツールは、libをコンパイルしたスタブxcodeプロジェクトと参照も作成します。Unityの環境にまだ公開されていないネイティブなものがある場合は、このxcodeプロジェクトにObjective Cコードを追加できます(コンパスやジャイロスコープへのアクセスなど)。

于 2011-02-14T19:29:41.903 に答える
5

Unity3dは、C#、Boo、JavaScriptをサポートしています。フレームワークはこれを中間形式に変換し、後で目的のプラットフォーム(IOS / Android / Linux / Windows)に変換します

C#スクリプトが最初にコンパイルされ、次にJSとBooがコンパイルされることに注意してください。したがって、C#スクリプトがJSと対話する場合は、JSを標準アセットフォルダーに保持する必要があります。

于 2013-04-02T09:17:01.990 に答える
3

Unityは以下をサポートします:
1。UnityScript(Javascriptとして知られていますが、Unityゲームエンジン用のより多くの機能が含まれています。これは非常に簡単に習得できると思います)
2。Boo(経験なし)
3。C#(学ぶと、これを団結の外でも使用できるようになります。また、慣れやすいと思います)

于 2016-05-25T14:44:23.067 に答える
2

UnityのC#とJavascriptスクリプト構文の主な違いのいくつか。

http://unity3d.com/learn/tutorials/modules/beginner/scripting/c-sharp-vs-javascript-syntax

ただし、C#はUnityで開発するのに最適なものであることを忘れないでください

于 2014-10-16T07:44:40.380 に答える
1

C#、Javascript、Booを使用できます。

作成する関数の計算要件がプロセッサに大きな負荷をかけない限り、Javascriptはほとんどの場合十分なパフォーマンスを提供します。

于 2013-12-17T17:10:20.020 に答える
1

これは、c#、c ++のソースコードでサポートされているunityscript(javascript)、およびc ++プラグインのサポート(ソースコード、およびプラグインにはプロが必要)を使用します。

unity3dスクリプトリファレンスは、必要に応じて非常に簡単に理解/使用できます。おそらく、cryengine、udkなどのエンジンの中で最も簡単です。

お役に立てれば。

于 2014-04-22T18:57:32.187 に答える
1

次の3つのスクリプト言語のいずれかを使用できます。

  1. JavaScript
  2. C#
  3. ブー

しかし、他の2つと比較して高速であることがわかったため、個人的な選択はC#です。

于 2014-08-19T17:31:53.143 に答える
1

これは、インターネットからUnityのパフォーマンスに関する記事を読んだことで覚えています。これは、JavaScriptユーザーがC#の代わりにUnityでJavaScriptを使用するという非常に大きな問題について、JavaScriptユーザーに警告していたことです。C#はJavaScriptよりもほぼ4倍高速です。

ゲームを始めようとしたときに助けてくれたので、この記事に本当に感謝しています。JavaScriptがユニティ開発者にとって悪いという意味ではありません。良いですが、JavaScriptを使用するのが好きな場合は、次の目的で使用することをお勧めします。それは本当に大きな問題になる可能性があるので、大きなプロジェクトには向いていない単純な小さなゲーム!

于 2017-11-19T19:07:54.527 に答える
1

現在、Booのスクリプトサポートに使用できるのはC#のみであり、Javascriptは削除されました。

于 2021-03-06T22:25:14.923 に答える