[過去ログ] Delphiゲームプログラミング相談室 (976レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
709: 名前は開発中のものです。 [] 2005/12/13(火) 00:19:40 ID:Bq3u+gAG(1) AAS
>>708アマゲたん乙
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