このプロジェクトについて

SGDKは、Sega Mega Drive向けのソフトウェアをC言語で作成するための無料のオープン開発キットです。ソースコード付きの開発ライブラリと、リソースをROMイメージにコンパイルするための独自ツールが含まれています。ビルドにはGCCコンパイラ(m68k-elfターゲット)とlibgccを使用します。Windows向けにはビルド済みのGCC 13.2バイナリが提供されていますが、その他のOSでは別途コンパイラのインストールが必要です。また、独自ツールがJavaに依存しているため、Javaも必要です。 ライブラリと独自ツールはMITライセンスで配布されており、GCCとlibgccはGCCランタイムライブラリ例外付きのGPL3に従います。 始めるにあたっては、C言語の知識と、Mega Driveハードウェア、特に映像システムに関する少なくとも基本的な知識が前提となります。READMEには、Mega Driveのグラフィックス、アーキテクチャ、Genesis Software Manualを扱う複数の技術資料へのリンクがあります。インストール手順とチュートリアルはプロジェクトのwikiにあり、ヘッダーファイルから生成されたオンラインのdoxygenドキュメントがすべての構造体と関数を説明しています。 中心となる概念はリソースで、これはrescompツールを通じてコンパイルされます。rescompのドキュメントでは、対応するリソースの種類とその宣言方法が説明されています。sampleフォルダ、特にSonicのサンプルは、関数とリソースの一般的なSGDKの使い方を示しています。追加のチュートリアルとして、Ohsat、Danibus(スペイン語)、PigsyのYouTubeシリーズへのリンクがあり、一部のオンラインチュートリアルは古くなっていたり誤りを含んでいたりする点に注意が促されています。 READMEには便利なアセットツールが列挙されています。ピクセルアートおよびスプライトエディタとしてAseprite、Graphics Gale、Pro Motion、Grafx2、オンラインパレット量子化ツール。マップおよびレベルエディタとして16Tile、PNGPalPrio4SGDK、Tiled、LDTK、Ogmo、パレットマージャー。音楽/サウンドツールとしてDeflemask、Furnace、Wavosaur、Audacity。代替のサウンドドライバとしてMDSDRV、Echo、MiniMusicが挙げられています。 サポートチャネルにはSGDK Discordサーバーと、SGDK専用セクションを持つSpritesmindフォーラムがあります。LinuxとmacOS向けには、READMEはWineスクリプト、SGDK Helper、MarsDev環境(全OS対応、32Xサポートもあり)、macOSポートを案内しています。Dockerサポートは統合されなくなったため、代わりにDoragasuのdockerソリューションが推奨されています。Genesis-CodeというVS Code拡張機能が統合を簡素化し、SGDKにはVS Codeプロジェクトテンプレートが含まれています。AWSベースのワークフローも外部ブログ記事で説明されています。 SGDKは無料ですが、Patreonを通じて支援できます。READMEは、マルチタスキング、コントローラサポート、エラー処理、サンプル、ロゴ、ビルドスクリプト、修正に対して多数の貢献者をクレジットし、寄付者に感謝しています。また、Tanzer、Masiaka、Xeno Crisis、Demons of Asteborgを含むSGDKで作られたプロジェクトや、より長いゲームとデモのリストも紹介しています。