Doomenstein:DOOMとWolfensteinを彷彿とさせる2.5Dファーストパーソンシューター

Other

概要

Doomensteinは、古典的なFPSゲームである「DOOM」と「Wolfenstein」のゲーム性を現代に蘇らせる2.5Dファーストパーソンシューターです。3Dレイキャスティング技術を用いて疑似3D空間を実現し、DirectX11のテクスチャリングやシェーダーでグラフィック表現を強化。fmodを活用した3Dオーディオにより没入感を高めています。ゲームモードは、波状攻撃を耐え抜くSurvivalモードと、キーボード&マウスを使ったプレイヤー対戦のVersusモードを搭載。レトロFPSの魅力を保ちつつ、最新技術を取り入れた作品です。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 17
  • ファイル数: 5
  • メインの言語: C++

主な特徴

  • 3Dレイキャスティング技術による2.5D空間表現
  • DirectX11を用いたテクスチャリングとカスタムシェーダーの実装
  • fmodによる3Dオーディオサウンドの統合
  • SurvivalモードとVersusモードの2種類のゲームプレイを提供

技術的なポイント

Doomensteinの最大の特徴は、3Dレイキャスティング技術を駆使して2.5Dの疑似3D空間をリアルタイムに描画している点にあります。レイキャスティングは、視点から放射状にレイ(光線)を飛ばし、壁やオブジェクトとの交差点を計算することで、3D空間の壁面や敵キャラクターを2Dスクリーンに投影します。この手法は、初期のFPSゲームに多用されましたが、本作では最新のDirectX11 APIによるテクスチャリングとシェーダーによってグラフィックの質感と表現力が大幅に向上しています。

DirectX11の導入により、テクスチャのフィルタリングやライティング、影の表現を高度に制御でき、従来のレトロFPSにはないビジュアルの奥行きとリアリズムを実現しています。加えて、カスタムシェーダーによって多彩なエフェクトや表面の質感表現が可能となり、古典的なゲームの雰囲気を保ちつつも現代的な見た目を両立しています。

サウンド面では、fmodライブラリを活用した3Dオーディオが導入されており、敵の接近方向や距離感を音響的に正確にプレイヤーに伝えています。これにより、ゲームプレイの没入感が大幅に向上し、敵の位置を音から察知する緊張感や臨場感を味わえます。

ゲームモードはSurvivalとVersusの2種類があり、Survivalモードではプレイヤーが次々と襲い来る敵の波を撃退し、より高い波数のクリアを目指します。戦略的な武器選択と立ち回りが求められる緊迫したモードです。Versusモードは、キーボードとマウスを操作するプレイヤー同士の対戦を想定しており、スキルや反応速度を競い合うことができます。

コードベースはC++で記述されており、Windows向けのVisual Studioソリューションファイル(.sln)が含まれています。比較的少数のファイル構成ながら、効率的にレイキャスティングエンジン、レンダリング、サウンド処理を統合している点が特徴です。また、シンプルながら拡張性の高い設計となっており、独自のゲームモードやマップ、敵キャラクターの追加も可能です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • Code: ソースコードやゲームロジックを格納するディレクトリ
  • Doomenstein.sln: Visual Studioのソリューションファイル
  • DoomensteinIcon.png: ゲームのアイコン画像ファイル
  • README.md: プロジェクトの概要や説明文
  • Run: 実行ファイルやビルド後の成果物を格納するディレクトリ

まとめ

レトロFPSの魅力と最新技術を融合した挑戦的な作品。

リポジトリ情報: