[過去ログ] Delphiゲームプログラミング相談室 (976レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
829(1): 名前は開発中のものです。 [] 2006/04/29(土) 13:48:10 ID:P3tEKmOP(1/4) AAS
 「タイトル→ゲーム→ED」とかのシーン遷移ってどうやってる? 
 じゃんけんゲーみたいな単純なもんなら行き当たりばったりでなんとかなるけど、 
 それなりの規模のゲームを目指すなら、咄嗟の拡張に強いシステムを組まなくちゃいけないよな 
 やっぱりコーディング前に仕様書みたいなもの書いたりするんだろうか 
 どうよ? 
830(1): 名前は開発中のものです。 [sage] 2006/04/29(土) 14:07:38 ID:JeSIblMt(1/2) AAS
 自分は各シーンクラスと 
 そのシーンを全て持たせた管理クラスを作ってる。 
  
 ループから呼び出すのは管理クラスで管理クラス内でシーンごとに分岐。 
 シーン内で違うシーンへの移行フラグが立ったら、 
 管理クラスがそれを受け取って…みたいな。 
  
 一般的なやり方だと思ってやってたんだけど違ったらスマン 
831(1): 名前は開発中のものです。 [sage] 2006/04/29(土) 14:10:34 ID:p+54dQLt(1) AAS
 おいらの場合は、Stateパターンで。 
 次の状態をクラス型で返して状態遷移。 
 次は、そのクラス型を元にStateを生成。 
 共用するデータは、管理クラスに持たせる。 
  
 でも、あまりスマートじゃない・・・ 
832: 名前は開発中のものです。 [sage] 2006/04/29(土) 14:34:17 ID:P3tEKmOP(2/4) AAS
 >>830 
 >>831 
 なるほど。 
 やっぱ管理クラス内でシーンクラスを遷移させるのが分かりやすいのかも。 
 拡張するのも簡単だし。 
 831氏の場合は、管理クラスがシーンクラスを直接見てるわけじゃなくて、 
 シーンクラスが廃棄されるときに次のシーンクラスを作成する、って感じかな。 
  
 おれは最近TListのタスクってやつを使い始めた。 
 例えばstgの弾とか爆発とか、ゲーム内で作成するオブジェクトの数が不定な場合は便利だー。 
833: 名前は開発中のものです。 [sage] 2006/04/29(土) 14:59:34 ID:WOc6+g6+(1) AAS
 俺は、シーン自体を管理させるクラスとかは置いてないな 
  
 ただ、タイトル画面移行手続きに 
  
 全オブジェクト廃棄 
 オブジェクトA生成 
 オブジェクトB生成 
 オブジェクトC生成 
  
 ってやってるだけ 
 ABCはその画面を作る元になる粉みたいなキャラとか。 
  
 意外と扱いやすい 
834: 名前は開発中のものです。 [] 2006/04/29(土) 15:52:47 ID:KY27NHQk(1/2) AAS
 >>829 
 俺は普通にタスクシステムでやっている 
835: ぬ [sage] 2006/04/29(土) 18:16:22 ID:P3tEKmOP(3/4) AAS
 みんなレスサンクスですよ。 
 やっぱそれぞれ一長一短があるし、作るもんによって実装方法は違うよなー 
  
 ところでQD使ってて、小数の割り算の精度が悪くなる原因がわかった。 
 DirectXの初期化部分でFPU設定が変わっちゃうからみたい。 
 CreateDeviceの呼び出し時にD3DCREATE_FPU_PRESERVEを加えたら直った。 
 QDのCreateDeviceはこれ付いてないみたいだから、小数の計算がなんかへんだなーと思ったら 
っていうか既出ですか? 
836: 名前は開発中のものです。 [sage] 2006/04/29(土) 20:57:45 ID:JeSIblMt(2/2) AAS
 知らなんだ 
837: 名前は開発中のものです。 [] 2006/04/29(土) 22:28:02 ID:KY27NHQk(2/2) AAS
 かなり昔に、 
 Set8087CW(Default8087CW); 
 を使わんと、QDでのフォント描画がおかしいという話があった気がしないでもない。 
 それも同じことなのかな。 
838: ぬ [sage] 2006/04/29(土) 23:30:37 ID:P3tEKmOP(4/4) AAS
 GetPrecisionModeでFPUの精度を調べてみたら、 
  
  DirectX初期化前 → pmExtended 
  DirectX初期化後 → pmSingle 
  
 単精度になってた。 
SetPrecisionMode(pmExtended);を実行したらまた拡張精度に戻せるけど、 
 戻しちゃうとDirect3Dのパフォーマンスが落ちるらしい。 
 どうしたらいいんだろう。 
  
 以下検証こーど。DGCaradをフォームに貼り付けてから実行。 
  
 uses Math; 
 procedure TForm1.FormCreate(Sender: TObject); 
 var 
   i, j: Cardinal; 
   s: Extended; 
 begin 
   //コメントアウトすると計算結果が変わる? 
   //SetPrecisionMode(pmExtended); 
  
   i := 2; 
   j := 5; 
   s := i / j; 
  
   Form1.caption := FloatToStr(s); 
 end; 
839(3): 名前は開発中のものです。 [sage] 2006/05/03(水) 11:21:30 ID:C+qvBRVh(1/2) AAS
 QD3で使うsxファイルってテクスチャ読まないのですか? 
 Xファイルとbmpは同じフォルダに入ってる。 
 色付きオブジェクト以外真っ白・・・・ 
840: 名前は開発中のものです。 [] 2006/05/03(水) 11:34:15 ID:A5mWBe1p(1) AAS
 志村ー、TSXFrame.texture 
841: 839 [sage] 2006/05/03(水) 12:11:17 ID:C+qvBRVh(2/2) AAS
 え?手動で読み込み? 
 まさか貼り付け座標も・・・? 
 急激にテンション低下orz 
842(1): 名前は開発中のものです。 [] 2006/05/03(水) 19:30:19 ID:TKRZ+xS1(1) AAS
 >>839 
 QD3の方のソースを書き換えちゃえば? 
843(1): 839 [sage] 2006/05/03(水) 19:40:39 ID:QKQhcnIL(1) AAS
 それってsxファイルの中に入ってるであろうテクスチャファイル名やUV値をGETして 
 TSXFrame.textureでセットすると言う事でしょうか? 
 それともハナからファイルをプログラム側で管理してセットするということでしょうか? 
 前者にしてもsxファイルのフォーマットやらなにやら不明だし・・・ 
 後者・・・・って無いよね? 
 Xファイルビューワが相手のテクスチャ情報をあらかじめ知ってるわけないし。 
  
 QD3のソース書き換え出来るほどのスキルは無いっす。 
 つかこういう仕様なのQD3? 
844(1): 名前は開発中のものです。 [] 2006/05/04(木) 00:28:29 ID:59sQee+g(1/2) AAS
 あのなあ、文句ばかり言わず、頭使えよ 
  
 たとえば、メタセコでxファイル作って、その後sxに変換とかやるなら、 
 メタセコ上でUVを設定するんだよ 
845(1): 名前は開発中のものです。 [] 2006/05/04(木) 00:37:57 ID:59sQee+g(2/2) AAS
 つか、sxファイルにテクスチャファイル名なんて入っていないだろそもそも。 
 sxlib9.pasくらい、一度は自分で読んでみろよ。 
 わざわざソースが公開されてんだから。 
846: 842 [] 2006/05/04(木) 01:34:20 ID:bLT7LC2U(1) AAS
 >>844-845 
 俺のもやもやを全て言ってくれた 
847: 名前は開発中のものです。 [sage] 2006/05/05(金) 00:27:40 ID:HrIbIgnJ(1) AAS
 >>843 
 i     _.,,,,.,..\  /  リ,;;;;;;:: ;;;;;:: ;;;;; ::;;;;;; \  |!   人 从  
   i |   .;';;;;゙;;゙;ミミ )ノ   (彡ノり/リノ" ミ;;;;;;,,,.. ゝ |!  ) あ (  
  i| |i   i;;;;;;;;;;;;;rj      );;; ヾ、;;;;...__,,  );;;;;;;; ヾ   ) お (  
  i| |.i    ':;;;;;;;;;;' j.     i:::) ` ;;ー--、` 〈;;;;;;;::;;; i  ) お (  
  i| i i ;'.⌒''~゙,.. `⌒'ヽ.i i::/   ^:::::::.. i  ,ll/ニi ;; l  ) / (  
  l| | i ;i::! ..;ノ ::;.... i )i l ヾヽ''    ゚   ))ノ;; / ) っ (  
   l | i. `i  ::: : .:::  :| 'ノ |  | iにニ`i,     (_/i;;; | ) !! (  
    | i. |  ::. .::  ::l / || ! `ー‐'"    /  ゞ:l つ (⌒  
    ,-‐‐!  ::;:   ::|i_.,-||、 ! " ̄  ,,,. /,;    ミi |l  
 .  i, `';:〉 ....;:::::.. ..:::゙   |.|i ヾ二--;‐' ,;; ,;   ミ ||i  i|  
    \.i'´゙゙"' ;:: '''゙゙"'; ,,l | _|彡"  ,' ; /' ̄^ ̄''''\||  
      ヾ_,;;;i!、._  _,;..-' .-'"  〈    ; /  
848(1): 名前は開発中のものです。 [sage] 2006/05/05(金) 11:37:21 ID:dMG6Cjcw(1) AAS
 テクスチャ1枚だけのデータだったら表示できた。 
 でも地形など複数のテクスチャを使ったデータでは無理だった。 
 QD3は2Pカラー仕様だったんだね。 
 普通に答えてくれる人がいなくて残念だ。 
 ソースいじるよりXファイルを普通に扱いたいんでdelphiとQD3を捨てる事にした。 
849: 名前は開発中のものです。 [] 2006/05/05(金) 13:19:34 ID:uVTEszea(1) AAS
 定期的に変な奴が現れるな 
850: 名前は開発中のものです。 [] 2006/05/05(金) 17:48:57 ID:9YveBbzB(1) AAS
 定期的に知能障害 
851: 名前は開発中のものです。 [sage] 2006/05/05(金) 17:59:46 ID:NMiPE3j0(1) AAS
 >>848 
 pro以上ならそのDelphi欲しいんだけど。 
 捨てる前にくれ! 
852: 名前は開発中のものです。 [sage] 2006/05/05(金) 22:22:36 ID:a2iRC592(1) AAS
 つか、QD3くらい使えないやつが、他の言語とDirectXを使えこなせるとは到底思えんwwwww 
853: 名前は開発中のものです。 [] 2006/05/07(日) 15:02:21 ID:M5fzGaSF(1/3) AAS
 つーか、おもしろいゲームが作れなさそう 
上下前次1-新書関写板覧索設栞歴
あと 123 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.024s