- ベストアンサー
商業用アドベンチャーゲームに適した言語は?
初めまして。ゲーム会社ではないプログラミング会社で働いている、一プログラマーです。 この度、PC向けの商業用のアドベンチャーゲーム(いわゆるギャルゲーです)を作ろうと思うのですが、最も一般的な言語で、ライセンスや開発環境にお金の掛からない言語はどれでしょうか? 言語自体の難易度は問いませんので、幅広い回答を頂けると幸いです。 宜しくお願い致します。 (私の扱える言語は主に、PHP、Java、Cになります。C++は学べば使えると思います)
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> C++だけの機能では、ゲームというものは作れないのですよね。 C++の言語自体はプラットフォーム非依存なので、プラットフォームに依存するような画像表示機能などがありません。 # WindowsとLinuxでは表示方法が違いますし、 # 画面表示のない環境でも使います>言語としてのC++ 対象をWindowsに限れば、今のところの選択肢は大きく以下だと思います。 ・C++(orC)とWin32APIで作る。 Win32は、C言語で書けるWindowsの基本APIです。 ゼロから何かを組むのは結構面倒です。 ・C++とMFC(orWin32APIのみ)で作る。 MFCはVCに付属のC++用クラスライブラリ(Win32のラッパー)です。 時に便利ですが、本来はわかってる人が省力するためのものだと思いますので、Win32APIがよくわかっていないと使いこなせないかもしれません。 ・C++とDirectXで作る。 DirectX(というかCOM)には一応後方互換性があるので、Dx9でもDx7のinterfaceを使うことができます。 そして、古いDxはOSに入っていることがあります。 組み合わせが難しいというのは主にハードの相性などです。Dxを使うと、各OSのバージョンやPCのメーカ、グラフィックボード依存で動かない、等の症状が出たりします。 (この手のテストやサポート環境をゼロから構築するのは大変なはず > (Direct…は、Javaでいうところの、関数のパッケージのようなものでしょうか) Win32がAWT/SWTとすれば、DirectXはネイティブコード呼出しとかでしょうか。 # 私見 ギャルゲのアドベンチャ程度なら、開発などせずにスクリプトで十分な気もします。 いきなりDirectXとかまず扱いきれないでしょうし、いらないとも思います。 大概のメーカは、シナリオ部分とシステム部分を切り分けて開発してますし、既存のスクリプト実行システムで動いてるゲームも多いですし。 探せば安価なのもあると思いますよ。
その他の回答 (3)
- Qwerty-36
- ベストアンサー率25% (58/226)
書籍名称は忘れましたが、「ギャルゲーを作る」書籍が何冊かあったはずです。(「やねうらお」さんだったかなぁ(^^;)) その本の中で、C言語(だったと思う)でスクリプト(台本、変数の値と選択肢による分岐)を実行するシステムを作成してました。 絵の表示自体は、そんなに難しい事でも無いと思います。 ですから本を参考に自分たちで「スクリプト実行システム」を作成すると良いと思います。 で、通常、そのようなアプリケーションを作成するチームはプログラマさん、それと台本作家、音楽家、絵師の4人で構成されております。 # ・・・って、私は、その道の人じゃない(^^;)し、その手のゲームもやらない\(^o^)/んで、詳しく知らないんですけど・・・(^^;)。
お礼
Qwerty-36さん、有難うございました! やねうらおさんのことを調査してみました。 どうやらC++のようですね。 一先ず、根幹の単純なシステムを本を参考にしながらC++で作る方向で始めてみようと思います。 シナリオと絵は別媒体で既にありますので、あとはシステムを入れるだけなんですよ。 頑張ってみます。
- MrBan
- ベストアンサー率53% (331/615)
> これはC++とは別物なのでしょうか。 Microsoft社の、C/C++開発環境/統合環境の商品名が、 Visual C++です。(C++自体は言語の名前) > 使わない方が多くの環境に適するのですよね… DirectXでも、Direct7とかのインターフェイスの方がインストールなしで動く環境が広がりますが。 とはいえ、一般には商用配布を考えているのであれば、 相性など含めサポート環境の組み合わせと対応の手間が跳ね上がります。 最新のエフェクトバリバリ、とかいうものでもなければ、アドベンチャなら、使わない(orバージョンを下げる)という選択肢もありかも知れません。 # プログラムでハードコーティングせず、 # スクリプトのエンジンで動作する市販のギャルゲも # 結構多いように思いますが。
お礼
MrBan様、ご回答有難うございました。 「C++」が言語名で合っていたのですね。 VisualBasicなどと混同しておりました。 Directシリーズ(?)にも色々なバージョン競合関係がありそうですね。 お教え頂いて有難うございます。 C++だけの機能では、ゲームというものは作れないのですよね。 (Direct…は、Javaでいうところの、関数のパッケージのようなものでしょうか) そこまで高機能のものは最初からは要求されないと思いますので、バージョンを落として色々調査してみようと思います。 本当に有難うございました。
- sha-girl
- ベストアンサー率52% (430/816)
ゲーム開発に携わっているものです。 ADVゲームといってもDirectXを使うかどうか等によってかわってくると思いますが DirectXを使うパッケージ販売のゲームなら 一般的にはVisual C++になります。(DirectX9.0cはC#やVB.netでも使えます。) DirectXを使わなくてもWeb上でFlashで配信するタイプの ADVもあるでしょう。 http://www.microsoft.com/japan/msdn/vstudio/express/ お金をかけたくないのなら 上記からVisual C++ 2005 Express Editionが無料でダウンロードできます。 http://www.microsoft.com/japan/msdn/directx/downloads.aspx DirectX 9.0 SDKも無料です。
お礼
sha-girlさま、ご回答有難うございました。 Visual C++は、無料のものもあるのですね! これはC++とは別物なのでしょうか。 この言語でのゲーム作成の書籍がありましたので、チェックしてみます。 DirectXを使うかどうかはまだ、検討中です。 使わない方が多くの環境に適するのですよね…私の作りたいものが使わなくてもできるものかどうかは、調査しないと解らないので、もうちょっと調べてみます。 標準言語が解って、今後の指針になりそうです。 本当に有難うございました。
お礼
MrBanさま、再び、詳しいお答えを有難うございます!! 当面は、Windowsのみを目標に作成したいと考えております。 確かに、C++で構築するのは難易度が高そうですね; 特に期限のない開発案件ですので、気長に研究目的で挑戦したいと思います。 フリーのアドベンチャー用スクリプトはいくつか見つけました。 どちらにしても、Windowsの画像描写の方法や、基本的な操作方法が解らないと作れないと思いますので(今までWeb系しかプログラミングしたことがありませんでしたので;)、勉強しながら一つずつ覚えてゆこうと思います。 本当に有難うございました。