鬱だ氏のう DirectX 2
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGマターリと技術情報交換しましょう。
前スレ「鬱だ氏のうDirectX」
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=966655286
関連スレ「初心者はここで聞け!DirectX相談室」
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=991795568
0652デフォルトの名無しさん
NGNGRPGの自動戦闘やSTGの自動連射を避けるために
連射パッドでの連射を無効にしたいってのじゃない?
0653650
NGNGその通りです。
ソフト連射を作るのではなく、連射パッドを無効にしたいんです。
0654デフォルトの名無しさん
NGNGそもそもこの場合、ハードウェアの機能を無効にするということは現実的ではないですし。
目的が自動連射を避けるということは、
ツールを使っての連射も防ぐ必要があるので、
(つまり連射付きのジョイパッドかどうかは問題でない)
入力された値から見るしかないですね。
0655デフォルトの名無しさん
NGNG0656650
NGNGはい。
それで入力される間隔が一定ならば良いのですが、>>650にもあります通り
一定とならない(しかも時折100msec近い間隔になることもある)ので
苦労しています。ツールの場合は一定となるかもしれませんが…。
現在は、
連射の間隔時間を一定数分保存しておき、同一の間隔時間が一定の割合を超えれば
連射パッドまたはツールを使用している。
以上のような案を考えているのですが…。
0657デフォルトの名無しさん
NGNGそれ以下の連射が続くようなら無効化するのが良いんじゃないの
0658650
NGNG特定の連射パッドしか無ければそれでも良いのですが、他の方のご意見にも
あります通り、PCでは時間間隔を自由に設定できる連射ツールがありますので
無理なようです。
自分でも手動で連射して統計を取ったりしてみましたが、結局のところ
時間の間隔を調べてはじく方法は使えないようです。
残念ですがこの機能は実装できそうにないです。
ありがとうございました。
0660デフォルトの名無しさん
NGNG教えて君か?
SetRenderTargetを使ったサンプルを見た?
0661デフォルトの名無しさん
NGNGIDirect3DDevice8::Clear
IDirect3DDevice8::BeginScene
IDirect3DDevice8::EndScene
IDirect3DDevice8::Present
を理解してねーっつー事だよな。
0662デフォルトの名無しさん
NGNG0663デフォルトの名無しさん
NGNG0664デフォルトの名無しさん
NGNGDIKは「キー」に割り当てられているんだぞ。
0665デフォルトの名無しさん
NGNG遅いかもしれないけど、
別に設定画面みたいなものを作って、
『Xms以内の連続押下無効(もっと分かりやすくする必要があるが)』
として、デフォルトを{しない}にすれば?
0666デフォルトの名無しさん
NGNG^キー押してみてどこに押されたフラッグが立ってるか調べたら?
0667デフォルトの名無しさん
NGNGちなみにBltFastでは出来ました。ヘルプ見ても載ってなかったからできないのかな
教えてくんですまそ
0668デフォルトの名無しさん
NGNG「透過処理」はアルファブレンドとカラーキーの
どちらを指して言っているのか不明
0669デフォルトの名無しさん
NGNGそれだとBltでもヘルプにちゃんと出てるしなぁ・・・。
0670デフォルトの名無しさん
NGNG0671デフォルトの名無しさん
NGNG0672デフォルトの名無しさん
NGNG0673デフォルトの名無しさん
NGNG0674デフォルトの名無しさん
NGNGウィンドウで動かしたいし、ウィンドウモードでDirectDraw使う意義あんまりないだろうし。
0675デフォルトの名無しさん
NGNG・単純な使い方しかしていない
・MSのヘルプ&サンプルがすげえ分りやすい
同人や個人でやってるのって思ったより少ないネ
0676デフォルトの名無しさん
NGNG0677デフォルトの名無しさん
NGNGDirectPlayのReceiveでDirectPlay4のQueryInterfaceに失敗しました。
というエラーメッセージが出ます。
エラーメッセージの意味がわかりません。
解決方法とかってあるんでしょうか。
0678age
NGNG0679デフォルトの名無しさん
NGNG0680デフォルトの名無しさん
NGNGDirectPlay4が入っていないとはどういう意味でしょうか
DirectX EventのCallBack時にエラーが出ます。
directPlay.Receive(fromPlayerId,toPlayerId,DxVBLib.CONST_DPRECEIVEFLAGS.DPRECEIVE_PEEK);
↑でエラーがでます。
参考URLはhttp://www.microsoft.com/japan/msdn/directx/japan/dxvb/dxvbdplay.asp
上記サイトのプログラムをC#に移植してみようという試みです。
ちなみにdirectPlay(DirectPlay4)はすでに作成されています。
0681デフォルトの名無しさん
NGNG0682デフォルトの名無しさん
NGNGちなみに、DirectPlayにてCreatePlayerをクライアント側が行ったとき、
サーバー側でDirectX Eventが起こり、そのときに起こるエラーです。
自分でメッセージを送るわけではなく、SYSMSGとして送信されるものです。
インターネットなどいろいろ調べてはいるのですが、
まったく理由がわからずじまいです。
たぶん、ReceiveするときにDirectPlay4が入っていないというのは
いい線行っていると思うのですが、どのようにすればDirectPlay4が
入るのかわかりません。
解決策とかあるのでしょうか。お願いします。
0683デフォルトの名無しさん
NGNGツール作るときにgetDCできないとつらいんだよ。
どうすんだYO!!(´д`;)
0684680
NGNG今は趣味でやってるので特に困ることも無いのですが
やってること自体邪道なのでしょうか・・・
COMについてもっと知らないとならないのだおろうか・・・
鬱だな。。。
0685デフォルトの名無しさん
NGNG0686デフォルトの名無しさん
NGNG0687OpenGL!
NGNG某糞会社の技術に飽き々した方はこちらです。
http://www.opengl.org/
0688680
NGNGNetworkには関係ないが(藁
Socketで自作するのが一番なのだろうか。。。
DirectPlayもなかなかよさげだったのに( ´・ω・)
0689680
NGNG今やりたいのはチャットなわけで・・・
某糞会社もDirectPlayのドキュメントをもっと公開してほすぃ
0690デフォルトの名無しさん
NGNGチャットならDirectorで(^-^*)ニコッ
0691680
NGNG無謀なこと考えてたりするので
今回はChat
んで上手くいったら、グラフィックをのせて簡単な対戦オセロとかで
いいから作ってみようかと。
趣味は気楽で(゚∀゚)イイ!!
MMO作るならWinsockがオススメ。
MOだったらDirectPlayがオススメ。
オイラ今MMORPG作ってるけど、
ネットワーク部分はチャットからハジメタYO!
0693692
NGNGWinsockが使えないんです(泣
Winsockも使おうと試みましたが、
ライセンスがたんねぇよとかってエラーになってしまった。
だからC#のSystem.NET.Socketまわりで一回チャット作ってみますた。
でもこれだと、セッションとかグループとか、プレイヤー周りが弱い
つか自分で作ることになるので、DirectPlayとかだと簡単なのではないか
と考え試行錯誤していた次第でありまする。
0694デフォルトの名無しさん
NGNGどっかのソフトハウスでMMO開発やってるの?
それにしてはなぜにVC#アカデミック?
0695692
NGNGVisual C#→Visual Studio.NET アカデミック
まぁあんまりかわらんが。。。
アカデミックだとWinsock使えないのかも
教育機関の一趣味プログラマーですた
0696DirectX9!!
NGNG0697デフォルトの名無しさん
NGNG趣味でMMO作ろうとしているのか・・壮大な計画だな。
とりあえずMOくらいから始めれば?
0698_
NGNG0699デフォルトの名無しさん
NGNGNV30待ちか?
0700デフォルトの名無しさん
NGNGhttp://robrob.tripod.co.jp/mmo/index.html
0701デフォルトの名無しさん
NGNGすご
0702デフォルトの名無しさん
NGNGIDirectXFileEnumObject::GetNextDataObject()が
DXFILEERR_PARSEERRORを返してwhileループから抜けてしまいます
↑はヘルプを見る限り返さないはずですが・・・
あとIDirectXFileData::GetType()でGUID拾ってくるのですが
これはCOMオブジェクトを作れと言ってるのですか?
ヘルプの
DirectXGraphics->高度なトピック->Xファイル->使い方->ロード
だけだと情報が少なすぎます
どうかご教授お願いします
0703デフォルトの名無しさん
NGNG移動したならその旨報告しような
まさかこっちでも引き続きとか言うんじゃないよね?
0704デフォルトの名無しさん
NGNGサンプルを新規のプロジェクトに張り付けてビルドしてみたのですがリンカが
エラーをだすんですが対応策がわからなくて困っています。
Test2 error LNK2019: 未解決の外部シンボル _DirectDrawCreateEx@16 が関数
"public: long __thiscall CDisplay::CreateFullScreenDisplay(struct HWND__ *,
unsigned long,unsigned long,unsigned long)" (?CreateFullScreenDisplay@
CDisplay@@QAEJPAUHWND__@@KKK@Z) で参照されました。
などのエラーがでます。
どう設定すればいいのでしょうか?
0705デフォルトの名無しさん
NGNGddraw.lib がリンクされてない
0706デフォルトの名無しさん
NGNGメニューのツール、オプションのプロジェクトからVc++ディレクトリではライブラリのパスを
記述したんですけどだめなのでしょうか?
0707デフォルトの名無しさん
NGNGlib自体をリンクする指示がないんじゃない?
0708デフォルトの名無しさん
NGNGわかりました。
ddraw.libを追加したら動きました。
ありがとうございます。
0709デフォルトの名無しさん
NGNGMSDN Online のHPのをみたんですけどいまいちわからなくて...。(;´д`)
0710デフォルトの名無しさん
NGNGhttp://isweb42.infoseek.co.jp/computer/t_tail/program/vsdx8/d3d/010/index.htm
http://isweb42.infoseek.co.jp/computer/t_tail/program/vsdx8/d3d/011/index.htm
0711デフォルトの名無しさん
NGNGhttp://www.t-pot.com/program/prog21.html
0713デフォルトの名無しさん
NGNGっていうかね、ゲーム作る面倒くささがわかった。
でもまぁ頑張るよ。
ライブラリいっぱいある分楽だし。
2Dだけどね。
0714デフォルトの名無しさん
NGNGゲーム製作技術板というのがあるのはご存知?
あんまり参考にならんかもしれんけど
0715デフォルトの名無しさん
NGNG0716デフォルトの名無しさん
NGNGキミもそのオーラをプンプン発してるぞ。
0717デフォルトの名無しさん
NGNG買ってきた本とかには載ってませんでした
UDPでX,Yの情報と値が送られてくるのでそれを書き込みたいのですが
どうかよろしくお願いします
0718デフォルトの名無しさん
NGNGテクスチャをロック!!
↓
サーフェイスメモリへのポインタをゲッツ!
↓
ポインタを書きこみたい位置(y*(x*[ピクセルの大きさ])に移動!!
↓
そこに打ちたい点の色を書きこみ!!
↓
テクスチャをアンロック!!
ミッションコンプリート!!!
0719デフォルトの名無しさん
NGNG「今フルスクリーンで稼動しているアプリがあるかどうか」って、
どうやって調べたらよいんでしょう?
SetCooperativeLevelでDDSCL_FULLSCREEN指定して
フルスクリーンにする方法はいろんなところで紹介されてるのだけど、
そうやって動いているアプリがあるかどうかを調べたいのです。
0720デフォルトの名無しさん
NGNG0721デフォルトの名無しさん
NGNG他のアプリケーションがフルスクリーンモードを使用中に切り替えようとすると、
SetCooperativeLevelがDDERR_EXCLUSIVEMODEALREADYSETを返す。
0722719
NGNG検査する側のアプリはフルスクリーンにしたいわけではないのです。
>>721
ということは、
SetCooperativeLevelでDDSCL_EXCLUSIVEだけ指定してみて
DDERR_EXCLUSIVEMODEALREADYSETが返ってきたら起動中、
DD_OKだったら起動してないと判断してすぐにNORMALに戻す、
てな感じでいいのかな。
ありがとう、試してみます。
0723デフォルトの名無しさん
NGNGありがとうございます
>テクスチャをロック!!
>サーフェイスメモリへのポインタをゲッツ!
って言うのはどうやってやるんですか?
IDirect3DTexture8::LockRectを見れ。VBは知らん
「ゲッツ」で思ったのだが、ダンディ坂野のAAって無いの?
ダンディ坂野マイナーすぎですか?
0725デフォルトの名無しさん
NGNGSTDMETHOD(LockRect)(THIS_ UINT Level,D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags) PURE;
見てもわからないす
サンプルプログラムとかある場所教えてもらえないですか?
0726デフォルトの名無しさん
NGNG0727デフォルトの名無しさん
NGNGhttp://www.microsoft.com/japan/developer/library/jpdx8_c/_dx_idirect3dtexture8_lockrect_graphics.htm
やっぱわからん
0728デフォルトの名無しさん
NGNG0729デフォルトの名無しさん
NGNG最初ってのがなんだかわからんが、DirectXの入門書/使い方の本が必要ならば
Gemsは役に立たないと思われ。Gemsはアルゴリズムとか手法の本なので。
「DirectXなりの使い方はほぼわかっていてゲームも簡単なのを何個か作った。」
程度以上の知識・技術がある人にはカナリ参考になると思う。
ただやっぱり高いよね。
お金が余って困ってる/会社の金で買える。とかゆーんなら買って損はない。
内容は(・∀・)イイ!ですが、金額分の価値を感じるかどーかは人によってちがうと思う。
持ってる友達とか探すとかして、ざっと内容見てから買ったほうがイイと思う...
0731DirectX9!!
NGNG0732デフォルトの名無しさん
NGNG0733デフォルトの名無しさん
NGNG最近になって3Dの必要が出てきたので、DIRECTX8をはじめました。
で、本題なのですが、今、あるプログラムを組んでまして、
それは基本的には2Dグラフィックなんですが、一部3D(Y軸回転)を使いたいんです。
それで、そのためには当然RHWではダメなわけで、ワールドを用意しないといけないですよね。
そうすると、画面(今回は640×480)全体をちょうど2Dになるようにするには
視野角や、2D画面のポリゴンの位置を調整して擬似2Dにするしかないんでしょうか?
ズレが怖いんですが、きちっと座標をあわせれば大丈夫なんですかね?
また、その場合、各ポリゴン優先順位はどうすればいいんでしょう?
Z座標を0.000001とかの単位でズラすしかないんでしょうか?
0734デフォルトの名無しさん
NGNG回転するのは画面全体?それとも一部のキャラだけ?
一部のキャラだけなら回転してるアニメーションパターンで十分。
0735デフォルトの名無しさん
NGNG拡大縮小もあるし、やはい3Dで処理したいところです。
0736デフォルトの名無しさん
NGNGZバッファを使わないという手があるね
0737デフォルトの名無しさん
NGNG背景を3Dで作って、Y軸回転させたいつうことかな。Gダラみたいな。
0738デフォルトの名無しさん
NGNGそんなことできるんですか?
DirectDrawではあとから描画する方が自動的に手前になっていたので・・・・・・
考えたのは、画面をクリアするときに Z=0 と初期化して、
描画の際に Z-=0.00001 などとして、ちょっと手前にもってくるという方法なんですが。
>>737
えっと、本当なら背景もスプライトも全部2Dでいいはずなのに
一部、画像の回転(Y軸回転)、拡大縮小を使いたいために
3Dにしなければいけないって状況です。
なので、RHWは使わずに、3D空間上で640×480の2D空間を表現したいのですが
それには、たとえば40×30のポリゴンをつくって、
それがちょうご640×480に投影されるように調整するしかないんでしょうか?
0739デフォルトの名無しさん
NGNG2Dで拡大縮小するにも、絵の上下左右の幅を計算するだろ。
それと同じことを RHWでもできるのでは?
0740デフォルトの名無しさん
NGNG拡大は問題ないんですが、回転が問題なんです。
しかも、Y軸回転ですし・・・・・・
0741デフォルトの名無しさん
NGNGハッタリとしての奥行きが欲しいのかな。
昔、スーパーファミコンのRPGで、半透明のポリゴン1〜2枚程度
くるくる回る魔法エフェクトのあっただろ。
XYを適当な値で除算して、それなりに奥行きを出したものだ。
まあ、君はまだ勘違いしてる感じがするよ。
今のまま進めて無駄な苦労をしないことを祈る。
0742デフォルトの名無しさん
NGNG0743デフォルトの名無しさん
NGNGつまり、2Dでポリゴンの変形によって擬似的に回転を表現する、ってことですか?
>>742
そうですね。
でも、今どうしてもこれが必要で・・・・・・
0744デフォルトの名無しさん
NGNGもしくは場合分けで。
0745デフォルトの名無しさん
NGNGどうやってやるんでしょう?
RHWモードにすると3Dモデルは作れなくなってしまう、
RHWでなくなると、全部をワールドにおかなくてはならない。
0746デフォルトの名無しさん
NGNG何がわからんの?
ワールドに置いて回転させればいいだけやん。
0747デフォルトの名無しさん
NGNG基礎から積み重ねていけと。
0748デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNGありますよ。
0751デフォルトの名無しさん
NGNGDirectXにはMIDIの再生はできません。
■ このスレッドは過去ログ倉庫に格納されています