ソリューション

Unity でのプログラミング

Unity ツールは、さまざまな経験レベルのプログラマーが 20 を超えるプラットフォームに魅力的でパフォーマンスの高いインタラクティブ体験を提供するのに役立ちます。

Unity が選ばれる理由

『Among Us』のホーム画面が表示されたスマートフォンを手に持っている人物
パフォーマンスの高い C# を 20 以上のプラットフォームに展開

Unity では .NET ランタイムの実装を使用しているため、C# は最も人気の高いゲーム開発言語になっています。エンジンでは各ターゲットデバイス用に C# コードがコンパイルされるため、デスクトップ、モバイル、コンソール、AR、VR プラットフォームに展開できます。

コンピューターを使用してコーディングしている女性
選択した IDE による、より短時間でのイテレーション

Visual Studio や Rider などの現在の統合開発環境(IDE)の生産性向上を活用します。プロジェクトや Unity エディター自体を強化し、品質とパフォーマンスの分析などを実行するためのコードを記述してデバッグします。

ファンタジー作品のキャラクターが表示されている Unity エディター
チームがエディターでより多くのことを実現できる

Unity 内では、デザイナーやアーティストがよりクリエイティブになることができます。値の調整やアセットの統合などの反復的なタスクをオフロードしたり、チームのニーズに合わせてエディターを拡張したりできます。

プレイヤーに高品質のコードを提供する

Unity のプロファイリングおよびテストツールを使用して、問題を見つけ、コードを最適化できます。Backtrace for Unity を使用して、自動化されたクラッシュおよび例外検知をあらゆるプラットフォームから監視します。クラウドを介したコンテンツ配信により、ゲームの更新プログラムを簡単にリリースできます。

Unity でのプログラミング
C# のコード行

C# でゲームプレイをプログラムする

Unity では、アプリケーション用にリアルタイム 3D フレームワークを作成する必要はありません。Unity プラットフォームによって自動的に作成されます。スクリプトでインタラクティブなゲームプレイを制作することに注力し、エディターで直接テストしてください。Unity では C# を使用します。これにより、メモリの割り当てと割り当て解除、ガベージコレクションを使用したメモリリークの回避など、メモリ管理が自動的に処理されます。

Unity でのスクリプティングについて
『Subnautica』のシーン

スケーラブルなシステムを設計する

「Unity Addressable Asset System により、私たちはさらに前進しました。メモリの問題が解消されました。これがなければ、Switch ですぐに出荷することはできなかったでしょう。」– Unknown Worlds、テクニカルディレクター、Max McGuire 氏

Unity プラットフォームは、プロジェクトのコードを整理するための複数のツールと、最大のパフォーマンスを実現するためのアセットを提供します。たとえば、Addressables パッケージでは、コンテンツパックの作成と展開を簡略化することで、アセット管理のオーバーヘッドが処理されます。ScriptableObjects は、制作全体にわたって変更される可能性のある大量のデータを処理するプロジェクトに最適です。

Addressable Asset System ScriptableObjects
『Volcano High』のシーン

Unity でバージョン管理を活用する

「Plastic は、以前よりはるかにきめ細かく効果的なレベルでブランチモデルを設定できることを示してくれました。解析や取り扱いが簡単で、プロジェクトに大きな影響を与えることなくさまざまなことを試すことができます。」- KO_OP スタジオディレクター Saleem Dabbous 氏

Plastic SCM は Unity ゲーム開発に推奨されるバージョン管理システムであり、大きなバイナリファイル、高速ワークフロー、およびチームのノンプログラマー向けの簡素化されたインターフェースを処理するときに最高の体験を提供します。エディター内統合は Perforce でも使用でき、Git などの他の多くのソリューションを選択できます。

Plastic SCM の詳細を見る
『Jurassic World Alive』プロモーションアート

エディターのワークフローをカスタマイズする

「Unity を使えば、アーティストはより多くの自由を手に入れ、プログラマーにお伺いを立てる必要が少なくなります。以前のエンジンでは、ビジュアルの統合に際して大部分をプログラマーに頼っていたのですが、今ではアーティストだけでできる部分が増えました。プログラマーたちは以前のようにこれを 2 ピクセル分、左に移動させてほしいなどという些細なことで煩わされることはなくなりました。」– Ludia、コアテックディレクター、Catherine Barbeau 氏

Unity のプログラマーは、コードを介した値とアセットの操作に制限されず、エディターインターフェースを簡単に編集できるため、アーティストやデザイナーはゲームプレイを調整したり、エンジンで直接シーンをビルドしたりできます。デザイナーが動作をオフにしたい場合は、コードの書き直しを依頼する代わりにチェックボックスをオフにするだけで済みます。

