[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 09/18 05:21 / Filesize : 258 KB / Number-of Response : 975
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【Delphi】 ゲームつくるぞ(゚Д゚)ゴルァ 2【Delphi】



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くらい。

463 名前:名前は開発中のものです。 mailto:sage [2006/10/11(水) 19:40:48 ID:uxuny9ps]
DirextX9のAPI直で十分。

464 名前:名前は開発中のものです。 mailto:sage [2006/10/12(木) 18:43:35 ID:cXQHwx0d]
このスレ見るまで、
反アフィリエイト厨厨を自認する奴がいるなんて知らなかったよwww

465 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 11:44:01 ID:1f13WDN9]
DanJetX is a graphics component for Delphi. It is based on Direct3D 9. It allows a programmer to use following features:

Easily access advanced graphics capabilities.
Easily combine 2D and 3D graphics.
Support of BMP, JPG and PNG format for textures.
Support of X format for 3D meshes.
Support of mesh skinning (animated meshes).
Special effects such as shadows, lighting effects, motion blur, billboards etc.
DanJetX has been tested for compatiability with Delphi7 and BDS2006.

dan.mirgames.ru/

466 名前:進可 ◆Sinka1my5k mailto:sage [2006/10/22(日) 15:46:22 ID:iN9Cmzsc]
ぐぎゃぁ、塗りつぶしプログラムでスタックオーバーが発生しやがる。
256*256のでかいマップだから、スキャンラインアルゴリズム使ってるのに。

467 名前:名前は開発中のものです。 mailto:sage [2006/10/22(日) 16:47:21 ID:5A/r+d5u]
ここはお前の日記じゃねえんだから、
スタックを増やすなり
再帰をやめるなりなんなりしろよ

468 名前:名前は開発中のものです。 [2006/10/22(日) 17:21:19 ID:FueuxQDg]
delphiの勉強にいいサイトってある?

469 名前:進可 ◆Sinka1my5k mailto:sage [2006/10/22(日) 22:08:23 ID:Oy+goTD+]
>467
おおすまんな。原因判明したよ。塗る前の色と塗る色が同じだと
無限ループに入るようになってた。

470 名前:名前は開発中のものです。 mailto:sage [2006/10/28(土) 15:11:11 ID:WIstkNni]
ko-ta氏はエロゲ作ってたのね
delphiでもゲームの仕事あるんだな

471 名前:名前は開発中のものです。 mailto:sage [2006/11/04(土) 05:08:07 ID:kcBXLsCL]
>>468
DelphiMLや談話室の過去ログ。





472 名前:NYAN [2006/11/18(土) 23:27:56 ID:+SD+4YYI]
 趣味でゲーム作っているんだけど、プログラムがあまりわからないのです。
www.geocities.co.jp/Playtown-Yoyo/4303/new/index.html

473 名前:名前は開発中のものです。 mailto:sage [2006/11/19(日) 01:45:59 ID:wJaGDUpd]
今さらながらにQD3のシェーダーサンプル実行してみた
環境マッピングって凄いね
ただ、うちの開発環境だと一部分しか映りこんでなかった
ポリゴンの切れ目で分断されてる感じ
他のモデルに差し替えると映ったからモデルの作り方にコツが必要なのかな?

