パトレオン:https://www.patreon.com/sgdk
Github:https://github.com/stephane-d/sgdk
SGDKは無料の開発キットであり、 Sega Mega DriveのC言語でソフトウェアの開発を可能にします。開発ライブラリ自体(コードソースを使用)と、リソースをコンパイルするために使用されるカスタムツールが含まれています。 SGDKは、GCCコンパイラ(M68K-ELFターゲット)とLIBGCCを使用してROM画像を生成します。バイナリ(GCC 6.3)は、Windows OSに便利なために提供されますが、他のオペレーティングシステムには自分でインストールする必要があります。 SGDKにはJava(カスタムツールには必要です)が必要であるため、システムにJavaをインストールする必要があることに注意してください。
SGDKライブラリとカスタムツールは、MITライセンスの下で配布されます(免許証ファイルを参照)。 GCCコンパイラとLIBGCCはGNUライセンス(GPL3)の下にあり、そこからのソフトウェアビルド(SGDKライブラリとして)はGCCランタイムライブラリ例外ライセンスの下にあります(copying.runtimeファイルを参照)
まず、SGDKがC言語を使用していることを知っておく必要があります(アセンブリも可能ですが、必要ではありません)。SGDKで開発しようとする前に、Cプログラミングに精通することを強くお勧めします。 「セガメガドライブ」プログラミングを学ぶのと同時にC言語を学ぶことは間違いなく難しすぎて、どこにも行かなくなるでしょう。また、少なくとも、Sega Mega Driveハードウェア(特にビデオシステム)の基本的な知識を持つことも重要です。
and -0-素晴らしいメガドライブ開発参照:
https://github.com/and-0/awesome-megadrive
ラスタースクロール - セガメガドライブグラフィックガイド:
https://rasterscroll.com/mdgraphics/
Mega Cat Studios -Sega Mega Drive Graphics Guide:
https://megacatstudios.com/blogs/retro-development/sega-genesis-mega-drive-vdp-graphics-guide-v1-2A-03-14-17
SikのブログはMDアセンブリプログラミングに捧げられていますが、Sega Mega Driveハードウェアについて多くのものを(そして良い方法で)説明します。
https://plutiedev.com
Mega Drive Architectureを説明するRodrigo Copettiの素敵な記事:
https://www.copetti.org/projects/consoles/mega-drive-genesis
Sega Mega Driveについて知る必要があるすべてを絶対に含むGenesisソフトウェアマニュアル:
https://segaretro.org/images/a/a2/genesis_software_manual.pdf
その後、準備ができたら、さらに進んで最終的にSGDKをインストールできます:)
WikiでSGDKの使用方法に関するインストールの指示とチュートリアルを見つけることができます。
https://github.com/stephane-d/sgdk/wiki
SGDKには、SGDK構造と機能に関する説明を提供するDoxygenドキュメント(.hヘッダーファイルから生成)が付属しています。 「doc」フォルダーで見つけることができます(ブラウザでローカルdoc/html/files.htmlを開きます)。
SGDKは、 RESCOMPツールを介してコンパイルされるリソースに大きく依存していることを知っておくことが重要です。 rescomp.txtファイルを読み取って、使用できるリソースの種類とそれらを宣言する方法を理解する必要があります。次に、SGDKの「サンプル」フォルダー、特にSGDK使用量(機能とリソース)の優れたショーケースであるSONICサンプルを見ることができます。
SGDKについてオンラインで多くのチュートリアルを見つけることができますが、注意してください。一部は時代遅れであるか、時には間違っています。
開始する基本を提供するWikiから始めることをお勧めしますが、より視覚的でより完全なチュートリアルが必要な場合は、これらのいずれかを試してみることができます。
OHSATのMDプログラミングチュートリアル:
https://www.ohsat.com/tutorial/mdmisc/creating-graphics-for-md/
ダニバスの非常に完全で視覚的なチュートリアル(スペイン語のみ):
https://danibus.wordpress.com/
これは、資産の作成に役立つ有用なツールのリストです。
asesprite
グラフィックスゲール
プロモーション
GRAFX2
パレット量子化器:パレットパレットの制約で画像を変換する強力なツール
16Tile:SGDK固有のタイルマップエディター
TILED:SGDKリソースコンパイラツールでサポートされているタイルマップエディター
LDTK:新しいが強力なタイルマップエディター(タイル形式の形式もサポート)
OGMO:もう1つの素敵でシンプルなタイルマップエディター
パレットの合併:タイルパレットインデックスと優先度を簡単に変更できるツール
deflemask:Sega Mega Driveとしていくつかのシステムをサポートする音楽トラッカー
炉:多くのシステムをサポートする新しい音楽トラッカー
Wavosaur:Wave Sound Editor(Windowsのみ)
Audacity:Wave Sound Editor(すべてのOS)
SGDKサウンドドライバーはお客様のニーズに合わない可能性があるため、いくつかの選択肢が存在することを知ることが重要です。
MDSDRV:強力なサウンドドライバーサポートFM&PSG SFX、ピッチ可能なPCM再生...
ECHO:FM&PSG SFXをサポートし、Z80 CPUで100%作業する別のサウンドドライバー。
Minimusic:Z80 RAMから完全に走り、カートリッジスロットにアクセスしないメガドライブ用の小さなZ80サウンドドライバー。
SGDKでヘルプまたはサポートが必要な場合は、SGDK Discord Serverに参加できます。
https://discord.gg/xmnbwqs
また、Sega Mega Drive Developmentに捧げられたSpritesmindフォーラムにアクセスし、SGDKの特定のセクションを持つこともできます。
http://gendev.spritesmind.net/forum/
Unix/Linuxユーザーは、この非常にシンプルなスクリプトを試してみて、ワインのSGDKを簡単に使用できるようにする必要があります。
https://github.com/franticware/sgdk_wine
また、Daniel Valdiviesoによって提案された新しいソリューションもあります。SGDKをWineを使用して任意のOSの下でVSCodeで使用するようにします。
https://github.com/v4ld3r5/sgdk_vscode_template
もう1つの優れた選択肢は、Andy Grind:https://github.com/andwn/marsdevによって開発された完全なMarsdev環境を使用することです。すべてのOSをサポートし、SGDKの互換性と32倍のサポートを提供することです。
MacOSXユーザーは、SONIC3DプロジェクトのMACOSのGendevを使用してSGDKにもアクセスできます。
https://github.com/sonic3d/gendev-macos
あらゆる環境にインストールする最新の方法は、Dockerを使用することです。
sgdk
ベース画像をダウンロードするには:
docker pull ghcr.io/stephane-d/sgdk docker tag ghcr.io/stephane-d/sgdk sgdk
またはそれを構築する:
docker build -t ghcr.io/stephane-d/sgdk-m68k-gcc:latest -f deps/gcc.Dockerfile deps/ docker build -t sgdk .
そして、 samples
など、ローカルENVをコンパイルする例:
cd sample/game/sonic docker run --rm -v "$PWD":/src sgdk
注:
$PWD
Windowsで動作しません。 %CD%
代わりに使用する必要があります。
./out
ファイルをrootとして書き込むことを避けるには、dockerコマンドを現在のユーザーとして実行します: docker run --rm -v "$PWD":/src -u $(id -u):$(id -g) sgdk
また、ネイティブLinuxコンパイラを使用する代替Doragasu Dockerソリューションを試すこともできます(はるかに高速):https://gitlab.com/doragasu/docker-sgdk
はい、あなたは正しく読んでいます、Matthew Nimmoのおかげで、あなたは今でもAWSのSGDKを使用できます^^彼のブログへのリンクはそれを説明する方法です:https://community.aws/content/2hzinsywwx8cyeaifkquutvoyqj/how-to-- Build-retro-games-in-aws-using-sega-genesis-development-kit-sgdk
vs.とのsgdk統合を促進する「vstudio」フォルダーにビジュアルスタジオテンプレートを見つけることができます。または、それをさらに進めるために、Zerasulによって作成されたVS拡張機能をインストールすることもできます。
https://marketplace.visualstudio.com/items?itemname=zerasul.genesis-code
SGDKは完全に無料ですが、Patreon:https://www.patreon.com/sgdkでサポートできます。
マルチタスクエンジン(SIK実装に基づく)、メガウィフィ、フラッシュセーブサポート、その他の素晴らしい追加のドラガス。
Multi-Tasking Baseの実装と、そのすべての価値のないPlutidev Mega Drive技術情報ソースのすべてのSIK。
SGDK(およびJoy Test Sample ^^)でほとんどすべてのJoy / Controllerサポートを提供してくれた肌寒いウィリー。
スターフィールドドーナツのサンプルと改良されたreadmeのastrofra;)
Windows用のGCC 6.3を構築および提供するためのGligli。
「かわいい」SGDKロゴを作るためのガンポグ。
「Profesionnal」SGDKロゴを作成したAdrian Spoz。
vojtěchsalajkaは、ワインからSGDKを簡単に使用できるスクリプトのために(Linux/unixですが、OSXでも動作する可能性があります)。
Daniel Valdivieso Multi-OS(VSCODEテンプレートを含む)でSGDKを使用する別のワインベースのソリューション。
Andy Grind for the Marsdevプロジェクトでは、任意のOSでSGDKを使用し、32x開発をサポートします。
SGDKのGendev LinuxポートのKubilus。
SGDKのGendev OSXポート用Sonic3d。
Visual Studioのサポートとテンプレートのためのウラジミールクリビアン。
DockerサポートのためのSteve Schnepp。
素敵なWobbler&Scaling EffectサンプルのためのAndreas Dietrich。
さまざまな貢献のためのclbr。
ビルドバッチを提供 /改善するためのJgyllinsky。
修正 /貢献のためのnolddor。
修正用のstarling13。
Davidgfの貢献について(改善されたアセンブリLTO最適化)。
Shiningbzh / JeremyとKentosamaは、テストにおいて貴重な助けを求めています。
VeteaとStudio Veteaは、人々の支援と優しさのために一般的に人々を不一致にします。
私が忘れてしまったすべての人と、一般的にすべての人々がサポートを提供し、バグを報告し、サンプルを追加し、SGDKを何らかの形でサポートすることで支援します!
もちろん、パトレオンの継続的なサポートに感謝しますが、寛大な寄付に感謝します。
Bitmap Bureau(Xeno Crisisチーム)
Neofid Studios(Astteborgチームの悪魔)
ドミトリー(di)
Rajen Savjani
これらのプロジェクトは、SGDK (網羅的ではないリスト)に基づいていることが知られています。
Mega Cat StudiosのTanzer
抵抗によるマシアカ
ビットマップ局によるXeno Crisis
アステボリヌフィッドスタジオの悪魔
2048 Atamuradによる
Abbaye des Morts(L ')ムーンウォッチャーによる非公式のMDポート
抵抗によるレオンブリの芸術
Zチームによる野b人の非公式MDポート
Neofid StudioによるAstteborgの悪魔
AmaweksによるDevwill Too MD
GGJ 2016のために作られた致命的なSmarties
抵抗によるフルスクリーンNICCC 2000
ZチームによるIK+デラックス非公式MDポート
ホワイトニンジャスタジオによるイレーナ
ネンドによるオメガブラスト
LizardriveによるPerlin&Pinpin
GGJ 2020のために作られたスーパーメガバイトによる右2修理
Z-TeamでGenesis非公式MDポートに戻ります
バウンティ/バナナ&レジスタンスによるバルハラへの道
抵抗によるスパイラル()
GGSスタジオ作成によるTCK
Nero JinによるTetris MD非公式MDポート
RolandoFernándezBenavidezによるThundercats MD。
抵抗で旅行します
GGJ 2017のために作られたWacky Willy WeinerSausage Surfer