トップページ⇒tech
1001コメント303KB

C#でDirectX9 初心者の館

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
Windows Longhorn でGDIに取って代わって標準になりそうなDirectX9ですが
GDIと違ってドキュメントも難解で何をすれば描画できるのかさっぱりさっぱりなライブラリです。
その上知っている人はレベルが高すぎて聞いても宇宙語でしす(泣
そんなDirectX9を将来に備えて勉強してみようというスレです。
Microsoftの掲示板
http://www.gdncom.jp/general/bbs/ShowForum.aspx?ForumID=29
SDKをダウンロードできるところ
http://www.microsoft.com/japan/msdn/directx/downloads.asp#CDasp#CD
0797デフォルトの名無しさんNGNG
>>796
全然面白くない
0798デフォルトの名無しさんNGNG
>LongHormをインストールさせるがよろ氏。
もうβ出たっけ?

>全然面白くない
面白くする努力するなり
他へ逝くなりご自由に
0799デフォルトの名無しさんNGNG
ここで>>780氏による統括きぼん
0800デフォルトの名無しさんNGNG
真投げは駄目駄目
0801デフォルトの名無しさんNGNG
じゃ、じゃあ>>800氏によるすばらしい意見きぼん
0802デフォルトの名無しさんNGNG
今度の
0803デフォルトの名無しさんNGNG
衆議院選挙は
0804デフォルトの名無しさんNGNG
なぁ、C#+DirectXで作ったアプリを配布する時って、
.NET再頒布パッケージ入れてMDXランタイム入れてもらえば良いんだよな?
0805デフォルトの名無しさんNGNG
それとDirectXのインスコ
1パッケージで
全部インスコさせられたらいいのだがな
0806デフォルトの名無しさんNGNG
MSのやる気が無いから仕方が無い。
0807デフォルトの名無しさんNGNG
しばらくの間は報われそうにないな、俺ら(´・ω・`)
0808デフォルトの名無しさんNGNG
>>780氏がついてるかぎり、大丈夫だ。がんばれ!!
0809デフォルトの名無しさんNGNG
次期Winで
フレームワークが標準インスコされていて
かつDirectXにマネージドコードのも入れば・・

ウマーなんだがねアンダーソン君
0810デフォルトの名無しさんNGNG
フレームワーク標準インスコはもうなってるだろ。
0811デフォルトの名無しさんNGNG
2003Serverで?
0812デフォルトの名無しさんNGNG
.NET FrameworkとDirectXだけですまないんじゃあ、他人への配布用アプリとしてはつらすぎる
0813デフォルトの名無しさんNGNG
XPでデフォルトが1.0なのが辛い。
0814デフォルトの名無しさんNGNG
あれ、XPに標準搭載されてたっけ?
0815デフォルトの名無しさんNGNG
XPは、
.NET Frameworkは1
DirectXは8
0816デフォルトの名無しさんNGNG
そろそろ2.0が・・・(´Д⊂
0817デフォルトの名無しさんNGNG
全部インストーラに含められるツールか何かあるようなことを聞いたよ
英語版のみらしいが

ゲーム本体より付属品のほうが容量大きくて笑えそうなヤカン
0818デフォルトの名無しさんNGNG
四捨五入とか切り上げとかをする方法を教えてください
0819デフォルトの名無しさんNGNG
四捨五入
int b = (int)(a + 0.5);
切り上げ
int c = 1 + (int)a;
0820デフォルトの名無しさんNGNG
>>819
それ、切り上げの方、a が整数だったときに変になるよ。

Math.Floor, Math.Round, Math.Ceiling を使うべし。
0821デフォルトの名無しさんNGNG
aが整数だったら四捨五入も何も
0822デフォルトの名無しさんNGNG
>>821
アフォ?
0823デフォルトの名無しさんNGNG
>>821
バカ再来だな
0824デフォルトの名無しさんNGNG
だれかDirectShowのサンプルのSampleGeabberをC#に移植した方はいらっしゃいませんか?
はまってます。
0825デフォルトの名無しさんNGNG
はまってるんなら素直にC++でやればよかろう
0826デフォルトの名無しさんNGNG
Managed C++で作って.NETで使えるようにしたら?
0827デフォルトの名無しさんNGNG
そして、だったら全部C++で書いた方が楽だということに気が付くという。
0828デフォルトの名無しさんNGNG
824です。
C#のプロジェクトなんですけど、この部分だけC++で書くことにしました。
ていうか、何のためにC#使ってるかわかりません。
誰か教えてください。
0829デフォルトの名無しさんNGNG
MS も ゲイツ も好きだけど、Windows95 あたりから Windows が嫌いになりました。
だって、不具合多過ぎるんだもん。あとウィルス、セキュリティホール。
Windowsを買ってからセキュリティの問題で毎日Windowsアップデートでてんてこ舞い。
こないだはWindowsXP SP2にしたら起動しないアプリ勃発、まだ直らず。
業務に多大な損害が出た。
ハードウェアの構成を替える度、アクティベーションにどれだけの時間を割いたことか。
気軽にパーツも買えん。
こんなに使い買っての悪いクソOSがあの値段だよ。またセキュリティホールだウィルスだよ。もう疲れました。
なんてレスをしているとまたセキュリティホールだよ、ウィルスだよ。勘弁してください。
最初からクソだと思っていたけど、最近のMSは醜態が際立ってるね。
古川が張り切ってはじめたMSN BlogなんてMS社員しか使ってないしな。
MSN Musicにおいてはサービス開始に誰も気づいていないw
もうだめじゃんw
0830デフォルトの名無しさんNGNG
>>828
無難に情報量の多いC++でやれよw
0831デフォルトの名無しさんNGNG
何かあるたびにC++でやれば? だもんなぁ・・
いや、確かに正論ですよ 正論ですとも
んじゃ何のためにこのスレがあるのか
いや それ以前にC#にもC++並のサンプルつけろMS
0832デフォルトの名無しさんNGNG
まぁロングホーントレインの1千万パワーをまてという事ですよ
0833デフォルトの名無しさんNGNG
>>828
>>780に詳しく書いてある。
過去ログくらいちゃんと嫁
0834デフォルトの名無しさんNGNG
int a=1,b=1;

a=b=0;

この場合、どちらも0になりますか?
0835デフォルトの名無しさんNGNG
なる。
つーか、自分で調べなよそれくらい。
0836デフォルトの名無しさんNGNG
燃料のつもりだったのかな
0837デフォルトの名無しさんNGNG
a=b=0;

a=b;
b=0;

これって同じことですか?
0838デフォルトの名無しさんNGNG
DirectXと何の関係があるんだよ。
ネタとしても全く面白くない。
0839デフォルトの名無しさんNGNG
文句タレは一人前だが
いざDirectXに関する質問が出てくると
答えられない香具師ばかりなインターネッツで
面白いも糞もないかと思うのだ
0840デフォルトの名無しさんNGNG
一人で面白いと思って書き込んだあげく、否定されて憤慨。
アホの典型。
0841デフォルトの名無しさんNGNG
>>839
>>830
0842デフォルトの名無しさんNGNG
ひさしぶりにきてみたら
ものすごいくそすれになってますね
なんかかなしいです
なかよくやろうよもまいら
0843デフォルトの名無しさんNGNG
ひもなな?

そうだな、オレもひもななな気分だ。
0844デフォルトの名無しさんNGNG
0845デフォルトの名無しさんNGNG
くだらんミニゲームを作ってみた
ここで晒したら遊んでくれるだろうか・・
0846デフォルトの名無しさんNGNG
いいんじゃないの?
色々アドバイスくれるかも
0847デフォルトの名無しさんNGNG
bool a=b=true;

abともに真である条件式で
if(a & b){}
if(a && b){}
お前らはどっち書く?
0848デフォルトの名無しさんNGNG
a && bに一票
a & bだと
bitの andに見えるし
0849デフォルトの名無しさんNGNG
DirectXと関係ない話題をいちいち振る馬鹿と、それに答える大馬鹿。
0850デフォルトの名無しさんNGNG
その上マルチだ品
0851デフォルトの名無しさんNGNG
  (´⌒⌒⌒`) 
__ 〃|___|ヽ
ヽ\ ノノノ)ヘ)、!〉
 (0_)! (┃┃〈リ
  Vレリ、" lフ/     呼んだ? 
    l´ヾF'Fl  
    〉、_,ノ,ノ  
0852デフォルトの名無しさんNGNG
自作自演なんだからほっといてやれよ・・
0853デフォルトの名無しさんNGNG
じゃあDirectXの話題を投下。といっても俺はPlayしか知らないが。

一番目のパケットが届いてそれの処理をしている間に二番目にパケットが来た場合、
二番目のパケットの受け入れを一時的にロックしておくような機能ってある?

あと確認だが、一回目のReceiveイベントと二回目のReceiveイベントは非同期に処理されるよな?
0854デフォルトの名無しさんNGNG
受け取りたくなければ受け取らなければいい。
0855デフォルトの名無しさんNGNG
>一番目のパケットが届いてそれの処理をしている間に二番目にパケットが来た場合、
>二番目のパケットの受け入れを一時的にロックしておくような機能ってある?
漏れはそれっぽい機能を発見できなかったのでArrayListで解決したよ
パケットくるたびにキャッシュに叩き込んで逐次取り出すってのはだめなのか?
ArrayListはいじくるたびにlockしないと悲惨なことになるが

>一回目のReceiveイベントと二回目のReceiveイベントは非同期に処理されるよな?
デバッグウインドウに処理するたびにメッセージ表示するようにして検証すれ
たぶん非道鬼だったと思った

>受け取りたくなければ受け取らなければいい。
受け取りたいけど受け取れないから保留にしたいという話を・・げふんげふん(咳
0856デフォルトの名無しさんNGNG
Effect.FromFileのStringって2バイト文字が入ってると失敗するんですかね?
デスクトップにEmptyProjectのディレクトリ置いてたせいで実行出来なくて原因を
探すも今時そんな原因も無いだろと思ってたのでハマってしまってたんだが・・・。

あとデバッカのウォッチの動作がおかしいのはバグなんでしょか。
明らかに同一スコープ内のフィールドの中身が"スコープ外です"と表示できなかったり、
あるメソッド内で特定のメソッドを呼んでいるとウォッチで見るクラスや構造体の
定義されてるはずの中身が一部"error: cannot obtain value"と"<未定義の値>"になったり、
"<未定義の値>"をクリックして変更しようとすると文字が巨大化するし。
0857デフォルトの名無しさんNGNG
>>856
「スコープ外です」
「cannot obtain value」
は俺もしょっちゅうあるなあ。どうにかして欲しいよね・・・
0858デフォルトの名無しさんNGNG
なぁなぁ、ManagedDirectXの日本語ドキュメントをVSを使わずに見る方法があるはずなんだが、
どうやってやるんだっけ?
0859在日外国人参政権反対NGNG
マルチ(・A・)イクナイ!!
0860デフォルトの名無しさんNGNG
iexplorer.exe
0861デフォルトの名無しさんNGNG
>>858
#D、C#Bを入れる
0862デフォルトの名無しさんNGNG
I/O書籍シリーズはVC++で書いてるし
やっぱ、VBやらC#より
メンドイだろうけど
キッチリできるんだろうなぁ・・

と言いつつVBでやってみたり・・・('A`)
0863デフォルトの名無しさんNGNG
旧VBやVCはCOMネイティブ対応だからね
ATLなんてまさにActiveX作るためにあるようなものだし

C#やVB.NETだと互換性のためにCOMサポート残してあるだけだから
ラッパクラスが必要になったり
0864デフォルトの名無しさんNGNG
C#でMDXが楽すぎて仕方がない
0865デフォルトの名無しさんNGNG
>>864
禿同。もうC++に戻れないかもしれん・・・。
0866デフォルトの名無しさんNGNG
MDXのドキュメントも、Oct 2004 の日本語ドキュメントでやっと少し
マトモになったしね。
0867デフォルトの名無しさんNGNG
ドキュメントまともになったんだ?
Octインスコするのまんどくさかったけど
やる気がでてきますた
0868デフォルトの名無しさんNGNG
>>856
前に引っかかったことがある。俺も今更と思ったけど、
Effect.FromFileのStringに2バイト文字が入っていると
ロードできないっぽい。

エフェクトファイルをFileStreamで開いて、Effect.FromStreamを
使えば回避できる。
0869デフォルトの名無しさんNGNG
なるほどそんな解決方法が。
それにしてもサンプル(EmptyProject等)がそう書かれてるのでとりあえず修正して欲しいなぁ。
0870デフォルトの名無しさんNGNG
DirectShowがマネージ化されないと話にならないって言うか
0871デフォルトの名無しさんNGNG
MC++が使えないC#使いは話にならないって言うか
0872デフォルトの名無しさんNGNG
>>870
Showは他のコンポーネントと違って、COMクラス・インタフェイスの数が膨大だからねー。
素直にComImportAttributeなりで直接COMを叩くほうがいいんじゃない?
ってスタンスなんじゃないかな。

お手軽版?のAudioVideoPlaybackは機能が少ない分構成も頗るシンプルで、
これはこれで間違っちゃいないとは思うが、
やっぱり標準のマネージShowは見てみたいな。
0873デフォルトの名無しさんNGNG
MC++は意味あるんだろうか。
0874デフォルトの名無しさんNGNG
あるよ
Cで作られてるSDKを.NETに移植するとか
0875デフォルトの名無しさんNGNG
DirectShowのラッパならここにある
ttp://www.conferencexp.net/community/
0876デフォルトの名無しさんNGNG
DirectShowってMP3流せるのと動画再生するの以外に何かできることあるん?

MP3流すためにしかたなく使用してる漏れ程度では
いまいちありがたみがわからんですよ
0877デフォルトの名無しさんNGNG
mpegファイルやreal media ファイルなどの音声、動画ファイルを、
すべて再生できるようにする場合は
読み込むファイルの種類によって、それぞれ対応するしかないのですか?
(realmediaの場合は、Real Player ActiveX Control Libraryを使って
再生したり、そのほかは、QuartzTypeLibを使用したりなど。)
一括して、すべてのファイルを操作できるような方法はないのでしょうか?
0878デフォルトの名無しさんNGNG
対応する汎用CODECを作れば可能。
0879デフォルトの名無しさんNGNG
offscreen = new Surface("C:\\dxdata\\Samples\\C#\\DirectDraw\\Windowed\\無題.bmp", description, draw);
ここの対応してる画像の拡張子はBMPだけですか?
jpgだとエラーが起きて落ちてしまいます。

0880デフォルトの名無しさんNGNG
>>876
TVチューナーやビデオキャプチャ
ビデオやオーディオのエフェクト/変換も自由自在
0881デフォルトの名無しさんNGNG
>TVチューナーやビデオキャプチャ
>ビデオやオーディオのエフェクト/変換も自由自在

マジカヨー そらぁ便利だな
まぁ便利でも対応してないんじゃアレなんだが
Webカメラの画像とかも扱えるのだろうか
0882デフォルトの名無しさんNGNG
>>879
そのSurfaceがDrawのものなのか、3Dのものなのか、自分じゃ何も言わない。エラーの種類も書かない。
もうだめぽ。

DrawにJPEG関係の機能はない。
0883デフォルトの名無しさんNGNG
>>876
USBカメラの画像取り込んでエフェクトかけて遊んだりできます
0884デフォルトの名無しさんNGNG
>USBカメラの画像取り込んでエフェクトかけて遊んだりできます
C#でもManagedDirectXで普通に殺れまつか?
0885デフォルトの名無しさんNGNG
ttp://mobiquitous.com/programming/usbcamera.html
0886デフォルトの名無しさんNGNG
DirectSmellでこれを動作させる方法を教えてください

ttp://headlines.yahoo.co.jp/hl?a=20041206-00000086-mai-bus_all
0887デフォルトの名無しさんNGNG
之で引きこもりの部屋のにおいとかも再現かのうなのかな・・・
0888デフォルトの名無しさんNGNG
>>886
過去ログ読もうね。>>569
0889デフォルトの名無しさんNGNG
>>888

検索してませんでした。すいません。

これで僕の部屋のにおいが再現できました。
明日ネットカフェで試します。
0890デフォルトの名無しさんNGNG
>>886
DirectSmellワロタ
将来はでるかもしれんな
http://www.mainichi-msn.co.jp/today/news/20041207k0000m020046000c.html
0891デフォルトの名無しさんNGNG
>>890
分かってるとは思うが、DirectSmellは既出な。>>562
0892デフォルトの名無しさんNGNG
DirectX December 2004 release
ttp://www.thezbuffer.com/articles/104.aspx

また新しい SDK が公開された模様。
>>749 の予言が的中。

とりあえずリリースノートだけ読んでみた。
MDX のアセンブリバージョンは 1.0.2903.0 になったらしい。
次は来年の二月に公開予定とのこと。

Release Notes
ttp://www.microsoft.com/downloads/details.aspx?FamilyId=358CBC1E-F5AB-417D-9F6F-779BE38EFB69&displaylang=en
0893749NGNG
やったーーーーーーーーーーーーーーーーーーーーーーー!
予言的中!!!

誰かなんかくれ!!!

SDK本体はここだね。
December 2004
ttp://www.microsoft.com/downloads/details.aspx?FamilyId=4E825A37-0C94-4421-9EC8-156E52525D11&displaylang=en
0894デフォルトの名無しさんNGNG
>>893
チューしてやるよ(*゚3゚)
0895デフォルトの名無しさんNGNG
ドキュメントもっと充実キボンヌ
0896デフォルトの名無しさんNGNG
矢継ぎ早にSDKの更新されてますが
これって入れる度に古いSDKアンインストールしてから入れるものなんでしょうか
そのまま上書きしても大丈夫なものでしょうか?
■ このスレッドは過去ログ倉庫に格納されています