474 名前:691 mailto:sage [2006/11/19(日) 02:33:59 ID:DT0NQ6zC]
Delphiのスレがこんな上に(;´Д`)ハァハァ

475 名前:名前は開発中のものです。 [2006/11/20(月) 14:30:49 ID:lks8/hgI]
>>470
kwsk

476 名前:名前は開発中のものです。 mailto:sage [2006/11/20(月) 22:41:34 ID:oKv0RQvh]
D6にdemoでゲームのソース付いてたお

477 名前:名前は開発中のものです。 mailto:sage [2006/11/21(火) 21:28:47 ID:Rr5OfbG9]
>>475
microってメーカーの新作

478 名前:名前は開発中のものです。 mailto:sage [2006/11/22(水) 01:41:02 ID:HiHLBBHy]
ここ?
ttp://www.qmax.co.nz/micro/

CreatureJungleは昔ソースが公開されてたお。

479 名前:名前は開発中のものです。 [2006/11/24(金) 16:39:27 ID:UFa/HtZe]
>>477
cool!!ですか?気になるなw

480 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 19:04:29 ID:F96PV8aR]
Turbo Delphi Tutorial
www.turboexplorer.com/jp/DelphiTutorial

ボーランド公式サイトで入門サイトキタ!
ちょっと組んだことがある人でも
デバッガは使ってない人が多いだろうから役に立つかも
この記事読んでDelphiでゲーム作る人増えたらいいなぁ

481 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 19:12:21 ID:irZpf+nP]
いつの話してるんだよ



482 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 21:03:13 ID:OifyBUW/]
アドベンチャーゲームを作っています。
メッセージwindowとボタンの半透明処理に悩んでいるのでお力をお貸しください。

メッセージwindowの方はQuadrupleDのTDGCardを使おうと思い、TDGTextureの
SetColorKeyでAlpha値を設定し、PushSpriteでsxbAlphaを指定しました。
しかしAlpha値をいくつにしても、半透明にはならず透明になってしまいます。

ボタンの方はTImageでTABitmapを使えばなんとかならないか?と思ったのですが、
それだと背景が透けてみえません。
みなさんは、どのような方法で実現していますか?

483 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 21:06:40 ID:lj8+lPZj]
>>480
続きが見たいです・・・

484 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 22:46:16 ID:AAKyS3Pm]
>>482
描画されないんだったら
 1)座標がおかしいか
 2)全てのα値が 0 になってるか
のどっちかを疑うのが筋じゃね。

1)はともかくとしても、
例えば真っ黒に塗りつぶされたテクスチャに対して、抜き色を 0, 0, 0 にした SetColorKey を行っているとか。
あるいはビットマップからテクスチャを作ってる場合に、α値が0の32bitビットマップを読み込んでいるとか。

あれ、フォーマットがD3DFMT_A8R8G8B8 のとき24bitビットマップを読み込んだら
α値はどうなるんだっけ?

485 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 22:54:54 ID:irZpf+nP]
単に全部不透明になっただけな気ガス

486 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 23:37:08 ID:F96PV8aR]
>>482
解決案候補1.
想定原因
アルファ値を指定していない
解決案
SXVertexSPの3番目の引き数を$FFFFFFFFからもっと小さい値にする
4つSXVertexSP全てにそれを行う

解決案候補2
想定原因
正しい色情報をSetColorKeyに渡せていない
解決案
アルファ付きBitmapファイルを作成する

487 名前:名前は開発中のものです。 mailto:sage [2006/11/26(日) 23:39:57 ID:irZpf+nP]
そういえば、TDGTextureのコンストラクタでは当然α付きのフォーマットを指定しているんだろうな?

488 名前:482 mailto:sage [2006/11/27(月) 00:45:13 ID:owDjimlR]
皆さん、いろいろありがとうございます。

>>484さんの
>例えば真っ黒に塗りつぶされたテクスチャに対して、抜き色を 0, 0, 0 にした SetColorKey を行っているとか。
これが原因でした orz
かなり考え違いをしていたようです。

この場合(黒いBMPを半透明に)、どういった数値を入れるのがいいのでしょうか?



489 名前:名前は開発中のものです。 mailto:sage [2006/11/27(月) 01:14:08 ID:+Ms57j0q]
この場合、SetColorKey はいらないでしょ。
さらにいえばビットマップも必要ない。
テクスチャを作った後、TDGTexture.Fill とかで $FF000000 に塗りつぶして、
PushSprite の頂点色で半透明にするのがいいと思う。

490 名前:名前は開発中のものです。 mailto:sage [2006/11/27(月) 02:20:26 ID:TkVNRXFk]
こんなので悩むより、自分で合成した方がいい。

491 名前:482 mailto:sage [2006/11/27(月) 15:39:51 ID:7WJ1d2Tn]
>>489
SetColorKeyいらないんですね・・・。
489さんの方法でやってみたいと思います。 ありがとうございました。

>>490
QuadrupleDの使い方になれようと思って、しかし結果は見事にハマってしま
いますた。
ボタン等はDelphi Worldでその後いいのが見つかったので、それを使おうと思っ
ています。

みなさん、ありがとうございました。



492 名前:名前は開発中のものです。 mailto:sage [2006/11/29(水) 11:49:05 ID:GrMuZBJF]
>>479
CPU占有率たけえ(;´Д`)
カラフルアクアリウムっていうのも同じシステムみたいだな

