トップページ > 過去ログ > 記事閲覧
エディタの自作
名前:B/B 日時: 2009/11/10 22:51

先に作りたいものと教えていただきたいことを書いておきます。質問本文を見てそれに合った回答をいただければと思います。 あまりDXライブラリとは関係ない質問かもしれません。 【作りたいもの】 簡易マップエディタ 【教えていただきたいこと】 エディタ(GUI)の自作に向いたソフト、環境 (なるべくC、C++の知識で書けるもの) 以下、質問本文 ドラクエ1程度の、簡単な2Dマップを描くエディタを作ろうと考えています。 実はすでにDXライブラリでマップエディタ自体は作ったのですが・・・、 DXライブラリのみで作ったので、「ゲーム画面上」でマウスとキーボードを使用してマップを描くようになっています。(イメージとしてはDSのタッチ画面でマップを描くようなもの) そのため、「ボタン」は事前に用意したグラフィックの張りぼてですし、60FPSで動かしているためなにより動作が重いです。 しかし、当然RPGツクールなんかは「エディタ画面≠ゲーム画面」なのでマップを書いてなくても重くなったりはしません。 なので別環境にてマップエディタを作ろうと考えています。 ・ウィンドウの生成 ・画像の表示、画像処理 ・ラジオボタンやチェックボックスなどの配置 が(DXライブラリほどとはいかないまでも)簡単にできる環境などはありませんか?

Page: 1 |

Re: エディタの自作 ( No.1 )
名前:けいし 日時:2009/11/12 00:02

アトリエミュート開発担当、けいしと申します。 GUIのソフトをC/C++ネイティブで開発することは非常に大変なので、 C#という言語をオススメします。 C#でGUIを扱うのは非常に簡単で、 ウインドウにボタンやらチェックボックスやらをペタペタ貼っていくだけで、 プログラムを1行も書くことなく外観を作ることができます。 (C/C++だと、ウインドウを表示するだけで70行くらい書く必要があります。 ボタンを貼り付けようものなら、、、以下略) C#は、書き方もC++によく似ているので、 C++が解るなら、触ってみると良いと思います。 意外とすんなり理解できるはず。 文字列型や、メモリの自動開放など、超便利な機能も多いです。 エディタも高機能で、どんなにプログラムを汚く書いても、 自動で綺麗にしてくれる程です。 とりあえず、入門サイトを見てみるのも良いかと。 少し余談が過ぎましたが、 自分だけで使うエディタなのであれば、 一考してみてはいかがでしょうか><
Re: エディタの自作 ( No.2 )
名前:管理人 日時:2009/11/14 22:32

私も B/B さんと同じようにDXライブラリでしかツールを作ったことがないので 適切なご返答を差し上げることができません DXライブラリでツールを作る場合ですが、ツールはゲームと違い利用者が入力をした場合のみ 画面の状態が変化するケースが殆どですので、入力が何もない時は描画処理を実行しないようにすれば CPU+GPU負荷が高いという問題は解消できると思います 因みにプロの世界でもツールはC#で作るのが恐らく一般的になってきています けいしさんも仰られていますがC++で作るより開発がかなり楽らしいです
Re: エディタの自作 ( No.3 )
名前:B/B 日時:2009/11/15 16:34

けいしさん、管理人さん、ご回答ありがとうございます。 ためしにVC#のWindowsフォームアプリケーションのプロジェクトを作ってみて実際にいじってみたところ、 本当に簡単にエディタが作れそうだったので、ご回答どおりC#でチャレンジしてみます。 (VC++でもフォームアプリケーションにて同じように?作れるみたいですが・・・) ところでひとつ疑問に思ったことがあります。 DXライブラリを使ってのゲーム製作は今VC++で行っています。 なので当面はエディタはVC#、ゲームはVC++での製作になります。 しかし、C#のほうが簡単なのが分かったのでゲーム製作のほうもVC#で・・・と思ったのですが、 今まで、VC++でゲームを作ってきたのにVC#に切り替えるメリットはありますか? (ゲーム製作自体はまだ準備段階) また、なるべく使用環境・言語はひとつに統一したほうが良いのならこの場合両方VC++、両方VC#、どちらが良いのでしょうか?
Re: エディタの自作 ( No.4 )
名前:けいし 日時:2009/11/17 13:20

プログラミング言語は一長一短なので、 使用言語を統一したほうが良いということはなく、 むしろ、適材適所で使い分けることが望ましいと思います。 僕は一応10種類以上のプログラミング言語が使えますが、 僕の観点から見ても、 エディタをVC#、ゲームをVC++で作るのがベストだと思います。 C#の欠点は、制作したプログラムを動作させるのに、 .NET Frameworkというランタイムが必要となるので、 ゲームを動作させるPCにわざわざ入れなくてはならなくなります。 このため、ゲームはC++で組むのが良いです。 しかし、C++でウインドウアプリを作るのは大変なので、 自分しか使用せず配布しないようなエディタであれば、 C#で組むのが良いです。 ちなみに、VC++で同様にフォームアプリケーションが作れるとのことですが、 いろいろ「いわく付き」なので、C#のほうが良いかと思います。 僕がB/Bさんの立場ならこうしますネ 参考になれば幸いです。
Re: エディタの自作 ( No.5 )
名前:管理人 日時:2009/11/19 13:24

家庭用ゲーム機用ソフトの開発現場では現状ではC#を使う手段が無いのと、処理速度の関係でC#はまだ 使用言語の選択肢に入っていませんが、いずれはかつてのアセンブリ言語とC言語の関係のように、 処理速度の必要な部分はC++、そこまで高速性を必要とされない部分はC#( 若しくはC#のようにメモリに 関連するバグが発生しにくい言語 )となるような気がします PC環境でのC#、C++の選択についてはけいしさんと同じ意見で、プレイする方のことを考えると C#かC++かの二択ではC++で開発するのが良いかなと思います
Re: エディタの自作 ( No.6 )
名前:B/B 日時:2009/11/26 22:31

お二方ともありがとうございます。 ゲームはC++、エディタはC#で作ることにします。

Page: 1 |