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

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
709: 名前は開発中のものです。 [] 2005/12/13(火) 00:19:40 ID:Bq3u+gAG(1) AAS
>>708
708(1): 名前は開発中のものです。 [sage] 2005/12/12(月) 23:56:05 ID:qoTkd+m4(2/2) AAS
広告が悪みたいな風潮はいただけんな
一生google使うなよ
アマゲたん乙
710: 名前は開発中のものです。 [sage] 2005/12/17(土) 07:47:36 ID:n9elomN4(1) AAS
グラはファミコン以下ですが、
個人的には結構面白いサッカーゲームです。
一人用ですが。

某雑誌に掲載されてた記事
「一試合3分から楽しめる本格派サッカーゲーム。
グラフィックは簡素だが、やり込み派にはオススメしたい一本。
 
こだわりのカスタマイズが面白い。
簡素なグラフィックとは逆に、戦術面は細部まで作りこまれている。
システムやプレスのON/OFFから、なんと選手一人一人のポジショニングまで設定可能だ。
こだわりのチーム作りが楽しめる。」

フリーゲームなんですが、管理人がいないらしいので、
サッカー好きでプログラムのできる方居たら助けてやってください。
このゲームで対戦できたら面白いと思うので

RolePlaying Eleven
外部リンク:ime.st

最近立った2chスレ
2chスレ:netgame
711
(2): 名前は開発中のものです。 [] 2006/01/03(火) 20:00:41 ID:yxS2cKCH(1) AAS
Delphi6 とunDelphi XでSTGをつくっています。

敵を倒したときに
レンズフレアっぽい爆発やパーティクルを散らしたり
したいんですが、どういう方法をとればいいでしょうか。

TDirectDrawSurfaceって
矩形描画関係のメソッドはいろいろあるんですが
(DrawAdd,DrawAlpha,FillRectAdd,FillRectAlphaなど)
楕円や線を描画するメソッドは用意されていないようです。

Canvasにはellipseやmoveto&linetoがありますが、
半透明合成や加算合成はできませんし。

何かよい方法がありましたら教えていただけるとうれしいです。
712
(1): [sage] 2006/01/03(火) 21:42:35 ID:E1OTiKsy(1) AAS
DelphiXのチュートリアルにも書いてありますが、サーフェイスの画素データに
直接アクセスして描画してみたらどうでしょう。
外してたらごめん。

procedureTForm1.Button1Click(Sender:TObject);
var
 ddsd:DDSURFACEDESC;

 function DDScanLine(y:Integer):Pointer;
 begin
  {TBitmap.ScanLine と同じ働きをします}
  Result :=Pointer(Integer(ddsd.lpSurface)+y*ddsd.lPitch);
 end;
var
 y:Integer;
begin
 ddsd.dwSize :=SizeOf(ddsd);
 ifDXDraw1.Surface.Lock(ddsd)then
 begin
  {ddsd.dwWidth サーフェースの幅}
  {ddsd.dwheigh サーフェースの高さ}
  {ddsd.lpSurface ピクセルデータ(0,0)へのポインタ}
  {ddsd.lPitch 下の行のスキャンラインへのオフセット}
  {Abs(ddsd.lPitch)1ラインで使用しているバイト数}
  try
   for y:=0 to ddsd.dwHeight-1 do
    FillChar(DDScanLine(y)^,Abs(ddsd.lPitch),Y);
  finally
   DXDraw1.Surface.UnLock;{これが必須}
 end;
end;
713
(1): 名前は開発中のものです。 [sage] 2006/01/03(火) 22:04:25 ID:/V5oIo2f(1) AAS
>>711
DirectDrawを使って半透明や加算合成をやりたい時は、
サーフェスに自前で描画するか、
CanvasのPen.Modeを使った擬似的な合成をやるしかない。

サーフェスに描画するときは、システムメモリにサーフェスをおかないと
致命的なほど速度が遅くなるし、システムメモリにおいてもまともな速度を出すには、
かなりのチューニングが必要になる。

Canvasを使う場合は、思ったとおりの画像がでない。
また、かなり遅くなるので注意。

よって、DirectDrawはやめてDirect3D使うのが一番簡単だったりする。
714: 711 [sage] 2006/01/04(水) 01:11:02 ID:Z7OuzLUo(1) AAS
回答どうもです
Inside DelphiXのサンプルを弄って試行錯誤しているような段階なんで
覚束ないんですが

>>712
あらかじめ円の画像を用意しておく

DXDraw1.SurfaceをLock

DDScanLineで読み出して円の画像と合成

Unlock
というやり方でいいんでしょうか

>>713
なかなか厳しいんですね
Quadruple Dのサンプルをみて、こういうのがDelphi Xで出来たらいいな、と
思ったもので
Extreme Shooters (beta4.53)
外部リンク[html]:www-fu.magma.ne.jp