493 名前:名前は開発中のものです。 mailto:sage [2006/11/29(水) 12:56:27 ID:L/9MlnSb]
Ko-taたんは、玄人っぽくインラインアセンブラを結構使っているけど、
どこぞのアセンブラ使いに全然高速化されてないって突っ込まれてたなう。

494 名前:名前は開発中のものです。 mailto:sage [2006/11/29(水) 19:17:50 ID:GrMuZBJF]
ほえー、そうなのか

ところで今、delphi界で参考になるようなコードを書く人/サイトってある?
なんかどんどんdelphi使ってる人が少なくなってるような・・・・

495 名前:名前は開発中のものです。 mailto:sage [2006/11/29(水) 21:22:14 ID:L/9MlnSb]
メーリングリストの過去ログかなやっぱり
あとはQuadruple Dのソースとか。

496 名前:名前は開発中のものです。 mailto:sage [2006/11/30(木) 02:01:02 ID:Wnepy24V]
VCLソースが一番参考になる。

497 名前:名前は開発中のものです。 mailto:sage [2006/12/12(火) 12:21:28 ID:GrsPInDf]
何かがぶつかって画面が揺れるようなエフェクトはみなさんどうやって作っていますか?
Quadruple D等で作るのかな・・・。

498 名前:名前は開発中のものです。 [2006/12/12(火) 22:12:38 ID:yBbIoFAM]
あっ
エスパーレスだ!


499 名前:名前は開発中のものです。 mailto:sage [2006/12/12(火) 22:42:57 ID:Xo3b5eEm]
描画プレーンの座標変えるだけ。
速度が出ないんならQDだろうな。

500 名前:名前は開発中のものです。 mailto:sage [2006/12/12(火) 23:57:56 ID:azQAbvxZ]
QuadrupleDで質問です。
いくつかのフォームにDG-Caradを貼り付けてみたのですが、メインフォーム以外はすべて
マウスのクリックがきかない状態というかフォームがenabled状態(?)になってしまいます。
この場合、どのように回避すればよろしいでしょうか?

すべてのフォームをフルスクリーン←→ウィンドウモードに変更可能にするためにG-Carad
を使おうと思っています。

501 名前:名前は開発中のものです。 mailto:sage [2006/12/13(水) 00:18:38 ID:gkiFYHOM]
Quadruple Dでマルチウインドウしようとしてんの?
無茶なことしてんなあ
誰かそんなことやってる奴いたっけ?
俺は見たこと無い



502 名前:名前は開発中のものです。 mailto:sage [2006/12/13(水) 00:24:56 ID:6LQX0pmw]
>>501
あ、すいません、出来ないんですね・・・。
素直にウィンドウはシングルでいきます。

503 名前:名前は開発中のものです。 [2006/12/13(水) 11:55:04 ID:C9Zkbwpn]
Delphi持ってるならGLSceneを使え
pc8.2ch.net/test/read.cgi/tech/1163269079/

504 名前:500 mailto:sage [2006/12/17(日) 00:10:25 ID:M5k9J6da]
再びQuadrupleDで質問です。
マルチウインドウはあきらめ、シングルで作っています。
が、FormKeyPressがなぜかきかない状態になってしまうのですが、これは仕様でしょうか?
ノベルゲームなのでEnterクリックで次のページへみたいな事がしたいのですが・・・。


