『Unityゲーム プログラミング・バイブル 2nd Generation』に寄稿しました

2021年6月29日(火)発売予定の『Unityゲーム プログラミング・バイブル 2nd Generation』(株式会社ボーンデジタル)にKLabの社員が寄稿しました。

本書は、ゲーム開発で最も使われている「Unity」の入門や初級レベルを卒業した方向けの書籍です。第一線の現場で活躍している23名の著者陣が参加しており、ゲーム開発のノウハウやTipsが満載されています。またほとんどのトピックでは、サンプルゲームがダウンロードでき、実際に動かしながら、実践的に学んでいくことが可能です。

本書に寄稿した2名のKLab社員(細田・平井)から担当テーマと読者へのメッセージを紹介します。

グラフィックス関連(細田)

KLabの細田 翔(@gam0022)です。

私は次の2つのテーマを担当しました。

  • レイマーチング:基礎から応用まで
  • Timelineによる映像制作

それぞれの内容について概要を紹介します。

レイマーチング:基礎から応用まで

このセクションでは「レイマーチング」という手法により、グラフィックスを描画する仕組みを紹介しました。

レイマーチングと似た名前の手法にレイトレーシングがありますが、どちらもレイ、つまり光線をプログラムでシミュレーションしてカメラに映る画像を生成する手法です。

レイマーチングでは、距離関数という数式で定義した形状に対して、レイとの交差判定を行うことで照明や反射などの計算を行います。 そのため、通常のUnityの描画パイプラインではできないような表現が可能になるということが特徴です。

このセクションでは、Unityのシェーダーのコードを記述してレイマーチングを実装します。 レイマーチングの基礎から応用まで解説するために、合計13個のサンプルシーンを用意しました。 少しずつ処理を加えることで、一歩ずつレベルアップしながら理解を深められるチュートリアル形式のサンプルシーンにしました。

このセクションで学べることとそのポイントは以下の通りです。

  • レイマーチングのアルゴリズムと本質
    • レイマーチングは魔法の道具ではなく、単なる衝突判定の手法
    • 数式(距離関数)によるプロシージャルなモデリング手法
  • コンピュータグラフィックスの基礎
    • レイマーチングが扱う範囲はあくまで衝突判定
    • ライティングは通常のシェーダーとまったく同じように実装する必要がある
    • Unityエンジンのシーンやライティング機能を利用せずに、グラフィックスを描画する一連の流れを学べるため、コンピュータグラッフィックスの学習教材としても有用

Timelineによる映像制作

このセクションでは、UnityのTimelineを利用した映像作品の制作について解説しました。

このセクションで学べる項目は、以下の通りです。

  • uRaymarchingを利用したレイマーチング
  • Post-processing Stackの導入からビルトインエフェクトの利用、カスタムエフェクトの作成まで
  • Timelineの基本からカスタムトラックの作成まで
  • Cinemachineの基本的な使い方から、Post-processing Stackとの連携まで

映像の作成のためには、数多くのUnityの機能とAssetを組み合わせる必要があります。

それぞれのUnityの機能とAssetにフォーカスを当てた合計12個のサンプルシーンを用意しました。 サンプルシーンはチュートリアル形式で、一歩ずつレベルアップしながら理解を深められるように工夫しました。

基本コンポーネント関連(平井)

KLabの平井 佑樹です。

今回、私は「Particle Systemなどの画面演出技法: 3D 早押しチャンバラ」を担当しました。

Particle Systemなどの画面演出技法: 3D 早押しチャンバラ

UnityのParticle Systemの使い方やアクションゲームで使われる画面演出について解説しました。

解説した項目は、以下の通りになります。

  • 基本的なParticle Systemの作り方の解説
  • プログラム設計、クラス構成の解説
  • ヒットスロー演出の実装解説
  • カメラシェイクの実装解説
  • 残像表現の実装解説

ある程度Unityを使ったことがあり、これからゲームを作りたい方に向けて執筆させていただきました。

初めての方に向けて疑問点や改善点などをコラムで説明して分かりやすくしました。

これからUnityを使う方の参考になれば幸いです!

おわりに

『Unityゲーム プログラミング・バイブル 2ndGeneration』は、すでに予約注文も始まっていますので、ご興味のある方はぜひお手に取っていただけますと幸いです。よろしくお願いいたします。

このブログについて

KLabのゲーム開発・運用で培われた技術や挑戦とそのノウハウを発信します。

関連記事

このブログについて

KLabのゲーム開発・運用で培われた技術や挑戦とそのノウハウを発信します。