生産性のヒントを見る Unity エディター のカスタマイズ
異なるコンソールとデバイスを表す戦士のキャラクター

複数のプラットフォーム向けにビルドする

「『Arena of Valor』ではさまざまな国の多岐にわたるハードウェア設定をサポートしていますが、Unity を使えばそのすべてで思いどおりの一貫性を非常に簡単に実現できます。」 – Tencent Games、テクニカルディレクター、Mellow Yue 氏

Unity は、あらゆる主要プラットフォームと深いパートナーシップを結んでいるため、最新のデバイスリリースに対応し続けることに頭を悩ませることなく、利用可能な 20 以上の展開オプションそれぞれから最大のパフォーマンスを引き出すことができます。Unity Input System をすぐにそのまま使用して、プラットフォーム展開オプションとデバイス全体でコントロールを 1 か所で設定できます。

詳細を見る ドキュメント
Unity プロファイラーのスクリーンショット

パフォーマンスと品質を最適化する

素晴らしいゲームをデザインしたら、Unity がそれを高速で安定したものにすることができます。Unity エディターには、ターゲットプラットフォームで利用可能なリソースを最大化するのに役立つ一連のプロファイリングおよび最適化ツールが含まれています。 

Unity プロファイラーではアプリケーションに関するパフォーマンス情報が提供され、メモリプロファイラーはメモリ使用量を減らすのに役立ちます。Unity Test Framework では、自動テストを作成して、コードが意図したとおりに実行されることを確認できます。クラッシュと例外をクロスプラットフォームで管理するための実地調査はすべて Backtrace に任せ、ゲームのリリースに注力しましょう。

Backtrace の詳細を見る Unity でのデバッグ

新機能

最近の Unity リリースで提供してきたプログラマー向けの改善点をご覧ください。

Unity 2021 LTS でのプログラミング

コーディング体験を合理化し、自信を持って制作できるように、Unity の最新リリースのシステム内部で強化された機能を活用して、高いパフォーマンスを発揮する最適化されたゲームを制作しましょう。

制作の裏側:ワークフローのスピードアップ

アセットのインポートからプレイアブルゲームのビルドと展開まで、制作の全ライフタイムにわたってイテレーションを短時間で行えるように、どのようにして Unity エディターのコアを最適化したか、その方法を説明します。

Burst 1.7 の新機能

Burst は、IL/.NET バイトコードをプラットフォーム向けに最適化されたネイティブコードに変換するコンパイラーです。最新バージョンの Burst パッケージでは、イテレーション時間と Burst Inspector の両方が改善されています。

Unity を自分のやり方で学ぶ

ユーザーのスケジュールに合うように設計されたさまざまな形式のプロ向けトレーニングを提供します。

よくある質問

Unity では C++ と C# のどちらを使用しますか?

Unity プラットフォームのコアは C++ で記述され、コードが対話できる C# API レイヤーを備えています。ただし、Unity Input System など、最近の多くのシステムは完全に C# でコーディングされています。Unity コードのアーキテクチャの詳細については、ドキュメントをご覧ください。

Unity のソースコードにアクセスできますか?

Unity のソースコードは、ビジネス開発チームを介してケースごとおよびタイトルごとにライセンス供与されます。Unity のソースコードをライセンス取得または使用できるかどうかは、多くの要因によって決まります。たとえば、適切な法的知的財産保護がない国の企業にはライセンスを供与していません。詳細については販売担当者にご相談ください。

Unity 開発でサポートされているプラットフォームはどれですか?

Unity エディターは Windows、macOS、および Linux でご利用いただけます。Unity のインストール、システム要件などの詳細については、ドキュメントをご覧ください。

Unity のロードマップはどこで確認できますか?

Unity のプラットフォームの機能に関する今後の展望については、「Unity のプラットフォームのロードマップ」ページでご覧いただけます。これを使用して、新しいアイデアを送信したり、優先機能に投票したりすることもできます。

どの Unity バージョンを使用すべきですか?

制作中またはローンチ間近の場合は、最新の長期サポート(LTS)リリースをお勧めします。プロジェクトで Unity の最新の機能を使用したい方や、制作を始めたばかりの方には、TECH ストリームをお勧めします。各リリースの詳細については、こちらでご確認ください。

Unity で使用できる IDE はどれですか?

Unity では、さまざまな IDE でスクリプトを開くことができます。Visual Studio は、Unity を Windows と macOS にインストールするとデフォルトで含まれます。スクリプトを Visual Studio Code または JetBrains Rider で開くには、「Unity」 > 「Preferences」メニューでそれらを外部スクリプトエディターとして選択します。

弊社のウェブサイトは最善のユーザー体験をお届けするためにクッキーを使用しています。詳細については、クッキーポリシーのページをご覧ください。

OK