505 名前:500 mailto:sage [2006/12/17(日) 00:50:10 ID:M5k9J6da]
>>504
すいません。QuadrupleDに対するいいがかりでした・・・。
なんか変なものにフォーカスがあたってたっぽいです。 まことに申し訳ない・・・。

506 名前:名前は開発中のものです。 mailto:sage [2006/12/20(水) 23:59:16 ID:1h6PxXPo]
TLISTが遅いってマジデスカ?

507 名前:名前は開発中のものです。 mailto:sage [2006/12/21(木) 00:13:05 ID:UlDdTy26]
いらん機能がてんこもりだからな
ゲームには向いているとはいえないと思う

ただ、Quadruple Dの中では、オブジェクトの親子関係を記録するものとして結構使われている。
Quadruple Dの速度が遅くなっている原因の一つかな。

508 名前:名前は開発中のものです。 mailto:sage [2006/12/21(木) 14:45:48 ID:S3YP8Kbn]
やべ、TList使いまくい。便利だから・・・。

509 名前:名前は開発中のものです。 mailto:sage [2006/12/21(木) 16:55:15 ID:qxmiawqV]
TListが遅いかどうかなんて配列が遅いかどうかと同義みたいなもんだろ
用途にあってれば速いしあってなければ遅い。それだけの話。
ランダムアクセスしたければ配列だし頻繁な追加削除があるならリストを使うだけ。

510 名前:名前は開発中のものです。 mailto:sage [2006/12/21(木) 21:08:23 ID:eFg0mGD4]
  |l、{   j} /,,ィ//|     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  i|:!ヾ、_ノ/ u {:}//ヘ     | あ…ありのまま 今 起こった事を話すぜ!
  |リ u' }  ,ノ _,!V,ハ |     < 『おれはTListがリスト構造だと
  fト、_{ル{,ィ'eラ , タ人.    |  思っていたらいつのまにか配列を使っていた』
 ヾ|宀| {´,)⌒`/ |<ヽトiゝ   | 催眠術だとか超スピードだとか
  ヽ iLレ  u' | | ヾlトハ〉.   | そんなチャチなもんじゃあ 断じてねえ
   ハ !ニ⊇ '/:}  V:::::ヽ. │ もっと恐ろしいものの片鱗を味わったぜ…
  /:::丶'T'' /u' __ /:::::::/`ヽ \____________________


511 名前:名前は開発中のものです。 mailto:sage [2006/12/21(木) 23:14:34 ID:UlDdTy26]
>>509
前にも書き込みあったけど、TListは、呼び出すたびに範囲チェックとかしてるんで遅いという話。
TListと同等な機能でそういう余計な処理を省いたクラスを作るか、
あるいは、素直に動的配列とかを効率よくするとかで普通にTListを使うより速い。


というか、TListのソースくらいみんな嫁よ。
Turboにはソースもついていて結構勉強になるんだからさ。



512 名前:511 mailto:sage [2006/12/21(木) 23:15:45 ID:UlDdTy26]
誤:素直に動的配列とかを効率よくするとかで
正:素直に動的配列とかを効率よく使用するとかの方が

スマソ

513 名前:名前は開発中のものです。 mailto:sage [2006/12/22(金) 00:09:39 ID:r5hyVZgI]
TListとリスト型
d.hatena.ne.jp/Ko-Ta/20061217

514 名前:名前は開発中のものです。 mailto:sage [2006/12/22(金) 01:01:38 ID:jF/De0Rs]
>>513
やっぱりTListは余計な範囲チェックをしてくれているな。

515 名前:名前は開発中のものです。 mailto:sage [2006/12/22(金) 03:04:55 ID:jF/De0Rs]
でまあ、だいぶ前の文章なんだけど
ttp://www14.big.or.jp/~amiami/fsk/old/opt/index.html
なんていうKo-Taたんのアセンブラの使い方が甘いという批判の文章があったよそういえば。

そのAlphalib16も既に配布されていないけどね。

516 名前:名前は開発中のものです。 mailto:sage [2006/12/22(金) 11:03:31 ID:A+PcdcmB]
動的配列の話(TStringListも同時に)がタイムリーにDelphi MLに出てるね。

517 名前:名前は開発中のものです。 [2006/12/23(土) 16:32:40 ID:n4a5jraM]
まあ、俺も、ソフトウェアレンダリングやってた時期は、
ペアリングとか意識してやってころもありましたw
若かった

もうTListでも十分な速度になったこのごろ

518 名前:名前は開発中のものです。 [2006/12/23(土) 16:37:59 ID:n4a5jraM]
>>516
すごいな。

・動的配列をSetLength(a, Length(a)+1)で再確保
とか、初心者が陥る罠だな

519 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 18:05:09 ID:H8lL9szl]
>>518
え、それだめなの?

520 名前:名前は開発中のものです。 [2006/12/23(土) 18:16:41 ID:9Ws+ptOY]
>>519
一回ぐらいなら、いいんだけど、Delphi MLのは、頻繁に(たぶんループ内で)よんでいるようだから。
動的配列の、SetLength(a, Length(a)+1)は、呼ぶ度に毎回メモリを再確保→コピーするわけで。

TListは、内部は、動的配列なんだけど、
追加するときに、次追加してもいいように、余分にメモリを取るんで、
頻繁に要素を追加してもけっこう大丈夫。

まあ、でもメモリプールっつーか、ゲームで使う場合は、あらかじめ最大値決める方が
速度は速いけど。

と思ってたけど、BDS2006のFastMMが適当にメモリ管理しても速いので楽だ

521 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 18:17:58 ID:H8lL9szl]
>>520
サンクス



