web-dev-qa-db-ja.com

Unityを使用して開発するために使用される言語

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

私はドキュメントを読んで、使用した言語のポイントを見逃したと思います。

IOS展開がありますが、これによりプログラマーは目的Cでコーディングできますか?

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

55
jarryd

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

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

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

UnityはAndroid/iOS、および他の多くのプラットフォームにビルドされます。iOSプログラミングがObjective-CまたはSwiftを使用するという事実は、Unity3Dレベルでは完全に無関係です。Unityはc#を使用してプログラムされます。

30
Andreas Wong

すべての開発は、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または他の何かになる可能性のあるプラットフォームによって異なりますが、それは完全に透過的です。 Objective Cを知ることには、実際には何のメリットもありません。その中にプログラムすることはできません。


2019/31/01を更新

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

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

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

unityは2017年8月にUnityScriptとBooの廃止に関する full article をリリースしました。

99
Cody Hatch

UnityでiPhone向けにビルドすると、モノのアセンブリ(C#またはJavaScriptで記述された)をネイティブARM=コードにコンパイル)します。

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

6
Calvin

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

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

5
user1438327

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

3
alexo1001

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

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

しかし、C#は団結して開発するのに最適なものであることに留意してください

2
malbarmawi

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

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

お役に立てれば。

1
user3210251

私は、C#の代わりにJavaScriptをユニティで使用することの本当に大きな問題についてjavascriptユーザーがユニティで使用することを警告するインターネットからのユニティのパフォーマンスに関する記事を読んだことを覚えています、それはC#はほぼjavascriptの4倍高速!
私はゲームを始めようとしたときに記事b/cが私のお尻を救ってくれたことを本当に感謝しています。javascriptが団結した開発者にとって悪いことを意味しません。 、単純な小さなゲームではなく、大きなプロジェクトではありません。

1
a_m_dev

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

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

1
user3112151

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

  1. JavaScript
  2. C#
  3. ブー

しかし、私が個人的に選んだのはC#です。他の2つと比較してC#の方が速いためです。

1
Mayank Gupta