1 名前:名前は開発中のものです。 mailto:sage [04/10/15 19:34:29 ID:q0RdRnIe] Delphiでゲームを作ってしまおうという実践形式のスレです。 初代スレ>>1より抜粋: 「プログラム経験無 しかしRPGを作りたいのだ。 叩き煽りにめげず己が道を突き進みたい。 何故あせるのか。 そこには一つの目標が在るから。 とりあえずは本との睨めっこ。 やる気は12分にあるので、駄スレと言わず付き合っていただきたい。」 RPGに限らずがんがん作ってあぷしてきましょう。 過去スレ: 【Delphi】 ゲームつくるぞ(゚Д゚)ゴルァ 【作れば?】 pc5.2ch.net/test/read.cgi/gamedev/1051110669/ [Delphi] RPG作らねば [Delphi] pc2.2ch.net/test/read.cgi/gamedev/1013976376/ ゲ製作技術板専用あぷろだ集: forgamedev.zombie.jp/wiki/pukiwiki.php?uploader Delphiまとめ gamdev.org/w/?%5B%5BDelphi%A4%DE%A4%C8%A4%E1%5D%5D 関連スレは>>2-10 くらい。
222 名前:名前は開発中のものです。 [2005/03/24(木) 20:59:29 ID:FMot6Wio] QuadrupleDでスキンメッシュを扱う方法ないですか?
223 名前:名前は開発中のものです。 mailto:sage [2005/03/25(金) 18:20:16 ID:ltx3lv99] >222 過去にメーリングリストでそういうライブラリ+ツールが公開されてたと思う 今はもうどこにも無いかもね
224 名前:名前は開発中のものです。 mailto:sage [2005/03/25(金) 19:43:02 ID:JC4+Ssd6] >>222 QDうんぬんというかDirectXのAPI使えば普通にロードできるじゃん
225 名前:名前は開発中のものです。 mailto:sage [2005/03/25(金) 20:22:32 ID:YHKP02+G] >>223 gamdev.org/w/?%5B%5BDelphi%A4%DE%A4%C8%A4%E1%2F%A5%C0%A5%A6%A5%F3%A5%ED%A1%BC%A5%C9%5D%5D これのことでしょうか 古いバージョン向けでした >>224 やはり3DだとQDは使わないほうがいいんですかね 初期化が面倒なので重宝してるんですが 方法がないみたいなのでQDの利用はあきらめます ありがとうございました
226 名前:名前は開発中のものです。 mailto:sage [2005/03/26(土) 08:57:57 ID:/a7naKgM] 自分で作るという気概はまったくないんだな。 完成せずに終わるに1票。
227 名前:名前は開発中のものです。 mailto:sage [2005/03/26(土) 17:48:47 ID:G7ysfd1t] DirectXを使えとか自分で作れとか多彩な意見が聞けてありがたいです、どうも 自作の場合なんですがTSXMeshのVBufはリードオンリーになってますよね これにアクセスできないと自作できないと思うのですが何か方法はありますか?
228 名前:名前は開発中のものです。 mailto:sage [2005/03/26(土) 22:22:13 ID:Q7JbKITv] 完成せずに終わるに2票目。
229 名前:名前は開発中のものです。 mailto:sage [2005/03/26(土) 22:34:57 ID:G7ysfd1t] えーと、完成って何の話ですか? ひょっとして何かプロジェクト進行中だったら質問なんかしてごめんなさい。
230 名前:名前は開発中のものです。 mailto:sage [2005/03/26(土) 23:21:24 ID:0U97Uuxh] ロック、アンロック。
231 名前:223 mailto:sage [2005/03/26(土) 23:31:00 ID:BTPhD+5W] ウエイト仕込むなら >225 の ”MQO2SX” ってやつのソース群の中にある unit MQOtoSX_MainEngine; // メッシュ全体の頂点フォーマットの変換 procedure MQOtoSX_ConvertMeshFormat( aMesh: TSXMesh; aNewVertexFlags, aNewVertexSize: DWord ); // メッシュ全体のβグラデーションの指定(スキン指示を頂点ウエイトへ還元する) procedure MQOtoSX_SetMeshBeta( aMesh: TSXMesh; aInfo: TMQOObjBoneInfo; isPreviewMode: boolean ); あたりが参考になるはず。ツール付きだしすぐ実験できる。 実際にぐにゃっと曲げる処理は ”SXAnimator” のソース群の unit SXPuppet; procedure TSXPart.OnRenderMesh_SetupOneSkinned(Sender: TSXFrame); って関数の最後のほうだ。3939行あたりから。 「古いバージョン向けでした」って、ろくに中身見ないで言ってるだろ。 直接には使えなかろうが、これだけ資料があるんだからなんとかできるだろう
232 名前:名前は開発中のものです。 mailto:sage [2005/03/27(日) 09:03:39 ID:ZEXtjeAk] ここにもあたよ www1.odn.ne.jp/ceb94660/temp/MQO2SX_02.zip
233 名前:名前は開発中のものです。 mailto:sage [2005/03/27(日) 12:16:41 ID:T9oV5wT4] 直リンきたー
234 名前:名前は開発中のものです。 mailto:sage [2005/03/28(月) 01:41:37 ID:GbZOYgPU] ko-ta氏も作ったモノ整理して公開してくれると ありがたいんだけどなー。
235 名前:名前は開発中のものです。 [皇紀2665/04/01(金) 01:30:50 ID:3rNCiuog]
236 名前:名前は開発中のものです。 [2005/04/03(日) 02:27:49 ID:om/ooDJ6] 誰か作ってー
237 名前:名前は開発中のものです。 mailto:sage [2005/04/03(日) 03:19:05 ID:P1BxXm/W] なにを?
238 名前:名前は開発中のものです。 [2005/04/04(月) 19:00:24 ID:LUgamHmP] Delphi製ゲーム
239 名前:名前は開発中のものです。 mailto:sage [2005/04/04(月) 23:40:35 ID:h7lgzMTh] >>238 ほい。 www.pgd.netstarweb.com/competitions/PGDCompetition2005.html
240 名前:名前は開発中のものです。 [2005/04/05(火) 03:52:26 ID:iC0QnOe0] >>239 うおぉ! すげー
241 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 12:08:18 ID:borjr8jB] Delphiでアクションゲームを作りたいと思っているのですが、 新規作成する際、「アプリケーション」で作成すればいいのか、 または「コンソールアプリケーション」などの、 別のもので作成すればいいのか、全く分かりません。 助言をどうか宜しくお願い致します。 初歩的過ぎて話にならないでしょうか。
242 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 12:48:21 ID:EAaprhUH] おまいさんがDirectXとかのコンポーネント使いたいと思ったら 必然的にフォームが必要だろうから、コンソールにする必要はない。
243 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 13:26:51 ID:9TRJTO60] 的確なアドバイス有難う御座います。 マリオのような横スクロールのアクションゲームに 育成という要素をあわせたものを作ろうと思っているのですが、 やはりゲーム関係にはなんにせよコンポーネントが必要になるでしょうか? 捕まえたモンスターをパスワードに変換させる機能も夢見ているのですが。。。 また、私自身、コンポーネントというのは、 ロボットを強化する追加パーツみたいなもの、 という解釈をしているのですが、合っているでしょうか。
244 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 13:40:23 ID:HGBKcpME] 「強化」パーツかどうかはともかく、全体を構成している一つのパーツ、という意味で 言ってるなら合ってる。というかおまいさんは、Delphiで何かしらのソフトを作った事は 無いんじゃないか?まずは初心者向けのお勉強サイトを見る事を強く勧める。 いきなりゲーム作りは厳しいぞ
245 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 13:40:45 ID:eUumXExh] またすごい釣り師が出てきたもんだな
246 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 14:44:28 ID:MsfkJ2ml] 何度も返答有難う御座います。 頑張ってDelphiに慣れようと思います。 現在は「Seventh Delphi」というページを見て、 コツコツと基礎を勉強している最中です。
247 名前:名前は開発中のものです。 mailto:sage [2005/04/17(日) 20:00:11 ID:Mtx0i29t] 2005pはマダカヨ
248 名前:名前は開発中のものです。 [2005/04/21(木) 20:32:20 ID:dTpY6Pem] GameVision SDK 3.02 キタ━━━━━━(゚∀゚)━━━━━━ !! oggサポートキタ━━━━━━(゚∀゚)━━━━━━ !! Big Daddy Games www.bigdaddygames.com/
249 名前:名前は開発中のものです。 [2005/04/24(日) 00:29:31 ID:2r13uZnF] ObjectPascalって、Cより安全だけど、ハードを直接叩くことは出来ないんでそ? エフェクトバリバリの軽快動作ゲーム作りたいときは、Cのほうがいいかな?
250 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 01:21:09 ID:wnzwphmx] こらこら半可通なことを言うな。 例えば、Delphiのみでインラインアセンブラだって使えるんだから、 ローレベルのことができないというのは誤りだろう。 Cと比べると、オブジェクト指向を言語仕様で取り込んでいてで大型プログラムを作りやすいけど、 ポインタの書き方に自由度がないとか特徴があるな。 あるいは、C++だったらテンプレートのような、不自由なまでの自由さがあるとか。 こういった特徴をふまえて、自分で使いやすい環境を選べばいいんだよ。
251 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 08:28:55 ID:GozPfGMu] >>249 結果だけをみるなら、CにできてDelにできないことはないよ。 Cのほうが実現しやすい、という部分がどうしてもあるなら そこだけCで作ってobjで取り込むという方法もあるよ。
252 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 11:52:16 ID:FHdgB3Jt] >>249 エフェクトバリバリてのが、自前描画のことなら、インラインアセンブラでDelphiでも可能。 でも、今時ならDirect3Dか、OpenGL使う。
253 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 17:49:18 ID:a5Eyb4At] Delphiを使ったことありませんがエフェクトばりばりのエロゲを作ろうと思います。 書店で有益な指南書ってありますか?
254 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 17:56:22 ID:Swv0g1Jq] エロげのことはわからないけどDelphi関連のゲームの本なんてほとんどない上に使い物にならんものばっかりさ。 DelphiXの本はまぁまぁだったけど。 地道にネットを放浪するのが吉かと。。
255 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 20:56:14 ID:xcSidbfk] seventhDelphi(IE)で基礎を学習→Delphi4(6)プログラミングバイブル(本)→不足部分はGoogle これ定石。 ってかバイブルの4と6って全然違うって本当?まじなら6買いにいくんだけど。
256 名前:名前は開発中のものです。 mailto:sage [2005/04/24(日) 21:25:26 ID:Yh9Y+uuF] >>255 俺は6しか持ってないが、 これだとseventh Delphiの次のステップとしてはとても勧められない 高度な知識の宝庫になっていると思うけど。
257 名前:名前は開発中のものです。 mailto:sage [2005/04/26(火) 21:56:06 ID:7ffgyd+F] うほっ home.wxs.nl/~mikewiering/msrc/
258 名前:名前は開発中のものです。 mailto:sage [2005/05/19(木) 12:45:35 ID:YznRP/j/] うほっ ttp://www1.tmtv.ne.jp/~daigo/samaroga/oyajikoubou.htm
259 名前:ふがし ◆SlDOOZZxQ. [2005/06/14(火) 17:03:07 ID:l8Ymh0iV] delphi2005落としてきたけど他のバージョンの方が使いやすいとかはない?
260 名前:名前は開発中のものです。 mailto:sage [2005/06/14(火) 18:21:25 ID:g6YiU1Se] まず落としてきたってのはどういう意味だ
261 名前:名前は開発中のものです。 mailto:sage [2005/06/14(火) 20:33:05 ID:6YByFScv] どこで落とせんのよ?
262 名前:名前は開発中のものです。 mailto:sage [2005/06/15(水) 03:05:01 ID:Bms0t8MG] >>259 を通報しますた
263 名前:ふがし ◆SlDOOZZxQ. [2005/06/15(水) 08:01:46 ID:x3AjL/6W] borlandの公式で落とせたぞ
264 名前:ふがし ◆SlDOOZZxQ. [2005/06/15(水) 08:02:03 ID:x3AjL/6W] それとも俺のかんちがいか?
265 名前:名前は開発中のものです。 mailto:sage [2005/06/15(水) 09:24:21 ID:yi75Qx3g] 2005ってtrial版じゃねーの
266 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/05(火) 00:26:18 ID:2h8uUpfJ] やっとTLISTを理解できたぜーフゥァーハハハハ! 弾の管理に楽だね、これ。
267 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 00:42:38 ID:LxvwlDS6] ちょっとまて、今までTLISTを理解していなかったのか orz ちなみにTLISTは、できるだけ静的に使っても速いとはいえんから、 弾の管理には不向きだよ。
268 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 01:32:25 ID:fOp4H8Kz] 今時のマシンならTList使っても、大丈夫だって
269 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 01:51:39 ID:LxvwlDS6] TListのデフォルト配列なりItems呼び出すたびに、 function TList.Get(Index: Integer): Pointer; begin if (Index < 0) or (Index >= FCount) then Error(@SListIndexError, Index); Result := FList^[Index]; end; が呼び出されるのは、少なくとも俺は気持ち悪いよ。 STGなんかで毎フレーム呼び出すオブジェクトに対しては使いたくない。 まあ、でも人それぞれかな?
270 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 03:52:00 ID:9Z/MR+kp] >>266 乙。 読んだよ。 >>296 データの持ち方をどういう構造にするにしても結局同じようなことするんじゃない? おいらは「気持ち悪い」とまでは感じないけども。 ところでデータの管理方法って他にどんなのがある?
271 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 04:08:46 ID:9Z/MR+kp] Delphi ゲーム製作講座更新されとる ところでこれだけど delphi.nce.buttobi.net/asm01/index.html function foo: Longword; asm mov eax, 123 end; じゃね?
272 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 04:28:12 ID:rjlvTk1V] あそこは、ゲーム作る上では疑問符つきの記事多いよな。 回転のところもせっかくQuadruple Dを使っているんだから、 4096度系を使用して、4096度系の優位点とか説明するべきだよ。 r and 4095 で角度の正規化ができるとか。
273 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 08:12:07 ID:uewP0lm+] >>267 >>268 >>269 速度と安全性が反比例するのは一般常識だろ?
274 名前:名前は開発中のものです。 mailto:sage [2005/07/05(火) 12:18:22 ID:9Z/MR+kp] >>271 修正された 見られてる!見られてるよ!
275 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/05(火) 22:42:36 ID:8GumEUAb] >267 確実に理解したかとなるとちょっとあやしいけど、大体の使い方は理解した。 >弾の管理には不向きだよ。 むぅ、となると弾管理に最適なのはどういう方法だろ?シューティングスレで聞いてくる。 とりあえずもっといい方法が見つかるまでは富豪プログラムで行きます。
276 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 00:23:25 ID:hnvD/An4] シューティング用ならTListで過不足ないよ。 固定長配列とかに変えても、フレームレートには0.1%も影響しないと思う。 それよりものちのちのメンテし易さのほうが百倍大事でしょ。 トリッキーなやり方だと、ソースの役割とか忘れた頃にきっと苦労するよ。 とTList大好きなおれが言ってます
277 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 02:54:48 ID:lV4geLxo] 普通のアプリケーションを作る分にはVCLは最大限に活用していくと 大変な楽をできるが、一般的にはVCLは速度を考えて書かれてはいない気がするんだよね。 弾幕にできあいのTListを使って機能足すより、必要最小限のプリミティブな変数とメソッドを使って できるだけシンプルな自作クラスを使った方が、最後には、速度も出るし保守もしやすいと思う。
278 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 03:03:46 ID:lV4geLxo] あと、STGやアクションのようなゲームの場合、 データをできるだけ静的に扱うべきだ、という意見には否定の無いところだと思うけど、 進可dもそろそろタスクシステムを勉強するのがいい頃合いだと思うよ。 タスクシステムの最大の利点の1つは、大量のワークスペース付きのオブジェクトを メモリ内に、最初に確保してその後それらを静的に扱うことで速度が出るということ。 で、タスクシステムTListをからめると使いやすいかというと、そうでもないかなと思う。 というのが、どうもC++系の、便利なVCLが無い環境でゲーム作ると実際速くて、 そのノウハウをDelphiに持ち込むとやっぱり速いゲームができるという実感がある俺の意見。
279 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 09:32:35 ID:k4sscyRu] > というのが、どうもC++系の、便利なVCLが無い環境でゲーム作ると実際速くて、 > そのノウハウをDelphiに持ち込むとやっぱり速いゲームができるという実感がある俺の意見。 禿同。 結局は速度と開発効率などのバランスの問題だと思う。
280 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 10:13:27 ID:piyt1tSN] 特にPersonal版使っている人たちは、VCLのソースが付いてこないから、 VCLのクラスライブラリは、実際使用して動かしてみないと、 どのくらい速度が出るものなのかわからないっていう問題はあるよな。 そういう意味では、遅くてもいいからまずは完成させて、その後、 速度を上げるべく、自作クラスライブラリに置き換えたり試行錯誤する方が良いのかもしれない。 そこまでできたら、確実に、そして滅茶苦茶プログラミング経験値が上がるよ。
281 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/06(水) 21:49:20 ID:ev5U5uOo] 向こうのシューティングスレから。 >弾を管理するんだったら、単純な配列でいいと思う >全要素の検索が面倒なら、配列に何個入っているかっていうカウンターを用意して、 >デリートしたときに、最後の要素をデリートした部分にコピーして、カウンターを減らす うはwww目からウロコww >278 タスクはもうちょっと後で学ぶつもり。一つのシステムを 消化しきってから次に進んでるんで私の歩みは遅いでつ。
282 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 23:33:15 ID:piyt1tSN] 向こうのスレで弾をいちいちnewするとかいう話が出てたけど、 真似しないように。
283 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 23:45:24 ID:3yhwVqUL] >>282 オレやってるんだけどww 実際に、プロファイルとってみたことある? 描画処理と、実行処理(弾の移動とか)とを切り分けるとわかるが、 圧倒的に描画処理が重いんだよね。 今時の環境じゃ、気にならんというのがオレの結論。
284 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 23:49:41 ID:3yhwVqUL] あと、10年前ならいざしらず、古典的なタスクシステムも、 今時やるのはアホらしいというのが俺の結論だな。 自前でメモリ管理するより、クラスとポリモフィズム、 逐次メモリ確保の方が開発も速くで保守も楽。 第一、Delphiのメモリ周りって小さいオブジェクトの確保に最適化されてるとか、知ってる? とか、いいながら、>>278 がどんな方法でやってるか気になって夜も寝られない。 教えてください。お願いします。
285 名前:名前は開発中のものです。 mailto:sage [2005/07/06(水) 23:55:55 ID:C/FxYc5E] おいらもTList継承したクラスでいちいちnewしてますが速度気になりません。 そういう細かい最適化より、どうやってゲームを面白くするかに気を割いたほうがいいと思うので これ以上速くなってもなあって感じです。 諸兄の言う方法で速度が2倍3倍になるなら是非にもと思うけど。 おいらも>>278 は気になるなあ。 ソース全部とは言わないけど、どんな風になってるか簡単な構造だけでも教えてほすい。
286 名前:278 mailto:sage [2005/07/07(木) 01:16:15 ID:wdNVJn6r] 暇なんでCマガの12月号付属サンプルみたいだけどDel厨向きのタスクシステムサンプルつーのを作って みるわ。もちろんWindowsネイティブな。少しまちなー いや、あんまり暇じゃないけどな。 できたらどこかにあげとくよ。
287 名前:278 mailto:sage simojoatom83trivia [2005/07/07(木) 03:39:52 ID:wdNVJn6r] ttp://ccfa.info/cgi-bin/up/src/up13265.zip に置いとくよ。パスはメルラン。 関連するけど、とにかくゲームの真っ最中は、静的にデータを扱いたいので、 (メモリ確保にかかる時間が嫌いなのよ俺。ここらへんの意見は人それぞれだが、 周りの人間を見ていると、そう間違えた考えでは無い筈。) 実際にQD3なんか使って、敵は3D、敵弾は2Dなんていう場合、敵を生成するときだけTSXFrameの インスタンスを作るというのが嫌なので、ステージ開始前にあらかじめ使いそうな分だけ TSXFrameのインスタンスを作っておく。
288 名前:278 mailto:sage [2005/07/07(木) 03:40:44 ID:wdNVJn6r] そして、3Dなキャラが出てくるときに、 空きインスタンスをタスクに渡すということを俺はやっている。 もちろん3Dキャラが死んだらそのTSXFrameのインスタンスは解放せずにキープしとくわけだ。 (タスクシステムの応用と言えないこともない) 点数表示とかのフォント生成も、必要なだけ最初にやるか、フォントを画像ファイルにしてしまう。 とにかくゲームの最中は静的にデータを扱うようにしている。 ソースだけ見てもわかりにくいし、タスクシステムを勉強したいと思ったら、 去年のCマガの12月号を図書館とかで探して併用してくださいな。 まあとにかく、あくまで俺のやり方だからいじめないでおくれよ。 連レススマソ。
289 名前:名前は開発中のものです。 mailto:sage [2005/07/07(木) 10:03:54 ID:eUxojZS8] すげえw クレクレ厨の要望に答えてくれるとはなんと有言実行なお方だ! 解析して参考にさせてもらまつ
290 名前:名前は開発中のものです。 mailto:sage [2005/07/07(木) 10:34:43 ID:eUxojZS8] 気になった点。 Is-Aは出来るが、Has-Aは出来ない。 極端な話、継承してデータを増やすことはできるが、 コンポジット(複合)的なプログラミングはしにくいということ。 実例を挙げると、TListとか、THogeとか、Createするものをタスクに組み合わせると、 普通にメモリ確保しちゃって、速度的な恩恵を得られない。 # まあ、極端な話、stringとか動的配列でもそうなるが フルにOOPを使えないのはちょっとキツイな、と思った。 なんとか改善できないかなー。
291 名前:278 mailto:sage [2005/07/07(木) 12:27:28 ID:PLVoi/j4] うむ。だから、コンポジションでメンバーにするクラスのうち、 インスタンスがある種のタスクの個数分欲しいときは、さっき書いたTSXFrameみたいな話になるわけ。 必要個数以上の分のインスタンスを先に確保してそれを必要に応じて渡す。 終了したら解放せず回収して使い回し。みたいなことを。 (TSXMeshとかTDGTextureとかは複数のTSXFrameで掛け持ちが可能だからそういったことは必要ない。) でもまー、さっきのソースでのやり方だと、TListなんかとは組み合わせにくいと思うし、組み合わせる利点無いと思う。 (元々不要なVCLとはリンクせずに、速度とファイルサイズを稼ぐ様なソースコードではあるんだけど。) それが、 >>278 で俺がタスクシステムTList云々言った理由な訳。 もう一度いっとくけど、これはあくまで俺とかその周囲何人かのやり方だから、これが絶対じゃないですよ。 全然関係ないけど、Ray-Kudryavka X #200って、QD2製だったのな。 感動したよ。
292 名前:278 mailto:sage [2005/07/07(木) 12:38:40 ID:PLVoi/j4] あと、さっきのソースの肝は、 289行目の tasks[i]:=TMAXSIZE_TASK.Create; で確保したメモリを 168行目の task:=TENEMY(manager.CreateTask()); で少々強引なキャストをして、静的な運用をしているところなので そこら辺を中心に読んでいくと良いかも。 本来、兄弟関係のTMAXSIZE_TASKとTENEMYでは、一般的にはキャストできないし、 一般的なアプリケーションを作る場合にはおすすめできないキャストなんだけど、 TMAXSIZE_TASKのメンバー変数のサイズがTENEMYのメンバー変数で必要なスペースを上回るので 強引にキャストできる。 これが、オブジェクト指向を取り込んだタスクシステムの肝で、 なんでこんなことができるかというのは、「Delphiオブジェクト指向プログラミング」とかで、 Delphiのクラスのメモリ構造について知る必要があるので、興味があれば読んでみてね。
293 名前:名前は開発中のものです。 mailto:sage [2005/07/07(木) 23:43:00 ID:SR4CAcY0] Amazonのアフィのユーザー名で気づいたけど、 アマゲニュースの中の人とDelphiゲーム製作講座の中の人って同じじゃんかよ。 ttp://amagame.blog12.fc2.com/index.php?q=Delphi%A5%B2%A1%BC%A5%E0%C0%BD%BA%EE%B9%D6%BA%C2 なんか見ると、いかにも他人っぽく書いているが、ニュースサイトっぽいことをしている以上、 いらん誤解避けるためにもそういうことは明らかにしといたほうがいいと思うんだけどな。 どうもDelphiゲーム製作講座がアフィに走ってからやっていることが微妙っぽいかも。
294 名前:名前は開発中のものです。 mailto:sage [2005/07/08(金) 01:09:34 ID:UwP7+tJ5] べつにいいんじゃね おれみたいな素人の読者としては有用な記事が読めればいいし
295 名前:名前は開発中のものです。 mailto:sage [2005/07/08(金) 04:53:02 ID:zhRetJ63] うかつにそういうこというと、 アマゲニュースの人乙 とか言う奴も出てくるような気がする。
296 名前:名前は開発中のものです。 mailto:sage [2005/07/21(木) 09:17:37 ID:m/7sJPC5] Canvasの動作チェッカーを作ってみた gamdev.org/up/img/2924.zip
297 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/21(木) 12:28:57 ID:I3AIQtAP] 今日は休みなのでDELのお勉強。オブジェクト内オブジェクトのやり方をやっと理解した。 いやほんと、俺のレベルってまだこんなんなのよ(^^; ユニットごとにまとめる便利さもやっとわかってきたとこだし。 で、ついさっき、画像で得点表示させるのを外部ユニットのオブジェクトにまとめると便利そうだと気がついた。 得点表示オブジェクトのクリエイト時に0〜9を並べた指定画像を読み込んでおく。 そして(描画先キャンバス、ゼロ桁目XY位置、描画する点数)を指定した関数で描画できるように。 得点が増えて桁数変わっても内部で計算するから余計な事は考えずにすむ。 とっくに誰かが考えついて実践してるだろうけど、基本的な考え方はこれでいいですよね?
298 名前:名前は開発中のものです。 mailto:sage [2005/07/21(木) 12:53:04 ID:EruOAjIw] >>297 そうそう。 得点表示用のクラスとそのインスタンス一個作って、 各キャラクタのメンバーとかに、そのインスタンス(の参照)をいれときゃいいんよ。
299 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/21(木) 18:27:55 ID:PyO+l++v] お返事さんくすでっす。色々がんばってみます。
300 名前:進可 ◆Sinka1my5k mailto:sage [2005/07/31(日) 23:05:22 ID:UsK8Gms1] BITBLTは速いなぁとつぶやきつつ300ゲット
301 名前:名前は開発中のものです。 mailto:sage [2005/08/01(月) 20:50:10 ID:DTHtZvOd] QD3で逝こうとしてるのに 引き戻さんどいてー
302 名前:名前は開発中のものです。 [2005/08/10(水) 02:00:05 ID:5uOtmxXP] 保守age
303 名前:名前は開発中のものです。 mailto:sage [2005/08/13(土) 01:57:59 ID:G/U1Xq42] むかし、アイコンバトラーってありましたよね。あんな風なのを自分で作ってみたくて、奮闘しているところです。 ttp://gamdev.org/up/img/3027.zip ソースとバイナリをうpしてみたんで、もしよかったら何かつっこみお願いします。 操作は、Z(決定)、X(キャンセル)です。入力で楽したかったので、QD3使ってます。 今は、シーン管理の仕方がいまいちしっくりきてない状態です。ifで単純に場合分けしているんですが、 ソースがごちゃごちゃしてしまっています。もっとスマートに管理する方法があればいいなあと思って いるんですが、なかなか思いつかないです。
304 名前:名前は開発中のものです。 mailto:sage [2005/08/13(土) 10:15:32 ID:Dp1Qs3yO] withを使えばコードが減るぐらいしかアドバイスできんわ
305 名前:名前は開発中のものです。 mailto:sage [2005/09/09(金) 02:41:02 ID:0s64LqzR] Delphiダウンロードしたんだけどさ、キーがなんちゃらとか出てきて無理。 ググってみたらポーランドの本社でライセンスを取得できるっていうからいってみたら英語だらけで。 もちろん英語が読めないからいま立ち往生。誰か助けて。
306 名前:名前は開発中のものです。 mailto:sage [2005/09/09(金) 03:01:29 ID:gxYYRyu8] あの程度の英語がわからないと、 Delphiもわからないと思うよ。
307 名前:名前は開発中のものです。 mailto:sage [2005/09/09(金) 03:05:56 ID:0s64LqzR] そっか。 ありがと。
308 名前:名前は開発中のものです。 mailto:sage [2005/09/09(金) 08:16:22 ID:z3G1Lwj9] >>303 アイデア1 シーン毎にクラスを作って execute メソッドを継承させてゆく アイデア2 スクリプトを作る
309 名前:名前は開発中のものです。 [2005/09/12(月) 17:55:11 ID:BA20QLlV] www.geocities.jp/usagi_dk/vip1033111.jpg
310 名前:名前は開発中のものです。 mailto:sage [2005/09/14(水) 01:37:33 ID:FaJEB6bA] >>303 重箱の隅でもつついてみる。 ・OnCloseQueryに開放処理おいているのが気持ち悪い OnCloseQueryはあくまで、閉じるかどうかを判断するところ、 なので、OnDestroyに開放処理を書くべし。 ・TObject.Freeは使うな Freeで開放した後に、アクセスするとバグが発生する。 それを防ぐために、Freeで開放した後に、インスタンスにnilを代入するのがいい。 いちいち代入するのが面倒なので、 SysUtils.pasの FreeAndNil(); を使うといい。
311 名前:名前は開発中のものです。 mailto:sage [2005/12/23(金) 08:42:56 ID:ggkgGac8] Rage 3D Game Engine https://sourceforge.net/projects/rage-engine/
312 名前:名前は開発中のものです。 [2006/01/09(月) 02:30:11 ID:lwqgpGN5] gamdev.org/up/img/4319.zip ナンプレ自動解答プログラムです 9x9専用 テキストファイルに問題を書いて、読み込ませて解きます もし解けない問題だとフリーズします Delphi6でコンパイル出来るのを確認しています 問題自動生成プログラムを作りたいのに難しいorz
313 名前:名前は開発中のものです。 mailto:sage [2006/01/09(月) 11:52:13 ID:pF8J/950] > もし解けない問題だとフリーズします wwwww
314 名前:名前は開発中のものです。 mailto:sage [2006/01/09(月) 18:13:29 ID:4l39o4yO] 312を勝手に変更。 ・実行途中で終了可能 ・解けない問題は解ける所まで実行(解けないと判断すると計算終了) ・読み込んだ数字は黒、計算した数字は赤、不明な数字は青で表示 ・計算のチェックを追加 (3×3のブロックをチェックして、数字が特定できるか判断する機能を追加) gamdev.org/up/img/4323.lzh
315 名前:名前は開発中のものです。 [2006/01/15(日) 20:29:15 ID:eFupOUrF] >>305 俺も、昨日ダウンロードしたけど、キーを貰うのに、英語のサイトで個人情報を、書き込まないとダメみたいだから、どうしようか迷っている。 個人情報を登録するダイアログを見ると、暗号化などセキュリティーが全く考慮されてなくて、個人情報が漏れ漏れ気がするので怖くて登録できない。
316 名前:名前は開発中のものです。 [2006/01/15(日) 20:36:02 ID:eFupOUrF] C言語とBASICの元プログラマーの俺が、CSA将棋のソースと、電脳部分であるbonanzaのソースを参考に、中将棋のソースを公開したフリーソフトを開発しようと、やる気を出したのに、Delphiをインストールするには個人情報の登録が必要と言う事で、一気に萎えた。
317 名前:名前は開発中のものです。 mailto:sage [2006/01/15(日) 22:01:19 ID:Bx8cHVD5] 君は正直者ですね
318 名前:名前は開発中のものです。 mailto:sage [2006/01/15(日) 22:29:35 ID:HMzRIrKS] >>315 製品版でも個人情報必須だから安心しろ
319 名前:名前は開発中のものです。 [2006/01/16(月) 17:59:44 ID:9YB/NdGA] >>318 ボーランドは有名な企業だから、会社そのものは信用はしているけど、個人情報を入力するユーザー登録は、日本のサイトにして、送信データはSSLで暗号化してくれ。
320 名前:名前は開発中のものです。 mailto:sage [2006/01/16(月) 22:47:10 ID:4iFikG75] >>319 まあ、そういうことはBorlandに言ってくれw
321 名前:名前は開発中のものです。 mailto:sage [2006/01/17(火) 21:03:56 ID:LX7vKVCM] なんか盛り上がってると思って覗いたら個人情報かよw
322 名前:名前は開発中のものです。 mailto:sage [2006/01/26(木) 04:55:08 ID:6ZPMYNaN] DGCarad9.pasの1850行目 SetWindowPosの中でSWP_SHOWWINDOWにしてるけど SWP_NOZORDERのほうがよくないか? チュートリアルのhelloで最小化しようとしても出来ないのはこれが原因だと思うんだが