522 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 18:25:59 ID:vy9OXCiI]
だれか>>287のタスクシステムのサンプル保存してる人いない?
ループ内でデータを動的に扱うのが怖くなってきた。

523 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 18:49:09 ID:NmhLCW8q]
>>517
そういや、部員弐号たんのAlphaBitmapも
インラインアセンブラで高速化しているのを売りにしているにしては、
ペアリングが甘いって誰かが言ってたなう
まあ、今更AGIパーシャルストールは気にしなくていいだろうけどさ。

>>522
俺が>>287だけど、何か用?
タスクシステムについてはあの頃とまたちょっと考え方が変わってきたもんで、今サンプルを書き直したら別物になりそうなんだけどな。

ああそういえば、アマゲニュースが>>287をネタにしていたな。
自作自演の話を聞いて以来、俺はアマゲニュースが嫌いなんでw
今後アマゲニュースはあのサンプルに言及しないでくれよ

524 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 19:21:41 ID:vy9OXCiI]
いや、何か用?っていうか…
参考にしたいので誰か持ってないか聞いてみたのです。
なんか機嫌悪い?

525 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 20:05:01 ID:NmhLCW8q]
いやいや全然機嫌悪くないけど。
どうせなら新たに書き直すからちょっと待ってくれ。
つか、あれからも1年半経っているのか。

526 名前:名前は開発中のものです。 mailto:sage [2006/12/23(土) 20:07:13 ID:u7jsUpnU]
俺1年半前のソース見る勇気ねぇよ・・・

527 名前:名前は開発中のものです。 [2006/12/23(土) 21:11:15 ID:n4a5jraM]
>>525
俺も参考にしたい。upup!!

528 名前:525 mailto:sage [2006/12/23(土) 22:21:39 ID:u1UtDTqz]
今日は眠いから勘弁
明日はクリスマスだし

週初めくらいに作るよ

529 名前:名前は開発中のものです。 mailto:sage [2006/12/24(日) 09:56:40 ID:gaVYJqUB]
神光臨

530 名前:名前は開発中のものです。 mailto:sage [2006/12/24(日) 10:05:27 ID:xZkcw6Hl]
タスクシステムってものの考え方であって
その実装方はバラバラで本流がないんじゃなかったっけ?

