[過去ログ] Delphiゲームプログラミング相談室 (976レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
828: 名前は開発中のものです。 [sage] 2006/04/26(水) 20:26:49 ID:TbDvNo5r(1) AAS
Virtual;

Virtual;Abstract;

の違いがわかったー!!!
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
1-
あと 124 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s