Direct3Dは残念ながら未だ手付かずですが
後学のため、大まかなやり方でも教授いただければ幸いです
715: 名前は開発中のものです。 [sage] 2006/01/04(水) 08:39:53 ID:FbMi4kv7(1) AAS
ていうか、俺もDirectDrawやってるプロジェクトがあるんだが、
ビデオカードがもう2D対応をあきらめてるんだよね。
もう、最新のカードでも全然速度がでない。時代を感じるよ
716: 名前は開発中のものです。 [] 2006/01/04(水) 14:54:21 ID:CMUGU7Z6(1/2) AAS
素直にQuadrupleD3系を使えと言うことやね
717: 名前は開発中のものです。 [sage] 2006/01/04(水) 19:18:34 ID:tTl7AeZQ(1) AAS
なってマァの人?
718
(1): 名前は開発中のものです。 [] 2006/01/04(水) 21:02:37 ID:CMUGU7Z6(2/2) AAS
違うが。
つーか、マァの人ってここ何年なにやりたいんだろうさね。
719: [sage] 2006/01/04(水) 23:13:28 ID:fuT7K2Cj(1) AAS
>>718
や、本人だけども。
720: [] 2006/01/25(水) 00:27:36 ID:daGWhNcX(1) AAS
というわけでなんか作ってみたよ。
外部リンク[lzh]:gamdev.org
721: 名前は開発中のものです。 [] 2006/02/09(木) 10:54:46 ID:6cZnww8L(1) AAS
Delphi売却記念age
722
(1): 名前は開発中のものです。 [sage] 2006/02/24(金) 10:56:52 ID:tiM9zU90(1) AAS
マァの人、HPどこいったよ
723
(1): [] 2006/02/27(月) 00:59:06 ID:QHDsHNqO(1) AAS
誰もいないなぁ。
QDでフルスクリーン表示のときWindowsキーとかAlt+TABを押すと最小化されるじゃん。
そんとき画面の左下にキャプションが残って完全にタスクバーに格納されないのが嫌なんだけど
どうしたらいいんだろう。

こんな感じに残るのがイヤ
画像リンク


DirectXSDKのサンプルはちゃんとタスクバーに格納されてるんだよー。
ソースも見てみたけど、これについて特になにかしてるようには見受けられないのが困る。

ちなみに画面の切替はこんなふうにしてます
外部リンク[lzh]:members3.jcom.home.ne.jp
724
(1): 名前は開発中のものです。 [sage] 2006/02/27(月) 23:33:30 ID:YnqZOFPa(1/3) AAS
>>723
それは、VCL使ってるからです。

VCL使ったアプリは、実は、ウインドウサイズ0のMDIアプリなんですよ。
デスクトップ全体を使ったMDIアプリだと思うと、挙動が一致するよね?

結論だけいいますと、嫌だったら、VCL使わずにウインドウを出せ!ということになります。
そんなに難しくないから、やってみてもいいよ。
サンプルはC言語で一杯あるし。
725: 名前は開発中のものです。 [sage] 2006/02/27(月) 23:35:52 ID:YnqZOFPa(2/3) AAS
ああ、でもやる方法あるかも。
自分が、昔作ったゲームで上手く最小化してるみたい。
探してみる。
726: 名前は開発中のものです。 [sage] 2006/02/27(月) 23:44:39 ID:YnqZOFPa(3/3) AAS
勘違いだったかもしれん。
ただ、Alt+Tabぐらいなら、メッセージフックして自前で最小化すればいけるかもしんない
727
(1): 名前は開発中のものです。 [sage] 2006/02/28(火) 06:08:09 ID:1nhLP94A(1/2) AAS
>>724
なるほど、たしかに挙動はMDIと同じだぁ。
フックはWIn9x系で上手くいかなかった経験があるので見送ってみるテスト。

というわけでVCLに頼らないでウィンドウ作ってみた。
なんか上手くいったみたい。
外部リンク[lzh]:members3.jcom.home.ne.jp

ループ部分が良くないのかわからないが、スプライトを同時に500個とか表示させると
システムを巻き込んで重くなる・・・。訳ワカンナイね
これまでどれだけVCLの恩恵にあずかってたか今になって知ったよ。

なんかおれの日記みたいになってきたのでこのへんで去る。
728: 名前は開発中のものです。 [sage] 2006/02/28(火) 06:13:37 ID:1nhLP94A(2/2) AAS
ごめん、640*480のテクスチャを500回描画してた。
そりゃ重くなる罠
729: 名前は開発中のものです。 [sage] 2006/03/01(水) 17:06:54 ID:SHZqLszk(1) AAS
そりゃすごい
730
(1): 名前は開発中のものです。 [sage] 2006/03/02(木) 00:48:21 ID:FKit8L/b(1) AAS
>>727
メインループは、あれでいいと思う。
でも、うちだとウインドウ出た後、死んだw

---------------------------
アプリケーション エラー
---------------------------
EInvalidOperation がモジュール Project1.exe の 000461FC で発生しました。

コントロール '' は親ウィンドウを持っていません.

---------------------------
OK
---------------------------
731
(1): [sage] 2006/03/02(木) 22:26:15 ID:JE6uGfoU(1) AAS
>>730
うはwwおkwwwww

DelphiXにいい解決方法が用意されてたのでそれを使ってみる。
こうすればTFormを継承すればいいだけなので簡単かも。
テストしやすいように、今回はQD3使いました。
外部リンク[lzh]:members3.jcom.home.ne.jp
732
(2): 名前は開発中のものです。 [sage] 2006/03/04(土) 12:55:37 ID:ya+Z7cQ4(1) AAS
ゲーム音楽をMP3でやりたいと思っているのですが、QDでは無理でしょうか?
Media Playerはあんまり使いたくないのですが、その他の方法をご存知の方
教えていただけないでしょうか?
733
(1): 名前は開発中のものです。 [sage] 2006/03/04(土) 17:45:35 ID:21toyYwx(1) AAS
>>732
MP3より、Oggおすすめ。
Ko-Taさんとこに、QDでOgg再生するライブラリあったはず。

>>731
うごいたよー

CreateParamsで、普通のウインドウとして生成する方法があったのか。
氏らなんだ。
1-
あと 243 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.014s