531 名前:名前は開発中のものです。 mailto:sage [2006/12/24(日) 11:25:45 ID:C+J5x0e3]
>>530
その通り
あえて言えば本流は昔のゲーム会社のやり方だろう

で、Delphiで良いサンプルを公開しているところがあったんだけどどこにあったかな



532 名前:525 mailto:sage [2006/12/26(火) 17:47:36 ID:/KqnqQ4g]
新たに書き直そうかと思って、
1年半前書いた奴の元にさせてもらったソースが置いてあったサイト見てたら、
なんか同じ人(達?)が新しく書いていたよ
ttp://omoikane.my-sv.net/gcss/tasksystem/index.php

こっちの方がいいような気がしてきたのでこっちを見てくれとりあえずスマソ

533 名前:名前は開発中のものです。 mailto:sage [2006/12/26(火) 21:49:47 ID:V5IG7f0e]
ソース読みづれぇえええええええ

534 名前:名前は開発中のものです。 mailto:sage [2006/12/26(火) 22:05:02 ID:AESkT9oL]
神没落

535 名前:名前は開発中のものです。 mailto:sage [2006/12/27(水) 06:30:55 ID:F1YvMG4f]
頑張って嫁

536 名前:525 mailto:sage 8989 [2006/12/27(水) 07:07:07 ID:iMJZ8Mx5]
ttp://www.bnbest.net/uploader/upload.html

とりあえず1年半前のソースを再アップしてみた
元々がCマガの記事由来なので再配布禁止とか明言してみる
あと、あまげにゅーすは使用禁止w

単純な分、わかりやすいかもね
で、これのどこが今思うとあまりよくないかというと、
ワークエリアの使い回しのために、子クラスへのキャストをしているところね。
ここで間違って他クラスとか記述ミスすると、全然関係ないところでデバッグ方法がめちゃくちゃ分かりづらい例外が頻発するのよこれが。
そんなわけで、このソースを元にゲーム作ったら、途中で意味不明バグが頻発して完成どころではなかった。
そういう部分で、>>532のがよさげっぽい。

537 名前:525 mailto:sage [2006/12/27(水) 07:54:10 ID:iMJZ8Mx5]
お、ナイスな時間だった
こりゃ縁起がいいや

538 名前:名前は開発中のものです。 mailto:sage [2006/12/28(木) 16:38:44 ID:s6uD4tn3]
UnDelphiXがジョイスティックを変に認識する…
ボタンに反応しない上に↑キーを押すと←キーに認識する…
あきらめてMMSystem使うか…

539 名前:名前は開発中のものです。 mailto:sage [2006/12/28(木) 16:41:31 ID:0xep+dCf]
入力部だけ、Quadruple DのDDIDEXを使ったら?

540 名前:名前は開発中のものです。 mailto:sage [2006/12/28(木) 16:51:38 ID:s6uD4tn3]
>>539
なるほど!さんくす!

541 名前:名前は開発中のものです。 [2007/01/02(火) 09:09:57 ID:0JGKnZK5]
>>532-536
サンクス。
そのサイトしらなかった。
参考になります



542 名前:名前は開発中のものです。 [2007/01/02(火) 09:23:53 ID:0JGKnZK5]
うーん・・・
>>532を見てみたけど、
データをrecordで持たないといけないとか、クラスメソッドにしないといけないとか
クラスの中にクラス持つとか、根本的な問題は回避できてないね。

中途半端にオブジェクト思考している意味がわからないし。
C言語でタスク処理しているのと変わらない雰囲気を受ける。

開発時間や、開発メモリと実行時間とのトレードオフを考えるとと、
普通にオブジェクト指向できた方がいい気が・・・

543 名前:名前は開発中のものです。 mailto:sage [2007/01/02(火) 09:43:14 ID:nzIkUmBg]
>>542
そうけ?
俺は大いに参考になったけど。

結局あれは、オブジェクト指向を、Delphi言語仕様で用意された書き方にこだわらず、
タスクシステムと整合性をとるために自前で実装したものだと理解した。
でもたしかに、クラスメソッドを全部Publicにしている意味はないな。

まあ、既存のオブジェクト仕様言語に乗っかってしか開発しない奴には難しいかもね。
C++じゃなく、C言語でオブジェクト指向なコードをかけるくらいの知識は必要だろうな。

544 名前:名前は開発中のものです。 mailto:sage [2007/01/02(火) 09:55:11 ID:nzIkUmBg]
蛇足だが、クラスメソッドを全部Publicにしている意味がないってのは、
メソッドポインタに代入されたメソッドを使う場合は、
PublicとかProtectedとかのアクセス権の意味がなくなるから、
それだったら、他のユニットから直接呼び出されないようにPrivateするのが正しいだろってこと。

その部分については、あのソースコードはおかしいな。
誰か作者に教えてやれよ。

545 名前:名前は開発中のものです。 [2007/01/02(火) 10:51:05 ID:0JGKnZK5]
> まあ、既存のオブジェクト仕様言語に乗っかってしか開発しない奴には難しいかもね。
> C++じゃなく、C言語でオブジェクト指向なコードをかけるくらいの知識は必要だろうな。

いや、時代に逆行した書き方が生理的に合わないんですよ・・・
書けないわけじゃなくて、見てて(書いてて)イライラするというか

546 名前:名前は開発中のものです。 mailto:sage [2007/01/02(火) 14:00:56 ID:nzIkUmBg]
>>545
いまっぽく富豪的に書きたいという言うならそれはそれで正解だろう
でも、速度を優先する書き方は、ゲームに限らず知識として持っておくと普通の開発でも便利に使える
タスクシステムもその一つ
富豪的プログラミングというのが、ハードウェアの進化速度を前提に、プログラミングによる高速化を否定するところから始まっているからな

547 名前:545 [2007/01/02(火) 20:49:52 ID:0JGKnZK5]
変な言い方した。
昔風に作ってる人、気を悪くしたらスマソ。

>>546
100MHz時代から、富豪的にやってるので、どうもクセが抜けないのですよ・・・。
当時でも動的確保で、普通に動いたましたから・・・

548 名前:名前は開発中のものです。 mailto:sage [2007/01/02(火) 22:12:32 ID:nzIkUmBg]
ADVなんかだと速度にあまりナーバスになる必要もないしな

549 名前:名前は開発中のものです。 mailto:sage [2007/01/03(水) 02:29:26 ID:uxX4wf1/]
結局、描画とMIDIがべらぼうに遅いって訳ね。

550 名前:名前は開発中のものです。 mailto:sage [2007/01/03(水) 10:54:08 ID:4jEdIOwT]
>>549
外部MIDIは遅くないだろ

あと、描画は確かに重い処理だけど、それを言い訳にしてボトルネックが描画以外である状態を見過ごすのも進歩が無い。
実際、ゲーム開始直後とか、ボス出現直後とか、メモリを大量に確保しに行く場面でFPSが落ちている、
メモリ確保について無頓着っぽいゲームとかあるしな。

551 名前:名前は開発中のものです。 mailto:sage [2007/01/07(日) 02:26:46 ID:wwxaiatr]
QDでゲームのスクリーンショットを保存したいんだけど、単純に Form の Canvas を保存すればいいのかな?
ここなんかを見るとスクリーンショットを撮るためにいろいろやってるんだけど。
www.c3.club.kyutech.ac.jp/~sukiyaki/index.php?%A5%B9%A5%AF%A5%EA%A1%BC%A5%F3%A5%B7%A5%E7%A5%C3%A5%C8



552 名前:名前は開発中のものです。 [2007/01/08(月) 22:07:03 ID:dC5e7Xrd]
QD3のサンプル(\tutorial\DGCarad\hello)で現在時刻を取得しようとしたらうまくいかねえ・・・
時間が進まないし、最初に取得した時間もちょっとずれてる
だれか試してみてくれないか?

procedure TForm1.ApplicationEvents1Idle(Sender: TObject;
  var Done: Boolean);
begin
  caption := FormatDateTime('yyyy/m/d hh:mm:ss', Now);//追加

553 名前:名前は開発中のものです。 mailto:sage [2007/01/08(月) 22:42:13 ID:mkyamgmh]
浮動小数点数の演算精度を落としているからかな

554 名前:名前は開発中のものです。 mailto:sage [2007/01/08(月) 22:54:47 ID:dC5e7Xrd]
>>553
おお、それかも。
これで問題ないように見えるけど、さすがに毎フレームごとにこんなことはできないなぁ。

uses
  Math;
var
  fpu: TFPUPrecisionMode;
begin
  fpu := GetPrecisionMode; //変更前のFPUモードを取得しておく
  SetPrecisionMode(pmExtended); //倍精度に変更
  caption := FormatDateTime('yyyy/m/d hh:mm:ss', Now);
  SetPrecisionMode(fpu); //元に戻す
end;

555 名前:名前は開発中のものです。 mailto:sage [2007/01/08(月) 23:00:24 ID:dC5e7Xrd]
おっとヘルプに
> SetPrecisionMode は,以前の精度制御モードを返します。
って書いてあるな。
>>554のGetPrecisionModeは要らないね。

556 名前:名前は開発中のものです。 mailto:sage [2007/01/08(月) 23:24:18 ID:mkyamgmh]
ゲーム開始時にTimeBeginPeriod(1)・TimeGetTime()・Now()を使って初期値を求めておいて、
ゲーム中はTimeGetTime()で差分を取ればいいんちゃう?
当然最後は、TimeEndPeriod(1)も忘れない

557 名前:名前は開発中のものです。 mailto:sage [2007/01/08(月) 23:59:36 ID:dC5e7Xrd]
>>556
なるほど。こんな感じでいいのかな?
ゲーム中に日付や時間を変更されたらお手上げだけど、そこまで面倒見なくてもいいか。

uses
  DateUtils;
begin
  //nは起動時のNow
  //tは起動時のTimeGetTime
  Caption := FormatDateTime('yyyy/mm/dd hh:mm:ss', IncMilliSecond(n, TimeGetTime-t));
end;

558 名前:545 [2007/01/10(水) 18:09:11 ID:o7h3y59i]
>>549
俺の経験では、処理食うのは、描画と、当たり判定(シューティングとかだと)くらいだなー。
あとはほとんど無視できる。

物理エンジンとか使ってない人のたわごとですが。

559 名前:名前は開発中のものです。 mailto:sage [2007/01/16(火) 19:19:20 ID:21nZzUdF]
WindowsMe&Delphi6で
with MediaPlayer1 do
begin //ExePathはString型の変数で実行ファイルのフォルダのパスが入ってます
 FileName := ExePath + 'Music\a.mp3';
 Open;
 Rewind;
 Play;
end;

こう書いて実行するとなぜかフリーズ&パソ落ちする…
しかもXpが入ったPCで実行した時は正常に動く…

何故でしょうか…

560 名前:名前は開発中のものです。 [2007/01/17(水) 02:30:49 ID:/mCixqQc]
>>559
マルチポストは嫌われるよ・・・

無効でレスしといた

561 名前:名前は開発中のものです。 mailto:sage [2007/01/17(水) 18:01:01 ID:IsVwqnkQ]
>>560
すいません



562 名前:名前は開発中のものです。 mailto:sage [2007/02/10(土) 22:42:19 ID:Qkni2dae]
www.pascalgamedevelopment.com/competitions.php?p=details&c=3

563 名前:名前は開発中のものです。 mailto:sage [2007/02/11(日) 22:54:53 ID:061ESCjQ]
QuadrupleDで3Dをやってみようと思ってgameSpaceLightってのを使ってみたのですが、
とりあえず適当においてSeve→






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<258KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef