DirectX総合スレ

このエントリーをはてなブックマークに追加
1名前は開発中のものです。
DirectXについては基本このスレで話していこうとものです。
基礎的な質問+高度な質問も簡潔かつ簡単に答えることをモットーにして頂き
このスレの回転を早めて常にアクティブなスレにしたいと思っております。
このスレに質問等を書かれる方はまず最初に自分でしっかりと調べたのちに聞かれることをお願いします。
質問に対する答えも簡潔に出来る限りわかりやすくお願い致します。
2(´_ゝ`)<そして全日空:04/05/05 12:46 ID:1QDNglNJ
(´_ゝ`)<そして全日空
3名前は開発中のものです。:04/05/05 13:08 ID:MrXU4j8T
4名前は開発中のものです。:04/05/05 13:18 ID:7AE6wck8
■Microsoft DirectX Developer Center
http://www.microsoft.com/japan/msdn/directx/default.asp
5名前は開発中のものです。:04/05/05 13:47 ID:MrXU4j8T
6名前は開発中のものです。:04/05/05 14:11 ID:mnCmBu23
Delphi

■Delphi・・・コンパイラ
ttp://www.borland.co.jp/delphi/

■QuadrupleD・・・DirectXサポート用コンポーネント群
ttp://www-fu.magma.ne.jp/~hayase/dddd/

■QuadrupleD入門サイト
ttp://deliverer.s5.xrea.com/
ttp://delphi.nce.buttobi.net/
7名前は開発中のものです。:04/05/05 19:00 ID:mnCmBu23
BCC5.5でDirectX9.0bを使う
http://goldfly.ld.infoseek.co.jp/program/directx/bcc90b.html
※C++BuilderXでも概ね同じ方法でOKです

ID3DXSprite インターフェイス [ 0からのゲームプログラミング ]
http://www.plustarnet.com/aspil/Programming/ID3DXSprite.htm
DirectX日本語ヘルプはsummerの変更が反映されていません
8名前は開発中のものです。:04/05/06 17:34 ID:JOxU/j0K
Microsoft DirectX スライド in GDC 2004
Game Developer Conference 2004 で Microsoft Windows
Graphics and Gaming チームが発表したスライド (英語) が
公開されました。ダウンロードページからダウンロードしてください。

http://www.microsoft.com/downloads/details.aspx?FamilyId=08CB066C-6DA2-49F4-B6D1-BE48C7AAA028&displaylang=en
9( ´_ゝ`)<そして全日空:04/05/06 18:11 ID:KjPnHi8P
( ´_ゝ`)<そして全日空
10名前は開発中のものです。:04/05/06 23:10 ID:aQq89bHa
cygwinからDirectXを使う方法も教えてくれ。

素直にOpenGL使ったほうが早いか?
11名前は開発中のものです。:04/05/07 01:27 ID:cOyMxUPw
>>10
gcc使いたいってことだよね。

俺はDirectX8以前の頃にCygwin+SDL、Cygwin+DirectDrawを
やってたんだけど、DirectDrawのときはdllをCOMインタフェース
経由で呼び出していた。ヘッダファイルは自前で変換してたが
ネット上でgcc用のportが存在することを後で知った。
mingw32(with Dev-C++)もいい感じらしい。

DirectX9+BCC(BCBX)はすんなりイクという話を聞いたが、まだ試してない。
12名前は開発中のものです。:04/05/07 01:47 ID:yuOOy6gm
>>10
フリー版のVS.NETが出たんだから
素直にそっち使ったほうが早いんじゃない?
13名前は開発中のものです。:04/05/07 09:25 ID:vcA11uZ8
VCとVSを混同している馬鹿がいるのはこのスレですか?
14名前は開発中のものです。:04/05/07 13:30 ID:UAroqB1G
>>12
フリーになったのはVC++Toolkit2003(IDE無し)ね。
15名前は開発中のものです。:04/05/07 14:50 ID:q3RqwX4P
16名前は開発中のものです。:04/05/07 15:19 ID:UAroqB1G
>>13
IDがvcだね。
17名前は開発中のものです。:04/05/08 08:23 ID:mfipoThn
>>11-14
情報thx

でも駄目だ。
gccからはDirectX9.0bはまだ使えなさそうだし、
Platform SDKダウンロードしても
Win32.makってファイルが無いせいで
サンプルのビルドすらできやしねー。

BCC+DirectXをいってみます。
18名前は開発中のものです。:04/05/08 13:54 ID:Uo5OKKLo
>>17
Win32.mak入ってるよ。Platform SDK(のCore SDK)。
includeの中にある。
19名前は開発中のものです。:04/05/08 17:26 ID:QDJf+GfF
>>18
ほんとだ。thx

どうしてcygwinのfindで見つからなかったのかと思ったら、
ファイル名がWin32.「M」akだった。
20名前は開発中のものです。:04/05/21 01:06 ID:T6yAoRf3
質問です。
DirectSoundでWAVEを再生するところまでつくり、次はストリーム再生を
作ろうとサンプルコードなどを見ながら作ってたのですが、
LPDIRECTSOUNDNOTIFY lpDSN;
lpdsb->QueryInterface(IID_IDirectSoundNotify, (void**)&lpDSN);
↑サウンドバッファ
を実行させると、リンクエラーが出て外部シンボルIID_IDirectSoundNotify
は未解決です。
と出てしまいます。
VC6ですが、どなたか解決方法知ってますでしょうか
21名前は開発中のものです。:04/05/21 13:42 ID:wStc1ieo
>>20
DirectSoundのDLLを静的リンクで呼び出してるなら
libファイルをリンクする必要があるんじゃないか。
22名前は開発中のものです。:04/05/22 00:34 ID:4nedp2kV
>>20
ソースの頭に
#pragma comment( lib , "dsound.lib" )
って追加しな
2320:04/05/22 10:28 ID:FMUKeovj
そうか!ありがとうございます。

・・・と、思ったら、>22の式は追加してありました・・・
じゃあ、原因は他にあるのでしょうか。
24名前は開発中のものです。:04/05/22 12:40 ID:LbUP4nLB
dxguid.libは?
2520:04/05/22 21:08 ID:QemK3kxi
できました!

しかし、むかーし試しに作ったときはこれ入れなかったような・・・

ありがとうございました。
26名前は開発中のものです。:04/05/23 12:05 ID:i0TzxYFQ
SDKインストールしてdllをデバッグ版にすると
WMPやDivXPlayer等でムービー再生した後、
必ずエラーが出ます(assertに引っかかる)

リリース版に戻したら出ないから、多分デバッグ版のdll
のせいだと思うのだけど、いちいち開発作業中の時だけ
デバッグ版にするのは面倒なので、なにか良い対処方は
ないでしょうか?
27名前は開発中のものです。:04/05/23 14:12 ID:sMx8z8ph
対策1 デバッグ版を使わない
対策2 WMPやDivXPlayerでエロムービー見ない
対策3 スクリプトで開発環境起動前&終了後にランタイム自動更新
28名前は開発中のものです。:04/05/23 17:37 ID:oGEbTlGR
>>26
その書き込みで思い出したが、その症状俺もなったことある。
解決策も見つからないまま、OSから再インスコして回避したわ。
確か、Win98SE時代だったと思う。
>>26はWin2KかXPで、そのトラブル出るのか?
29名前は開発中のものです。:04/05/23 23:36 ID:bql5BpTx
DirectXのランタイムには、リリース版など存在しない。
30名前は開発中のものです。:04/05/24 22:59 ID:oQMK23+C
デバッグ版/リテール版
31名前は開発中のものです。:04/05/25 01:19 ID:zGPR8UKi
頂点シェーダーとピクセルシェーダーって結局何が出来るの?
何かサンプル見ただけでは凄そうには見えない。
こんなことが出来るんだぜ!って言うサンプルっぽいのない?
教えてヌルい人。
32名前は開発中のものです。:04/05/25 01:57 ID:c2RwLaRO
33名前は開発中のものです。:04/05/25 01:57 ID:c2RwLaRO
あーサンプルじゃ駄目なのか。
最近の洋ゲーは使いまくりだろ。
34名前は開発中のものです。:04/05/25 02:01 ID:Ek7Dq4UE
35名前は開発中のものです。:04/05/25 13:24 ID:ICaRrwFL
テクスチャの読み込みをしすぎるとどうなりますか?
36名前は開発中のものです。:04/05/25 13:44 ID:+HBu9ti6
PCが爆発します
37名前は開発中のものです。:04/05/25 14:20 ID:fGaL8YpI
>>35
VRAMやRAMやHD(スワップ)がいっぱいになる。
そしてメモリ不足エラーが出る。
38名前は開発中のものです。:04/05/26 06:41 ID:jD4pzKy5
ぜんぜんちがうよ
39名前は開発中のものです。:04/05/28 11:45 ID:RHmeZuoM
どんなサンプルでもいいので皆さんが作ったエフェクトのサンプルの
ソースを公開してください
40名前は開発中のものです。:04/05/28 11:52 ID:HF4xXT/k
>>31
ぶっちゃけ、大したことはできない。
固定機能で回りくどい事をしないといけなかったことがシェーダだと
効率よくできるだけ。

>>39
SDKのサンプルでも見てくれ。
っていうかエフェクトだけじゃ抽象的すぎて何を見たいのか分からん。
41名前は開発中のものです。:04/05/28 12:25 ID:Wuo17ZAH
42名前は開発中のものです。:04/05/28 12:31 ID:uAri/so6
t-potのサンプルを参考にして(というかほとんど全パクリで)ボーン処理のシェーダを書いたんですが
ライティングが中途半端にうまくいきません。VC++6.0で作ってます。
状況としては、
○デバッグモード:100%望んだように動きます
△リリースモードでF5(このファイルにはデバッグ情報が含まれてませんと出ます):色が変になります。
陰影はついてくれてます
×リリースモードでctrl+F5:lit命令が上手くいってないのか、モデル全体が黒く塗りつぶされます
シェーダを使うのは今回が初めてなので、なにか基本的なことを見落としてるのかもしれません
気づいたことがあったら教えてくれませんでしょうか。
http://gamdev.org/up/img/626.zip
ソースです
43名前は開発中のものです。:04/05/28 12:44 ID:pJJsvt1K
何か初期化を忘れているとか、そんなんじゃねーのか?
44名前は開発中のものです。:04/05/28 15:23 ID:6CXREz4m
>>42
ごめん。
俺、HLSLかCG以外のシェーダプログラムみると吐き気がするんだわw
45名前は開発中のものです。:04/05/28 16:49 ID:HF4xXT/k
>>42
そのlitは0以下をクランプするためだけに使ってるんだよね?
それってmaxじゃ駄目なん?

ちなみに、リリースモードとデバッグモードで動作が違う原因の9割が
初期化のミス。

あとアンビエントの計算がちょっと気になるが、まぁいっか。
46名前は開発中のものです。:04/05/28 21:27 ID:9IdxExwG
t-potにボーンとかスキンメッシュのサンプルなんてあったっけ?
47名前は開発中のものです。:04/05/28 21:29 ID:9IdxExwG
ぬおぉ・・・
48名前は開発中のものです。:04/05/29 04:32 ID:Uaz1UdRd
>>46

8.1のはあったな
4942:04/05/29 14:24 ID:54pOn5GZ
>43,>44,>45
アドバイスありがとうございました。プログラム側が怪しい雰囲気が濃厚なので
もうちょっと見直してみて、それでもだめならHLSLに挑戦してみます
50名前は開発中のものです。:04/05/29 14:34 ID:uUf6SfjO
>>49
HLSLに移ってから悩めよ。
手間が全然違うからw
51名前は開発中のものです。:04/05/30 20:31 ID:/o8ZeJNe
            / / }
           _/ノ.. /、
           /  r;ァ  }
      ry、     {k_ _/`;,  ノノ パンパン
    / / }      ;'     `i、 
   _/ノ../、   _/ 入/ /   `ヽ, ノノ
  / <  }''i" ̄.   ̄r'_ノ"'ヽ.i   ) ―☆
 {k_ _/,,.'  ;.  :.      l、  ノ  
    \ `  、  ,i.    .:, :, ' / / \
     ,;ゝr;,;_二∠r;,_ェ=-ー'" r,_,/   ☆
【ラッキーレス】
このレスを見た人はこのコピペを10分以内に
3つのスレへ貼り付けてください。

そうすれば14日後好きな人から告白されるわ宝くじは当たるわ
出世しまくるわ体の悪い所全部治るわでえらい事です
52名前は開発中のものです。:04/05/30 20:45 ID:gqie5aJR
自分のPCにDirectXのVerいくつが入ってるのか調べるにはどうしたらいいのですか。
53名前は開発中のものです。:04/05/30 21:27 ID:O+CO84dc
>>52
dxdiag
54名前は開発中のものです。:04/06/04 02:17 ID:CukMf8nH
3Dゲーム作りたいんだけど
何から勉強すればいい?
というかサイトとか本おせーて
55名前は開発中のものです。:04/06/04 02:41 ID:5KvRFHlB
56名前は開発中のものです。:04/06/04 22:15 ID:I7wyYjo8
>>54
3Dはじめるなら
ttp://www.realdigital.co.jp/densi2/index.html
ここをすすめる。
ある程度分かってきたら
ttp://www.t-pot.com/news.html
定番かな、ここの本もいい感じ。
57名前は開発中のものです。:04/06/06 09:18 ID:Q4UVLz4O
DirectX8のテクスチャーで2Dスプライト風の表現をしています。
複数の小さな一枚絵をまとめて正方形テクスチャーに登録して、表示にはテクスチャーの
一部を指定して表示しているのですが、微妙にドットがずれて表示されます。
正方形テクスチャー一枚に、一枚絵を一枚だけ登録して、常にテクスチャー全体を表示すれば
ドットずれはなくなるのですが、メモリを無駄に消費しそうで困っています。

どうすればよいでしょうか?
58名前は開発中のものです。:04/06/06 09:43 ID:e9jfnD5Y
まずはヘルプを読め。
59名前は開発中のものです。:04/06/06 10:43 ID:1hsuYb9/
>>57
テクセルの中央を指定すれば解決。
生意気な古いビデオカードでは駄目だったりするが無視。
60名前は開発中のものです。:04/06/06 14:14 ID:7iwQ6HwF
61名前は開発中のものです。:04/06/06 16:19 ID:pBozh5OD
そこに書いてあるとおりにやってもはっきり行ってうまくいかないビデカが多いんだよな。
62名前は開発中のものです。:04/06/06 19:56 ID:/hLWjsOf
そうか? 具体的に問題の起こるGPUをカモン。
6357:04/06/06 20:36 ID:EGzuBYaV
おかげさまで、自分の環境ではちゃんと表示されるようになりました。
感謝感謝。
64名前は開発中のものです。:04/06/06 21:06 ID:GUcT5jJN
>>61
両面にテクスチャを貼ったときに
裏面のときは逆にずらさないといけないんだけど
それってできないよね?
裏面って判断がこっち側じゃできないしね。
65名前は開発中のものです。:04/06/06 23:58 ID:Gj32WtR9
なんのこっちゃ?
66名前は開発中のものです。:04/06/07 00:04 ID:LHdbSEFf
裏だろうが表だろうが、回転後にずらせば何の問題もない。
判断する必要性など微塵もない。
67名前は開発中のものです。:04/06/07 22:50 ID:FwHuc4eG
DirectXを使ったゲームをやっていると毎回一定時間プレイした後フリーズしてしまいます
正確にフリーズするまでの時間を計ったことはありませんが大体10分弱くらいです
スペック的に何の問題もないような軽いものでも必ずフリーズします
HDDのデフラグやOSのリカバリなど試してみましたが効果ありませんでした
OSはMe、DirectXは9.0bです
考えられる問題として何かありますでしょうか?
68名前は開発中のものです。:04/06/07 22:58 ID:5lhAR2Pf
MEかな?
69名前は開発中のものです。:04/06/07 23:03 ID:FwHuc4eG
MEですか・・・orz
70名前は開発中のものです。:04/06/07 23:18 ID:9HfJgGfm
Meなんか入ってるPCのグラボはなんだ?
71名前は開発中のものです。:04/06/08 00:05 ID:UIFbd3aA
熱暴走してんじゃねーか…?
72名前は開発中のものです。:04/06/08 00:18 ID:+ACyphnd
MEとDirectX9.0というあたりが、
牛丼に蜂蜜かけるという暴挙に感じられる。
73名前は開発中のものです。:04/06/08 00:43 ID:cn7xRIpP
>>70
オンボードチップセットです・・・

言われて気がついたんですけどドライバの更新するの忘れてて、最新のにしたら解決したっぽいです
つまんないオチですいませんでした
74名前は開発中のものです。:04/06/08 07:06 ID:DKBNTHTE
よろしい。次からはWindows板かPCゲーム板を使いたまえ。

Windows9X・Me質問スレッド Part40
http://pc5.2ch.net/test/read.cgi/win/1083928549/l50
スレッドを立てるまでもない質問&雑談【その23】
http://game6.2ch.net/test/read.cgi/game/1085209171/l50
75名前は開発中のものです。:04/06/08 09:42 ID:2NLIQrvb
>>74
ちょっと不安だったんですけどやっぱり板違いでしたか、すみませんでした
ちなみに直ったと思ったらやっぱり全然直ってなかったのでとりあえずOS買い換えてみることにしました
76はじめての開発:04/06/08 15:17 ID:q0xZ9OCf
DirectX8をGCCでやりたいのですが、まったくわかりません。
どなたか、詳しく教えてください
77名前は開発中のものです。:04/06/08 15:27 ID:CuO7ENSF
検索しろ
78名前は開発中のものです。:04/06/08 16:01 ID:DKBNTHTE
79名前は開発中のものです。:04/06/09 00:38 ID:CKAXd81C
XPでDirectXを9から8.1に戻す必要が生じたんですが、
MSのダウンロードサイトで8.1b for 98/Meのやつを今落としてます
これ入れて大丈夫なのでしょうか?ていうかこれしかないのか
どうかわからないのですが…ご指南ください
8079:04/06/09 01:12 ID:CKAXd81C
ぐぐってみましたが、
・古いバージョンは新しいものに上書きできない
・9を削除するのに必要なフリーソフトがある
とのことで、そこに行ってみましたが、いま休止してるようで
入手できずorz
8179:04/06/09 01:14 ID:CKAXd81C
戻す必要を生じたゲームソフトは、一度普通に遊べたんですが、
もっかい起動すると駄目でした。確認すると9に非対応、8.1を使えと・・
9のまま遊べないか模索してみます
82名前は開発中のものです。:04/06/09 01:19 ID:bUMJ4biL
少しは考えて投稿してはどうか
83名前は開発中のものです。:04/06/09 08:00 ID:/z+zLMAo
>>79-81
@まずローカルルールぐらい読みましょう。
A10レス手前の流れぐらいちゃんと読みましょう。
B板違いです。Windows板・PCゲーム板を使いなさい。
 
Windows9X・Me質問スレッド Part40
http://pc5.2ch.net/test/read.cgi/win/1083928549/l50
スレッドを立てるまでもない質問&雑談【その23】
http://game6.2ch.net/test/read.cgi/game/1085209171/l50
84名前は開発中のものです。:04/06/11 05:09 ID:GW4miGK7
結局いまのところシャドウボリューム使ってゲームで使える程度の速度で
まともな品質でソフトシャドウ出すのって無理?あーでもボリューム使っても
結局alphatest使って書いてる木の葉の影とかが真四角になっちゃうしなぁ。
なんかだだっぴろい屋外のフィールドの建物とか木とかの影おとすのに
良い手法ってないですか?リネIIとかFF11とかはどんなカンジになってる?
85名前は開発中のものです。:04/06/11 09:19 ID:aQ0y+iKJ
リネ2は平面上にキャラの影をおとして張ってるだけ、
だから光源方向に建物の凸凹があると影が変な位置に映る。
86名前は開発中のものです。:04/06/12 09:12 ID:ITq9lqgq
まあぶっちゃけユーザーからすれば、影とかに凝るよりも
普通に遊べる速度であることのほうが必要だし
現段階では気にする必要ないのでは?
実験目的だったらスマソ
87名前は開発中のものです。:04/06/12 10:30 ID:nJebHZqt
つか、いっそ影そのものを省いてしまっても別に違和感はない。
円影だってとりあえずついてるレベルならいらないw

落下地点がミソになるアクションゲームだと無いと辛いけどね。
88名前は開発中のものです。:04/06/13 03:59 ID:95LCVeVH
その辺は絵柄によるな。あとはシーンによる。
89名前は開発中のものです。:04/06/18 09:45 ID:z15bpwIY
ソフトシャドウまでやってくれると心地よいけど、ジャギーだらけのディジタルな影を付けられてもうっとおしいことがしばしば。
というオレの3Dエンジンもいまんとこソフトシャドウサポートしてません。ステンシル2パス描画(ライトオフシェイダー・オンシェイダー)なのでただでさえ重いし。
16パスくらい描ければステンシルソフトシャドウも簡単にできるんだけどね。なんかうまい手はないものか。
ライトマップも簡単なフィルタリングしかしていないのでかくかく。
やぱい、完璧に世間に遅れをとっている。
90名前は開発中のものです。:04/06/18 14:43 ID:xHeZzj8T
万能の影エフェクトは“今のところ”無いからな。
 
より多くの選択肢を提供しておいて、状況に応じて最良のもの
「気持ちよく」選択できるようになってなければプログラマの
オナニーに成り下がるシナー。
9189:04/06/18 18:15 ID:z15bpwIY
>状況に応じて最良のもの「気持ちよく」選択できるようになってなければ

それはテクの蓄積ってやつじゃないか?数年前はプラナーシャドウオンリーだったけど、今はそれも選択しの一つなわけで。
数年前の某ゲーで使ったプラナー投影マトリックス(単なるy=0 N(0,1,0)平面と直線の交差)だけど、こんなんで良かった時代が笑える。
pMat->_11 = L.y;pMat->_12 = -L.x;pMat->_13 = 0.0f;pMat->_14 = 0.0f;
pMat->_21 = 0.0f;pMat->_22 = 0.0f;pMat->_23 = 0.0f;pMat->_24 = 0.0f;
pMat->_31 = 0.0f;pMat->_32 = -L.z;pMat->_33 = L.y;pMat->_34 = 0.0f;
pMat->_41 = 0.0f;pMat->_42 = 0;pMat->_43 = 0.0f;pMat->_44 = L.y;

9289:04/06/18 18:23 ID:z15bpwIY
今肝心なのは物理エンジンだね。物体同士の衝突と力点割り出しとか結構大変。これもリアルとスピードでトレードオフがあるし。レンダリング並の仕事量(物理用語でない方)が要求される。

9390:04/06/18 19:08 ID:xHeZzj8T
スマン。今読み返したら話の流れを一気に飛ばしてた。詫びる。
 
補間すると、俺は小物なので目下の関心はドラスティックな新技法の開拓ではなく
ある程度知られた既存テクの組み合わせとか、状況によって発生するartifactの
削減とか、なんか地味〜な話題になってしまうんで。確かに場違いな発言であった。
9490:04/06/18 19:10 ID:xHeZzj8T
で、結果として>>90みたいな、オーサリングツールの方向に
話が飛んでしまったという流れだった。と自己分析。
9590:04/06/18 19:14 ID:xHeZzj8T
>>92
なんかネタに見えるんだが・・・。俺ってへそ曲がり?
96名前は開発中のものです。:04/06/18 19:44 ID:h4azSRvC
>>92
>今肝心

おいおい。その感覚はやや異質なものがありますよ。
「今肝心」の手前に「漏れの」を付け加えましょう。
 
剛体近似可能なものなら、既に定石的な手法が幾つも存在しますし
状況に応じた軽いチューニングで実用上差し支えない安定した結果
を得られますし、細かい不満点(例えば絵的に見栄えのする動きに
練りこんでいく部分など)はプログラマから切り離した作業で
改善したほうが効果的ですし。
97名前は開発中のものです。:04/06/21 13:19 ID:ZlR+KngR
DirectX9(sumemr 2003)を使ってフォントをつかったテキスト描画をしたいんですが
どういった方法が挙げられますか?

1.DIBにいったん描画→テクスチャ転送にでテクスチャを表示。
2.D3DXFontオブジェクトを使ってDrawTextAなどを使う。

とりあえず思いついたのは上の二つくらいなんですが。
98名前は開発中のものです。:04/06/21 13:54 ID:xW89oDgi
とりあえずさ、自分で思いついた方法で実際に組んでみろって。
何もしない内から無為に考え込む癖は是正したほうがよろし。
99名前は開発中のものです。:04/06/21 14:15 ID:PZViU7Lm
GetGlyphOutlineで取得したフォントをテクスチャに転送。
DIBを経由すると極端に遅くなるし、D3DXFontは論外。
100名前は開発中のものです。:04/06/21 17:26 ID:Z9w22r4l
GetGlyphOutline使うのはちょっとめんどいけどなー。
101松本人志:04/06/21 18:28 ID:+ROY13ZK
表示されりゃえぇやん、趣味なんやし。
102名前は開発中のものです。:04/06/21 23:09 ID:TcuEFiTN
DirectXを使っている方って文法とか全て覚えているのですか?
103名前は開発中のものです。:04/06/21 23:18 ID:JB4RB4tY
だいたいがヘルプ見てるだろ。
10497:04/06/22 02:39 ID:EKpBL9rJ
そうですね。とりあえず組んでみます。
初心者なのに構造とかを先に考えるのは悪い癖だなぁと自分でも思ってます。
みなさまありがとうございました。
105名前は開発中のものです。:04/06/22 08:40 ID:E798uQJt
const BYTE Table5[] = {0x00, 0x40, 0x80, 0xC0, 0xFF};
const BYTE Table17[] = {0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80, 0x90,
0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xF0, 0xFF};
const BYTE Table65[] = {0x00, 0x04, 0x08, 0x0C, 0x10, 0x14, 0x18, 0x1C, 0x20, 0x24,
0x28, 0x2C, 0x30, 0x34, 0x38, 0x3C, 0x40, 0x44, 0x48, 0x4C,
0x50, 0x54, 0x58, 0x5C, 0x60, 0x64, 0x68, 0x6C, 0x70, 0x74,
0x78, 0x7C, 0x80, 0x84, 0x88, 0x8C, 0x90, 0x94, 0x98, 0x9C,
0xA0, 0xA4, 0xA8, 0xAC, 0xB0, 0xB4, 0xB8, 0xBC, 0xC0, 0xC4,
0xC8, 0xCC, 0xD0, 0xD4, 0xD8, 0xDC, 0xE0, 0xE4, 0xE8, 0xEC,
0xF0, 0xF4, 0xF8, 0xFC, 0xFF};
106名前は開発中のものです。:04/06/22 08:43 ID:E798uQJt
あ゛ー、ミスった…

GetGlyphOutlineってアンチエイリアスかけない場合の処理書くの('A`) マンドクセ
107名前は開発中のものです。:04/06/22 12:02 ID:pkopN+cU
>>106
ハゲドー。
GGO_BITMAPのときでもバイトマップで返してホスィよな・・
結局描画するときに変換しなきゃいかんし。
108名前は開発中のものです。:04/06/26 11:52 ID:htQDIYMv


109108:04/06/26 15:01 ID:4jQjSpOQ
「ガッ」されない。
ちょっと、しあわせ。
110名前は開発中のものです。:04/06/27 04:15 ID:27lljJU1
DirectXの書籍を探しているのですが、
これは絶対に読んでおけみたいな定番はないですか?
例えば Advanced Windows とかプログラミング Windows とかのような。
111名前は開発中のものです。:04/06/27 06:51 ID:uU0UIA3X
ヘルプとサンプル(マジで)

DirectXはヘルプとサンプルが充実してるし、
更新が早くて本がすぐ時代遅れになるんで、定番なんてものはない。
まあ、金銭的余裕があれば適当に買いまくっても大過ないが。

それより、某3Dグラフィックス数学あたりが必要と思ー。
http://www.gogo3d.com/products/mathema/
112名前は開発中のものです。:04/06/27 16:47 ID:27lljJU1
何かあった時にはペゾルト嫁とか言うかわりに
ヘルプとサンプル嫁という世界なのですな。

読んでわからなかったら、その時にはまた何か考えるとします。
113デフォルトの名無しさん:04/06/29 22:19 ID:Q9s/hxiB
HLSLをコンパイルしてどう展開されるか
を調べるたいんだが、なにかいい方法ありませんか?
シェーダープログラム(アセンブラ)の形式で
見れるのがいいんだけど。。
114名前は開発中のものです。:04/06/30 03:15 ID:dp9P8qeX
>>111
なぜかDirectXのいい本無いよね。
3Dの初学者だったら、OpenGLのほうがいいんじゃないか?
いい本がいっぱいあるし。DirectXのようにコロコロ仕様が変わったりしないし。
115名前は開発中のものです。:04/06/30 03:53 ID:+yXY0JqQ
ドット絵を拡大して2Dでぐりぐり動かしたいなーと思って
X9のスプライト機能使ってみたんですが、
なんか勝手にアンチエイリアシングされちゃってドット絵らしさがなっちゃうんですが・・・

X9のスプライト機能をアンチエイリアシング無しで使う方法ってあるのでしょうか?
教えてエロい人!


・・・スプライト機能で楽しようと考えている俺が間違っているのか?
116名前は開発中のものです。:04/06/30 05:00 ID:dp9P8qeX
>>115
サンプラーの設定を変える。
HRESULT IDirect3DDevice9::SetSamplerState( DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value);
例:
 //拡大時・縮小時フィルタを点サンプリングに
 pD3DDevice->SetSamplerState( 0, D3DSAMP_MAGFILTER, D3DTEXF_POINT );
 pD3DDevice->SetSamplerState( 0, D3DSAMP_MINFILTER, D3DTEXF_POINT );
117名前は開発中のものです。:04/06/30 08:15 ID:NTrQHpJR
>>115
DirectXのラスタ化ルールをよく理解しる。
118名前は開発中のものです。:04/06/30 17:35 ID:dp9P8qeX
頂点構造設定ですが、SetFVF()ってDX9では旧式で、SetVertexDeclaration()がDX9でのやりかたですよね?
なので、CreateVertexBuffer()のFVFを0にして、SetFVFを使わずに
SetVertexDeclarationオンリーにしてみたんだけど、シェーダーオンリーだと動くんだけど、固定パイプラインを使うと飛びます。
固定パイプライン使うなら旧来の方式じゃないとだめなんですか?
119115:04/06/30 18:41 ID:+yXY0JqQ
>>116
情報アリがd御座います
でも、昨日既に試してました。ダメだったんです。


で、ふとX7のヘルプを見ていたら、
嫌〜なことに気づいてしまいました。_| ̄|○

X7のスプライト機能の準備をする関数のD3DXPrepareDeviceForSpriteってヤツ。
中で
SetTextureStageState(0, D3DTSS_MINFILTER, D3DTFN_LINEAR);
SetTextureStageState(0, D3DTSS_MAGFILTER, D3DTFG_LINEAR);
とかやってるんですよ・・・

それでピーンときて
>>116
ID3DXSprite::BeginとEndの間に挟んでみたんですよ・・・・


_| ̄|○ チャントナッタヨ

ID3DXSprite::Beginの中でバイリニア服用してビンビンの悪寒ヽ(;´Д`)ノ
Bigin・・・BeginSceneの外に持っていけないし、外したら勝手に呼び出されるし・・・

>>116を毎フレーム殺るしかない薬缶。
毎フレームやっても問題ないのでしょうか?
120名前は開発中のものです。:04/06/30 18:48 ID:+yXY0JqQ
スプライト機能使うの諦めたほうが早いような気がしてきた・・・
121155:04/06/30 20:18 ID:+yXY0JqQ
あ、よく考えたら199はID3DXSprite::Begin内部でステート変更してるてことか。
今更俺が毎フレーム2コ程度ステート変更しても問題ないか。
結局>>116が一番正しかった。
漏れがアホだった。
ありがd

連投自己レススレ汚しスマソ
122名前は開発中のものです。:04/06/30 20:19 ID:+yXY0JqQ
(;´_ゝ`).oO(番号間違えすぎ 155->115 199->119)
123116:04/07/01 15:19 ID:WXjsa61Z
>>121
で、できたわけね。
ステートのチェンジのオーバーヘッドだけど、逆に何回ステートチェンジすると気にするほどパフォーマンスが変わるか調べてみれば?
ま、CPU→GPUへのデータの流れが少ない方がいいわけで、オレは、ステートの写しを取っておいて、現在のステートと同じであれば変更しないっていう風に組んでいる。
124118:04/07/01 15:22 ID:WXjsa61Z
結局、固定パイプラインを使うには、vertexDecl方式でなく、FVF方式でないとダメなようだ。
新式があるのに旧式でないとだめって、こういうのいやだな。
OpenGLにしとけばよかった。
125名前は開発中のものです。:04/07/01 16:37 ID:1vEsR6h1
旧式の固定を使うのに、新式で使えないのは当たり前だが。
古い機能を新しいメソッドに持ち込む方が混乱を招く。
間違いなくDirectXは向いていないから、今からでもOpenGLに逝った方がいい。
126124:04/07/01 17:45 ID:WXjsa61Z
>>125
は?
固定パイプラインが古い(obsolete)機能?
X9ネイティブだとシェーダーオンリー??
初耳だ。
127名前は開発中のものです。:04/07/01 18:00 ID:eBOQQwrF
インタフェースとしてはlegacyかな。
お手軽プログラミングの需要はあるので今後も
固定パイプラインインタフェースは残されるだろ。
尤も、最近のビデオチップは固定パイプライン機能を
プログラマブルシェーダでエミュレートしてるので
ハードウェア的にはobsoleteかな。
128名前は開発中のものです。:04/07/01 18:14 ID:eBOQQwrF
ただ、D3Dインタフェースが今後も「薄いハードウェアレイヤー」
の性格を帯び続けるなら、ハードと遊離しつつあるインタフェースが
サクっと廃れる可能性もあるな。
129127:04/07/01 18:41 ID:WXjsa61Z
固定パイプラインが、vertexDecl方式でなく、FVF方式じゃないと動かない手抜きを指摘にしているんだけど。
固定でvertexDeclを参照すればいいだけの話だ。

>旧式の固定を使うのに、新式で使えないのは当たり前だが。

なにが「当たり前」なんだか。
130名前は開発中のものです。:04/07/01 19:22 ID:eBOQQwrF
>>129
んー?私はMSでもID:1vEsR6h1でもありませんので
私に当たり散らすのは止めていただきたいですな。
敵(MS)を見誤っていませんか?
カルシウム取り深呼吸をし、>>118の姿勢を思い出しましょう。

>なにが「当たり前」なんだか。
知りませんよ。私に聞かないでください。

確認しますが、私は「固定パイプラインが古い(obsolete)機能? 」という
質問に対して返答をしたまでですよ。ご不満ですか。
131名前は開発中のものです。:04/07/01 19:57 ID:cSnnvaMf
固定機能をシェーダーで書けば、無理に混在させる必要は無いんだけど。
新しい部分と古い部分を混在させて、自ら不具合を招いているのに、
周りに当たり散らすのはいかがなものか。
132名前は開発中のものです。:04/07/01 20:35 ID:WXjsa61Z
ところで、何の権利があっておまえらそんな「偉そう」なの?
133名前は開発中のものです。:04/07/01 21:02 ID:N+OKfawc
なんか典型的な無能タイプだな…
134名前は開発中のものです。:04/07/01 21:05 ID:N+OKfawc
こういうタイプは
>固定でvertexDeclを参照すればいいだけの話だ。
なぜ参照しないかなんて全く考えないんだろうな。
135名前は開発中のものです。:04/07/01 21:22 ID:bdPAbTo6
Direct3Dなんて最初から見向きもしなかった俺は勝ち組
136名前は開発中のものです。:04/07/01 21:45 ID:ArWkKvaA
でもアンタ、フェードアウト組みに入ってますから!残念!!
137名前は開発中のものです。:04/07/02 00:21 ID:ncnowZLr
知ったかしかいないじゃん。
覗いて損した。
138ID:eBOQQwrF:04/07/02 00:49 ID:hrsj50x5
>>132
>ところで、何の権利があっておまえらそんな「偉そう」なの?
 
話を逸らして因縁付けとは、実に聡明な方ですな(´ー`)y−~~~
このスレの>>1と酷似したものを感じます。
http://pc5.2ch.net/test/read.cgi/gamedev/1088102213/l50
139名前は開発中のものです。:04/07/02 00:50 ID:6SSnZDB7
スレを覗いたごときで何かが得られると思ったとは、
なかなか幸せな脳味噌をしているようだ。
140名前は開発中のものです。:04/07/02 04:22 ID:fdoAETWb
なんだ、ど素人がプロの振りをしてみるスレだったのか。
141名前は開発中のものです。:04/07/02 04:28 ID:SemB68lB
ところで喪前らレス先番号ぐらい書いてくれ。

>>139
「覗いた」という表現から察するに137へのレスか。

>>140
どのスレの話をしてるのか知らんが
138がリンク貼ったスレの話なら同意だ。
142名前は開発中のものです。:04/07/02 06:06 ID:fdoAETWb
なんだ、底辺が素人をバカにするスレか。
143名前は開発中のものです。:04/07/02 06:09 ID:fdoAETWb
もとい、ろくな仕事させてもらえない底辺が、素人相手に鬱憤を晴らすスレですねここは?
144名前は開発中のものです。:04/07/02 06:11 ID:eAfM21ZW
>>141
いやど素人ってのは >>118 のことだろ。
無知さらしといてなんか逆切れしてるし。
使えない奴ほど変なプライド持っててほんと困る。

>>142-143
そんなに悔しかったの?
145名前は開発中のものです。:04/07/02 06:32 ID:fdoAETWb
>>144
>そんなに悔しかったの?

おれは118じゃないよ。傍から見て、底辺どもの争いは醜いなと思って。
とくに>>125 は、底辺で鬱屈としている奴特有の攻撃性だなと。
穢れた底辺とこれ以上かかわりたくないのでこれで。
146名前は開発中のものです。:04/07/02 07:49 ID:vYv1Sl4Q
うほ。なんだかよく分からんことになってますね。

一連の流れを読ませていただきましたが、超ド素人の私のような人間でも明快に分かるのは
「底辺」「素人」といった、自分に都合の良い人間像を脳内生成して、それを勝手に信じ込んで
勝手に火病を起こして勝手に暴れている fdoAETWb のような人は何を言っても説得力ないよ
ということ。
 
>>125にはやや陰険な印象を覚えますが、WXjsa61Z の>>126以降の狂いっぷりというか
八つ当たりっぷりを見ていると、こちらも弁護不能というか自業自得でしょ。冷静じゃないよ。
147名前は開発中のものです。:04/07/02 08:45 ID:GQvdN794
他人を貶める言葉だけ突然書く時点で>>145も同類。
自分だけは違うと勘違いしないように。
そんなにてぇへんだ、てぇへんだと言いたければ、
江戸時代にでも生まれれば良かったのにね。
148名前は開発中のものです。:04/07/02 09:22 ID:fdoAETWb
なんだ、自作自演のスレか。
149名前は開発中のものです。:04/07/02 11:43 ID:4ZQzlT9n
粘着荒らしが誕生する過程を目撃した。
150名前は開発中のものです。:04/07/06 08:44 ID:RBBrkuoa
MFCとDIRECTXを一緒に使用する事できる?やり方がわかんね。
それと、やっぱMFCは使用しねぇ方が良いかね?記述が長くなるとか色々言われてるし
151名前は開発中のものです。:04/07/06 08:46 ID:9LI1eYRF
やり方がわからんのなら使用するな。
152名前は開発中のものです。:04/07/06 09:24 ID:6quKy7g0
>>150
サンプルをよく見なさい。
153名前は開発中のものです。:04/07/06 10:54 ID:RBBrkuoa
いやいや、MFCは使えるけど、それとDIRECTXを一緒に使うのにやり方がわかんねって意味。
154名前は開発中のものです。:04/07/06 11:06 ID:qVNazyxZ
Win32API単体とDirectXの組み合わせは出来るの?
155名前は開発中のものです。:04/07/06 11:17 ID:Ifb+GMOG
APIで作ったDirectX9.0のプログラムを一つのクラスに無理やりまとめて、
動かしていた事もあったヨ。
156名前は開発中のものです。:04/07/06 12:38 ID:6quKy7g0
>>153
だからサンプルをだなあ。
157名前は開発中のものです。:04/07/06 13:00 ID:H7JXz3nZ
>>153
MFCとDirectXを組み合わせてるサンプルがあるだろうが
158名前は開発中のものです。:04/07/06 14:06 ID:7lkdzqgc
そこまでMFCにこだわる理由がわからん。
159名前は開発中のものです。:04/07/06 20:33 ID:tJWPmmxn
Win32APIでウインドウの作成からDirectXの利用が一通り出来、
MFCも問題なく使えるのであれば、
MFCとDirectXの併用において迷う部分など無いはずなのだが、
いったい何が分からないのだろう?
160名前は開発中のものです。:04/07/09 23:56 ID:yxdBG2Kt
俺はWTL使ってる
161名前は開発中のものです。:04/07/10 16:05 ID:4OvPBLsu
そういう本売ってるよ、自分見たし
工学社だったはず
162名前は開発中のものです。:04/07/11 01:14 ID:RsNErYr5
ある程度本格的な3Dゲームを制作するには、ビデオメモリは何MBあれば十分?
個人的感想でいいので誰かおせーて。
163名前は開発中のものです。:04/07/11 02:20 ID:7EmrewtQ
じゃあ俺の「個人的感想」。
「ある程度」の程度次第だと思います。
164名無しさん@そうだ選挙に行こう:04/07/11 07:44 ID:aUUHJSCG
>>162
じゃあ256MB。これだけあれば十分だろ。
足りないから動かないなんてないし。
VRAMを管理する時代は終わってるし。
165名無しさん@そうだ選挙に行こう:04/07/11 09:38 ID:PGSXLcmm
>>162
ある程度の料理をするのに塩は何グラム必要ですか?
個人的感想でいいので誰かおせーて。
166名無しさん@そうだ選挙に行こう:04/07/11 11:25 ID:7FHfHHkx
>>165
一日の最高摂取量を5グラムとすると、
3で割ったぐらいが一食分じゃなかろうか?
167名無しさん@そうだ選挙に行こう:04/07/11 11:30 ID:POG7MgS8
一人分とはどこにも書いてないぞ。
168名無しさん@そうだ選挙に行こう:04/07/11 12:19 ID:7FHfHHkx
>>167
1人分がわかれば「ある程度の料理に必要な塩の量」も目星がつくだろ。
「ある程度の料理」を大衆料理を指しているなら、

「ある程度の料理に必要な塩の量」 = その料理に必要な塩の量 X 人数 + α

という式を頭に描くことができればもう解決だろう。
ここで「ある程度本格的な3Dゲームに必要なVRAM」を考えてみよう。
そもそも「ゲームに必要なVRAM」ってなんじゃろなってところから考えてみよう。
これは「ゲームのワンシーンに必要な最大VRAM」と言い換えるとわかりやすい。
要するに「ゲームの一番派手なシーンに必要なVRAM」がこれである。(システムをどう作るかにもよるが・・・)
ここで式が立つ。

「ゲームのワンシーンに必要なVRAM」
 = マップに必要なVRAM + ワンキャラに必要なVRAM X キャラ数(ワンシーンに登場する最大キャラ数)
 + ステータス画面やらに必要なVRAM + エフェクトやらに必要なVRAM + その他

と、大雑把な検討を付けることができる。
ためしに64X64ぐらいのテクスチャが何枚使えるか?とか
頂点いくつのモデルがどのくらい使えるか?とか考えてみて、
次に、どのくらいのクオリティにしたいかを考えてデザイナと譲れない線を決めて逝って
必要VRAMを決めてみてはどうだろうか?(ショボイマシンでは強制的にテクスチャの解像度を2分の1にするって手もあるw)
169名無しさん@そうだ選挙に行こう:04/07/11 12:23 ID:j7YGQS/5
ある程度本格的なんだから現実世界と見分けがつかないほどじゃないの
170名無しさん@そうだ選挙に行こう:04/07/11 12:35 ID:CZk0RtKK
いや、つーか必死すぎ
171名無しさん@そうだ選挙に行こう:04/07/11 14:46 ID:PGSXLcmm
ある程度本格的なX+Y=Zには、いくつ代入すれば十分?
個人的感想でいいので誰かおせーて。
172名無しさん@そうだ選挙に行こう:04/07/11 14:48 ID:CQ76X3a+
文字が炎で浮かびあがるみたいなのを再現したいのですが
どうすればいいですかね?
173名無しさん@そうだ選挙に行こう:04/07/11 15:21 ID:3khxCyza
256*256*256のボリュームテクスチャが最低32枚は要るな。
174名無しさん@そうだ選挙に行こう:04/07/11 17:14 ID:/iADttXZ
セルオートマトン
175名無しさん@そうだ選挙に行こう:04/07/11 17:20 ID:nxB/5Hag
ライフゲーム
176名無しさん@そうだ選挙に行こう:04/07/11 17:42 ID:IUKX/jbg
>>172
ここで聞くよりネットで探したほうが遥かに早い。
古くはDirectDrawやGDI、
最近のならDirect3DやらShaderやらソースは転がりまくりだ。
177名無しさん@そうだ選挙に行こう:04/07/11 18:04 ID:QKmJNdxw
ライフゲーム…懐かしい。そう言えば俺が一番最初に作ったソフトはライフゲームだった。
178名無しさん@そうだ選挙に行こう:04/07/11 19:06 ID:6WfdSZuv
>>172
文字をモデルでなくテクスチャーで描画するなら、シェーダーでバンプマップと、ディフューズライトマップと、ノイズをうまく使えば作れると思う。

179名無しさん@そうだ選挙に行こう:04/07/11 20:08 ID:SNLob6Bm
XSIファイルって何?
SoftimageXSIのファイルのことですか?
180名前は開発中のものです。:04/07/12 11:08 ID:f/RugnCv
どこのXSIだか分からないが、その可能性が高い。
多機能なファイルなので、有料物が多いが多種のコンバーターが用意されている。
特定のソフトのデータを別のフォーマットに変換するときに、直接変換できないのであれば、
いったんXSIを経由することによって解決できる。
181名前は開発中のものです。:04/07/12 12:41 ID:iMN5IpxO
DirectXのXSIはシーンファイルだと思うのですが
手持ちのシーンファイル(LWとか)をXSIに変換したいのです。

SoftimageXSIは高くてとても買えないし。
よろしかったら変換ソフトを教えてもらえませんか?
そんなに高価でなければ買いたいのですが‥。
182名前は開発中のものです。:04/07/12 12:47 ID:V2NEqMy/
>>181
PolyTrans
www.oakcorp.net/polytrans/
183名前は開発中のものです。:04/07/12 13:37 ID:d8+m1zeC
すごいフリーソフトですね。
こうゆうのを探してました。
ありがとうございました。
184名前は開発中のものです。:04/07/12 15:35 ID:+82HpsML
>>183
182のことなら売りもんだよ。
日本版で4〜5万、直輸入で300-400$ぐらい
185181:04/07/12 19:31 ID:9tsuxA4f
>182
XSI BVH LWS Xの相互変換!
まさに自分がほしかったものです。 
5万くらいなら買えるし。

さっそく評価版をダウンロードしてみます。
ありがとうございました。
186名前は開発中のものです。:04/07/12 21:02 ID:YFu3Yt3V
ソースないです
187名前は開発中のものです。:04/07/12 22:24 ID:V2NEqMy/
>>186
他の調味料で我慢せよ。
(例:ソース焼きそば→たらこ、明太子、醤油バター)
188名前は開発中のものです。:04/07/13 00:41 ID:4dYjAK2k
やきそばは、塩に限る
189名前は開発中のものです。:04/07/13 00:53 ID:q9x7UC3I
VC++6.0でXファイルを表示することができたけど、
このXファイルをプログラム内で変形させたり、
歩かせたりしたいのに、参考になるサイトが見つからないYO!

歩かせるのってもしかして体のパーツを別々に作らなくてはならない・・・?
変形させるのってXファイルから座標の情報が分かれば大丈夫だと思うけど、
どういう風に取得するのやらOTL
190名前は開発中のものです。:04/07/13 01:03 ID:4wlf1v+d
bakaな質問しますけど、DirectX7対応ゲームをプレイする為に
DirectX8完全対応なゲフォ4に
無理矢理DirectX7とDirectX7用の古いグラフィックドライバーを
インストールするのは無理があるでしょうか?

DirectX7環境のほうがスムーズな2D描画できると思うんで。

というか未対応にもかかわらず古いグラフィックドライバーぶっこむと
グラボぶっ壊れるかな・・・・・
191名前は開発中のものです。:04/07/13 01:33 ID:/CvgO/Ka
>>189
DirectX9にtinyのサンプルあるから見とけよ。
 
>>190
違うビデオチップのドライバを無理やりインスコして壊れない保障はない。
んなの当たり前。つーか板違い。自作PC板のゲフォスレで聞きな。
192名前は開発中のものです。:04/07/13 02:39 ID:y7gDmdRZ
>>190
そもそも、ゲーム開発ではなくゲームプレイで何を言ってる?

DirectX7で作られたバイナリの処理が、
DirectX8環境で実行させると全く違う物になると言いたいの?
だからDirectX7をインストールしたいと…

DirectX7でブロック転送やらで作られた処理のバイナリを
DirectX8環境で実行させると、勝手にスプライト処理とかになって遅くなると
そんな感じに思ってるの?
193名前は開発中のものです。:04/07/13 07:21 ID:DBRzcV3o
>>192
DirectXにスプライト処理が存在すると、
そんな感じに思ってるの?
194名前は開発中のものです。:04/07/13 07:43 ID:5llfoY9v
最近バカみたいな質問が多いのは、バカが増えたからだよな。
195名前は開発中のものです。:04/07/13 08:34 ID:jzwdFF+S
期末テストも終っただろうしな。
196名前は開発中のものです。:04/07/13 10:07 ID:rkvj0E5C
にっぽんの将来は、まっくらだ
197名前は開発中のものです。:04/07/14 03:03 ID:YAk9BLuw
ふと思ったんだけど、
結局IDirect3DDevice9::PresentはどういうときにVSYNCと同期とるの?
ウィンドウモードでもVSYNC待ちするん?
198名前は開発中のものです。:04/07/14 05:47 ID:MG298uj6
ヘルプの D3DPRESENT_PARAMETERS構造体の
PresentationIntervalを読めば、その謎は解決すると思う
俺もちょうどこの前、同じところで悩んで調べたとこ
199名前は開発中のものです。:04/07/14 10:52 ID:Wq2xcMIa
>>197
>ウィンドウモードでもVSYNC待ちするん?
 
するよ。自動。
200名前は開発中のものです。:04/07/14 15:27 ID:TrdtPjRg
難しい会話してますね。
201名前は開発中のものです。:04/07/14 15:38 ID:6+nKd7SH
文字が炎で浮かびあがるみたいなのを再現したいのですが
どうすればいいですかね?
202名前は開発中のものです。:04/07/14 15:47 ID:7a2ZlvXB
>>172
ここで聞くよりネットで探したほうが遥かに早い。
古くはDirectDrawやGDI、
最近のならDirect3DやらShaderやらソースは転がりまくりだ。
203名前は開発中のものです。:04/07/14 16:35 ID:Wq2xcMIa
セルオートマトン
204名前は開発中のものです。:04/07/14 16:37 ID:cSqrSSKt
ライフゲーム
205名前は開発中のものです。:04/07/14 17:39 ID:8+MeTEKK
本もってる人しか分からない質問でスマソ。
「DirectX9vol.2 3Dゲームプログラミング C#によるキャラクタの歩行アルゴリズム」
って本なんですが。
サンプル(リスト5.5)をC++に直して実行したんですげど、
キャラクタが一歩進んで逆モードになったとたんに上半身の姿勢が傾いて
その後はそのまま歩行するんですが、これって仕様ですか?
真っ直ぐの姿勢のまま歩行させたいんだけど、何時間も迷ってます。
お助けを・・・。
206名前は開発中のものです。:04/07/14 18:13 ID:L7fgGGCl
サンプルそのまま動かしてみて
違う動作なら自分のバグだろう
207名前は開発中のものです。:04/07/14 19:57 ID:8+MeTEKK
>サンプルそのまま動かしてみて
実は動作させる環境が無いんです(win98のk6-2 350mhz vc++5.0)
208189:04/07/14 21:02 ID:rbPUkRjn
tinyのサンプル見て何がなんだか分からなかったけど、
サンプルのコードの一部をコピってぐぐってみたらそれらしいHPがでてきました。
頂点シェーダーっていうのをぜんぜん知らなかったよ。
これからまた勉強します。
ありがとうございました。
209名前は開発中のものです。:04/07/14 21:17 ID:uOZXkB+P
>>205
仕様かどうかはソース見ればわかるでしょ。
210名前は開発中のものです。:04/07/14 23:14 ID:+gnIx0lG
ここも某BBXも、完全に厨房王国と化してしまったな。
211名前は開発中のものです。:04/07/14 23:17 ID:AbhzswCG
夏到来だぜ
212名前は開発中のものです。:04/07/14 23:17 ID:Wq2xcMIa
夢を見る210
213名前は開発中のものです。:04/07/14 23:33 ID:3SlC6+or
>>189
VERTEX構造体に、ブレンド値(ウェイト=行列補間値 = wM+(1-w)M )を入れるんだよ。
D3DのドキュメントのGeometry Blendingを読め。

214213:04/07/14 23:36 ID:3SlC6+or
補足:
ブレンドする行列をそれぞれM1,M2とすると、ある頂点のウェイトw [0,1]によって頂点を変換する行列M'を求める。
M' = wM1+(1-w)M2
215197:04/07/14 23:41 ID:YAk9BLuw
>>198-199
おお、設定できるのか。
見逃してました。マジでありがとん
216名前は開発中のものです。:04/07/14 23:56 ID:o3zClHdn
>>213
行列を補間しちゃうの?
217名前は開発中のものです。:04/07/15 00:02 ID:a0RqXKRX
>>214は大嘘な。
218名前は開発中のものです。:04/07/15 00:16 ID:5qtxwqQC
パーティクルって何?
219214:04/07/15 00:20 ID:74XWLGbU
>>216
そうだよ。
SetTransform() で、WORLD1に、M1, WORLD2にM2を設定する。
あと、全ての頂点にブレンド値wを設定。
バーテックス・ブレンディングの変換行列はこうなる。
M' = wM1+(1-w)M2
これは線形補間。

>>217
素人さんは書き込み遠慮願えますか?
220名前は開発中のものです。:04/07/15 00:20 ID:RZa6M6YU
>>218
粒子
221名前は開発中のものです。:04/07/15 00:36 ID:5qtxwqQC
炎で文字を表現していのですがどうすればできますかね?
222名前は開発中のものです。:04/07/15 00:39 ID:me8K4ngQ
つまんね
223名前は開発中のものです。:04/07/15 00:44 ID:J2QoNYbd
>>219
マジで行列を補間すると思っちゃってるの?
>D3DのドキュメントのGeometry Blendingを読め。
アンタこそよく読んだほうがいいよ。
224名前は開発中のものです。:04/07/15 00:48 ID:s7S1auKv
>>219
それは拡大縮小のやり方?
頂点すべてにwをかけて、
wを変化させることで拡大縮小を行うという意味?
225名前は開発中のものです。:04/07/15 01:05 ID:74XWLGbU
>>224
まったく違う。ボーン数1のとき,
ブレンドする行列をそれぞれM1,M2とすると、ある頂点のウェイトw [0,1]によって頂点を変換する行列M'をD3Dが求め、その変換行列によって頂点をD3Dが変換する。
M' = wM1+(1-w)M2 ← D3Dが行列M1→M2をウェイトwで補間する。
例えば、CUSTOMVERTEX構造体はこんな感じ。
{
 D3DVECTOR3 coord;
 float    w; ←区間[0, 1]
}
ユーザーが設定するのは、
頂点座標をPとすると、変換後の座標P'= PM'となる。

>>223
おまえまったく判ってない。
226225:04/07/15 01:08 ID:74XWLGbU
ユーザーが設定するのは、上の例の場合、M1,M2のWORLDマトリックスと、すべての頂点のw。
ウェイトが1であれば、100% M1となり、0であれば100% M2となり、0.5であれば、(M1*0.5 + M2*0.5)となる。
227225:04/07/15 01:10 ID:74XWLGbU
>>223
こういうアホがいるからみんな消えていくわけだな。
228名前は開発中のものです。:04/07/15 01:37 ID:J2QoNYbd
>>225
だから違うよ。
変換後の座標をウェイト値で合成するんだろ。
行列を線形補間してそのまま使ったりしたらまずい。
229名前は開発中のものです。:04/07/15 01:44 ID:a0RqXKRX
>>225
久しぶりに正真正銘のバカを見たわ。
>>216,>>217>>223
をどう読んだのか?

あと「行列を補間する」の意味を教えれ。
230名前は開発中のものです。:04/07/15 01:50 ID:a0RqXKRX
>>225の発言を抜粋。

「素人さんは書き込み遠慮願えますか? 」
「おまえまったく判ってない。 」
「こういうアホがいるからみんな消えていくわけだな。 」

・・・鬱だ氏んでくれ>>225
231名前は開発中のものです。:04/07/15 02:33 ID:5qtxwqQC
炎の文字はどうやって表現すれば・・・
232名前は開発中のものです。:04/07/15 03:28 ID:ArWlyibQ
>>225
スキニングによるボーン処理のweightと
ボーン変換における各key_frame間の補間が
混同されすぎてます。

key_frameが十分細かく設定されているなら貴方の言う補間処理は不要でしょう。
しかし、頂点が複数のボーン影響を受ける事とは別の話です。

スキニング、ボーンのウェイト、姿勢の補間を理解する事をお勧めします。
233名前は開発中のものです。:04/07/15 03:55 ID:WZCfEE8K
>>231
可愛そうだからマジレスしてやると、
その技術はDirectXとは全く関係が無い。
結論を言うと、スレ違いだね。

適切なスレで質問すると良いだろう。
234名前は開発中のものです。:04/07/15 04:30 ID:37qRmEuN
DirectDrawでウィンドウモードで完全にVSYNCさせるのって無理?
235名前は開発中のものです。:04/07/15 07:22 ID:74XWLGbU
>>228

「 変換後の座標をウェイト値で合成するんだろ。
行列を線形補間してそのまま使ったりしたらまずい。 」

たしかに、D3Dではベクトルを合成しているのは認める。しかし、
V'= V{wM1+(1-w)M2}, V'= wVM1+(1-w)VM2
この2式の結果は同じ。嘘だと思うなら試してみ。

236名前は開発中のものです。:04/07/15 07:24 ID:74XWLGbU
>>229
> あと「行列を補間する」の意味を教えれ。
M' = wM1+(1-w)M2
って定義してんだろ。
> ・・・鬱だ氏んでくれ>>225
おまえがしねよ。数学もできないでプログラマなんかやってんじゃね。
237名前は開発中のものです。:04/07/15 09:23 ID:yYZscXA7
行列の線形補間は可能に一票。
ただし、行列の段階だろうが座標だろうが、
元が行列のデータを補間すると回転要素の劣化が激しいので、
補間が前提であれば、成分を混ぜた物を使う時点で愚策。
行列でしかデータを吐けないエクスポーター等は使うべきではない。
行列の場合は、補完しなくてもいいように、
細かくデータを吐きだして無駄にデータ量をとるのを覚悟するしかない。
238名前は開発中のものです。:04/07/15 13:37 ID:Z96KWdeU
>>225, >>235, >>236
おまえがしねよ。同次座標も同次変換も知らないでプログラマなんかやってんじゃね。

> たしかに、D3Dではベクトルを合成しているのは認める。しかし、
> V'= V{wM1+(1-w)M2}, V'= wVM1+(1-w)VM2
> この2式の結果は同じ。


(゚Д゚)ハァ?
239228:04/07/15 14:14 ID:znH2PgHO
>>235
だから変換後に合成するのと合成した行列で変換するのは違うって。

たとえば単位行列とY軸で180度回転してる行列を補間してみればわかる。
これは極端な例だけど回転要素が近い行列同士でも
この問題が起きてるので線形補間してそのまま使うのはまずいって。
240名前は開発中のものです。:04/07/15 14:43 ID:5CaSOcVA
それ例は、行列の補間でも、変形後の座標の補間でも、同じだと思われ。

このスレにはバカしかいないのか?
241名前は開発中のものです。:04/07/15 14:59 ID:TlmwfOpa
189が惑わされているといけないから言っとく。
サンプル通りに変形済みの頂点合成しとけば問題ない。
頂点シェーダに手を出したら、とりあえずトゥーンシェーディングをやって見る。
案外面白いから。
テクスチャの使い方を学ぶ良いサンプルだと思うし。

スキニングで行列を補間するメリットってあるの?
242名前は開発中のものです。:04/07/15 15:00 ID:Lf5cLVAP
引き篭もりは多いが、バカは >>240 ぐらいだろ。
243名前は開発中のものです。:04/07/15 15:26 ID:qBCUW8sZ
>>240
面倒なんで一行目だけ
・単位行列
1 0 0 0
・Y軸で180度回転
-1 0 0 0
これをウエイト0.5で補間したら
0 0 0 0
になってまずいだろ。
これは極端だとしても違う回転要素の行列を線形補間しただけだと
スケーリングが掛かったような変な行列になる。

回転要素が違う行列を線形補間したものと
クォータニオンやオイラー角を補間してそれで作った
行列の中身は違うだろ。
244名前は開発中のものです。:04/07/15 15:30 ID:qBCUW8sZ
>>242
>>235 もバカでしょ。
同一人物だとしたらもう手に負えないんで
もう行列の補間が正解でいいです。
245名前は開発中のものです。:04/07/15 15:31 ID:yYZscXA7
補間が前提ならクオータニオンを使うべき。
行列はどのような方法を使おうと、回転要素に問題が発生する。
ちなみにクオータニオンを使っても、180度をブレンドなら、かなりのゆがみが発生する。
行列ならゆがみを通り越して、ひしゃげる。
246名前は開発中のものです。:04/07/15 15:36 ID:yYZscXA7
勘違いをしていたが、スキニングのウエイトか。
アニメーションとかモーションブレンドの話をしてた。
ちょっと逝ってくる。
247240:04/07/15 15:54 ID:37qRmEuN
>>243
さっきも書いたが、
変換後の補間するやり方で、その例をやってみろよ。

同じ結果になるだろ。
なぜなら、行列の補間も、変換後の座標の補間も、どっちも所詮線形変換だから。

自分が本当のバカであることを証明したいだけなのか?
248240:04/07/15 15:58 ID:37qRmEuN
>>244
行列の補間は間違い。

行列の補間は同次座標を含めた4次元座標での線形補間、
変形後の座標の補間はもちろん3次元座標での線形補間。

どちらも単なる線形補間なのでそもそも「正しい」など言えないのだが、
ウェイトを使ったブレンディングの概念により近いのは明らかに後者。
249240:04/07/15 16:04 ID:37qRmEuN
書き忘れたが、
>>243の例で、二つの方法の結果が等しくなるのは、
用いられている二つの行列が、同次座標を変化させない変換を表しているから。

まさかここまで言わないと理解できないほどのバカはいないと思うが、念のため。
250名前は開発中のものです。:04/07/15 16:20 ID:YX0jyFzX
>なぜなら、行列の補間も、変換後の座標の補間も、どっちも所詮線形変換だから。
>行列の補間は同次座標を含めた4次元座標での線形補間、

もうアンタの勝ちです。間違いない。
251名前は開発中のものです。:04/07/15 21:59 ID:nzaxTIty
水、雷を表現したいのですがどういった方法がありますでしょうか。
252名前は開発中のものです。:04/07/15 22:14 ID:6ceo0B9C
>>251
パーティクル、ストリップ、etc。
253名前は開発中のものです。:04/07/15 22:28 ID:6ceo0B9C
と思ったらまたマルチポストか・・・。

マジレスすると、SIGGRAPHの論文でも読め。
で実装できたらこういうところで発表するとヒーローになれるぞ。
http://lucille.sourceforge.net/cgi-bin/sbr2004/wiki.cgi?page=FrontPage

「レンダリング、アニメーション関連などの見た目でデモが分りやすいのがよいかと」
とあるのでテーマとしてはいい感じのはず。
がんばれ厨房!
254名前は開発中のものです。:04/07/16 00:23 ID:3qkX9w8Z
>>221,231,251
1.炎、水、雷などを写真に撮ります。
2.ビルボードで表示したいように並べます。
3.ヽ(゚∀゚)ノヤッター!!
255名前は開発中のものです。:04/07/16 00:25 ID:3qkX9w8Z
256189:04/07/16 00:35 ID:rarOkq+Y
結局意味分からんかった。
もっと勉強して出直してきます。
ご迷惑かけました。マジで。
257名前は開発中のものです。:04/07/16 04:30 ID:OS1hTRz1
>>255
>DirectDrawでウィンドウモードで完全にVSYNCさせるのって無理?

いや、DX8以降のD3Dと統合されたのではなく、
DDrawでの話しなんすが。
258名前は開発中のものです。:04/07/16 07:54 ID:PHtkNvW+
>>257
今ヘルプ見られないから適当だが、同期とる関数がある。
259名前は開発中のものです。:04/07/16 08:04 ID:8sJyX39C
D3DPRESENT_PARAMETERSのPresentationInterval = D3DPRESENT_INTERVAL_ONE ;
じゃねーの。
260257:04/07/16 10:31 ID:x3ikW9YG
>>258
言われてみてもう一度よくさがしてみたら、
>IDirectDraw7::WaitForVerticalBlan
>メソッドは、アプリケーションが垂直帰線消去間隔と共に同期する方法を提供する。
あったあった、これっぽいね。thx

しかし、D3DとDDrawの区別が付かないやつって多いのか?
まぁDX8以降マニュアルからも消えちゃったし、しょうがないのか…
261名前は開発中のものです。:04/07/16 11:41 ID:iwAzj5Mk
>>259
>D3DPRESENT_INTERVAL_ONE
 
DX9以降、それは使わない。ヘルプ参照。
262名前は開発中のものです。:04/07/16 15:24 ID:tp+KxRbP
>>260
微妙に困るよね>DDrawのマニュアル
まぁDX7SDKのマニュアルありゃ済む話ではあるが
263名前は開発中のものです。:04/07/16 19:45 ID:4tunO0kM
>>262
それがDX8以降のサンプルを見ると、微妙に変更点があるっぽいんですよね。
(ラッパー関数が増えた?)
ぱっと見て違うのが、DDオブジェクトをnewで確保してたりとか。
C#のガベージコレクタを効かせるためなのかな?
そういう変更点の説明がまったく無いのがなんとも気持ち悪い。
264名前は開発中のものです。:04/07/17 15:48 ID:YfC7nJ2s
>>256
いや、お前は別に何も悪くない。
悪いのは、>>213, >>219, >>225, >>228, >>236, >>243のような、
忠告を繰り返し無視した上で大嘘を連発する、数学もできないバカプログラマー達だ。

まあこのスレの住人はほとんどそういう奴らばっかなのは事実だが。
265名前は開発中のものです。:04/07/17 17:20 ID:B5TJNueI
荒れるから終わってる話を蒸し返すなよ…
266名前は開発中のものです。:04/07/17 18:00 ID:+9dzbshW
じゃあ話題を変えてみよう。

DWORD dwExecuteBufferSize;
D3DEXECUTEBUFFERDESC D3DExecuteBufferDesc;
ZeroMemory(&D3DExecuteBufferDesc, sizeof(D3DExecuteBufferDesc));
D3DExecuteBufferDesc.dwSize = sizeof(D3DExecuteBufferDesc);
D3DExecuteBufferDesc.dwFlags = D3DDEB_BUFSIZE;
D3DExecuteBufferDesc.dwBufferSize = dwExecuteBufferSize;
hRes = m_lpD3DDevice->CreateExecuteBuffer(&D3DExecuteBufferDesc, &m_lpD3DExecuteBuffer, NULL);
267名前は開発中のものです。:04/07/18 15:15 ID:KMrdhIqJ
>>264
V'= V{wM1+(1-w)M2} = wVM1+(1-w)VM2
まだこれがわかんねーやつがいるよw

『数学もできないバカプログラマー達だ。
まあこのスレの住人はほとんどそういう奴らばっかなのは事実だが。』

おまえのことだよプッ>>264
268名前は開発中のものです。:04/07/18 15:39 ID:wMON88Q+
>>266
そんな話題に変えてもなつかしすぎて誰もついてきてこれないぞ
269名前は開発中のものです。:04/07/18 20:13 ID:XV/x4++F
むしろ、どう反応すればいいのか迷うが。
実行バッファを作って終わりなんだもの。
270名前は開発中のものです。:04/07/19 08:58 ID:48ZX7Scm
荒んでるとこすまんがDirectInput7で教えてくれ('A`)
今作ってるゲームを二人プレイ用に改造してるとこなんだが、2つ目以降の
Joystickデバイス取得の具合がどうもよろしくないのよ・・・

LPDIRECTINPUT7 pDI = NULL;
LPDIRECTINPUTDEVICE7 pDIdev1 = NULL;
LPDIRECTINPUTDEVICE7 pDIdev2 = NULL;

BOOL CALLBACK GetJoystickCallback(LPDIDEVICEINSTANCE lpddi,LPVOID *pvRef)
{
HRESULT hResult;
hResult = pDI->CreateDeviceEx(lpddi->guidInstance, IID_IDirectInputDevice7,(void**)pvRef, NULL);
if(hResult == DI_OK)returnDIENUM_CONTINUE;
returnDIENUM_STOP;
}
こういう列挙コールバックを書いて・・・
(省略)
hResult1 = pDI->EnumDevices(DIDEVTYPE_JOYSTICK,(LPDIENUMDEVICESCALLBACK)GetJoystickCallback,&pDIdev1,DIEDFL_ATTACHEDONLY);
hResult2 = pDI->EnumDevices(DIDEVTYPE_JOYSTICK,(LPDIENUMDEVICESCALLBACK)GetJoystickCallback,&pDIdev2,DIEDFL_ATTACHEDONLY);

こんな感じでデバイスを取得しようとすると、PCにジョイスティックが1つしか繋がってない時でも
2回目のEnumDevicesがDI_OKを返しちゃうのよね(ちゃんと失敗を返してくれない)
ちなみにPCからジョイスティックを抜いて実行するとちゃんと1つ目から取得に失敗する。
何故か1つでも繋がってると2回目のEnumDevicesまで成功してしまうという・・・

いろんなサンプル見たけど1つ目を認識させるとこ止まりで参考にならんかった
漏れのコードが間違ってるのは明白なんだが解決方法がワカラン
ジョイスティックが1つの時に2回目以降がDI_OKを返さなくする正しいやり方を教えて下され
271名前は開発中のものです。:04/07/19 10:21 ID:54Q4/4D7
>>270
EnumDevicesは1回だけ呼ぶんだよ。
それでGetJoystickCallbackをループさせて、複数のデバイスを取得する。
272名前は開発中のものです。:04/07/19 10:22 ID:p5K2URLW
そら、最初から列挙し直したら同じものを列挙するだろ。
誰かがデバイスのインターフェイスを取得しようが、
別に列挙の条件から外れるわけではないからな。

一回の列挙で一度にやるか、二回回すなら、取得済みのデバイスを無視するとかしないと。

ちなみに俺は、IDirectInputDevice8::GetPropertyでDIPROP_JOYSTICKIDを使って、
使用するデバイスを選べるようにしている。
273名前は開発中のものです。:04/07/19 12:38 ID:48ZX7Scm
うーむ、コールバック関数をよく理解できんな…

コールバック関数内でCreateDeviceExを2回呼んで終わりにすればいいのかな?
ちょっとやってみる
274名前は開発中のものです。:04/07/19 12:56 ID:48ZX7Scm
コールバック内で2回CreateDeviceExやったけど同じだった・・・orz
275名前は開発中のものです。:04/07/19 13:06 ID:48ZX7Scm
思いっきり勘違いしてた
修正したらうまく行ったみたい
因みにこんな感じにしてみますた
BOOL CALLBACK GetJoystickCallback(LPDIDEVICEINSTANCE lpddi,LPVOID *pvRef)
{

HRESULT hResult;
if(pDIdev1 == NULL){
hResult = pDI->CreateDeviceEx(lpddi->guidInstance, IID_IDirectInputDevice7,(void**)&pDIdev1, NULL);
if(hResult == DI_OK)returnDIENUM_CONTINUE;
elsereturnDIENUM_STOP;
}

if(pDIdev2 == NULL){
hResult = pDI->CreateDeviceEx(lpddi->guidInstance, IID_IDirectInputDevice7,(void**)&pDIdev2, NULL);
if(hResult != DI_OK)pDIdev2=NULL;
}
returnDIENUM_STOP;
}
なんか恥ずかしいコードだな・・・


>>271-272
サンクスコ
276名前は開発中のものです。:04/07/19 13:27 ID:54Q4/4D7
>>275
強引だな・・・・・。
277名前は開発中のものです。:04/07/19 21:53 ID:FkElpxEK
確かにしようもないことで荒れるけど、業務系板と比べると『しようもない』のレベルの次元が違う。
278名前は開発中のものです。:04/07/19 21:53 ID:FkElpxEK
確かにしようもないことで荒れるけど、業務系板と比べると『しようもない』のレベルの次元が違う。
279名前は開発中のものです。:04/07/20 02:12 ID:TWCqFqg5
レベルの次元
280exciteは神:04/07/21 00:33 ID:NW4Ruyd1
それは破滅しますが、ので、そこに、さらにある、
オペレーティング・システム・ボードと比較して、
それを確かにする方法、レベルの次元、の
「そこに、さらにある、実行する方法」異なります。
281名前は開発中のものです。:04/07/22 22:56 ID:5rJvB900
Forceware60シリーズリリース。
GeForce6800にDirectX9.0c(WindowsXPSP2RC2)と
Shader3.0環境は整った。
282名前は開発中のものです。:04/07/24 19:31 ID:P1GEgvZG
ぬるぽ
283名前は開発中のものです。:04/07/24 19:55 ID:PR5W0fUe
ポルンガ
284名前は開発中のものです。:04/07/24 19:56 ID:NIvgFQBW
アハーン
285名前は開発中のものです。:04/07/24 23:31 ID:fQM+YmNW
恐らく、それらはTAKOのビットを装備しており、それを焼き、沸騰させて、それが大阪と呼ばれる時、ゆで団子になるでしょう!
286名前は開発中のものです。:04/07/25 09:28 ID:aCl1Aoq6
今制限の多いエフェクトやHLSLでしこしこライブラリ作ってるけど
近い将来その制限も緩和されてゴミとかすんだろうな
なんだかむなし
287名前は開発中のものです。:04/07/25 09:44 ID:mxjAoDQK
ここはひどい日本語でつね
288ヘルジャック:04/07/25 10:21 ID:ovE6k6xQ
http://combatant.hp.infoseek.co.jp/cgi-bin/up/src/up0262.zip

漏れが作ったんだけど ちょっとこれを改良して
289名前は開発中のものです。:04/07/25 10:35 ID:rIHwuKxk
>>288
ヘルジャックさ、
現在のフレームのキャラクタの位置を決定してから
マップの表示範囲を決めるようにしないか?

つまりマップの描画にはキャラクタの座標が必要になるわけだが。
290名前は開発中のものです。:04/07/25 10:36 ID:XPpA5MG/
誘導されてきたのですが 質問いいですか?

ビルドしてVCから実行するとHALで起動して普通に実行できるのですが、EXEファイルを
直接実行するとREFになっていますみたいなメッセージがでてその後
Geniric application error.Enable debug output for detailed information.
とメッセージがでて強制終了します。強制終了する前にプロパティをみると REFになっています。
直接起動するとなぜREFで起動するのかとメッセージの意味がよくわからないのですが教えてもらえませんか。

使用ソフトはVisual Studio AcademicでビデオカードはGeforceFX5200です。
291ヘルジャック:04/07/25 10:38 ID:ovE6k6xQ
主人公が画面の真ん中にくるような処理ね

あと obj.cppがスプライトやってるんだけど
y座標でソートしてからキャラを描写したいんだけど
リスト構造のソートのやり方がよくわからないから 教えて
292名前は開発中のものです。:04/07/25 10:40 ID:ovE6k6xQ
>>288
操作は
Alt+Enterがフルスクリーン
1キーがキャラを生成
Deleteで削除
293名前は開発中のものです。:04/07/25 10:46 ID:rIHwuKxk
>>290
それだけじゃわかんねぇよw

>>291
そのまえに2DなのにY座標でソートして描画すんの?
294ヘルジャック:04/07/25 10:50 ID:ovE6k6xQ
キャラが重なったとき
下にいるキャラの頭でそのキャラの上のキャラの足が隠れるようにしたいんだ

なんか今のはオブジェの生成した順番になってるから描写すると変な重なりに見える
295名前は開発中のものです。:04/07/25 11:10 ID:rIHwuKxk
>>294
ああ、そうか、とりあえずゲームの世界は構築してあるな。
Y座標が画面からみて奥行きになるわけね。

リストのソートがわからないのも問題だけど
この場合はこのリストはソートしない方がいいな。
だってこれ、スプライトのリストじゃん。Y座標のソートと関係ないよ。

必要なのは描画するときだけで、フレームごとに変わるんだから、
こういうときは、一時的に関数内でポインタの配列を作って、リストの要素のポインタ一つ一つを
用意した配列にとっちゃってそれをソートするんだ。
これで配列のソートと同じだ。

言ってること理解できるかな?
ポインタをとってポインタをソートするんだ。
296295:04/07/25 11:18 ID:rIHwuKxk
おっと間違え。
スプライトのリストじゃなくてオブジェクトのリストか。
まあ、それでもソートはしちゃ駄目だね。

て、いうかリストの順番に意味をもたせるのはあんまりよくないんだな。
297名前は開発中のものです。:04/07/25 11:19 ID:ovE6k6xQ
>>295
dクス
ポインタの配列を作ってそれを描写か

http://combatant.hp.infoseek.co.jp/cgi-bin/up/src/up0263.zip
とりあえずBGMを付けてみた

なんだか難しそうだがやってみまつ
298名前は開発中のものです。:04/07/25 11:29 ID:rIHwuKxk
>>297
>なんだか難しそうだがやってみまつ
楽勝でしょ?
でも、自分で考えようとするとハマルかもw
そういうときは手順をしっかり書いて見る

1.十分な数のポインタ配列を用意。(もしくは可変配列)
2.オブジェクトリストのポインタを全部ポインタ配列にとる。
3.Y座標でソートする。
  (一番楽なソートをアルゴリズムの本をみるなり、どっかのサイトからパクッてこい。)
  (この手のものいちいち自分で作ってると日が暮れるぞw)
4.できた配列を元にして描画する。

で、終わりだ。
299名前は開発中のものです。:04/07/25 11:33 ID:aCl1Aoq6
>>290
そういうのは、やはり実はエラってるってケースが多い。
DXをデバッグバージョンにしてログをみるといい。
300名前は開発中のものです。:04/07/25 11:45 ID:rIHwuKxk
>>290,297
#include <crtdbg.h>

_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_CRTDBG_LEAK_CHECK_DF);

じゃあ、おまいら、とりあえずメモリリーク支援なw
上のヘッダをインクルードして、関数をWinMain関数がはじまってすぐのところにそのままおけ。
デバッグモードで実行してみればアウトプットウィンドウになんか出るからみてみろ。
特にヘルジャック、メモリリーク出してるぞ。

ダブルクリックで飛べないから、結構みつかりにくいな。
ひとつひとつ要素を削ってってメモリリークの有無を確認して場所を特定していくしかないな。
頑張れ。
301名前は開発中のものです。:04/07/25 13:04 ID:ovE6k6xQ
>>300
すぐにどこがメモリリークしているかわかったぜ

Mapで確保したメモリをfreeしていないのと
Script クラスも解放していなかったからだ

でもねタスク処理でアプリの終了時に全タスクkillはメンド
302名前は開発中のものです。:04/07/25 13:08 ID:z6Ypme9P
>288
DirectXとは関係ないけど、個人的志向として言いたい。
タスクの関数ポインタをvoid *で持つ意味ないだろ。 > void (*proc)(struct task_tag *);
何でもありのCスタイルとはいえ、無意味な型安全性の損失は如何なものか。
と書いたところで、君が m.minami とやらではなさそうだな。


>300
「プログラムの終了時にはどうせOSが解放するからfreeしない」
というタイプの人なんじゃないの?
303ヘルジャック:04/07/25 13:12 ID:ovE6k6xQ
WM_DESTROYでTaskAllKillがコールされるようにしたら
リークはでなくなったようだけど
アプリを閉じるとブレークポイントがどうのって画面がでて一時停止するようになっちゃった

それと ポインタの配列にコピーしてそれを描写にはしたけど
バブルソートがいまいちうまくいかない
304名前は開発中のものです。:04/07/25 13:43 ID:vVa7R8jb
お前たち、ここは DirectXスレですよ!
最近の流れの話題は、べつの適切なスレでやって欲しい
305名前は開発中のものです。:04/07/25 13:46 ID:cf02RjbN
まぁいいじゃね、話題も無かったし
たまにはこういうレベルの話も、ほのぼのして良い
306名前は開発中のものです。:04/07/25 14:02 ID:AJso40ZZ
夏休みの間くらいガンマンしてやれ。バキューン
307名前は開発中のものです。:04/07/25 15:59 ID:rIHwuKxk
>>303
>バブルソートがいまいちうまくいかない
だからその辺のソースパクッてこいっていっただろう。
こんなの自分で組んじゃうような効率の悪さじゃ仕事進まんよ。

たかがバブルソートでも、1から組んでたら、
動作確認してバグや抜け探すだけで、俺だって30分近くかかっちゃうよ。

バブルソートは完璧に動くのが前提ってところから開発していかなきゃ。
いつまでたってもゲームなんか完成しないよ。
http://www.google.co.jp/search?q=%E3%83%90%E3%83%96%E3%83%AB%E3%82%BD%E3%83%BC%E3%83%88%E3%80%80%E3%82%BD%E3%83%BC%E3%82%B9&ie=UTF-8&hl=ja&lr=
308ヘルジャック:04/07/25 16:19 ID:ovE6k6xQ
こんな感じに実装したんだけど
なんか実行してみると重なりはおかしいまま


OBJ **obj_sort(int prio)
{
OBJ *ObjList[OBJ_MAX];// オブジェワーク

OBJ *o = ObjTop;
OBJ **OA = ObjList;

//オブジェのリストを取る
while (o != NULL) {
*OA=o;
OA++;
// リストを進めます
o = o->next;
}

//ソート部分

return BubbleSort(ObjList);
}
309ヘルジャック:04/07/25 16:19 ID:ovE6k6xQ

OBJ **BubbleSort(OBJ **o)
{
OBJ *temp;

// ソーティング(Y座標にてソート)
for (int i = 0; i < ObjCnt - 1; i++) {
int sort = 0;

for (int j = 0; j < ObjCnt - i - 1; j++) {
if (o[j]->obj_y > o[j + 1]->obj_y) {
temp = o[j];
o[j] = o[j + 1];
o[j + 1] = temp;
sort++;
}
}

if (sort == 0) break;
}

return o;
}
310ヘルジャック:04/07/25 16:20 ID:ovE6k6xQ
void obj_draw(TASK *t)

int x0 = map_x >> 8; // マップのどの位置を表示するか決める
int y0 = map_y >> 8;
int x1 =((map_x & 0xff) >> 3) & 31; // スクロールのあまり
int y1 =((map_y & 0xff) >> 3) & 31;

int x,y;
int s=0;
// オブジェ描写
OBJ *o = ObjTop;
OBJ **a;


a=obj_sort(0);

while (o != NULL) {
o=a[s];
s++;

if (o->stat==NOW_USE)
{
x=*o->obj_x+o->dx-(32*x0)-x1;y=*o->obj_y+o->dy-(32*y0)-y1;
if(x<640&&y<480&&y+o->h>0&&x+o->w>0)//見えない部分まで描写しない
DD_DrawBitmap(x,y, Bitmap[o->tex_no],o->xx,o->yy,(o->xx+o->w),(o->yy+o->h),o->Trans);
}
// リストを進めます
//o = o->next;
if(s>=ObjCnt)o=NULL;
}
}
311名前は開発中のものです。:04/07/25 16:36 ID:cH8/Nm1o
>OBJ *ObjList[OBJ_MAX];// オブジェワーク

obj_sort関数は最終的にこの配列へのポインタを返してるようだが、
この配列はスタック上に取られてるからobj_sort関数から帰ったときにはもう無いぞ。

とりあえず↓にしてみなさい
static OBJ *ObjList[OBJ_MAX];
312ヘルジャック:04/07/25 16:44 ID:ovE6k6xQ
かーっ
なんでうごかないのか!
とりあえずソートの昇順 降順 を入れ替えて見たら

OBJ **BubbleSort(OBJ **o)の

if (o[j]->obj_y > o[j + 1]->obj_y) {

if (o[j]->obj_y < o[j + 1]->obj_y) {

主人公が手前に表示されるようになっているからポインタの内容は失われていないみたい

OBJ **BubbleSort(OBJ **o)
がおかしいのか
313ヘルジャック:04/07/25 16:47 ID:ovE6k6xQ
http://combatant.hp.infoseek.co.jp/cgi-bin/up/src/up0262.zip
のobj.cppにバブルソートを実装してくださるとうれしい
314ヘルジャック:04/07/25 17:14 ID:ovE6k6xQ
if (o[j]->obj_y > o[j + 1]->obj_y) {

原因が分かりました
えーと

if (*o[j]->obj_y > *o[j + 1]->obj_y) {

にすると改善

つまり今までは *がなかったために obj_yのポインタのアドレスでソートしていたのでした.
315名前は開発中のものです。:04/07/25 18:18 ID:ovE6k6xQ
316名前は開発中のものです。:04/07/25 22:01 ID:rIHwuKxk
>>315
おおー。できてんじゃん。
一日で大した進歩だと思うよ。いやマジで。
317ヘルジャック:04/07/25 23:07 ID:ovE6k6xQ
>>316
てへ (*^_^*)

どうも リスト構造の並び替えはしない とかとても勉強になりました.
318名前は開発中のものです。:04/07/26 23:06 ID:V6gmIHxA
ボスケテー

ウィンドウモードで
D3DPRESENT_PARAMETERSの
PresentationInterval=D3DPRESENT_INTERVAL_DEFAULT
としたら、
ディスプレイは60Hzで動いてるのにFPS45しかでないよーヽ(;´Д`)ノ カクカク ナンデダロ
D3DPRESENT_INTERVAL_IMMEDIATE にするとFPS300くらいでヌルヌルポ動くのに
319名前は開発中のものです。:04/07/26 23:24 ID:6Ccm5Gt6
>>318
他のアプリ、例えばDirectXのサンプルでも同じ動作をするのか?
また、手持ちの他のグラボは試してみたか?
また、ドライバは更新してみたか?

と、色々いじってみなきゃわからねーよ。マジで。
320名前は開発中のものです。:04/07/26 23:44 ID:CLA4c8LP
描画が間に合わないフレームあんじゃなの?
321名前は開発中のものです。:04/07/26 23:44 ID:V6gmIHxA
>>319
他のアプリやらサンプルでもそうなんです。
グラボ1コしかナッシングなんです。ていうかノーパソ。
ドライバ一番新しいんです・・・・

どこから切り込めばよいのやら_| ̄|○ 鬱だ
322名前は開発中のものです。:04/07/26 23:46 ID:V6gmIHxA
>>320
いえ、同期なしだと300とか出るんですよ
ていうか何も描画しないでPresentだけしてもFPS45とか_| ̄|○ イッタイナンナンダ
323名前は開発中のものです。:04/07/26 23:48 ID:CLA4c8LP
なんだ、液晶モニターってフレーム間引いて表示してるのあるべ?
324名前は開発中のものです。:04/07/26 23:56 ID:V6gmIHxA
表示の問題なのけ?
1秒間にループ回った回数を表示させても45なのでしが

いや流石の俺でも目視でFPS45とか測れないべ
325名前は開発中のものです。:04/07/26 23:57 ID:6Ccm5Gt6
>>321
それじゃ、心配ナッシングw
もう、どうすることもできないんだからw
同期無しにして、タイマーでテキトーに画面更新しとけば?w
ノーパソ買った自分を恨めw

ところで、ノーパンとノーパソって似てねぇ?
326名前は開発中のものです。:04/07/27 00:10 ID:o1CoEu/t
>>302
void * 意外にどうやって関数ポインタを持つ
327321:04/07/27 00:26 ID:XAPogr5S
(゚∀゚)フッキレタ!
328名前は開発中のものです。:04/07/27 01:00 ID:JfK87rJL
>326
>302にも書いてあるけど
void (*proc)(struct task_tag *);
で、procが
struct task_tag *を引数に取り返値がvoidの関数へのポインタ変数になる
329321:04/07/27 16:25 ID:XAPogr5S
_| ̄|○ 一晩寝かせたらコードいじってないのにFPS60出てるし
なんの不具合なのやら
330名前は開発中のものです。:04/07/27 17:06 ID:o1CoEu/t
再起動でOS側の方が良い状態になったんじゃないかい
とくに突飛な変更はしてないようだし
331名前は開発中のものです。:04/07/27 17:20 ID:QCF/mVVU
昨日はバックでなんか重たいものが動いてたとか
332名前は開発中のものです。:04/07/27 17:21 ID:gvOtoHrm
9.0c出たけど、もう既出か?
333名前は開発中のものです。:04/07/28 01:22 ID:cdE8Yajg
>>321
ここの奴と全く同じ症状だと思われ。
ttp://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi?log=40&vew=437
ここでは自己解決したようだが、一部に厨房回答者が存在するので
気をつけて読めよ。

MDXだがネイティブでも共通の症状だと言ってるから、やってみれば?

334321:04/07/28 01:52 ID:L+MbB46M
漏れは今涙が出そうです。
まさかウィンドウモードだと
同期タイミングにシステムタイマが影響するなんて
思いもしませんでした。
そしてそのことを知るきっかけをくれた>>333には
感謝してもしきれない程です。
タイマ分解能を1_秒にしてあげたら
FPSは60でヌルヌルポと動いてくれやがりました。
ありがとう>>333
ありがとう>>333

ヽ ( ゚ ∀ ゚ ) ノ      バ  ン  ザ  ー  イ
335名前は開発中のものです。:04/07/28 03:45 ID:0QK3+/yt
DirectXの新しいの出たな。

>>333
そのスレ見てないけど、厨房回答者なら2chの方が多いから平気じゃねぇか?
336名前は開発中のものです。:04/07/28 12:43 ID:XhHnaZC6
えー変更点を列記すると、
複数のメッシュインスタンスで単一のジオメトリデータを使い回ししたいときに
有用な機能を提供。Shader3.0要らしいので我輩はスルー。
エフェクトでステートブロックをサポート。イラネ。
PRT用のD3DXオブジェクト追加。イラネ。
XFileローダーIDirectXFileに代わる新しいID3DXFileが追加。ホトンドオナジ。

こんなところかなぁ、夏2003と殆ど代わっていないので
入れ替えても問題なしだな。
337名前は開発中のものです。:04/07/28 15:10 ID:ea6AWAyR
summer2004に入れ替えてコンパイルしたら、リンク通らなくなった!
ウワァァン!!
338名前は開発中のものです。:04/07/28 16:51 ID:XhHnaZC6
>>337

俺はVisualStadio2003だが、
インストーラが勝手にパス変更までしてくれて
無問題に通ったよ。
一箇所エフェクト関係でソース直しただけで。
339名前は開発中のものです。:04/07/28 16:53 ID:XhHnaZC6
ああ、そういえば、VisualStadio6.0用のライブラリが
extrasにあったような。そのせいか?
340名前は開発中のものです。:04/07/28 16:58 ID:XhHnaZC6
今回のSDKにはDirect3D用のコモンコントロールがついてるのな。
なんだか次世代って感じ。
341名前は開発中のものです。:04/07/28 17:12 ID:w9EXFP9+
「Stadio」2回じゃもう言い訳できんな

>>340
まじでぇぇぇぇ!!
みてくるか
342名前は開発中のものです。:04/07/28 17:19 ID:ea6AWAyR
…イタリア版だったりしてな。
俺はVisual Studio 6.0なんで、extras入れていじってみるよ。
343名前は開発中のものです。:04/07/28 20:12 ID:SciYQnDX
>>339
トンクス
ちょうどリンク通らなくていらいらしてたとこなんだ。
extraは気づかなかった
344337:04/07/28 20:22 ID:ea6AWAyR
d3dx9.dllを入れ替えたらコンパイルできたーよ。
でも、シェーダ使って、テクスチャ複数重ね、環境マップやってるところが
無茶苦茶か真っ白になってる…
うーん、俺のプログラムが行儀悪いからなのか…
何か設定の仕方が変わったのか…
345337:04/07/28 20:24 ID:ea6AWAyR
dll じゃなくて libだ…
デバッグ用のd3dx9dt.libはextraに入ってないんだね。
346名前は開発中のものです。:04/07/28 20:36 ID:SciYQnDX
いよいよ持って2003買え、ということか…
どこからその金捻出しよう
347名前は開発中のものです。:04/07/28 20:58 ID:XhHnaZC6
>>346
毎度おなじみMSの無言の圧力
348名前は開発中のものです。:04/07/28 21:05 ID:NEcinFei
2005から無料にしてくれるに違いない。今からゲイツ様に土下座しとく。_| ̄|○
349名前は開発中のものです。:04/07/28 21:49 ID:w9EXFP9+
ちょっと待って、それじゃVS6(VC6)じゃ、
今回のアップデートはしちゃ、まずいって事?

貧弱なノートの回線で、ようやくDLしたのにそりゃないぜ…

しかし、いくらなんでもそんな分けないと思うがなぁ
自分で試したいけど、DirectXってOS入れ直さない限り
バージョンダウン出来ないのがジレンマ
350名前は開発中のものです。:04/07/28 21:58 ID:ea6AWAyR
>>349
今回は、前のバージョンと共存できるみたいだよ。断言はできないが。
デフォルトのインストール先はprogram filesの下だし
VCのディレクトリ探索の優先順序をちょいと変えるだけで、
前バージョン(2003summer)の実行ファイルもできた。
351名前は開発中のものです。:04/07/28 22:42 ID:SciYQnDX
(旧バージョンも残ってるんで)ちょっと悩んだんだけど、
Xファイル読み込み部分を新APIを使ったものに書き換えてみたんだが…

アニメーション付きXFileを全部読み終わって最後のID3DXFileDataオブジェクトを
Releaseするとライブラリの中でAccess Violation。
LWのXファイルエキスポータで吐き出した奴なんで、今バージョンのXファイルパーザには
都合の悪い記述があるのかもしれないけど…原因突き止めるのめんどい
352351:04/07/29 00:15 ID:Y8Uc6wdA
やっつけで移行したから、Release忘れをやらかしているとこがあったのが原因ぽい。
…単にメモリリークするんでなく、アクセス例外出すのは、むしろ親切、かなぁ
353名前は開発中のものです。:04/07/29 08:43 ID:qkYnqUbu
>>351
人柱乙。
俺のXFileパーサーは
約6000行もあるので(無駄な部分が多いだけ)
移行には躊躇してしまう。
354名前は開発中のものです。:04/07/29 15:47 ID:TPfQskJx
質問なんですが、これからDirectX9を学ぶなら
ビデオカードもDirectX9対応のものを買った方が
良いでしょうか?

買う場合はゲームとかは特にしないので
G-FX5200辺りのカードを考えたりします。
どうか、アドバイスをお願いします。
355名前は開発中のものです。:04/07/29 16:22 ID:iXanYUqF
お金が充分にあるならそうすべき。
お金がないなら、今のボードを我慢して使うべきだぜ〜!
まだ高えし
356354:04/07/29 17:38 ID:TPfQskJx
アドバイスありがとうございます。

当分は今のボード(GF2-MX400)を使って
その間に、お金の方も貯めておこうと思います。
357名前は開発中のものです。:04/07/29 20:45 ID:TtwyqZ7F
2004Summerって、2003Summerにあった新規プロジェクトウィザード無くなってる?
EmptyProjectが追加されるって噂だったけど見あたらないし。

>340
なにそれ、詳細きぼん
358名前は開発中のものです。:04/07/29 21:23 ID:Yl8iQYNA
EmptyProjectが見当たらないって、サンプルブラウザからインストール
出来ますがな。

サンプルがインストール形式になったのは、ちょっと便利かも。
359名前は開発中のものです。:04/07/29 21:46 ID:TtwyqZ7F
>>358
EmptyProjectってサンプルにいたのか_| ̄|○thx

Emptyっていう割にはいろいろ入ってる気がしますが
始めたばっかの俺には何やってるかさっぱりだ(´・ω・`)
360苦学生七誌:04/07/29 21:58 ID:wUWj3vkA
>>354
そんなモン持ってて買い替えを考えるなんて金持ちだなぁ
361名前は開発中のものです。:04/07/29 22:24 ID:BuKOqKsi
VC++.NET2003使用で、DirectX9.0c summer2004 をインストールしたけど、fxの変更点(Pass() -> BeginPass() )以外何も問題なかったよ。わざわざユーザーの迷惑を顧みず関数名を変えているのは謎だが。
というか、何が変わったの?シェーダー3.0サポートだけ?若干D3DXライブラリ関数が増えているような気がするけど。
362名前は開発中のものです。:04/07/29 22:32 ID:fTQZk59p
今回も名前がファッションショーのようなマイナーアップ。
363名前は開発中のものです。:04/07/29 22:34 ID:BuKOqKsi
GF2-MX400から5200って変えるメリットないんじゃない?GF2はシェーダーをサポートしてなかったっけ?
グラフィックカードのシェーダーバージョンのリストってどっかのサイトにないかな?
ATI Radeon 8500 vertex shader:1.1, pixel shader: 1.4 とかのリスト。
知っている人いたら教えてください。
364名前は開発中のものです。:04/07/29 22:46 ID:TXWm31/s
最低でもピクセルシェーダ2.0対応のほうがよくない?
せっかく換えるなら
365363:04/07/29 23:14 ID:BuKOqKsi
>>364
オレもそう思った。
366名前は開発中のものです。:04/07/30 00:38 ID:Dxj8mZA4
directX9.0をアマチュアで作る際、GeforceFX系とRADEON系、適しているのはどちらなのでしょうか?
似たようなものなのでしょうか?

GefroceFX系は最適化しないと全く性能が出ないという話と、RADEON系はPCが不安定になるという話とで漠然とした不安があるのですが・・・・
367名前は開発中のものです。:04/07/30 00:59 ID:xVvwlJFX
368名前は開発中のものです。:04/07/30 01:09 ID:prAk/ML6
アマチュアなめんなよ
369名前は開発中のものです。:04/07/30 05:17 ID:kVioF7Z4
>>366
公開する物を作るなら、安めのヤツでもいいから両方持ってた方がイイです。
さらに各種チプセト内蔵グラフィックについてもテストできる環境だとなおイイです。

とりあえず1つだけ、というならどっちでも好きな方でイイと思います。

傾向としては、渡すパラメータを間違ったりした時に
nVidiaだとなんか普通に動作しちゃったりするのに対し、
ATIだとアプリが落ちるのが多いです。(以前はブルースクリーンでOSごと落ちたりしたが...)
ドライバの品質はnVidiaの方がまだ上ですね。

nVidiaで少しでも安定した開発環境を...でもイイし。
ATIで動けばnVidiaでも動くに違いない!...でもイイかと。
370名前は開発中のものです。:04/07/30 09:00 ID:MbcA7lq/
VC2003でDirect3Dアプリをデバッグすると
頻繁にフリーズする。デッドロックじゃなくて
非常に重くなってるだけだと思うんだけど
2時間で10回ぐらい再起動ではきつすぎる。
VC6ではこんなことなかったのに。
皆さんはどう?
371名前は開発中のものです。:04/07/30 14:28 ID:FqoBuYOS
初歩的な質問で申し訳ない。なんだか的はずれな質問かもしれんが‥‥
DirectX 9.0 SDKを使用してアプリを作った場合、
それを動作させる環境はDirectX 9.0以降になるの?
あるいは使用した機能によって対応Verが異なる?
372名前は開発中のものです。:04/07/30 15:07 ID:dwoGkKo9
9SDKで8以前に対応させることは可能。
373名前は開発中のものです。:04/07/30 15:07 ID:tikmpGO/
使用した機能によってそのバージョン以上のランタイムが必要。

9.0SDKで作ってもDirectX8.0までの機能しか使っていなければ、
8.0以上のランタイムがあれば動作する。
374名前は開発中のものです。:04/07/30 17:10 ID:r2gunRKx
回答ありがとうございます

>>367
RADEONのほうが高機能だけれども、みんながRADEON使ってるってわけでもないから
結局無意味になるような・・・という感想です
(低機能製品に合わせたものを作らざるおえない)

>>369
両方ですか!?それはむずかしい・・・・

ATI系はミスに厳しすぎて手間取りそうだから、nVidia系にしときます。
375名前は開発中のものです。:04/07/30 23:18 ID:lgfh8BvZ
でこぼこなフィールドを作っているのですが、
キャラをその上で歩かせるために、ポリゴンのある一点のY座標を取得
したいのですが、そんな都合のいい関数ありますか?
376名前は開発中のものです。:04/07/30 23:48 ID:xVvwlJFX
RAYじゃダメなの?
サンプルにあるでしょ。
377名前は開発中のものです。:04/07/30 23:57 ID:lgfh8BvZ
Pickのやつでしょうか?
D3DXIntersectの関数だけで大丈夫ですか?
使ってみたんだがいまいちうまくいかない。
378名前は開発中のものです。:04/07/31 00:03 ID:Yg3TW/Ca
>>377
そそ、RayPick。こんな感じ。
http://kim1.hp.infoseek.co.jp/iroiro/pick.html
379名前は開発中のものです。:04/07/31 00:21 ID:5nbqJytr
>>378
おお、サンクスです。
vPickRayOrigにはカメラの位置と同じ座標でいいのでしょうか?
vPickRayDirの意味がいまいち分からない。とりあえずこれと同じようにやってればいいのかな。
380名前は開発中のものです。:04/07/31 00:48 ID:mgl1+hTz
多分誤解しているというか、レイの考え方を理解してないので、一度
自分で図に書いてみることをお勧めする。

レイはキャラクター位置の適当な高さから、真下に向けて飛ばす。
んで、ポリゴンとの交点からキャラの足元の高さを求める。
381名前は開発中のものです。:04/07/31 01:12 ID:5nbqJytr
親切にありがとうございます!だいぶ分かってきました。
これから試行錯誤して頑張ってみます。
382名前は開発中のものです。:04/07/31 03:35 ID:eXTMz7H8
>>373
DirectMusicにバージョン定数が見あたらないのはそういう事?
でも3DやInputは指定しといた方がいいよね多分。
383名前は開発中のものです。:04/07/31 07:35 ID:zkl0g2VN
Pickって充分速いの?
なんか全部のポリゴン調べてそうなんで、フィールドのメッシュは
あらかじめ自前で用意しマップ区画にポリゴン割り当てて、高さを検索
するようにしてんだけど、素直にPick使ったほうがいいのか?
384名前は開発中のものです。:04/07/31 07:38 ID:r+SIFMd9
MMOみたいに広大なマップはどうやって作ってるんでしょうか?
一定区画毎に3Dソフトでモデル作成してるの?
385名前は開発中のものです。:04/07/31 07:55 ID:Ws6CvG/6
>>384
Morrowindっていうゲームのエディタ覗いてみるといいかも

2Dも3Dも基本的には地面はゲームエンジン上でハイトマップとかで作られてて
そこに乗せるオブジェクトなんかをモデラーで作ってインポートして配置してる
386371:04/07/31 08:55 ID:3u9dAkWC
>>372>>373
なるほど。回答ありがとう。
これで安心して9.0 SDKをインスコできます。

まあ使い方はこれから勉強するわけですが‥‥。
387名前は開発中のものです。:04/07/31 13:05 ID:OQmxmCVI
前は出なかったのに

Direct3D9: Decl Validator: X1039: (Global Error) Declaration can't map to fixed function FVF because nonzero stream index is used.
DxGameLib.exe の 0x77e33887 で初回の例外が発生しました : Microsoft C++ exception: long @ 0x0012eaf8。
Direct3D9: (ERROR) :DrawPrimitive failed.

こんな↑エラーが出るようになった。
つまりどうしろと・・・。
388名前は開発中のものです。:04/07/31 13:12 ID:1SHYiP+f
>>387
エラーメッセージそのままのことするだけだが。
389名前は開発中のものです。:04/07/31 13:24 ID:OQmxmCVI
>>388
ゼロでないストリームインデックスが使用されるので、宣言は固定関数FVFに写像することができません。
ってつまりどうすりゃいいのですか?
390名前は開発中のものです。:04/07/31 14:31 ID:MH/J5A09
DirectX8.1でDirectPlayをしています、ランチソフトでホスト、クライアントを作りたいのですが。
ふたほうともユーザーサイドで作ることにして、クライアント側ではネット上でIPなしにホストを認識できるのでしょうか?
サービスプロバイダーを介して処理するプログラムをよく見ますが、こいつが処理してくれるのでしょうか?
ふたほうともSDKサンプルServer、Clientを参考に作ってます。




「ふたほう」って何ですか?
391名前は開発中のものです。:04/07/31 14:35 ID:A32qmFzS
ふたほう。それは甘く切ない。
ふたほう。それは全ての希望。
ふたほう。それはやがて気づく自分の愚かさ。
392名前は開発中のものです。:04/07/31 14:37 ID:MH/J5A09
>>391
なるほど。やがて気づくものだったんですね。
ありがとうございました。
393名前は開発中のものです。:04/07/31 14:57 ID:19Xe+kkr
鍋の蓋が加熱によって生じた圧力で吹き飛ぶ、蓋砲のことです。
大変危険ですので、子供は真似するなよ。
394名前は開発中のものです。:04/07/31 15:01 ID:A32qmFzS
イメージ エイゾウ
○| ̄|_煤:'、―=≡●
395名前は開発中のものです。:04/07/31 15:53 ID:3fTekrtj
>>389
固定機能TLでは、複数のストリームは使えないはずだが。
つまりストリーム0にPosition、ストリーム1にtexcoordとかは駄目。
それがやりたきゃTLはSWシェーダにするとか。
396名前は開発中のものです。:04/07/31 18:54 ID:OQmxmCVI
>>395
HLSL使ってるんですけど、複数のストリームって使えないんですか?

>つまりストリーム0にPosition、ストリーム1にtexcoordとかは駄目。
これ↑駄目なんですか?
9.0bまでは動いていたんですけど・・・。困りました。
397名前は開発中のものです。:04/07/31 22:44 ID:19Xe+kkr
>>390
皮肉って突っ込まれているのに、結局素で返されてるよ…。
永遠に間違ったまま人生を終えるんだろうか?
398名前は開発中のものです。:04/08/01 08:43 ID:IUr3PcEr
>>396
それぞれのD3DVERTEXELEMENT9の配列みせてみそ。
399名前は開発中のものです。:04/08/01 14:10 ID:xMA3M3cR
>>398
//普通の
D3DVERTEXELEMENT9 normal[] = {
0, 0,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_POSITION,0,
1, 0,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL,0,
2, 0,D3DDECLTYPE_FLOAT2,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_TEXCOORD,0,
D3DDECL_END()
};

//バンプマップ
D3DVERTEXELEMENT9 bump[] = {
0, 0,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_POSITION,0,
1, 0,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL,0,
2, 0,D3DDECLTYPE_FLOAT2,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_TEXCOORD,0,
3, 0,D3DDECLTYPE_FLOAT2,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_TEXCOORD,1,
4, 0,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TANGENT,0,
4,12,D3DDECLTYPE_FLOAT3,D3DDECLMETHOD_DEFAULT,D3DDECLUSAGE_BINORMAL,0,
D3DDECL_END()
};

すいません。こんな感じです。
上はエラーは出ませんが、表示はされません。
下はエラーが出て、表示もされません。
400344:04/08/01 18:22 ID:KObr4ywu
俺のバンプも表示されなくなっちまったぜ〜へっへっへっ…うわ〜ん!
D3DVERTEXELEMENT9 declDisplay[] =
{
 {0, 0, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0},//x,y,z
 {0, 12, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL,0},//nx,ny,nz
 {0, 24, D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_COLOR,0},//color
 {0, 28, D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_COLOR,1},//specular
 {0, 32, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0},//tu0, tv0
 {0, 40, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD,1},//tu1,tv1,tw1
 {0, 52, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 2},//sx,sy,sz
 {0, 64, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 3},//tx,ty,tz
 {0, 76, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 4},//xx,xy,xz
 D3DDECL_END()
};
401名前は開発中のものです。:04/08/01 21:38 ID:xMA3M3cR
>>400
実はまだ手をつけていないんですが、
HLSLで組んだもの(自作)は今のところ全滅ですw
今からSDKのサンプル見て違いを探します。
402名前は開発中のものです。:04/08/02 00:55 ID:Cumi6unV
デバッグしてたら、変なところぶっ壊したらしく
PCがおかしくなりますたw
403名前は開発中のものです。:04/08/02 06:32 ID:RAsJjWQB
(ノ∀`)アチャー
404名前は開発中のものです。:04/08/02 12:58 ID:48yMNFmC
 RPGツクールXPは、RPGを作るためのソフトです。
 非常に高性能・高機能ですので、RPG以外のゲームを作ることもできます。現時点では、最高のツクールソフトと言えるでしょう。
 RGSSというスクリプト言語がベースになっており、プログラミング言語に近いことができます。
 また、従来のツクールシリーズの作り方も踏襲しており、RGSSを意識しなくても、ゲームを作ることができます。
 簡便さと発展性を兼ね備えた、究極のツクールと言って良いでしょう。

と、言ってみる
405名前は開発中のものです。:04/08/02 17:19 ID:5/vDCotE
C++は、ゲームを作るためのソフトです。
非常に高性能・低機能ですが様々なライブラリを使用できるので、ゲーム以外のソフトを作ることもできます。現時点では、最高の作るソフトと言えるでしょう。
Cというプログラミング言語がベースになっており、スクリプト言語より凄いことができます。
また、従来のCの作り方も踏襲しており、オブジェクト指向を意識しなくても、ゲームを作ることができます。
簡便さと拡張性を兼ね備えた、究極の言語と言って良いでしょう。

でどうだ。
406名前は開発中のものです。:04/08/02 17:31 ID:V0vfFI6d
>405
C++はソフトじゃありません。
407名前は開発中のものです。:04/08/02 17:37 ID:UJk791LC
また微妙なとこを突いてきたな
408名前は開発中のものです。:04/08/02 17:45 ID:2byonaka
「ふたほう」の、

BBXの例の漢字読めない厨房って、
>>333が書いてる「厨房回答者」と同一人物だ・・・。
409名前は開発中のものです。:04/08/02 18:21 ID:D6TGTUyj
>>399-400
特に問題ないね、なぜ駄目なんだろう。
俺はノートPCに開発環境を移した関係で
ピクセルシェーダー関係は確認していなかったんだが
やっぱりバンプは失敗するのかな。
とりあえず頂点シェーダーのみは無問題だったが。
410名前は開発中のものです。:04/08/02 19:57 ID:5/vDCotE
ふた:訓読み
ほう:音読み
すごいと思った。
参考にしようと思った。

>>409を書き換えてあげます。
特にといだいないね、なぜだもくなんだろう。
俺はノートPCにひらはつたまきょうを移したせっけいで
ピクセルシェーターせっけいはたしにんしていなかったんだが
やっぱりバンプはうしぱいするのかな。
とりあえずいただきてんシェーダーのみはなといだいだったが。
411名前は開発中のものです。:04/08/02 22:02 ID:Cumi6unV
>>409
ご迷惑おかけしました。
SDKのソースと見比べてみたところ、
実はエフェクトの設定を下のように設定しなければいけなかったみたいです。
これで表示されるようになりました。
お付き合い頂き誠にありがとうございました。

effect->Begin(&tem,0);
effect->BeginPass(mPass);

//描画処理

effect->EndPass();
effect->End();
412名前は開発中のものです。:04/08/02 22:29 ID:07o4uf2l
俺もPassをBeginPassに変更した点以外同じ。
でも駄目だった。
何が悪いのか考えるのも、めんどっちーから前のバージョンに戻した。
時が解決してくれるだろうw
413名前は開発中のものです。:04/08/02 22:33 ID:Cumi6unV
>>412
前のバージョンではBeginとEndが無くても動いたわけですがその辺は大丈夫でしょうか?
つまり、私の場合はeffectのBegin関数とEnd関数が無かったわけですが。
414名前は開発中のものです。:04/08/03 09:57 ID:FP35Pks2
>>412
オレの場合、EndPass()を忘れていた所があって、9bでは動いていたけど、9cではエラーになったよ。
Begin( numPass, 0 );
 BeginPass(0);
 draw();
 EndPass(); ←これを忘れていたら9cでは×だった。
End();

もし、VC++使っているんだったら、DirectXコントロールパネルでDirect3DをDebugモードに切り替えると、VCの"output"ウィンドウにDirectXのエラーメッセージがでるよ。
メッシュをちゃんと描いているのに画像が出ないとかDirectX内部でエラー処理されて無視されているわけわかんないバグ取りに役立つ。

415名前は開発中のものです。:04/08/03 10:07 ID:b+weJY54
エフェクトは挙動がおかしいところがちょっとあるな。
ID3DXEffect::SetTechniqueの直後に
ID3DXEffect::GetCurrentTechniqueを呼び出すと
同じテクニックが返ってきたり返ってこなかったり。
416名前は開発中のものです。:04/08/04 19:09 ID:WFS4G4PK
ある基底行列mBasisをmRotationで回転させたいのですが

D3DXMatrixMultiply( &mBasis1, &mBasis, &m_mRotation );



D3DXVECTOR3 vR( mBasis( 0, 0 ), mBasis( 1, 0 ), mBasis( 2, 0 ) );
D3DXVECTOR3 vS( mBasis( 0, 1 ), mBasis( 1, 1 ), mBasis( 2, 1 ) );
D3DXVECTOR3 vT( mBasis( 0, 2 ), mBasis( 1, 2 ), mBasis( 2, 2 ) );

D3DXVECTOR3 vR1, vS1, vT1;

D3DXVec3TransformNormal( &vR1, &vR, &m_mRotation );
D3DXVec3TransformNormal( &vS1, &vS, &m_mRotation );
D3DXVec3TransformNormal( &vT1, &vT, &m_mRotation );
mBasis1 = D3DXMATRIX(
vR1.x, vS1.x, vT1.x, 0.0f,
vR1.y, vS1.y, vT1.y, 0.0f,
vR1.z, vS1.z, vT1.z, 0.0f,
0.0f, 0.0f, 0.0f, .0.0f );

では違う値になってしまいます。
下は望む結果が出るのですが、上は誤差?なのか下と微妙に違う結果になります。
なぜでしょうか?
417名前は開発中のものです。:04/08/04 19:24 ID:WFS4G4PK
自己解決しました。
mBasisが転置になってました。
もうちょっと調べてから書き込めばよかった・・
418416:04/08/04 19:48 ID:WFS4G4PK
違った。
正解はこれみたい。

D3DXMatrixMultiplyTranspose( &mBasis1, D3DXMatrixTranspose( &D3DXMATRIX(), &mBasis ), &mRotation );

行列は頭がこんがらがるなぁ。
419名前は開発中のものです。:04/08/04 20:00 ID:hSk7Y9/8
DirectDrawSurfaceで教えてくらはい
16bppのSurfaceのピクセルフォーマットは555と565以外の物って存在するんすかね?
あと、16bppでPrimarySurface作った後でSYSTEMMEMORY上に16bppオフスクリーンSurface作った時、
ピクセルフォーマットは同じである保証はあるのでしょうか?
(Primaryが565でOffScreenが555だったりしたらイヤン)
420名前は開発中のものです。:04/08/04 21:21 ID:uI3nmk7+
>>419
この世に生き残っているのは555と565だけ。
プライマリとオフスクリーンのフォーマットは同じ。
421名前は開発中のものです。:04/08/04 21:27 ID:4TyN42HM
RGB5A3だな
422419:04/08/04 21:49 ID:hKOnHnTA
マリガトン
いらん心配だったみたいね
423名前は開発中のものです。:04/08/09 15:31 ID:YK+Ecc2p
NVIDIA、デスクトップ用チップ不振で大幅減益
http://www.itmedia.co.jp/news/articles/0408/07/news010.html?nc30
>「市場で異例の出来事がいくつか重なった結果

いや、自業自得だろ。
424名前は開発中のものです。:04/08/10 14:09 ID:x3RQWXF2
>>419
明示的に指定すればプライマリと違うフォーマットでも作れるぞ。
何も指定してなければプライマリと一緒。

というわけで、保証されてはいないが、特に指定した覚えがなければ
気にする必要はない。
425名前は開発中のものです。:04/08/10 16:50 ID:s68euKkc
アニメーションっていうのかな?
3Dの人などのモデルを歩かせたいんだけど間接とかで動かしたいん
だけどどうすればいいのかわかりません。
どなたか助けて
426名前は開発中のものです。:04/08/10 16:52 ID:ci9GUBOp
>>425
ワンスキン・スキニング・ボーンなどなど。
SDKサンプルに入っているのを見ようとは思わない?
427名前は開発中のものです。:04/08/10 19:40 ID:wVs3skAG
スキンメッシュ使ってんなら、
自分で指定した行列をセットすればできるよ。
428名前は開発中のものです。:04/08/10 22:12 ID:OALsNdeP
DirectX9cを使ってる人はどれくらいいんの?
429名前は開発中のものです。:04/08/10 23:54 ID:FRiHxzCj
838861人くらいかな
430名前は開発中のものです。:04/08/12 03:57 ID:fg6dyKsT
BBXでカキコしたけど相手にされなくて
こっちに来て助けを求めている羊が何名かいるようだな。
431名前は開発中のものです。:04/08/12 05:02 ID:ouic0Ye9
【ふたほう】厨房王国BBX【効率を削減ライブラリ】
【ホーマット】厨房王国BBX【重いどうり】
432名前は開発中のものです。:04/08/12 12:08 ID:Pu8PGMOq
【MMO】みんなでネトゲ作ろうぜ【RPG】スレ
ttp://etc3.2ch.net/test/read.cgi/entrance/1092231466/
↑のスレのスレ主です、まだぜんぜん白紙なのですが
いまはまだ白紙の状態なのですがいま他のスタッフとスレの人とでアイディアを出し合っています
お願いします俺はこのプロジェクトに賭けているんです。
どうか、どうか協力してください。゚(゚´Д`゚)゚。
433名前は開発中のものです。:04/08/12 15:07 ID:Ervrl36o
いきなりMMOにチャレンジする初心者の多いこと…
まずは一人で遊べる「インベーダーゲーム」とかでも作ってみたらどうよ?
そんでもって、インベーダーと砲台をMMO化しると。
434名前は開発中のものです。:04/08/13 02:02 ID:KHJl2h+v
作りたいゲームと作れるゲームには大抵ひらきがあるからな。
435名前は開発中のものです。:04/08/13 02:48 ID:PB6WbjSS
MMO企画厨は、技術検証もせずに
たいていシナリオ先行型w
436名前は開発中のものです。:04/08/13 18:39 ID:GTonJWbj
MMO厨でシナリオ先行って聞いたことないなw

大抵スキルとか生産とかで大妄想して
ネットワークコードも書かずに終わる
437名前は開発中のものです。:04/08/13 20:31 ID:eFu2IU8S
Xファイル出力でキャラを表示させたのですが、アニメーションの最前線では
どういった形で動いてるの?
Xファイル(頭、手、体、足)みたいに分けてそれを行列を使ってとかですかね?
それともXファイルをいくつも用意してそれを変えてく?
さあ、どっち!!
438名前は開発中のものです。:04/08/13 20:41 ID:cquwXCm5
> アニメーションの最前線

分野が広すぎて、どの分野のことを言っているのか分からず意味不明。
とりあえずXファイルじゃないことは確か。
439名前は開発中のものです。:04/08/13 21:01 ID:bns5xtH0
>>438
ワカンネーのなら答えんな!消えな糞!
440名前は開発中のものです。:04/08/13 22:50 ID:2yEX/S7c
>>437
「どっち!!」じゃねぇよ馬鹿。
ボーンもしらねぇ糞餓鬼は糞して寝ろ
441名前は開発中のものです。:04/08/13 23:19 ID:JwSIe6qm
アニメーションの最前線では、
動作部分のセル画を一枚一枚書いているのですよ。
ボーンもスキンもましてや行列なんて関係ありません。
442名前は開発中のものです。:04/08/13 23:37 ID:nPJIRCin

おばあちゃんだめ。

ここにはお父さんもお母さんもいないもん。
443名前は開発中のものです。:04/08/14 15:50 ID:Tqhot9Gc
DirectX8.1を利用してゲームを作ろうと思っているのですが、
DirectX9の参考書は沢山あっても、DirectX8で良いのがありません。
DirectX9の参考書で勉強しても支障はないでしょうか?
444名前は開発中のものです。:04/08/14 18:10 ID:1SQO+BjR
>>443
DirectX9はdirectdrawとdirect3Dが一つに合体してるよ
445名前は開発中のものです。:04/08/14 18:20 ID:NkoqHJ4d
>>443
DirectX Graphics以外は、普通に使う分には全く(ほぼ)同じ。
DirectX Graphicsでの目立った違いは、
プレゼンテーション周り、シェーダ・エフェクト周り、SetVertexShader→SetFVF。
ほかの資料などを参照してそこらへんを読み替えられるのであれば、
全く問題ない。
446名前は開発中のものです。:04/08/14 18:21 ID:/Kf97LYg
合体ではなく廃止。
ついでに言えばその状況はDirectX8からなんだが、何が言いたいんだ?
447名前は開発中のものです。:04/08/14 18:58 ID:1SQO+BjR
廃止されたらサーフェイスの初期化ができなくなる
よって合体なり
448名前は開発中のものです。:04/08/14 20:51 ID:XRLALKIN
449名前は開発中のものです。:04/08/14 20:58 ID:/Kf97LYg
>>447
Direct3Dからは合体ではなく完全に廃止。
サーフェイスとDrawはイコールではない。

後は3Dデバイスからは隔離された形で、DirectShowとC#用に残っているだけ。
450名前は開発中のものです。:04/08/14 21:28 ID:VJLygUuK
7までは確か
DirectDrawの初期化 Surfeceの作成

上のを使ってDirect3Dの初期化

となってたから、合体でも別にいいんじゃないか。


というか、合体だろうが廃止だろうが、そんなこたーどうでもいいじゃないか。
451名前は開発中のものです。:04/08/15 15:50 ID:tEZqQFNr
2003summerSDKでDirectPlayを試してみてるんですが、
HRESULT hr;
と定義すると
「'hr' : 識別名を宣言するのに、型が指定されていません。」
とエラーが出てコンパイルできません。
こんなところでエラーが出てさっぱり意味がわからないのですが、
これは何なんでしょうか。ご存知の方がいたら教えてください。お願いします。
452451:04/08/15 16:19 ID:tEZqQFNr
板間違えました。他いってきます。すいません。
453名前は開発中のものです。:04/08/15 16:30 ID:c1nmB8Qn
#if !defined()
ってどういうことですか?
#ifndef
とちがうのですか?
directxのサンプルでは同じように使っているような気がするのですが・・・。
初心者です。お願いします・・・。
454名前は開発中のものです。:04/08/15 20:56 ID:IeQNR+c5
>>453
ヘルプに書いてあるけど、同じ意味を持つよ。
455名前は開発中のものです。:04/08/16 07:14 ID:WPAsl4c1
>>454
サンクス!
456443:04/08/16 08:54 ID:0pYdmfWN
みなさん、とても参考になりました。
8より9の参考書を買った方が使えそうなので、ネットと併用して勉強しようと思います。
ありがとうございました!
457名前は開発中のものです。:04/08/18 06:12 ID:aECUphq4
自HP(ライフ)の状態によって、文字の色を変えたく思っています。
文字自体は一枚のテクスチャ(グレースケールの.bmp)に全て描いてあります。

色ごとにテクスチャを用意するのは辛いので、
頂点カラーとブレンドして表示したいのですがどうにも上手くいきません。

.bmpの情報をアルファ、頂点カラーを色とするには
どういう手順でやれば良いのでしょうか…。DirectX9です。
458名前は開発中のものです。:04/08/18 08:52 ID:gKvCATyJ
>>457
頂点カラーでは効率が悪いので定数色にすればいい。

d3dDevice->SetTextureStageState( 0, D3DTSS_CONSTANT, 文字の色 );

d3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3D3DTOP_SELECTARG1 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );

d3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3D3DTOP_SELECTARG2 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );
459458:04/08/18 09:00 ID:gKvCATyJ
間違った!これね。

d3dDevice->SetTextureStageState( 1, D3DTSS_CONSTANT, 文字の色 );

d3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3D3DTOP_SELECTARG2 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );

d3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3D3DTOP_SELECTARG1 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );

よくわからんがtextureFactorの方がよさそうか。

d3dDevice-SetRenderState( D3DRS_TEXTUREFACTOR, 文字の色 );

d3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3D3DTOP_SELECTARG2 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_TFACTOR );

d3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3D3DTOP_SELECTARG1 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );
460458:04/08/18 09:04 ID:gKvCATyJ
ぎゃーまた間違った!鬱だ氏のう
慣れないことはしないもんだ。。

d3dDevice->SetTextureStageState( 0, D3DTSS_CONSTANT, 文字の色 );

d3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3D3DTOP_SELECTARG2 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CONSTANT );

d3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3D3DTOP_SELECTARG1 );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
d3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3D3DTA_CURRENT );
461457:04/08/18 09:29 ID:aECUphq4
試してみたのですが出来ず、
調べてみたら、うちのビデオカードはD3DPMISCCAPS_PERSTAGECONSTANTの
フラグが立ちませんでした…_CONSTANT使えないみたいです。

折角書いてもらったのに申し訳ないです(´・ω・`)
462名前は開発中のものです。:04/08/18 12:00 ID:Gn12Xz81
頂点バッファの頂点に対応した画面上の座標の取得方法はどうやるのですか?
DirectX 8.1のVCです。
463名前は開発中のものです。:04/08/18 12:08 ID:I8z10sIf
頂点バッファと実際の座標は対応していません。
よって取得する方法など存在しません。
464名前は開発中のものです。:04/08/18 13:22 ID:a9mH/iKH
>457
とりあえずおまえの設定した
SetTextureStageState
SetRenderState
を書け。
465名前は開発中のものです。:04/08/18 13:30 ID:gKvCATyJ
>>461
ではtextureFactorはどうか。
どっちにしても肝はalphaの方なんで
rgbはマテリアルだろうがなんだろうが
どれでもいい。
ちなみに>>460も間違ってるのでよろしく。

>>462
頂点バッファの出力 oPos
ビューポートの行列 mViewport (http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/directx9_c/directx/graphics/programmingguide/fixedfunction/viewportsclipping/viewportscaling.asp)

float4 pos = float4( oPos.xyz / oPos.w, oPos.w );
pos = pos * mViewport;




466名前は開発中のものです。:04/08/18 17:53 ID:mLZSwSlt
>>457
単純に頂点カラーに色入れて
COLOROPをMODURATEにすれば動きますよ。
α成分も変更したけりゃALPHAOPもMODURATEにする。

あと、文字以外の周辺の部分は透明にするんじゃないの?
それならbmpにグレースケールじゃなくて、真っ白なtgaのα成分に文字書かないと。

この方法は頂点カラー設定がめんどくさいとか、
真っ白なテクスチャで無駄が多いとかはあるけど
一番単純だし、ほぼすべてのビデオカードでサポートされるから
とりあえず最初はこの方法でやるのがよいと思われ。
467名前は開発中のものです。:04/08/18 17:58 ID:4mdm1QSQ
>>461
シェーダーかけりゃめちゃ簡単なんだけどね。
で、頂点カラー使う必要ないでしょ。カラー取得をマテリアルにして、
 SetRenderState( D3DRS_DIFFUSEMATERIALSOURCE, D3DMCS_COLOR1 );
マテリアルのディフューズカラーに使いたい色をセットして、マテリアルをセットし、
テクスチャ(文字色は白ね)とセットしたディフューズカラーを掛け算。
 SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
 SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );
以上
468名前は開発中のものです。:04/08/18 18:01 ID:GFEQHMlA
専門用語ばっかりでよく分かりません
専門用語を使わないで教えてください
469467:04/08/18 18:03 ID:4mdm1QSQ
俺も間違えちゃった。一番上のやつ↓ね。COLOR1じゃなくってMATERIALだから。
 SetRenderState( D3DRS_DIFFUSEMATERIALSOURCE, D3DMCS_MATERIAL);

>>468
無理。
470名前は開発中のものです。:04/08/18 18:18 ID:K9yJrd29
>>468 その前に聞け
471467:04/08/18 18:43 ID:4mdm1QSQ
そういうことか。ぜんぜん質問読んでなかった。そんだったら、
ビットマップの方でα値を各ピクセルにセットしておく。
マテリアルのディフューズカラーのα値は最大(1.0fか、255)にしといて、任意のカラーをRGBをセット。
マテリアルをセット。
したら、アルファブレンドの設定をして,
 SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE);
 SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
 SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );←もしくは、D3DBLEND_ONE
あとはさっき書いたとおり、
 SetRenderState( D3DRS_DIFFUSEMATERIALSOURCE, D3DMCS_MATERIAL);
 SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
 SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
 SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );
でテクスチャをサンプラー0にセットしてフォントを描画。
472457:04/08/18 21:21 ID:aECUphq4
帰ってきたら更に沢山のレスが(n‘∀‘)η シアワセー

全て試してみましたが、見事に文字色が変わっております。
どうして上手くいくのかまだ良く分からないので、これから
じっくりヘルプとにらめっこしてきます。

皆さんレスありがとうございました。
473名前は開発中のものです。:04/08/18 22:52 ID:PhkND6gf
ソースコード載せて話すると余計わけわからなくならねぇか?

ようはα情報だけ生かして、文字を描画したいって話だろ?

色をテクスチャからとってこないで、自分で付けて、
αだけテクスチャからとってくる。

実現方法は好きにしろ。って話じゃないの?
474名前は開発中のものです。:04/08/19 00:22 ID:YunhQ2VJ
SetRenderState( D3DRS_DIFFUSEMATERIALSOURCE, D3DMCS_MATERIAL );
↑これってライティングがONでないと効果ないみたいね。
475名前は開発中のものです。:04/08/19 00:34 ID:0V0sHZVM
>>474
早くHLSLに変えろ、
頭悪くなるぞ。(マジで)

DirectXのこの辺は最悪だと思うよ。(俺は)
476名前は開発中のものです。:04/08/19 08:15 ID:Bswuyzyx
「この辺」が何を指すのかわかりません
477名前は開発中のものです。:04/08/19 15:12 ID:DiZ9VDt0
この辺と言えばその辺しかないだろ!!
ちなみにPS1.3も同じくらい最悪。
nVidiaもなんでこんなもん作ったんだか
478名前は開発中のものです。:04/08/19 15:33 ID:ohk01tV7
これ
それ
479名前は開発中のものです。:04/08/19 16:01 ID:k5TKiz0U
まあ愚痴は無能の典型って事で。
480名前は開発中のものです。:04/08/19 16:06 ID:z/O2jqMO
バカでも分かるようにもっと簡単な仕様にして欲しいよ>DirectX
ゲームアルゴリズムの方に注力したいのに
DirectX周りの事に振り回されるのは勘弁
481名前は開発中のものです。:04/08/19 16:09 ID:IqodorHI
ダイレクトXが何でもやってくれるから人間は何もやらなくなるんだよな
482名前は開発中のものです。:04/08/19 16:56 ID:OUH4KSQg
>>481
DirectXではなく、M$です。
483名前は開発中のものです。:04/08/19 17:29 ID:DNQdp83T
もっと何でもやってくれ
484名前は開発中のものです。:04/08/19 17:59 ID:wxxL2nxj
私の代わりに仕事してください
485名前は開発中のものです。:04/08/19 21:09 ID:4Ari2O79
>>480
「つくーる」使えよ。
486名前は開発中のものです。:04/08/19 21:13 ID:4Ari2O79
>>477
「この辺」って固定パイプラインの暗黙の仕様のことだろ?
たしかにそういう面はある。
原因がまったく不明のバグがそれだったりする。
487名前は開発中のものです。:04/08/19 21:33 ID:mwTy6RZE
488名前は開発中のものです。:04/08/19 23:31 ID:DoxkasxA
ジャ ・ ジャ ・ ジャ ・ ジャンクロード

バ ・ バ ・ バ ・ バ バ ン ・ バンダム

WOW!
489名前は開発中のものです。:04/08/20 02:08 ID:NSwcxKVN
ttp://monsho.hp.infoseek.co.jp/dx/dx28.html
ここのサンプルを参考にしながら、ジオメトリブレンディングを
やってみたんですが、エラーは出ないものの、
グラフィックが全く表示されないんです・・・。
もし誰か時間のある方がいましたら、下の私のソースを見てもらえないでしょうか?
原因が全く分からないんすよ・・。

ttp://www.h3.dion.ne.jp/~rank/main.zip
490名前は開発中のものです。:04/08/20 02:59 ID:/Ulut1Sl
>>489
draw.cpp:72 の
,&D3DXVECTOR3(0.0f, 0.0f, 0.0f));// 上の向き

,&D3DXVECTOR3(0.0f, 1.0f, 0.0f));// 上の向き
にしたら見えたぞ
491名前は開発中のものです。:04/08/20 09:34 ID:NSEkMdfG
暇なんでDX9cのHLSLの最適化について最近わかったことを書いてやろう。

・structはuniform引数に使ってはならない。
実際には使わないメンバがあったとしてもそのまま残ってしまう。
同様に、例えば、uniform引数としてfloat変数を4つ定義していた場合
最適化によってこれがfloat4にまとめられるといったことはない。
あらかじめ意識してベクトルにまとめられるものは自分でまとめておく必要がある。

・preshaderは、式の並びに影響される。例えば、
auto変数 = uniform変数 * uniform変数 * auto変数
は正しく最適化され、uniform変数が1つ減らされるのに対し
auto変数 = auto変数 * uniform変数 * uniform変数
はなったりならなかったり挙動不審になる。

・pixel shader v1.3 以下は最適化度が低い。
なって当然の最適化がされないケースが多い。
492489:04/08/20 10:15 ID:ovGi7XBj
>>490
マジサンクス!
盲点だった・・・。てっきりそこはできていると勘違いしていた。
本当にありがとうございました。助かりました。
493名前は開発中のものです。:04/08/21 00:44 ID:eREZOx5x
【トーリス】厨房王国BBX【ガリー】
             \   ∩─ー、    
               \/ ● 、_ `ヽ   
               / \( ●  ● |つ
               |   X_入__ノ   ミ    
                、 (_/   ノ /⌒l
                /\___ノ゙_/  /  =====
                〈         __ノ  ====
                \ \_    \
                 \___)     \   ======   (´⌒
                    \   ___ \__  (´⌒;;(´⌒;;
                      \___)___)(´;;⌒  (´⌒;;  ズザザザ
                               (´⌒; (´⌒;;;
494名前は開発中のものです。:04/08/21 06:04 ID:TCC4rTsV
ID3DXSprite使って描画する場合Shader使えねーの?
495名前は開発中のものです。:04/08/21 15:11 ID:4tMYKEeH
>>491
ところで、HLSLコンパイラーの吐いたコードどうやって読んでいるの?
バイナリを直接? それとも逆アセする方法がある?
496名前は開発中のものです。:04/08/21 18:31 ID:/l6AyBmh
>>495
2004夏に、D3DXDisassembleEffectという
逆アセンブラが追加されてる。
497名前は開発中のものです。:04/08/22 00:45 ID:pjZbrb1x
インデックス値やブレンド値について全然理解できないんですけど、
これについて勉強できる本とかお勧めありませんか?
よろしくお願いします。
498名前は開発中のものです。:04/08/22 00:50 ID:P2Ty49Qy
>>497
やっぱ数学の教科書じゃねぇ?
499名前は開発中のものです。:04/08/22 01:44 ID:9ScR6g1n
インデックスが全然理解できないなら
今のうちにあきらめるってのもありだと思う。
500名前は開発中のものです。:04/08/22 02:39 ID:sxzctg75
>>496
おーー!ありがとう!
501名前は開発中のものです。:04/08/22 02:47 ID:sxzctg75
>>497
バーテックス・ブレンドでもαブレンドでもいいけど基本は、
B = ブレンド値の値域は0.0〜1.0とし,X1, X2 を任意の実数とすると,
X1とX2をブレンド値Bでブレンドした値Xは,
X = BX1 + (1.0 - B)X2

ってだけの話。
502名前は開発中のものです。:04/08/22 12:49 ID:gJQRB25Q
任意の実数は何の数字ですか?
503名前は開発中のものです。:04/08/22 14:10 ID:bukVXTsc
>>502
別に実数でなくても、ベクトルだって行列だってテンソルだって調味料だってなんだっていい。

混ぜ合わせたい物同士を好きな割合で混ぜようね、ってだけの話。
504名前は開発中のものです。:04/08/22 14:25 ID:QGnhciD/
例えば3と10を0.4でブレンドすると
0.4*3+(1.0-0.4)10=7.2
の7,2は何を表すのですか?
505名前は開発中のものです。:04/08/22 15:00 ID:P2Ty49Qy
>>504
そうやって考えるからわからねぇんだろ。
わかりやすい例でいうとだな。

例:白(白100%)に黒(黒100%)を30%でブレンドします。
(結果は白に近い灰色(白70%)ってわかるよね?)

白(255,255,255)
黒(0,0,0)

30%だから0.3

(0,0,0)*0.3 + (255,255,255)(1.0-0.3) = (255,255,255)*0.7

0.7だから70%。これがブレンド。
用語として覚えておくといい言葉がソースとディスティネーション
プログラムのソースコードではよくsrcとdestって略して使う人が多い。
この例の場合だと黒がsrcで白がdestってなる。
506名前は開発中のものです。:04/08/22 21:03 ID:XlCpKW53
DirectX9についてるサンプルのStencilShadowVolumeについて質問

エフェクト中のVSでシャドウボリュームをファークリップ面まで引き伸ばしてるのはわかるんですが
投入されたすべての頂点がこのシェーダによってファークリップ面に投影されるだけに見えます。
ですが実際は元の頂点とファークリップ面に投影された頂点を繋ぐfaceがレンダリングされています。

GenerateShadowMesh中のdegenerate quadのあたりが肝なのかもと考えたんですが、うまく解釈できません。

これはどのようなカラクリで元の頂点と投影された頂点を選別しているのでしょうか?
ご存知の方がいたらご教授ください。
507名前は開発中のものです。:04/08/22 21:31 ID:Bbo1HlWE
カ ラ ク リ ロ ボ
508名前は開発中のものです。:04/08/22 23:45 ID:mRDiSQCY
>>505
俺は>>504じゃないけど、分かり易い!
なるほどそういう意味だったか。
インデックス値の付け方についても分かりやすく教えて欲しい・・・。
509506:04/08/23 01:02 ID:mRY69xBL
ウホッ

うたたねしてから酸素エアチャージャーでリフレッシュしたらピキューンと来たよ。
というよりFXファイルに露骨に書いてあった。よく見ろ俺。
510506:04/08/23 01:02 ID:mRY69xBL
sageわすれた。orz
511名前は開発中のものです。:04/08/23 04:27 ID:jJ0sQphW
508 名前:名前は開発中のものです。 投稿日:04/08/22 23:45 mRDiSQCY
>>505
俺は>>504じゃないけど、分かり易い!
なるほどそういう意味だったか。
インデックス値の付け方についても分かりやすく教えて欲しい・・・。


509 名前:506 本日のレス 投稿日:04/08/23 01:02 mRY69xBL
ウホッ

うたたねしてから酸素エアチャージャーでリフレッシュしたらピキューンと来たよ。
というよりFXファイルに露骨に書いてあった。よく見ろ俺。


510 名前:506 本日のレス 投稿日:04/08/23 01:02 mRY69xBL
sageわすれた。orz
512名前は開発中のものです。:04/08/23 13:05 ID:tN3llfcH
>>511
大丈夫?
513名前は開発中のものです。:04/08/23 13:08 ID:DSpaAwyx
>>512
だいじょうぶ
514名前は開発中のものです。:04/08/23 13:16 ID:beHyX9iL
テクスチャブレンディングでD3DTOP_MULTIPLYADDを用いた結果
リファレンスだと正常に描画出来るのですがHALだと駄目です。
capsはD3DTEXOPCAPS_MULTIPLYADDは立ってます。
デバッグモードでも特にコメントはありませんでした。
何が駄目なんでしょう?
原因を特定出来る良い方法はないでしょうか?
515名前は開発中のものです。:04/08/23 13:18 ID:wxYezUtT
>>514
HALはその機能は使えない
516名前は開発中のものです。:04/08/23 14:42 ID:beHyX9iL
>>515
マジですか?
IDirect3DDevice9::ValidateDeviceもS_OKで特に問題ないのに・・。
でも、IDirect3DDevice9::ValidateDeviceのヘルプをみると
固定機能パイプラインって異常に制限多いんですね、、
ちょっとぐらい出力がおかしくても、仕方ないかって気分になります、、
517名前は開発中のものです。:04/08/23 16:58 ID:upIE7jtz
固定機能パイプライン(゚听)イラネ
518名前は開発中のものです。:04/08/23 19:47 ID:+kLiNW6H
東京湾アクアラインも(゚听)
519名前は開発中のものです。:04/08/23 21:04 ID:XKj25jdn
その結果パイプカット(゚听;)
520名前は開発中のものです。:04/08/23 23:13 ID:DL6HY/eF
コロッケパン(゚听)
521名前は開発中のものです。:04/08/23 23:28 ID:YlB84Pet
チンポコ(゚听)
522名前は開発中のものです。:04/08/24 09:34 ID:5Vm6MZAQ
素朴な疑問。
>>501程度の数式も理解できなくて、508はこの先どうするんだ?
523名前は開発中のものです。:04/08/24 11:17 ID:e7V9r6bl
数式は証明が無いと分からないだろ
頭の良い人が作った式を素人がみただけで分かるわけ無いよ
524名前は開発中のものです。:04/08/24 11:17 ID:hdyd3kuK
自分一人じゃ何も調べられない何も作れないダメ人生を送るに決まってるじゃん。
525名前は開発中のものです。:04/08/24 11:44 ID:Q07kn5MI
2chで煽る奴って初心者なのかな?
いちいちダルくないのか?
526508:04/08/24 13:23 ID:qV4bxq5D
>>522
いや、この数式は単純だから理解できます。
ただこれを人間の間接に使おうとしたらどうやったらいいのかわからなくなった。
>>524
それが人生はうまくいってるんですよw
就職決まったし、かわいい彼女もできたし。
プログラムは趣味だけど、これがなかなかうまくいかないww
527名前は開発中のものです。:04/08/24 13:57 ID:13Gj+qma
>>526
おまえ面白いな

関節に使おうとしたらどうしたら・・・って
関節にゃ角度と位置しかないんだから
それぞれに出た係数掛け合わせりゃいいじゃないか

>>505も言ってるけどsrcとdest間違えるなよ
あと回す順番も
528名前は開発中のものです。:04/08/24 14:15 ID:5ubTAk4O
>>527
人生面白い。

それぞれに出た係数ってよく分からないけど、
どっからそれが出てくるの?
529名前は開発中のものです。:04/08/24 16:31 ID:9dgmLFFj
>>528
>それぞれに出た係数ってよく分からないけど
>どっからそれが出てくるの?

え・・・。なんで分からないのか分からないんだけど。
『人間の間接に使おうとした』の部分を具体的に
説明してくれない?

現在値〜目標値の補間を行う、という話なんだから
目標値は当然あなたが用意するわけで。普通は
アニメーションファイル等から読み込んでるはず。
530名前は開発中のものです。:04/08/24 18:32 ID:MQ0gFcqi
少し質問なのですがDirectXの頂点シェーダのライティングの処理に関してなのですが
例えば三角形ABCが存在してそのABCの中にライトを当てて三角の中に丸い光が当たっている
ようなことができないみたいなことを聞いたのですが、これは三角形の頂点で処理を
していてその頂点を含んでいないので求めている処理ができないようですが
具体的に頂点に対してどういった処理をされているのか分かる方おりましたら
教えていただけませんでしょうか。もしかすると書いていることが間違っている可能性もあるので
そのときはご指摘よろしくお願いします。
531名前は開発中のものです。:04/08/24 18:54 ID:5Vm6MZAQ
>>530
頂点単位法線ベクトルを N、ディレクショナルライト単位ベクトルを Lとすると、
その頂点の明るさ=N・L (・は内積)
532名前は開発中のものです。:04/08/24 18:58 ID:5Vm6MZAQ
>>530
ようするに、それを Vertex Lighting に対して、Per Pixel Lighting といいます。
固定機能パイプラインでも、LIGHT構造体に減衰パラメーターと、
シェーディングパラメータとしてPHONGシェーディングがあるので
もしかしたらできるのかもしれないけど、固定は知らない。

シェーダーで記述すれば、per pixel lighting は可能です。
533名前は開発中のものです。:04/08/24 19:26 ID:Q07kn5MI
フォンシェーディングでも
ポリゴン内にスポットライトは無理。
お前にも家族がいるだろう、、ライトマップでも使うんだな。
534名前は開発中のものです。:04/08/25 00:26 ID:0I+idDk/
すいません、
恥かしながら視点の変更でつまずいてしまったのですが、お聞きしてよろしいですか?
下のコードにおいて、
D3DXMatrixRotationY はきちんとY 軸回りにカメラの位置が回転するのですが、
D3DXMatrixTranslation はカメラが微動だにしません。
どなたかご教授お願いします。

static D3DXVECTOR3 targetPos(5.0, 5.0, 5.0);
static D3DXVECTOR3 eyePos(10.0, 10.0, 10.0);
static float t = 0.0;
D3DXVECTOR3 d3dVec = eyePos;
D3DXMATRIX d3dMat;

t += (1 / g_game.GetFrameRate());
if (t > 0.1) {
t = 0.0;
//D3DXMatrixTranslation(&d3dMat, 1.0, 1.0, 1.0); // (←なぜか変換できない)
D3DXMatrixRotationY(&d3dMat, D3DXToRadian(1.0f)); // Y 軸回りにカメラの位置が回転する
}

eyePos.x = d3dVec.x * d3dMat.m[0][0] + d3dVec.y * d3dMat.m[1][0] + d3dVec.z * d3dMat.m[2][0];
eyePos.y = d3dVec.x * d3dMat.m[0][1] + d3dVec.y * d3dMat.m[1][1] + d3dVec.z * d3dMat.m[2][1];
eyePos.z = d3dVec.x * d3dMat.m[0][2] + d3dVec.y * d3dMat.m[1][2] + d3dVec.z * d3dMat.m[2][2];

D3DXMatrixLookAtLH(&d3dMat, &eyePos, &targetPos, &D3DXVECTOR3(0, 1, 0));
m_pD3DDevice->SetTransform(D3DTS_VIEW, &d3dMat);
535名前は開発中のものです。:04/08/25 00:29 ID:qRb4hBww
>>534
D3DXMatrixTranslation でできた行列を確認してミロw
536534:04/08/25 01:10 ID:0I+idDk/
>>535
ああっ!転置行列になってる!!Σ(゚д゚lll)ガーン
ベクトル要素計算部分をコピペした私が悪かったです。ごめんなさいぃ・・・。
537534:04/08/25 02:29 ID:0I+idDk/
転置行列じゃなくてw成分の計算やってませんでした・・・あぁぅ。
538名前は開発中のものです。:04/08/25 03:41 ID:jOyMajPZ
こういうのは初心者相談スレで質問しとけ。
539名前は開発中のものです。:04/08/25 03:42 ID:i8SLSE9L
//D3DXMatrixTranslation(&d3dMat, 1.0, 1.0, 1.0); // (←なぜか変換できない)

これ絶対狙ってるだろ、お前。
540名前は開発中のものです。:04/08/25 04:40 ID:Gvn5T2T+
>>536
ひょっとして、このコードでd3dMatに回転と移動を合成した行列ができると思っているの?
D3DXMatrixTranslation(&d3dMat, 1.0, 1.0, 1.0); // (←なぜか変換できない)
D3DXMatrixRotationY(&d3dMat, D3DXToRadian(1.0f)); // Y 軸回りにカメラの位置が回転する

行列の掛け算の意識ある?
541名前は開発中のものです。:04/08/25 13:08 ID:zbS3DhhP
DXの深度バッファのヘルプには

>使用する数学的処理が原因で、Z バッファに生成される z 値は、
>Z バッファの範囲 (通常 0.0 から 1.0) 全体に均等に分布されない傾向がある。
>特に、遠くのクリップ面と近くのクリップ面の間の比率は、z 値の不均一な分布に強い影響を与える。
>近くの平面の距離に対する遠くの平面の距離の比率を 100% とした場合、
>深度バッファ範囲の 90% がシーンの深度範囲の最初の 10% に費やされる。

とありますが、具体的には透視変換後のZ値(0.0f〜1.0f)はどのようにZバッファへマッピングされるのですか?
単純にキャストしていると思えないんですが・・。
542名前は開発中のものです。:04/08/25 14:13 ID:lI+VEb/x
サーフェイスを作った後
画面の指定した場所に2Dの点を打つには
どうやったらできますか?
教えてください
543名前は開発中のものです。:04/08/25 23:09 ID:eywPAfew
>>541
D3DFMT_D16_LOCKABLE 指定して、自分で見てみればいいんじゃないの?
544名前は開発中のものです。:04/08/27 03:35 ID:ftgHyjZb
今日は人間の間接に使う行列の乗算の順番で悩みました。
でも夜中まで頑張ったおかげで意味が分かってきました。
こんなことに何時間も費やしてる俺はアホか・・・。
545542:04/08/27 12:40 ID:fXeR5OoH
僕の質問にも答えてください
よろしくお願いします
546名前は開発中のものです。:04/08/27 13:32 ID:W08LCOr8
>>542
ちょっと情報が少なくて答えるのが難しい。
DirectXのどのバージョンを使っていますか?
せめてDirectDrawかDirectGraphics(Direct3D)の
どちらを使っているか書こう。

>画面の指定した場所に2Dの点
これももう少し具体的に。
547名前は開発中のものです。:04/08/27 13:35 ID:fXeR5OoH
DirectX9を使ってます
画面に点というのは
X座標とY座標に色の付いた点を表示することです
点で線を描いたり色を塗ったりしたいです
アニメーションみたいに動くようにもしたいです
548名前は開発中のものです。:04/08/27 13:38 ID:9LO7GYUh
自力描画の学習用途ならDibSectionのほうが良いぞ
549名前は開発中のものです。:04/08/27 13:42 ID:USOnSRSg
>>547
ここで質問する前に、チュートリアルで図形の表示くらいは最低限やっているよね?
それで何が問題なのか具体的に言ってみてくれ。
550名前は開発中のものです。:04/08/27 13:43 ID:fXeR5OoH
ポリゴンじゃ無い点が打ちたいのです
処理速度が速いのでダイレクトXが使いたいです
551名前は開発中のものです。:04/08/27 13:48 ID:USOnSRSg
サーフェイスをロックして書き込めばいいだけでは?
552名前は開発中のものです。:04/08/27 13:50 ID:fXeR5OoH
サーフェイスをロックするんですね
ロックしてみます
553名前は開発中のものです。:04/08/27 14:07 ID:USOnSRSg
点という単位を使う時点で、速度的に問題外なんだが。
しかもVRAMにランダムアクセスをかければ余計に遅くなるし、
システムメモリー側に領域をとるのなら、
DirectXを使ったからと言って、速度は上がらない。
554名前は開発中のものです。:04/08/27 14:10 ID:fXeR5OoH
ダイレクトXで2Dのゲームを作るときは普通どうやるんですか?
555名前は開発中のものです。:04/08/27 14:12 ID:cAd+6bNL
まあロックするとDirect3Dの意味が殆どなくなるし
普通はトランスフォーム済み頂点フォーマットを使うべきだろうな。

D3DXVECTOR4 pos( 横座標, 縦座標, 0.0f, 1.0f); // -1.0f〜1.0f

d3ddevice->SetVertexShader( NULL);
d3ddevice->SetPixelShader( NULL);
d3ddevice->SetViewport( &viewport);
d3ddevice->SetFVF( D3DFVF_XYZRHW);

d3ddevice->DrawPrimitiveUP( D3DPT_POINTLIST, 1, &pos, sizeof(D3DXVECTOR4));
556名前は開発中のものです。:04/08/27 14:17 ID:fXeR5OoH
ありがとうございます
そうしてみます
557名前は開発中のものです。:04/08/27 14:21 ID:USOnSRSg
そもそもなぜ点が必要なのか分からないのだが、
まさか一枚絵を毎フレーム1ドットずつ描こうとかしてる?
558名前は開発中のものです。:04/08/27 14:26 ID:fXeR5OoH
一ドットずつ書こうとしてますよ
559名前は開発中のものです。:04/08/27 14:29 ID:USOnSRSg
それ無駄だから、チュートリアルのテクスチャのところまで最低限やってくれ。
560名前は開発中のものです。:04/08/27 15:41 ID:JmNyjy1C
点というのがひょっとしてドット絵のことを指しているんじゃないかと思えてきた。
ゲーム上においては、基本的に絵はポチポチ打つもんじゃなくてペタッと貼り付けるものだぞ。
いまどきでいえば、その方法はポリゴン+テクスチャ。

2Dとポリゴンは相容れないとか思ってないか?
たしかに数年前はそういう信仰が隆盛した時期があったが、
今ではたとえば2D格ゲーのキャラもゲージも一枚絵背景も、2Dポリゴンでぺったん。
(スプライトに特化したハードチップ積んでる業務用とかは別だけど)
561名前は開発中のものです。:04/08/27 19:54 ID:fXeR5OoH
貼り付けると日本のアニメみたいでドット絵はディズニーアニメのような気がします
562名前は開発中のものです。:04/08/27 21:21 ID:JmNyjy1C
(;´Д`)…?
563名前は開発中のものです。:04/08/27 21:54 ID:g/9FlyiK
(;゜Д゜)…???
564名前は開発中のものです。:04/08/27 22:08 ID:n9FyYm2Z
本物ですな
565名前は開発中のものです。:04/08/27 22:51 ID:wIFL1DE6
久々の、本物再来ですな
566名前は開発中のものです。:04/08/27 23:11 ID:eB76/2d9
>>561
ディズニーアニメも貼り付けて作ります。
567名前は開発中のものです。:04/08/27 23:56 ID:IvjAjLag
育てよう。
568名前は開発中のものです。:04/08/28 11:09 ID:Lw21I10N
2枚のテクスチャをアルファブレンドで半透明表示をしようと
しているのですが、色々試行錯誤してみましたが、
全く変わりません。下地の画像(Dest)、上書きの画像(Src)、共に表示は正常(アルファブレンド無しで不透明表示)です。

以下、問題になりそうな所で設定したものを列挙してみます。
・頂点バッファの色α値、Srcが0x80で、Destが0xff(頂点バッファは2つ用意)
・設定したSetTextureStageStateの引数を列挙すると、
  (0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
  (0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE);
  (0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE);
  (0, D3DTSS_COLOROP, D3DTOP_MODULATE);
  (0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
  (0, D3DTSS_COLORARG2, D3DTA_DIFFUSE);
・引き続き、設定したSetRenderState、
  (D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
  (D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
  (D3DRS_LIGHTING, FALSE);
  (D3DRS_ZENABLE, TRUE);
  (D3DRS_ALPHABLENDENABLE, TRUE);
569568:04/08/28 11:10 ID:Lw21I10N
[上の続き]
・BeginScene内 {
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_TEX1)
 pDevice->SetFVF( D3DFVF_CUSTOMVERTEX );

 pDevice->SetStreamSource(0, g_pVB[0], 0, sizeof(CUSTOMVERTEX));
 pDevice->SetTexture(0, g_pTexture[0]);
 pDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, 0, 2);

 pDevice->SetStreamSource(0, g_pVB[1], 0, sizeof(CUSTOMVERTEX));
 pDevice->SetTexture(0, g_pTexture[1]);
 pDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, 0, 2);
}
(最初はSrcの描画時、ALPHABLENDENABLEをFALSEで
Destでは、ALPHABLENDENABLEをTRUEにしてましたが、
変わりませんでした。(2枚不透明))

はぁ、分からむ。他に原因が有りそうな気がするが、色々試したんだけど。。
570名前は開発中のものです。:04/08/28 11:55 ID:EaM1yQP4
>>568
頂点の初期化部分も見てみたい。
× v->color = D3DXCOLOR( 0xff, 0xff, 0xff, 0x80 ); // floatでない
○ v->color = D3DCOLOR_ARGB( 0x80, fxff, 0xff, 0xff );
みたいなケアレスミスの悪寒。
571名前は開発中のものです。:04/08/28 12:14 ID:MSl7I4ZZ
単純に順番だったりしねーのかと小一時間(ry
572568:04/08/28 13:09 ID:Lw21I10N
>>570
その通りでした。でも、直してもダメだった。
ソース挙げた方が早いと思ったのであげました。
http://www.geocities.jp/karina0011632/WinTempDX.txt
短かめだと思うので、どうかよろしく。
573568:04/08/28 13:45 ID:c9wMyvzy
ソースあげてから、気付いた自分の失態。
あぁ、恥ずかしい。変な所にreturn S_OKが入ってた。
それでは設定されないのは当たり前だ。
ワールド行列、ビュー行列、射影行列を設定しないようにしたら、
うまく表示されるが、すれば何も表示されなくなる。なぜ?
迷惑かけました。ありがとうございました。
誰も読んでない、と願う。即、削除だ
574名前は開発中のものです。:04/08/28 16:24 ID:++PpbaSY
DirectInputを使ったジョイスティックの入力のやつが正しく動作しません。
コンパイルは通っても、完成したEXEファイルを実行するとウィンドウは開くのですが、一瞬で終了します。

ダイアログボックスで細かく調べた結果、86行目辺りに問題があるようです。
ソース : ttp://shiva.dip.jp/up/box/up2160.zip

86行目の部分について、サンプルではIID_IDirectInput8となっていましたが、
IID_IDirectInputでなければエラーが出てコンパイルできません。
エラー : 外部シンボル '_IID_IDirectInput8A' が未解決 (C:\C\YUKA\DX\TEST3.OBJ が参照)

リンクしたライブラリは dinput.lib dxerr9.lib dinput8.lib です。

環境 : WindowsXP BCC5.5 DirectX9SDK(アップデートなし)

よろしくお願いします。
575某所で顔写真晒されたホゲー:04/08/28 16:43 ID:8sL3miLU
C\YUKA\DX\ うそくせーーーーーーーーーー
576名前は開発中のものです。:04/08/28 17:12 ID:oqhdv2Sx
>>574
dxguid.lib も必要な気がするが、

coff2omf で作ったやつだと駄目な気がするな。
577名前は開発中のものです。:04/08/28 17:26 ID:8joSL+8n
directX色々ためしてやっとコンパイルできるようになったんだけど
ライブラリー(.lib)を普通はリンカに教えるのにコンパイラーに教えないと
コンパイルできないのはなぜですか?
578名前は開発中のものです。:04/08/28 20:19 ID:t2/ILfH2
>コンパイラーに教えないと コンパイルできない
コンパイルじゃなくてリンクだろ。

恐らく#pragmaのことを言ってるんだとは思うが、もうどうにでもしてくれ。

579名前は開発中のものです。:04/08/28 20:27 ID:bwn7nTe1
578のいうとおりだとするとリンカでは出来なくて
コンパイラーに教えないとコンパイルできない説明はどうしますか?
580名前は開発中のものです。:04/08/28 20:29 ID:WE2yckIh
MSのコンパイラだからもちろん決まってるじゃんか



                  「仕様です」
581名前は開発中のものです。:04/08/28 20:34 ID:WE2yckIh
ていうか 577はコンパイルとリンクの違いのとらえ方がちがうな

ふつうDirectXのプログラムをビルドした場合

プログラム自体の main.cpp→main.objはできるからコンパイルはできてる
でもライブラリの場所が設定されてないとBltFastとか関数の実体が見つからない系の言葉がでるじゃん

ようするにコンパイルはできるけどリンクができないって事だ

コンパイルは絶対できてるよ インクルードファイルもちゃんと読めていれば
582名前は開発中のものです。:04/08/28 20:55 ID:bwn7nTe1
それではライブラリーの場所を指定するんじゃなくて
ライブラリーをcppと同じ様にオプションを付けないでコンパイラーに
教えないとコンパイルできない証明になってないの
583名前は開発中のものです。:04/08/28 22:01 ID:0glZXjA8
とりあえずどういうオプションつけてコンパイルしてるんだか晒して欲しいな

何が言いたいんだかよくわからん
584名前は開発中のものです。:04/08/28 22:32 ID:GnOxuBjg
日本語すらまともに書けないんじゃ、どうしようもない。
585名前は開発中のものです。:04/08/28 23:52 ID:Kxp/7flN
DirectXコンパイルリンクうんぬんの前に、
相手に内容が伝わる日本語を書く練習をしてくれ。
>>579>>582も意味がさっぱり分からん
586名前は開発中のものです。:04/08/28 23:54 ID:bwn7nTe1
専門用語使わないと説明できないから仕方ない
587名前は開発中のものです。:04/08/29 00:18 ID:ZuIvEOEv
ライブラリー
コンパイラー

にワラタ
588名前は開発中のものです。:04/08/29 00:53 ID:tXbvC2Z4
さほど笑う所でもないと思うけどなぁ。

あまりそういうミクロなことに大きく反応しない方がいいよ。
知ったか臭が出まくるから。
589名前は開発中のものです。:04/08/29 00:53 ID:jOomCCJ/
>582
コンピュータ関連に限ったことじゃないけど
最後にのばし「ー」は書かないお約束なんだよ

コンピュータ
プログラマ
コンパイラ
ライブラリ

コンピュータ関連の書籍を読むと、このルールになってるから
自然と気づくものなんだけどね
まぁ日が浅いということで教えてあげますた

じゃないと>587が何にワラタかわからないもんね
590名前は開発中のものです。:04/08/29 00:59 ID:l6FCc4MT
専門用語云々ではなく、文章が成り立っていないのが理解できないのだろうか?
作文すらまともに出来ないのに、プログラムなど出来ようはずがない。
591名前は開発中のものです。:04/08/29 01:03 ID:pDqcWRKW
そもそも英語をカタカナに直すのが間違っているのだよ!!
computerでいいじゃない!
592名前は開発中のものです。:04/08/29 02:04 ID:f5bWZnyf
>>589
教えてあげますた?
馬鹿にしてあげますたの間違いでしょ。
593名前は開発中のものです。:04/08/29 04:15 ID:gD6VDqSM
それは屈折だね。
人に教えてもらうことにトラウマがあるのかな。
594名前は開発中のものです。:04/08/29 04:22 ID:JB9yEO7O
コンピュータ の検索結果のうち 日本語のページ 約 2,630,000 件中 1 - 50 件目 (0.48 秒)
コンピューター の検索結果のうち 日本語のページ 約 2,640,000 件中 1 - 50 件目 (0.44 秒)

コンピューターの完全勝利!!
595名前は開発中のものです。:04/08/29 04:34 ID:G7yamuRi
もうね・・・
596名前は開発中のものです。:04/08/29 08:46 ID:g4GxRtWZ
コンピータ の検索結果のうち 日本語のページ 約 753 件中 1 - 10 件目 (0.16 秒)
コンプータ の検索結果のうち 日本語のページ 約 220 件中 1 - 10 件目 (0.31 秒)
コンピョータ の検索結果のうち 日本語のページ 約 31 件中 1 - 10 件目 (0.27 秒)
コンピャータ の検索結果のうち 日本語のページ 約 7 件中 1 - 4 件目 (0.15 秒)
597名前は開発中のものです。:04/08/29 09:27 ID:7ns/5yL2
>>589
>最後にのばし「ー」は書かないお約束なんだよ
それは古いJISZ8301の話で2000年に改正

erなどで終わる英単語のカタカナ表記
・原則として最後に長音を付けるが慣用にならって省略可能
・国語規範に従うなら長音を付けなければいけない
598名前は開発中のものです。:04/08/29 12:14 ID:7ofXNzkl
>>593
君は>>587のどこに「教えてあげた」という要素があるのか説明してみなさい。
599名前は開発中のものです。:04/08/29 12:32 ID:IHB/3+VU
コンピューター 【computer】

電子回路を用い,与えられた方法・手順に従って,データの貯蔵・検索・加工などを高速度で
行う装置。科学計算・事務管理・自動制御から言語や画像の情報処理に至るまで広範囲に
用いられている。電子計算機。

三省堂提供「デイリー 新語辞典」より
600名前は開発中のものです。:04/08/29 16:25 ID:WIas5PYh
>データの貯蔵・検索・加工などを高速度
>科学計算・事務管理・自動制御から言語や画像の情報処理に至るまで広範囲

肝心のDirectXが抜けているな。もうだめぽ。
601名前は開発中のものです。:04/08/29 21:46 ID:ujHaOyYK
テクスチャを滑らかにするためにdx8の時は↓みたいにしてたんですけど、
SetTextureStageState(0, D3DTSS_MAGFILTER, D3DTEXF_LINEAR)
SetTextureStageState(0, D3DTSS_MINFILTER, D3DTEXF_LINEAR)
dx9になったらできなくなりました。どうやればできますでしょうか?
602名前は開発中のものです。:04/08/29 22:01 ID:0xodCynV
テクスチャー
603名前は開発中のものです。:04/08/29 22:02 ID:B9v49DVv
SetSamplerStateメソッドを使えばできます
604名前は開発中のものです。:04/08/29 22:10 ID:ujHaOyYK
>>603
本当や!!ありがとう!
605名前は開発中のものです。:04/08/29 22:56 ID:+M+TQg8+
あ、あれ?なんか書き込みが消えてってる…
606574:04/08/30 00:54 ID:+VHuiRh9
>>576
ありがとうございます。
でも dxguid.lib をリンクしても解決しませんでした。

普通のウィンドウズアプリケーションの入力にしたほうがいいのでしょうか?

//dinput使いたいですけど・・・
607名前は開発中のものです。:04/08/30 05:04 ID:77gvjof4
>>606
よくみたら、なぜdinput.libとdinput8.libが両方リンクされてるんだ?
608名前は開発中のものです。:04/08/30 08:27 ID:JziNAVt5
>>541
> 具体的には透視変換後のZ値(0.0f〜1.0f)はどのようにZバッファへマッピングされるのですか?

これでも実行してみそ。
http://gamdev.org/up/img/1129.zip
ちなみに俺が初めて作った.NETアプリ。ぶっちゃけどうでもいいけど。
609608:04/08/30 08:38 ID:JziNAVt5
あっと、たぶん横軸の左がニアクリップ、右がファークリップ、
縦軸の下が0.0f、上が1.0fだと思う。

つーか手抜きにもほどがあるな。両方ゼロ入れたら止まるし。
610574:04/08/30 13:35 ID:0w3YomC2
>>607
dinput.libだけだとエラーが出ます。

  Error: 外部シンボル 'DirectInput8Create' が未解決 (C:\C\YUKA\DX\TEST3.OBJ が参照)

それでdinput9.libもリンクしてみたところ、このエラーが消えました。
611名前は開発中のものです。:04/08/30 15:01 ID:NHnH5VCa
>>610
コンパイラーにライブラリーを教えないとエラーがでる
612名前は開発中のものです。:04/08/30 15:11 ID:clEim/gs
>>610
DirectX9ではIDirectInput8インタフェイスが使われているのだから当然といえば当然
613577:04/08/30 15:28 ID:NHnH5VCa
いまビルドのオプションみてみたところ
コンパイラーに教えるのは間違えで
libファイルをライブラリーファイルとしてではなくオブジェクトとして
教えないとリンクできないことがわかりました
614541:04/08/30 16:36 ID:G+2ZLJ7k
>>574
ありがとうございます!早速実行してみました。
横軸は透視変換前のZ値(Zn〜Zf)、縦軸は透視変換後のZ値(0.0f〜1.0f)ですね。
それで例えば、Znを1、Zfを100で再計算してみると
変換前 : 変換後
10 : 0.93
20 : 0.96
になります。
この0.93と0.96を16itなり24bitなりのZバッファに入れることになると思うんですが
どういう風に入れてるんだろうと疑問だったんです。
が、よく考えてみたら単にreinterpret_castで良さそうですね。
透視変換後のZ値をfloat型だとして、符号ビットはいらないし指数は固定にすればいいし
正味必要なのは仮数23ビットなんで、24bitZバッファなら間に合うし16bitはシフトすればいいですし。
615名前は開発中のものです。:04/08/30 18:39 ID:rEJcNiQG
libのリンクは↓をよく使う
#pragma comment(lib, "d3d9.lib")
特に他人に渡したりするときこっちのほうがいいと思う
616名前は開発中のものです。:04/08/30 18:53 ID:nWCa8g9+
ダイレクト3D9のチュートリアル3の意味が全然分からないんですが、わからないのは普通ですか?
617名前は開発中のものです。:04/08/30 19:22 ID:f4wxDLS/
普通じゃないよ
618574:04/08/30 22:24 ID:p9cFUGYb
>>611,>>612
なるほど。


えっと、BCCでは結局dinputを使ったアプリケーションの開発はできないのでしょうか?
普通にキーボードから入力させることにして、
ユーザーにはJoyToKeyを入れてもらうことにしたほうがいいですか?
619名前は開発中のものです。:04/08/30 22:29 ID:nWCa8g9+
なんでdirectx9なのにdirectx8を使ってるの?
620名前は開発中のものです。:04/08/30 22:34 ID:RUnJZs6O
8のインタフェイスしか無いからでしょ。
9は、そのほとんどが3D関係のアップデートだし。
621名前は開発中のものです。:04/08/30 22:43 ID:sFKshRVA
http://clootie.narod.ru/cbuilder/index.html
ここにあるBCC用ライブラリをリンクしてみては?
足りない部分を補ってあるらしいよ
LunaBCCも結構使えるかもね
ttp://www.twin-tail.jp/contents/luna/luna_dx9/luna_bcc.zip
622608:04/08/30 22:49 ID:Har10E7G
>>614
ああ、透視変換後って話だったか。
実際の数字見てないけど、たぶん仮数部がそのまま収められると見て間違いないだろうね。
623574:04/08/30 23:47 ID:p9cFUGYb
>>619
わかりません。

>>620
そうなんですか、
気にはなっていたのですが。

>>612
上のURLのライブラリを使ってます。
というか、それを入れないとBCCでの開発は不可能だと聞きましたので。
LunaBCCはよさそうなのですが、
DirectXの勉強のためにも一から自分で組みたいなと思っているんです。
すいません。
624名前は開発中のものです。:04/08/31 00:15 ID:GrjKiyhi
>というか、それを入れないとBCCでの開発は不可能だと聞きましたので。

自分で作れば不可能ではなくなる。
625名前は開発中のものです。:04/08/31 00:19 ID:3e2h5xuA
>>623
dxguid.lib dxerr9.lib dinput8.libでIID_IDirectInput8にしてコンパイル通ったんだが・・・・
626名前は開発中のものです。:04/08/31 01:30 ID:Sa6m5/RG
Xファイルを複数読み込むときにですね、
配列を使ってやろうとしたんですけど、
なぜかできませんでした。
クラスとかが使えないとまずいですかね?
627名前は開発中のものです。:04/08/31 01:40 ID:sprNxSK/
クラスを使える使えないは別問題。
628名前は開発中のものです。:04/08/31 02:05 ID:Sa6m5/RG
LPD3DXMESH lpD3DMesh = NULL; // メッシュ
D3DMATERIAL9 *D3DMaterial = NULL; // 質感
LPDIRECT3DTEXTURE9 *lpD3DTexture = NULL; // テクスチャー
DWORD dwNumMaterials = NULL; // マテリアル数

10個Xファイルを読み込むなら↑が10個分必要?
629名前は開発中のものです。:04/08/31 02:18 ID:sprNxSK/
そうだが構造体にまとめたほうがよさげ
630名前は開発中のものです。:04/08/31 02:18 ID:gdzLK54q
10個書くのが面倒なら
構造体なりクラスなりまとめりゃあいいんじゃねえの?
それかD3DXMESHCONTAINERかそこら使うとか。

DirectX以前に、文面から明らかにあんたのC/C++の知識・経験不足。
631574:04/08/31 02:34 ID:jUJY5ORF
>>624
なるほど・・・


>>625
コンパイルできました!
ありがとうございます!

dinput.libと、dinput8.libの二つをリンクしてたのが原因・・・みたいです。
だめなんですね、この二つをリンクするのは。
632麻耶子:04/08/31 11:21 ID:IY1iJSYZ
よくPS2とかのゲームで3Dのキャラクタが剣を振ったりしてるじゃないですか。
そういった3Dのキャラクタのアクション?アニメーション?ってどういった原理
でやってるんでしょうか?DirectXでXファイルを読み込んでそのデータを
どうすれば動くんですか?そういったやり方なのかXファイルをアクションの
数分用意するんでしょうか?どなたか教えて頂けたら幸いです。
633名前は開発中のものです。:04/08/31 11:25 ID:mh9EN2XE
634名前は開発中のものです。:04/08/31 11:31 ID:VtZxOXGy
わざわざ名前を付ける意図がわからん
ネカマ効果でも期待してるのか?
635名前は開発中のものです。:04/08/31 12:03 ID:7XPSpLc5
ちょっと検索すればいくらでもでてくるだろうが
636名前は開発中のものです。:04/08/31 12:09 ID:S3EWZn8j
directXは行列の計算とか難しいこと出来なくても出来ますか?
637名前は開発中のものです。:04/08/31 13:34 ID:q05f1i7v
>>636
行列の計算はDirectXがやってくれるから簡単だよ。
行列でできることは移動、回転、拡大縮小だよ。
638628:04/08/31 17:04 ID:CPB7EMQ0
全然クラスとかわかんなかったので、
クラスを勉強して2つのXファイルを読み込もうとしたんですけど、
やっぱりできませんでした。
とりあえずエラーは出ないんですけど、起動したら強制終了してしまいます。
誰か救いの手を・・・

ソースVC6.0
http://www.h3.dion.ne.jp/~rank/001.zip
639麻耶子:04/08/31 17:29 ID:RyLy+xPH
>634
質問するとき名前を名乗るのは当然でしょ。
2chはそういうことしなくていい場所なら失礼致しました。
2chはほとんど男でしょうけど私は女です。ゲーム作るのが楽しい女もいることは覚えておいて下さい。
640名前は開発中のものです。:04/08/31 17:49 ID:Eqw4COEC
LightWave,Maya等を使ってモデルデータとシーンデータ(モーションデータ)
を作って動かすか、プログラムであらかじめ動きを作っておく
641名前は開発中のものです。:04/08/31 18:56 ID:mJWXdrBd
>>639
何を持って当然というかは知らないが、
不特定多数に対して質問するときは名乗らない場面も非常に多い。

ついでにそういうスレ違いのレスはsageるのがルール。
>質問するとき名前を名乗るのは当然でしょ。
自分のしていることは間違っていないと言いたそうなこのレスをする前に、
ルールを守ったらどうだ?

基地外だから無理かもしれんが
642名前は開発中のものです。:04/08/31 19:29 ID:qjzurGy3
>>638
ttp://haiiro.info/up/img/1490.zip
添削してやったぞ
お礼はお前のねーちゃんのエロ画像でいいや
643名前は開発中のものです。:04/08/31 20:47 ID:sXGZGE09
>ついでにそういうスレ違いのレスはsageるのがルール。

そんなルールは無いけどね
644名前は開発中のものです。:04/08/31 21:08 ID:GGIR8YL9
>>643
暗黙のルールだろ。
人に挨拶されたらこっちも挨拶するのはルールと言うぞ。
法律で定められてなくとも立派なルールだ。
まあ真性の馬鹿に何を言っても無駄だろうけど。
645名前は開発中のものです。:04/08/31 21:13 ID:QGRYGa+M
すいません、フルスクリーンにするにはどうしたらいいのでしょうか?
D3DPRESENT_PARAMETERSのモンバWindowedをFALSEにしてもフルスクリーンになりません・・・
TRUEだったらウィンドウに画像が表示されるのですが、FALSEだと起動した瞬間に終了します。
646名前は開発中のものです。:04/08/31 21:29 ID:6EHRxm1A
>>645 DirectXサンプルに答えがあるのになぜ見ない?
647名前は開発中のものです。:04/08/31 21:33 ID:sprNxSK/
D3DPRESENT_PARAMETERS構造体のBackBuffer〜というメンバに値を設定してる?
これ設定しとかないとならなかった気がする。
648名前は開発中のものです。:04/08/31 21:52 ID:sXGZGE09
>>644
それはルールじゃないからね。
まあ真性の馬鹿に何を言っても無駄だろうけど。
649名前は開発中のものです。:04/08/31 22:05 ID:eVEvf9KS
>>648
社会のルールだろうが低脳
もう一回小学校からやり直せ



















と思ったけど書き込みを見た感じリア消か、
まあそりゃあ世間知らずでもしょうがいないわな
650名前は開発中のものです。:04/08/31 22:05 ID:bwdbBIXH
>>649
無駄なスペースを空けるのはルールに入らないんですか?
651名前は開発中のものです。:04/08/31 22:09 ID:HDOgrwdm
ルールがどうとか言ってる奴らは自治スレに行ってください
652645:04/08/31 22:16 ID:5qxSKzLw
>>646
サンプルの量が多すぎてどれを見ていいのか分かりません。

今、サンプルやらチュートリアルを見ながら色々試してみてたのですが、
ウィンドウモードで起動したのが終了できなくなりました。
×ボタンもないし、タスクバーのやつを右クリックしてもメニューが表示されません。

>>647
してます・・・
653名前は開発中のものです。:04/08/31 22:23 ID:sprNxSK/
サンプルのソースは初期化とかの基本的な部分は共通のファイルに入っていて
各サンプルはそれをincludeしてる形だから。
654名前は開発中のものです。:04/08/31 22:38 ID:16p/Kk0b
sageが絶対のルールだと思っているsage厨は死ね。
ageようがsageようがどうでもいいだろ。
もうage,sageごときでムダに他人に突っかかるなよ。
655638:04/08/31 23:02 ID:WIKYyYv2
>>642
ありがとうございます!!
でもなぜかDLできない・・・。
サーバービジー状態・・・。
656638:04/08/31 23:16 ID:WIKYyYv2
DLできました。
細かい添削本当に感謝!
657名前は開発中のものです。:04/08/31 23:39 ID:Dm5qzUX7
>>650
age、sageの是非はスレの流れによって意見も異なるが、
>>649みたいな無駄な改行が是とされるケースは皆無だよな。
これはまさに自爆ってやつだろう。

煽りに「リア消」って単語選ぶあたり、リア厨なのかもしれない。
658名前は開発中のものです。:04/09/01 01:13 ID:huoKVM2k
どっかに9.0bないかな・・・・(2003summerの前のやつ)
659名前は開発中のものです。:04/09/01 07:39 ID:po6+kMBh
MSのサイトからDLできないの
DirectX関係の参考書の付録CDによく収録されてるけど
660名前は開発中のものです。:04/09/01 11:11 ID:xBYRo/UW
思ったが、DirectXの初心者用質問スレを立てたほうが良いのと違うか。
661名前は開発中のものです。:04/09/01 12:24 ID:F+B8VPtk
夏休み終わったから立てなくていいよ
662645:04/09/01 13:30 ID:6Lnyvx3i
フルスクリーン化がどうしてもできません・・・
ググっても Windowed のところを TRUE から FALSE にしろとしか書いてないです。

あと、ただ画像を表示させるだけのプログラムがものすごく重いのですが、
これはウィンドウモードだからですか?
後ろにあるアプリケーションを表示しようとすると30秒くらいかかります。
マウスカーソルもかなり重いです。
663名前は開発中のものです。:04/09/01 13:32 ID:F+B8VPtk
サンプルで全画面にしても変わらないの?
普通のダイレクトXのアプリの全画面は動く?
664名前は開発中のものです。:04/09/01 13:44 ID:GLk7SO4/
>>662
とりあえずフルスクリーン初期化時に
D3DPRESENT_PARAMETERS
の中身とCreateDeviceがどんな感じなのかかいてみたらどうでしょう。

>画像を表示させるだけのプログラムがものすごく重いのですが、
>これはウィンドウモードだからですか?
ウィンドウモードがHEL動作しかできないビデオカードでもつんでいるんでは?
古いビデオカードはフルスクリーンしかHAL動作しないのもあるよ。
DirectXサンプル内で、ウィンドウ動作するやつは正常に動いていますか…?
665名前は開発中のものです。:04/09/01 15:21 ID:zDPCNccp
a
666645:04/09/01 15:27 ID:8UoVVY3m
>>663
>サンプルで全画面にしても変わらないの?
サンプルは・・・昨日4時間ほど戦っていたのですが、
どのサンプルをどうしていいのやら分かりません。

>普通のダイレクトXのアプリの全画面は動く?
はい、フリーゲームでも市販のゲームでも、
普通のDirectXのゲームはフルスクリーンでちゃんと動きます。
※動かなかったのは、DXSDK\Samples\C++\Demos\Bin\Donuts4.exe です。
『あなたのグラフィックアクセラレータでは無理です。
それかあなたのグラフィックカードがデスクトップのカラーモードに対応していません。
16Bitで試せハゲ。』
と出て終了してしまいます。
しかし、このメッセージはフルスクリーンになってから出るので、
フルスクリーンにはなるみたいです。
667645:04/09/01 15:28 ID:8UoVVY3m
>>664
こうなってます。

D3DPRESENT_PARAMETERS param;
ZeroMemory(¶m,sizeof(param));
param.BackBufferWidth=640;
param.BackBufferHeight=480;
param.BackBufferFormat=D3DFMT_UNKNOWN;
param.BackBufferCount=1;
param.SwapEffect=D3DSWAPEFFECT_DISCARD;
param.Windowed=TRUE;//ここをFALSEにすると起動した瞬間に終了してしまいます。
668名前は開発中のものです。:04/09/01 15:45 ID:dJv1RoiI
やっぱそこか
フルスクリーンにしたいのにD3DFMT_UNKNOWN(フォーマット不明)はないんじゃないかと。
669名前は開発中のものです。:04/09/01 15:45 ID:vT9g/rIC
>>667
今試したけど、フルスクリーンでD3DFMT_UNKNOWNにしたらデバイス作成失敗ぬるぽ。
GetAdapter〜とかできちんと取得したやつを使ったほうがよさげ。
670名前は開発中のものです。:04/09/01 15:53 ID:dJv1RoiI
IDirect3D9::CreateDevice メソッド
・ウィンドウ モードのみについて、BackBufferFormat = D3DFMT_UNKNOWN。フルスクリーン モードの場合はフォーマットを指定する必要がある。

リファレンスより
671645:04/09/01 15:58 ID:8UoVVY3m
>>668-670
ありがとうございます。
そこを変更してみます。
672名前は開発中のものです。:04/09/01 16:26 ID:oBimBF/3
>>671 ヘルプぐらい読もうぜ
673645:04/09/01 16:55 ID:8UoVVY3m
フルスクリーン化成功しました!
GetDisplayModeがよく分からなかったので、
色々調べてD3DFMT_R5G6B5にしたらできました。
R5G6B5は16ビットだということなのですが、
ということは256色しか表示できないということですよね?

>>672
すいません、ヘルプも見たんですけど、
英語と専門用語ばかりでなかなか理解できなかったんです。
DirectXの入門用書籍でも購入したほうがいいでしょうか。
674名前は開発中のものです。:04/09/01 16:58 ID:5CAaBj1y
はじめてDirectX触るんなら初心者向けの書籍を買っったほうがいいと思われ
とりあえず
・初期化まわり
・行列の基本的な使い方
・ビュー、カメラの設定
・ポリゴン表示
・光源の設定
・Xファイル表示
これくらいを網羅していれば簡単な3Dシューティングくらいなら作れるようになるべ
あとはシェーダを理解すれば初心者卒業かなと思うけど、どうよ?
漏れも最初はヘルプのどこを見ればいいのかすらわからんかったし
675名前は開発中のものです。:04/09/01 16:59 ID:5CAaBj1y
>673
…16bitだから65536色だと
676名前は開発中のものです。:04/09/01 17:12 ID:vT9g/rIC
2*2*・・・2(2^8)=256
2*2*・・・2(2^16)=65536
677名前は開発中のものです。:04/09/01 17:16 ID:vT9g/rIC
>>673
日本語のヘルプも一応読んだほうがよさげ。
日本語訳はクソだが英語をあまり読めなさそうなので。
678名前は開発中のものです。:04/09/01 17:22 ID:F+B8VPtk
>>673は日本語ヘルプの中の英語と専門用語が理解できないんだよ
679名前は開発中のものです。:04/09/01 17:33 ID:BizjC3qm
プロファイリングの結果、>>673はガチ小学生。

彼はいずれお前らを凌駕するプログラマとして君臨することだろう。
「センパイそんなことも分からないんですか〜?」とか言ってな。
680645:04/09/01 17:46 ID:8UoVVY3m
>>674
本屋に行って一回見てみます。

>>675,>>676
65536色でしたか。

>>677,>>678
日本語ヘルプはなかったような気がします。

>>679
お酒飲める年齢ですw
681名前は開発中のものです。:04/09/01 17:48 ID:vT9g/rIC
SDKには付いてないけどExtraに付いてる
682645:04/09/01 18:02 ID:8UoVVY3m
Extra・・・ですか。
調べてみます。

回答してくださった皆様、ありがとうございました。
フルスクリーン化できたので次は簡単なアニメーション表示でもやってみます。
683名前は開発中のものです。:04/09/01 18:55 ID:somP4s0O
ブルースクリーン化なら思わぬ時に意図せず出来たりする。
684名前は開発中のものです。:04/09/01 19:58 ID:W7LS8TrD
HLSL無しでお願いします。
面ごとに、ごくごく簡単な陰影を付けたいのですが、
法線無しでライティング計算をDirectXに任せる方法ってありますでしょうか?

たぶん無いような気がするので、重ねてお尋ねしたいのですが、
自前でローカル座標から射影空間まで座標変換し、ライティングも計算して、TLVertex型で描画するのと、
固定パイプラインなどに任せるのでは、CPUなどにもよると思いますが、どちらが一般に早いのでしょうか?

自分でやってみた所、どう見ても後者の方が速かったのですが、
腕の良い人ならばどうなのかなと疑問に思いまして…。
685名前は開発中のものです。:04/09/01 20:17 ID:ZFPpHuZW
ハードウェアT&Lが一般的な現状では、CPUが変換・ライティングを行うより、
GPUに任せた方が高速になるケースが多いです。

TLVERTEXを用いた描画では、CPUとGPUの速度差もさるこことながら、
VertexBufferを座標変換・光源計算の度に書き換える必要があるため、
VertexBufferの中身をCPUからアクセスできる空間(おそらくシステムメモリ)から、
GPUからアクセスできる空間(おそらくビデオメモリ)へ転送する時間の分、損になります。

法線無しでのライティングの計算ですが、HLSLなどを用いて書いたカスタムシェーダ
無しの場合、LVERTEX型+ライトマップを用いる方法がいいのではないでしょうか。

この場合、光源の向きや位置が動き回るケースでは使えませんが、
法線情報の無いLVERTEX型でも(前計算された)ライティングを行うことが出来ます。
686名前は開発中のものです。:04/09/01 20:23 ID:ZFPpHuZW
あ、若干早とちりがありました。LVERTEXには元々色情報が含まれるので、

>面ごとに、ごくごく簡単な陰影を付けたいのですが、

というように、面単位で充分というのであれば、わざわざライトマップを
張らなくてもいいですね。
687684:04/09/01 20:29 ID:W7LS8TrD
>>685-686
即レス、丁寧な説明な上、最適解まで頂いちゃってお礼の言葉もありません。
仰るとおり、まさに光源固定でいかに…みたいな所で悩んでいました。

ぼんやりとしていたハードウェアとの関係も、おかげで良く分かりました。
折角なのでライトマップも勉強してみます。ありがとうございました!
688名前は開発中のものです。:04/09/01 21:08 ID:j8hhlc9/
>HLSL無しでお願いします。
>面ごとに、ごくごく簡単な陰影を付けたいのですが、
>法線無しでライティング計算をDirectXに任せる方法ってありますでしょうか?
頂点座標でデフューズキューブマッピング
689名前は開発中のものです。:04/09/01 22:54 ID:5CAaBj1y
>678
そうだろね
あのドキュメントオンリーではつらい初心者も多いだろうね
ドキュメントの対象は開発者
入門書の対象は入門者(初心者)
だから初心者は書籍買って読んで、ひととおりやってみた後でドキュメントを読み返すとわかるようになるんじゃないかな
てゆうか漏れはそうだったけどね
ドキュメントと付属のサンプルだけで勉強してる香具師は尊敬するよ
書籍じゃなくても思いつく限りの単語でググればソース公開してるところもあるし、それも参考になるよ(DirectX8以前のものも多いけど)

あと初心者はいきなりゲームを作ろうとすると挫折率高いかも
Xファイルのビューアとかパーティクルのデモみたいのをとりあえずの目標にしたほうがいいんじゃないかな
逆に言うとそれらが作れればちょっとしたゲームは作れるようになってるはずだからね

690名前は開発中のものです。:04/09/02 00:25 ID:DFdFhu4y
ここに来てる人はどのくらいのものが作れるのだろう・・・。
プロもいるんだろうか。
691名前は開発中のものです。:04/09/02 00:30 ID:lFLjvpBq
>>690
安心しろ、間違い無くいる。
つーか、プロの平均レベルが君が考えるほど高くないっていったほうが納得がいくだろうか?
ネットで技術ページ立ち上げてる特異な人ばっかりに目がいくけど
プロったって普通の人が大半だよ。
692名前は開発中のものです。:04/09/02 10:02 ID:/RYufvp9
DirectGraphicsで透過色つき描画したいのですがどうしていいのか分かりません。
ググって調べたのですが、
DirectX Texture Tool でα値を持つddsファイルを作って、
それを読み込めばいいと出たのですが、
その通りにやってもできません。
DirectX Texture Tool の画面では透過した部分の色が水色になっているので、
αチャンネルを持つ画像自体はちゃんとできていると思います。

また、以下の記述を付け加える必要があると書いてあるサイトも見つけたので書いてみたのですが、
透過してくれませんでした。
 lpD3DDevice->SetRenderState(D3DRS_ALPHAREF,(DWORD)0x00000066);
 lpD3DDevice->SetRenderState(D3DRS_ALPHATESTENABLE,TRUE);
 lpD3DDevice->SetRenderState(D3DRS_ALPHAFUNC,D3DCMP_GREATEREQUAL);
この記述をする場所が悪いのかとも思い、
色々な場所で試してみたのですが、だめでした。

■環境
BCC
DirectX9.0b SDK

■参考にしたサイト
ttp://www.plustarnet.com/aspil/Programming/2d10.htm
ttp://www.c3.club.kyutech.ac.jp/~sukiyaki/dir/color.html

どうすれば透過できるのでしょうか?
693名前は開発中のものです。:04/09/02 12:18 ID:LRjExFEm
見たところ、キミが有効にした機能はアルファテストであって、アルファブレンドではない。
694692:04/09/02 14:22 ID:Oi5rE6iZ
>>693
ありがとうございます。
アルファブレンドの有効で調べてみたところ、
lpD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
で有効にできるとのことなので、書いてみましたが透過されませんでした。

D3DXLoadSurfaceFromFile関数の第7引数でカラーキーを指定できるというのも見つかったのですが、
これを使うと、指定した色を透過することはできるのですが、
それで描画すると、その部分が最初に置いた画像まで透過されてしまい、
クリア時の色が見えて変な状態になります。
695名前は開発中のものです。:04/09/02 15:27 ID:adWbTbum
アルファブレンドをどう演算するかの設定が入ってないし。
696名前は開発中のものです。:04/09/02 16:03 ID:X1aaYsTe
>>694
DirectXサンプルに答えあるのになぜ見ない。
697名前は開発中のものです。:04/09/02 16:41 ID:Htjhaa98
サンプルって分かりづらい。
698名前は開発中のものです。:04/09/02 16:55 ID:klIDF0Ic
RenderState関係のALPHAとついていないものも含めて、色々いじってみながら動作確認していってはどうでしょうか
RenderState関係の値がどんな意味をもってるのか、どう変わるのかがわかるから
699名前は開発中のものです。:04/09/02 16:58 ID:8nv1HKpX
サンプルがあればこのスレいらんね
削除依頼だしとけよ
700名前は開発中のものです。:04/09/02 17:42 ID:+UoAnpem
夏休みも終わったというのに可愛い逆ギレをするなあ。
701692:04/09/02 17:51 ID:3tiwSpK0
ありがとうございます。

>>695
アルファブレンドの演算で探してみましたがなかなか出てきません。
これかなと思うものを見つけたのでこれを書いてみましたがちゃんと思い通りに表示してくれませんでした。

lpD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
lpD3DDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
lpD3DDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);

>>696
サンプルはどれを見ていいのか分からない上、
虱潰しに見てもインクルードとデファインの量が多くて混乱します。
読んでるとどれが自作関数なのかとかわけが分からなくなってきます。

>>698
なるほど。
やってみます。


αブレンドについて検索していると"テクスチャ"に関しての頁がよく引っかかるのですが、
"テクスチャ"が出てくるということは3Dですよね?
2Dオンリーでいきたい場合でも、スプライトを作成して3Dのように作っていくものなんでしょうか?
描画するときに、 lpD3DDevice->StretchRect 関数を使っているのですが、
これはあまり見ません。
702ゼロ:04/09/02 18:24 ID:aGa7pwv+
703名前は開発中のものです。:04/09/02 20:15 ID:RLMoPQta
2Dのみでいく場合でもテクスチャを張ったポリゴンを描画するのが一般的です。

テクスチャ座標を持ったトランスフォーム済み・ライティング済み頂点(=2D+深度の頂点)を用意して、
DrawPrimitive(UP)などで描画します。
704名前は開発中のものです。:04/09/02 20:20 ID:u7CBECU0
ひょっとして描画ってlpD3DDevice->StretchRectでやってんのか。
それじゃ抜けるわけねーだろ。
705692:04/09/02 20:48 ID:Rip4iOsW
>>730,>>704
ありがとうございます。
根本的に間違ってたみたいですね。
3D表示のほうを勉強しなおしてきます。
706名前は開発中のものです。:04/09/03 03:29 ID:mQdBoXPi
スプライトの表示ができません。
起動して一度はフルスクリーンになるのですが、すぐに終了してしまいます。
色々調べたところ、132行目・150行目(lpD3DXSprite->Begin();・lpD3DXSprite->End();)に問題があるようです。
この2行をコメントアウトした場合、画像こそ表示されないものの、
勝手に終了することはありません。
スプライトの作成に失敗したのかとも思い調べてみましたが、
スプライトの作成には成功しているみたいです。
検索してサンプルソースと見比べても、特におかしいところもないみたいなのですが・・・
その他、読み込む画像の形式を変えてみたり(BMP,DDS)もしましたが、
解決しません。
コンパイルは通ります。
ttp://shiva.dip.jp/up/box/up3042.zip

どこが悪いのかわかりません。
分かる方よろしくお願いします。

環境は
DirectX SDK 9.0b
BCC5.5
です。
707名前は開発中のものです。:04/09/03 03:37 ID:D9hj8w5h
>706
VCでコンパイルしてみたけど動いたよ
環境としてグラボも書いたほうがいいと思う

あとVCでは以下をはずす必要があったけど
#define sqrtf(float)sqrt
#define atanf(float)atan
#define asinf(float)asin
#define acosf(float)acos
#define tanf(float)tan
#define sinf(float)sin
#define cosf(float)cos
708名前は開発中のものです。:04/09/03 04:19 ID:zHuFk72Z
DirectXサンプルを実行してみろよ
709名前は開発中のものです。:04/09/03 04:22 ID:mKkDrrPi
>>706
うちもBCCでコンパイルしたら動いたから、グラボの詳細も書いたほうがいいかも。
710706:04/09/03 12:57 ID:NP76qImc
>>707
それはBCCでコンパイルする際に書かなきゃいけないやつです。

>>708
・・・DXSDK\Samples\C++\Demos\Donuts4.exeは動作しませんでした。

>>707,>>709
グラフックボードの詳細です。
DirectX診断ツールで調べました。

 Card name:    ATI RAGE MOBILITY AGP (Japanese)
 Manufacturer:   ATI
 Chip type:     ATI RAGE Mobility P/M AGP 2X (A21/2)
 DAC type:     ATI Internal DAC
 Device Key:    Enum\PCI\VEN_1002&DEV_4C4D&SUBSYS_112A10CF&REV_64
 Display Memory: 4.0 MB
 Current Mode:  1024 x 768 (16 bit) (60Hz)
 Monitor:      ( Monitor Max Res:
711名前は開発中のものです。:04/09/03 16:02 ID:D9hj8w5h
>710
>Chip type:     ATI RAGE Mobility P/M AGP 2X (A21/2)
>Display Memory: 4.0 MB
なんか非常に怪しいですね
モバイル関係はよく知りませんがDirectX9未対応なのでは?
DirectX8でも(特にシェーダとか)微妙なんじゃないでしょうか?

ノートなんですかね
ノートは基本的に3Dには向かないと思います
712名前は開発中のものです。:04/09/03 16:42 ID:VHIOAUu5
ATI RAGE「D3D? ガーハッハ、無理言っちゃいけねえなボーズ」
713名前は開発中のものです。:04/09/03 16:53 ID:m4KK640w
最近DirectX勉強し始め、
ポリゴンの三角形を表示できるようにはなったのですが、
分からなかったことがあるので、質問させてください。

「表示した三角形の"頂点一つ"を(カーソル等で)動かす」のような処理は
どうすれば出来るのでしょうか?

ポリゴン自体を書き直すか、
VertexShaderを使うしかないのでしょうか・・・?
714名前は開発中のものです。:04/09/03 16:54 ID:KBFEjnb4
VertexShader「表示した三角形の"頂点一つ"を(カーソル等で)動かす? ガーハッハ、無理言っちゃいけねえなボーズ」
715名前は開発中のものです。:04/09/03 17:02 ID:+shE9lEk
>>713
ロックするかシェーダー使って動かすだけ。
716名前は開発中のものです。:04/09/03 17:02 ID:hc6Qu0Tn
>713
VertexBufferいぢれ
717名前は開発中のものです。:04/09/03 17:10 ID:m4KK640w
>>714,>>715,>>716
レスサンクスです。
718名前は開発中のものです。:04/09/03 17:27 ID:UnJ5gJIj
シェーダーってなんですか?
719名前は開発中のものです。:04/09/03 17:28 ID:nqcp3fv5
  ∧⊂ヽ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  (゚Д゚)ノ <  シェーダ
  | ⊃|   \__________
  |  |
  ⊂ノ〜
  ∪
720名前は開発中のものです。:04/09/03 17:34 ID:8jbSe5Fl
影男
721706:04/09/03 17:54 ID:Nns2Tjlt
>>711
はい、ノートです。

どこが怪しいのでしょうか?
グラフィックカード自体分からないので、これが何なのかよく分かりません。
俺以外の人がコンパイルしてうまくいくということは、俺のグラフィックカードが問題なんでしょうか?

DirectX診断ツールの、ディスプレイのところの、
「Direct3Dのテスト」というやつをやってみたのですが、
Direct3D7、Direct3D8、Direct3D9のテストは全て成功しました。

結局俺はどうすればいいのでしょうか?
722名前は開発中のものです。:04/09/03 18:39 ID:D9hj8w5h
>721
DirectX UtilitiesのDirectX Caps ViewerでHALの機能をチェックすれば多分未対応の機能が特定できるはずなんだが
よくわかってないと、何がなんだかわからないかも
まずDirectX9の開発や学習を行うならDirectX9対応のグラボが必要
まずは対応グラボから調べてみましょう
そして対応グラボを積んだマシンを組みましょう
今ならDirectX9対応PCでも5〜6万で組めるはず
で、どうしてもお金がないというならLPD3DXSPRITEつかうのやめて自力でポリゴン使ってみてください
723名前は開発中のものです。:04/09/03 22:45 ID:qaGI/40e
>>721
てか、そのグラボDirectX6までしか対応してないし。
724706:04/09/04 00:06 ID:+XRuHJsS
>>722,>>723
ありがとうございます。
グラフィックカードを調べてみます。
725名前は開発中のものです。:04/09/04 18:41 ID:vHiVY+yT
漏れのノートはIGP340Mだが、
ピクセルシェーダを使ったプログラムはまったく映らんな。
バーテックスシェーダの方は普通に映るが。
ピクセルシェーダはソフトウェアエミュレーションはまったくダメポ?
DirectX8 SDKベースだからかもしれないが。
726706:04/09/04 20:17 ID:cci5DIFE
あ、ちょっとまってください、重要なことに気づきました。
ソースを組んでみるあたって、配布されていたサンプルを参考にしたのですが、
そのサンプルに添付されていたサンプルの実行ファイルは正常に動作します。
どういうことなんでしょうか?
俺のグラフィックカードがDirectX9に対応してないことは分かったのですが、
動くものと動かないものがあるのはこれはどういうことでしょうか?
まだ練習段階なので、そのサンプルで使われていない関数とかは使ってないはずなんですが・・・

参考にしたのは、ここの「Direct3DXを使った2Dの描画」というサンプルです。
ttp://www.geocities.jp/toru_website/sample/index.html#dxg
727名前は開発中のものです。:04/09/04 21:13 ID:OKPz2Xkg
>>725
IGP340MはVS11のみ対応。
ノート用にしてはまずまずの性能だが、
固定パイプラインでテクスチャフェチ同時可能数3がキツイ。

>>706
つーか基本中の基本
デバックモードにして出力メッセージ確認はやったのか?
あとID3DXSpriteはDirectX9.0cで仕様が変わったから
そっちに変更してみたら?
まあどうせGPUの限界が原因だろうから意味は薄いだろうが。
728名前は開発中のものです。:04/09/04 23:32 ID:YrqQlDJp
SDK Update (Summer 2004)をインストールしたら
vs.netのDirectXウィザードで作られたアプリがビルドできなくなった。

名前空間がないとかどうたら言われて・・・
729名前は開発中のものです。:04/09/04 23:51 ID:TzAUQGCx
>>728
俺はできるからいいよw
730名前は開発中のものです。:04/09/05 02:05 ID:hJdI6Df1
タイトル画像を表示するために、
ポリゴンを640x480で作ってそれにテクスチャ(640x480)を貼って表示したんですが、
ただ一枚の画像を表示しただけなのに少し重くなりました。
directxを使った方法でこれより軽い方法ってあるのでしょうか?
731名前は開発中のものです。:04/09/05 02:11 ID:8dhLI02S
640x480は内部で1024x1024として作られるから小さいのを継ぎ接ぎにすると多少パフォーマンスがあがるかも。
ただの一枚でも64x64と512x512とでは全然違う。
732名前は開発中のものです。:04/09/05 02:44 ID:3KHpp+4T
>>730
フィルレート
733名前は開発中のものです。:04/09/05 03:09 ID:tTlwq+YH
単純なコピーができればいいだけなら、
2の累乗に縛られるテクスチャじゃなくて、単なるSurfaceで済ます事も出来無くないが。
734名前は開発中のものです。:04/09/05 04:20 ID:pC/wep5Y
>>732
>>733
どういうことなのでしょうか?詳しく教えてくだせえ。

やっぱりGDIでタイトルを描画するのはおかしいですか?
これだとGDI→DirectXの描画はできても、
DirectX→GDIはできないんですかね?
DirectXのClear()じゃ、指定した色で塗りつぶすだけだから、
DirectXの描画すべてをクリアすることはできないんですよね?
735名前は開発中のものです。:04/09/05 05:23 ID:Fc3G1uKT
タイトルバー付きの一般的なウィンドウでDirectGraphics使う時に
タイトルバーをドラッグしたり、右クリックしてコンテキストメニュー出したら
描画が止まっちゃうのって、どうやって回避すればいいんでしょうか?

最初ウィンドウのメッセージループで描画処理してたので
「そりゃ止まるだろ」と思って描画は別スレッドでするようにしたんですけど
やっぱりタイトルバーをドラッグすると描画が止まります
736名前は開発中のものです。:04/09/05 05:33 ID:FYW/iZdZ
描画だけ別スレッドにしても止まるのは変わらないと思われ
737名前は開発中のものです。:04/09/05 06:05 ID:Fc3G1uKT
>>736
描画だけのフレームワークなので、描画のチェックは
Clearの色を適当に変えてただけなんです・・・けど、
その適当に変わる値を何も考えずにメインスレッドから取ってましたw

言ってる意味はわかるけどまだその部分つくってねーしとか思ったんだけど
よくよく考えてみたら言われたとおりの症状だったという

どうもお騒がせ致しました
738名前は開発中のものです。:04/09/05 20:09 ID:LNnO5mBK
ところでDirect3Dでは四角以上の多角形ポリゴンは直接扱えないの?
TriangleStripを使うべき?
739名前は開発中のものです。:04/09/05 23:24 ID:nFAyJf81
>ところで
何がどころでか意味分からん。

>Direct3Dでは四角以上の多角形ポリゴンは直接扱えないの?
扱えない。

>TriangleStripを使うべき?
状況による。
740名前は開発中のものです。:04/09/06 00:30 ID:R0ZILSWw
まぁそのとおりだな
741706:04/09/06 18:43 ID:V8QjG5yQ
>>727
すいません・・・よく分かりません・・・

ところで

   ■ビデオボード
         Direct3Dに対応していること
         8MB以上のVideoRAM推奨
   ■その他
         DirectX8.0以上

と書かれたDirect3Dで3D使いまくり、DirectShowでAVI流しまくりの市販のゲームが正常に動作するのですが、
これはDirectX8で作れば俺のPCでも動くことを意味していますか?
742名前は開発中のものです。:04/09/06 19:07 ID:VOwrNc7g
>>741
いいえ
743名前は開発中のものです。:04/09/06 19:17 ID:/1KZ5ffN
>>741
>これはDirectX8で作れば俺のPCでも動くことを意味していますか?
マジレスすれば「わからない」
正確にいえば、プログラムとあなたのPCのグラボ(及びドライバ)との相性次第。

わかりやすく言うと
 たとえば頂点シェーダを使おうというプログラムを動かす。
 ・グラボが対応した機能を持っている場合ハードウェアでその処理を行う(HAL)
 ・持っていない場合、ドライバが代替処理を行う(HEL)
 ・代替処理すら行えずに、失敗した旨だけをプログラムに返す場合もある
   :失敗が返ってきたらどうするか、の処理をプログラムが行う
    続行不可と判断したらそこで落とすかもしれないし、なにか別の処理で誤魔化すかもしれない
   :プログラムがそのへんきちんと対処してない場合
    落ちたり凍ったり、最悪そのまま無視して進んだりする

あなたのグラボが「何が出来て何が出来ないか」に対し
プログラム側は「出来ない場合どうするのか」に神経を配る必要がある。
744706:04/09/06 22:51 ID:V8QjG5yQ
ありがとうございます。
難しいですね・・・

DirectXSDKの別のバージョンを入れてみようと思うのですが、
Directx8.0aとDirectX9.0cならどちらがいいでしょうか?

OSはWindowsXPHomeです。
745名前は開発中のものです。:04/09/06 23:42 ID:WEaSKQOC
>Directx8.0aとDirectX9.0cならどちらがいいでしょうか?
状況による。
746名前は開発中のものです。:04/09/07 00:21 ID:S4jjegxl
互換があるから最新の入れとけば済むはなしだろ
747706:04/09/07 03:40 ID:5msrndUr
>>745,>>746
状況は・・・
>>721-723みたいな状況なんです。
748名前は開発中のものです。:04/09/07 05:49 ID:v4ArB185
だからなんでも人に聞くなって
SDKが怪しいと思うなら換えてみて自分で確認すれば済むでしょ。
DIRECT3D_VERSIONはちゃんと指定するように

ただ、コンパイラが通らないならともかく実行時におかしいなら
SDKの問題である可能性はかなり低いのでは?

ソースは読んでナイけど
dxinfo (ttp://www.netsphere.jp/dxinfo/)で確認してみたら
該当するグラボは、サポートしてる機能がかなり少なめなので
サポートしていない機能をどっかで使っているんじゃないすか?
あと、ドライバは当然最新の物を使ってますよね?
749706:04/09/07 12:02 ID:TBCKv50G
>>748
ありがとうございます。
それじゃ実際に換えて試してみます。
とりあえずDLだけで20時間以上かかるので、すぐには試せませんがw

SDKの問題ではなくグラフィックカードのほうが問題のようです。
それで、他のバージョンのSDKなら俺のグラフィックカードでも大丈夫かなと思いまして。

ドライバは最新のものを入れてます。
750名前は開発中のものです。:04/09/07 13:48 ID:4Njek968
スレチガイかも知れないけどdirectXとopengl使わないで
ビデオカード使うにはどうやればいいの?
751名前は開発中のものです。:04/09/07 14:22 ID:zH/qJkXJ
今こそglideを使うときですよ。
752名前は開発中のものです。:04/09/07 15:14 ID:IilOrdDt
WinG
753名前は開発中のものです。:04/09/07 18:23 ID:aTZU5RUu
>>706
つうかリファレンスラスタライザでいいじゃん。
俺もノートだけどピクセルシェーダ使えないから
リファレンスラスタライザで開発してる。
754名前は開発中のものです。:04/09/07 19:51 ID:tgI+eKEd
オレもノート買いたいんだけど、シェーダー開発するのに
グーなGPU搭載ノートパソコンはなに?
755706:04/09/07 19:59 ID:38FrSDaD
>>753
リファレンスラスタライザ使ってみましたが変わりません。
やっぱりグラフィックボードが駄目みたいです。

#DirectX9.0cSDKは4%ダウソ完了。
756名前は開発中のものです。:04/09/07 20:47 ID:aTZU5RUu
>>755
リファレンスラスタライザはそういう
ハードが原因の出来る出来ない問題を解消する為にあるんだぞ。
そんな訳あるかいな。
DXのコンパネ開いて、リリースビルドからデバックビルドに変更、
メッセージレベルも最高にして、デバッカから問題のアプリを起動させて
出力メッセージをコピペしろ。
757名前は開発中のものです。:04/09/07 20:58 ID:aTZU5RUu
>>754
MOBILITY RADEON 9700が載ったノートが割安みたいだな。
ワンランク落としてPS1.x対応のモデルでも良いかもしれんが
お勧めはしない。
758名前は開発中のものです。:04/09/07 21:55 ID:mO8jfU22
9c SDKでとうとうVC6捨てられたみたいね。
759754:04/09/08 01:30 ID:7mDX3neD
>>757
ありがとう。NVIDIAのよりいいかな? うちのデスクトップRadeon入れているんだけど、この2年間,ドライバーのバグ具合にホント悩まされたんで、ATIのは2度と買わないって誓っちゃったんだよな。
まぁ、ノートだと選択の余地が無いからしかたないけど。
760名前は開発中のものです。:04/09/08 11:30 ID:+1JPiLMx
http://kettya.com/notebook/sony/s90.htm
これ買っとけ。

つーかRADEON 9700選べるの知らずに、店頭のRADEON 9200版買っちまった俺。_| ̄|○
まあ、それなりに満足なんだけどさ。
761名前は開発中のものです。:04/09/08 11:31 ID:+1JPiLMx
あ、ちなみにそろそろノートPCは新モデルの時期だから、
新しいの買うにせよ型落ち品買うにせよ慎重にね。
762名前は開発中のものです。:04/09/08 11:34 ID:ynCgLjJ8
>>759
ATIのドライバは今でも地雷だらけだよ。
ドライバを更新したいときは一度ハードウェア板いって人柱(笑)の出現を待ったほうがいい。
自分のもってるグラボと同じ人の報告が上がるまでドライバの更新はしないほうがいい。
アンインストールしても直らない場合が結構ある。(レジストリやらなんか設定色々いじらんと直らないし)

#ハードウェア板ではドライバはnVidiaの方が上ってことで既出になってる。
#でもnVidiaってねぇ〜w
763名前は開発中のものです。:04/09/08 11:46 ID:cVJ+TfVR
やっぱ本命は3dfxかな。
フルスクリーンオンリー萌え!
16bitカラーオンリー萌え!
カード馬鹿でかメモリ無駄使い萌え!
単なる2DライブラリGlide萌え!
764名前は開発中のものです。:04/09/08 13:37 ID:3fx3Gv2j
765706:04/09/08 14:26 ID:3qmea7dT
>>756
あ、なるほど、
リファレンスラスタライザってそのためにあるんですか。

えっと・・・自分で調べてリファレンスラスタライザにしたんですが・・・
リファレンスラスタライザにするときは、
CreateDeviceの第二引数を D3DDEVTYPE_REF にするだけでいいんですよね?
766名前は開発中のものです。:04/09/08 16:45 ID:tD94+aR+
>>762
2chの情報なんか信じられるかよ
767名前は開発中のものです。:04/09/08 17:28 ID:P9Md9loJ
>>710

#ifdef __BORLANDC__
#endif
で囲いなよ・・・
768名前は開発中のものです。:04/09/08 21:03 ID:fGcWcoM/
>>767
もしくは、プロジェクト編集→コンパイル3のコンパイル条件に突っ込む
769706:04/09/09 00:19 ID:tIm82McJ
>>767
囲むのって正弦とか余弦のやつですよね?
囲ったらコンパイルが通らなくなりました。
未定義の関数 'sqrtf' を呼び出したとかで。
囲ったらその部分が処理されない・・・?みたいです。
770名前は開発中のものです。:04/09/09 01:06 ID:dPv86f8i
>769
#include <math.h>
771名前は開発中のものです。:04/09/09 01:15 ID:dPv86f8i
>769,770
あ、よく読まずにカキコした、スマソ
おわびに
ttp://www.ksky.ne.jp/~seahorse/cpp/swtcomp.html
772名前は開発中のものです。:04/09/09 01:32 ID:3rMKjg5I
>>762って、きっと、偉そうなこと言っときながら、GUIなPCしか触ったことないんでしょうね。
DOS時代を知らないんだな、こういう香具師。

773名前は開発中のものです。:04/09/09 01:56 ID:06xWR5oW
>>772
つか、>>762に「偉そうな」部分が見つからないw
774名前は開発中のものです。:04/09/09 02:37 ID:KDPOt7JK
DirectSound?で流せる音の形式は当然waveは流せますが
それ以外は?
775名前は開発中のものです。:04/09/09 02:51 ID:OnxOmSs6
>774
自前でwaveに変換
776名前は開発中のものです。:04/09/09 07:37 ID:cGEf10iB
>>774
MP3やWMAを使いたいのなら
一度DirectMusicで読んでバイパスして展開された音データを
DirectSoundに渡せばオッケ
777>>634:04/09/09 14:50 ID:mXzcMaUe
>>639
だったらコンビニで商品の場所を聞くときも 道に迷って人に聞くときも
名前名乗ってるんだな?そういうことなら失礼致しました
778名前は開発中のものです。:04/09/09 18:49 ID:F9ALyqV9
亀レス御免で披露するような屁理屈じゃないな。
そういうのは8月いっぱいで卒業しなよボク。
779名前は開発中のものです。:04/09/09 18:52 ID:MjAb849f
いつ入学したんだ?
780名前は開発中のものです。:04/09/10 00:13 ID:ueZkTtaG
プログラミングを始めたとき
781名前は開発中のものです。:04/09/10 08:46 ID:YaDoUbqe
生理を始めたとき
782754:04/09/10 21:42:11 ID:HDS3fr6r
>>760-762
サンクス。
9700なら、Shader ver2.0とかいけるし、買うなら9700
搭載機かなやっぱ。9200でもいいけど。
正直、geForce 5200でもいい。ただ、15インチ液晶が欲しい。


783名前は開発中のものです。:04/09/11 23:33:53 ID:YaqHjAYz
どうなってやがんだ!スプライト機能は!!
ヘルプ見てもBegin()は引数なし、Draw()は7つの引数のはずなのに!
おかしいと思って「LPD3DXSPRITE」でSDKファイル全体を検索。
そしたら、どうやらBegin()は引数1つ、Draw()は5つになってやがる!
英語のヘルプには載ってるようだが、ちゃんと日本語にも対応させろ!!コルァァ!
784名前は開発中のものです。:04/09/11 23:49:05 ID:N8QPb6ps
やたら古い話題で一人で騒いでんじゃねえよよチンカスが。
785名前は開発中のものです。:04/09/12 00:21:05 ID:yUax/xnE
そもそも無能な人間ほど不必要なD3DXSPRITEを使うから仕方がない。
786名前は開発中のものです。:04/09/12 01:11:24 ID:wqSEFWNT
>>785
ほんと謎だよな。
お世辞にも使いやすいとはいえない糞機能をどうして使うんだろうな。
モデル読み込んだほうが100倍早いよ。
Xファイルのフォーマット知ってりゃテキストファイルでちょちょっと書けば
テクスチャと色とαの指定までできて、且つ、モデルの表示と全く同じルーチンでできるのになw

ゲームが完成しねぇ奴ってのはきっとこういう無駄なことを延々とやり続ける奴なんだろうなw
787名前は開発中のものです。:04/09/12 01:17:38 ID:qwuzmzUh
>786
いや、モデルを読み込むほどのものでもないと思うが…
788名前は開発中のものです。:04/09/12 01:35:12 ID:wqSEFWNT
>>787
なんで?
Xファイルで頂点4つのモデル読み込んで表示した方が100倍楽だよ絶対に。
応用も効くし。
789名前は開発中のものです。:04/09/12 01:35:27 ID:QfJR2Y+w
>>787
外部からデータを指定したいにしろ、テクスチャ管理や、
アニメーション制御とか考えると、Xファイルが特別便利ってわけじゃないしなぁ

「こういう無駄なこと」が、自分の上の文のことだったらスマソ
790名前は開発中のものです。:04/09/12 01:35:54 ID:QfJR2Y+w
およ
791名前は開発中のものです。:04/09/12 02:40:07 ID:lXQiw8cJ
ぐっすんおよ○
792名前は開発中のものです。:04/09/12 02:53:20 ID:m1DndJP/
三枝兄さんキタ━━━━━━(゚∀゚)━━━━━━ !!
793名前は開発中のものです。:04/09/12 09:50:42 ID:wqSEFWNT
>>789
なにいってんだ?
D3DXのスプライト機能なんて使うぐらいなら、Xファイル読み込んだ方が楽っていってるんだぞ。
わかってる?
794名前は開発中のものです。:04/09/12 10:57:33 ID:gyVnMhXL
>>793
ちなみにどんなxファイルを書けばいいの?
795名前は開発中のものです。:04/09/12 13:30:31 ID:yUax/xnE
単純なテクスチャの表示なら、Xファイルとしてデータを用意するより、
普通に4点指定した方が楽だと思うが。
796名前は開発中のものです。:04/09/12 13:40:03 ID:avrIfiuN
一番処理が軽いのはどれ?
4点指定?Xファイル?スプライト?
797名前は開発中のものです。:04/09/12 13:50:06 ID:zDKDGCSf
そりゃ四点指定だろ
798名前は開発中のものです。:04/09/12 13:58:04 ID:yUax/xnE
そもそもレンダリング時の最終形態が一つしかないのに、
そういう疑問をもてること自体が疑問なんだが。
799名前は開発中のものです。:04/09/12 14:05:03 ID:QQ73P6UC
Xファイルだろうとスプライトだろうと
最後は同じパスを通るってのになぁ
そんな基本中の基本すら知らないのか
800名前は開発中のものです。:04/09/12 14:26:03 ID:S7MAc6im
読み取りや解析のオーバーヘッドとか些細な事言っていいですか?
801名前は開発中のものです。:04/09/12 14:30:11 ID:yUax/xnE
>>800
みんな同じという意味ではなく、どれが一番早いか明白だという意味。
分かっていればそういう解釈にはならないはずだが。
802名前は開発中のものです。:04/09/12 15:04:28 ID:S7MAc6im
Xファイルのローディングなんかは通常無視できるほど小さいものだから、
それを無視した上で「どれを採用しても同じ」と言っている風に解釈したけど何か問題が?
803名前は開発中のものです。:04/09/12 15:06:47 ID:qwuzmzUh
まだC++に慣れて間もない人は自分でスプライトクラスとテクスチャ管理クラスを自作してもいいんじゃないかな
てゆーか慣れてない人ほど勉強がてら作ってみれ
class CMySprite
{
public:
CMySprite();
~CMySprite();
void SetRect( const RECT* rect );
void SetColor( D3DCOLOR color );
void SetVertexColor( const D3DCOLOR* color_list
);
void SetTexture( LPDIRECT3DTEXTURE9 pTexture );
void Draw( LPDIRECT3DDEVICE9 pDevice );
private:
// 略
};
たとえばこんなの
804名前は開発中のものです。:04/09/12 15:28:55 ID:yUax/xnE
>>802
>Xファイルのローディングなんかは通常無視できるほど小さいものだから、
そもそも描画の時の話をしているのに、なぜファイルの読み込みの話になっているのか。
さらにXファイルを前提にすると、
階層構造や複数のメッシュを持ったデータをレンダリングする為のロジックを経由するため、
必要もないのに無駄な場所に処理が渡されることになる。
そして余分な処理が入って遅くなるんだが、
少なくともそれが分かっていれば、そういう頓珍漢な解釈はしない。
805799:04/09/12 15:36:34 ID:QQ73P6UC
あーひょっとして誤解されたのか。俺の言いたいことは>>798と全く同じ。
どんな描画命令も最後はdraw*Primitive*()を通るので
最も経路の短い無駄の少ないものが最速なのは自明、という意味で書いたんだが
806名前は開発中のものです。:04/09/12 16:57:14 ID:sHCmsVRR
自分で検証させたほうが早くない?
807706:04/09/12 21:17:30 ID:nJj5t+0R
>>756
DirectXのコントロールパネルはやっと見つけたのですが、
デバッガから起動するというのが分かりません。

DXErr.exeかと思ったのですが、違うみたいなんです。
808名前は開発中のものです。:04/09/12 21:30:17 ID:DetVe4DR
>>807
ランタイムをDebugにしてビルドもDebugにし、普通に実行すればいいのですよ。
809名前は開発中のものです。:04/09/12 23:50:11 ID:CED5JmUP
D3DXSpriteにこだわってる人って、3Dに興味なくて
半透明とか回転が使いたいがためにDirect3D使って
いるだけの人なんでは?
「Xファイルのほうが楽ジャン」ってのは3D前提で、
既にXファイルの再生機構をもっている人の言い分かと。
810名前は開発中のものです。:04/09/12 23:59:19 ID:jyaEYU0o
Xファイル読み込んでテクスチャ張るなんて数行じゃねえか(#゚∀゚)
811名前は開発中のものです。:04/09/13 00:02:38 ID:TlpvMxVt
>>809
いや、チュートリアルにXファイルをロードして表示するまでが載ってるでしょ?(たしか)
812名前は開発中のものです。:04/09/13 00:12:09 ID:v+ptV+iV
つうか2Dなら尚更直に頂点垂れ流した方が手っ取り早いし処理も速いじゃねぇか
何故スプライトの話でXファイルが出てくる?なんなんだ、この話の流れは
813名前は開発中のものです。:04/09/13 00:13:39 ID:uLai0mQw
なんでスプライトなんかにわざわざXファイルを…
そのまま画像ファイル指定すればいいのに

偏見だが、英数字を全角で書く奴言うことは…
814名前は開発中のものです。:04/09/13 00:41:21 ID:TlpvMxVt
>>812
ファイルから大きさも指定できるし、色やαも指定できるし
いいところばっかじゃねぇかよ!
815名前は開発中のものです。:04/09/13 07:28:00 ID:YOHVMnQq
>>814
Direct3Dを使えばそういう利点があるのは理解できる。
が、板一枚を扱うのにXフォーマットは大げさなのでは?ってことっしょ?
まあ、往年の家庭用ゲーム機みたく、小さなチップの組み合わせで絵を組み立てたいとか、
プログラムレスで多関節を組み立てたいとか、そういう用途に使えなくもないがな。
816名前は開発中のものです。:04/09/13 10:44:33 ID:TlpvMxVt
>>815
>が、板一枚を扱うのにXフォーマットは大げさなのでは?ってことっしょ?
大げさも何もXファイル使う方が楽だろ。
応用も効くし。
別に板1枚じゃなくたって、モデリングツール(メタセコイアダウンロードしる!)があれば
ゲーム中のウィンドウの配置すべて設定しておくとかって使い道だってできるぞ。

これが何言ってるのかわからなかったり、便利だと思わない奴はただのアホだと思うよw
817名前は開発中のものです。:04/09/13 11:12:41 ID:4vmv6GkS
>>816
おまい暇そうだな。
無職か?。
818名前は開発中のものです。:04/09/13 11:16:21 ID:AYqOMcJ4
>>816
俺はアホだからそうは思わないな。
819名前は開発中のものです。:04/09/13 11:22:32 ID:je0jue7D
Xファイルでいちいち指定しなければならないのが面倒なのと、
その程度なら自前で実装しても手間が変わらないし、
動的なものなら逆に手間が増える。
820名前は開発中のものです。:04/09/13 12:04:54 ID:Vs/BVxTj
人生色々
実装もイロイロ
821名前は開発中のものです。:04/09/13 12:09:29 ID:fFRHpx8A
多分816はコーディングが面倒な人間なんだよ、うん。
822名前は開発中のものです。:04/09/13 12:28:38 ID:/VFKuqXc
スプライトに関することで申し訳ありませんが、
D3DXMatrixTransformation2D の ScalingCenter の値を変えても
変化が無いような気がするのですがどうなんでしょう。
823名前は開発中のものです。:04/09/13 12:31:13 ID:v+ptV+iV
俺はただのアホなのか
まぁ、>>816頑張れ、と一言だけ
824名前は開発中のものです。:04/09/13 13:18:28 ID:+/xo+NQ9
漏れもただのアホ ノ
825名前は開発中のものです。:04/09/13 13:31:35 ID:TlpvMxVt
>>823-824
えぇぇぇぇぇ?
なんで?
ステータス画面なんかの絵の配置とか自分でやるの面倒じゃねーかよ。
Xファイルでやればその辺分離できるじゃん?
色やαだって設定できるのに。
2Dだったらその辺の糞なマップツールより使い勝手いいっつの。
プログラム側でいじりたいときだって、値受け取るだけだぞ。
わからん。俺にはお前等が全くわからん。
826名前は開発中のものです。:04/09/13 14:21:07 ID:je0jue7D
α値などは後から動的に変更するように作るので、
Xファイルを経由すると作りにくくなるだけ。
それとステータスなども必要に応じてサイズを可変にするので、
Xファイルの存在価値はない。
そのまま使うとかなり不便で限られた用途になってしまうし、
カスタマイズするのなら、使わない方が遙かに楽。
827名前は開発中のものです。:04/09/13 16:29:37 ID:Yz5y8kK8
まあXFileはカスタマイズ前提なんで
自分でオリジナルフォーマット使おうが
XFile使おうが大して差は出ないんでねえの?
XFileはバイナリフォーマットも楽に扱えるし悪く無し。
828名前は開発中のものです。:04/09/13 17:57:21 ID:C8xrjWw1
モルダー スカリー
829706:04/09/13 18:09:53 ID:uDZ+3Rel
>>808
すいません、デバッグビルドというのが分かりません。

_DEBUGを定義しておいて、
コパイル時のコマンドライン引数に-vと-yをつければ
*.tdsファイルにデバッグ情報が出力されるとのことなのですが、
tdsファイル自体開けませんよね?
実行しても新しいファイルはできないみたいですし。
DirectXのコントロールパネルの設定は、>>756氏に言われた通りにしました。

あと、関係あるかどうか分からないのですが、
さっきDXDIAGを見てみたら、
3Dのところに問題があると出て、3Dの回避をするか否か選択するダイアログが出ました。
回避すると、3Dのチェックをするボタンが使用不可になっており、
回避しないとその場で強制終了します。
2・3日前まではこんなことはなかったのですが・・・
830名前は開発中のものです。:04/09/13 19:29:48 ID:5/0W8ysj
>829
706さん、どうにかしてVCを買いましょう
VCのデバッガは便利です
今のあなたの状況だとデバッガがないとしんどいでしょう

706さんのように初心者はbccよりVCでやることをおすすめしますよ
いや、ある程度経験をつめばbccでも対処できるとは思いますが
まったくの初心者にそれを求めるのは無理ですからね

VC.NETは1万ちょっとの出費です
学生ならアカデミックでさらに安く購入できるはずです

「そんな金だせねーよ」という人もいるでしょう
706さんの場合はDirectX7あたりでの開発が無難でしょうか?
DirectX9SDKであってもVERSIONを指定することで9以前のバージョンの開発が可能のはずです
ちなみに私も昔は貧乏学生でしたので自分の環境でできる精一杯のことを工夫してやっていました(DirectDrawで3Dとか)
706さんもこれでめげずに、なんとか続けてくださいね
831名前は開発中のものです。:04/09/13 19:34:28 ID:vV5a5ZT8
でも向いてない事をいつまでも続けるより
別な事をはじめたほうがいい事有るかもよ
832名前は開発中のものです。:04/09/13 19:39:22 ID:C8xrjWw1
VCは買わなくてもコンパイラーはただで使えるよ
MSのデバッガーもただでつかえるよ
833名前は開発中のものです。:04/09/13 19:57:17 ID:f51K+1Hu
>>831
Direct3D7は歴代最強の難易度だと思ふ。

>>832
俺ほどの豪の者ですらMSタダデバッカには太刀打ちできなかった。無理だと思ふ。
834名前は開発中のものです。:04/09/13 20:37:55 ID:je0jue7D
「弘法筆を選ばず」というのは大嘘。
その道に長けた人ほど、洗練された道具を持っている。
必要な物ぐらい金を出して買うべき。
835名前は開発中のものです。:04/09/13 20:39:26 ID:5/0W8ysj
まぁ最新グラボを積んだマシンを組んでVC買うのが早道なのは確かだけど
貧乏学生だったらそれは無理だからねー
簡単に諦めるより、何かしら方法を模索していくのも人生かとw
836名前は開発中のものです。:04/09/13 21:24:18 ID:vV5a5ZT8
趣味レベルなら5,000円ぐらいのボード+フリーのVCでも十分でしょ。
>706のATI RAGE Mobilityが3Dやるのに向いてないだけ。
>706自身もプログラマに向いてないけど。
837名前は開発中のものです。:04/09/13 21:57:39 ID:G1SPhSRm
>>834
弘法筆を選ばずはそうゆう意味じゃなくて
弘法は良い筆も持ってるけど悪い筆でも上手く書けるって
意味なの
意味も分かってなくて大嘘というお前が大嘘
838名前は開発中のものです。:04/09/13 22:18:25 ID:je0jue7D
悪い筆でもうまく書けるという意味があるのは否定していない。
しかし良い筆を持つのは、良い筆の方がうまく書けるから。
結局は道具を選んでいるわけで、筆を選ばないというのは嘘になる。
その程度のことも理解できない能無しが何を吠えているんだか。
839名前は開発中のものです。:04/09/13 22:22:11 ID:TlpvMxVt
>>837
いや、ちがうと思う。
意味は「弘法大師は、筆の善し悪しにかかわらず見事に書く。名人の腕は、道具や材料によって左右されないというたとえ。」
ってあるから、これは「どんな筆を使っても最高の出来に仕上げる」って意味だから
「良い筆ももってるけど」って意味は無い。
「選ばず」(左右されない)ってんだから、関係ないって意味でしょ。やっぱ。
840名前は開発中のものです。:04/09/13 22:25:21 ID:AtUKJNOV
私は弘法じゃないので、良い筆で書く。

買えませんが orz
841名前は開発中のものです。:04/09/13 22:29:06 ID:5/0W8ysj
筆だの筆おろしだのどうでもいいが
706なんかは名人ではないのは確か
名人目指してがんがってくれ
ということは、やっぱりそれなりの筆が必要ってことなんだけどなー
842名前は開発中のものです。:04/09/13 22:29:58 ID:G1SPhSRm
>>838
弘法筆を選ばず野意味はどんな筆でも上手く掛けるが
良い筆で書くと相対的に悪い筆よりうまく書けるといいたいわけ?
そんなのただの屁理屈で説明になってないよ

>>879
なにいってんの?
弘法が良い筆もってなかったわけ無いだろ
843名前は開発中のものです。:04/09/13 22:35:29 ID:G1SPhSRm
弘法筆を選ばずの意味は
下手な人が筆のよさの量だけ上手さがアップしても
人の能力はアップしないって意味で
弘法は習字の能力がマックスになってて筆を変えてもそれ以上上には行かない
って意味
このスレで弘法筆を選ばずの場合は、VCネットを買うと全体の能力は上がるが
能力は上がらないって意味だな
844名前は開発中のものです。:04/09/13 22:43:53 ID:je0jue7D
>>842
論破されると屁理屈とか言い出した上、頭に血がのぼってポイント先を間違える。
見苦しいことこの上ない。
どんなに能力の高い人間でも、状況が許すのなら結局は道具は選ぶ。
845名前は開発中のものです。:04/09/13 22:49:24 ID:G1SPhSRm
>>844
あのさー
お前ポイント間違えてるよ
弘法筆を選ばずを無理にプログラミングに結び付けようとしてるみたい
だからわざわざ付き合ってやったんだけど
俺は書道のことをゆってて弘法筆を選ばずがプログラミング関係があるように
思い込んで大嘘とかいってるのお前の妄想だろ
弘法はプログラミングするのか?アホ
死んで来い
846名前は開発中のものです。:04/09/13 22:54:34 ID:G1SPhSRm
上手いプログラマーが別の世界の弘法と上手さが
同じくらいの上手さと勝手に決め付けてるみたいだけど
弘法の上手さは今のプログラマーでは海外のすごいプログラマーだと
思うなそうゆう人は道具を選ばないんだよ
君は自分がプログラミング界の弘法レベルと思って自惚れてるから
自分が道具を選ぶから大嘘だとか思っちゃったんだろうね
これが本音でしょう
847名前は開発中のものです。:04/09/13 22:58:56 ID:G1SPhSRm
弘法が筆を選ばずってことわざが嘘だったら
辞書にこれは嘘ですって書いてあるはずだろ
書いてないから嘘じゃない
論理的に考えることを覚えたほうがいいよ
848名前は開発中のものです。:04/09/13 23:04:39 ID:dIkG9cCz
結論:弘法大師は偉い
849名前は開発中のものです。:04/09/13 23:05:15 ID:TlpvMxVt
>G1SPhSRm
( ´,_ゝ`)間違えたなら、「間違えました」って言えよw
850名前は開発中のものです。:04/09/13 23:06:51 ID:je0jue7D
ことわざがその言葉で表されている特定の状況下でしか使えなかったら、
あらゆる例えが無効になってしまうわけなんだが。
逃げ回るにしてももう少しましな論法を選ぶべき。
比喩とか例えは、言葉通りの状況でないと使えないのか?

>弘法の上手さは今のプログラマーでは海外のすごいプログラマーだと
カイガイノスゴイプログラマー
ここは笑うところですか?

>辞書にこれは嘘ですって書いてあるはずだろ
辞書に書いてあるのは昔から伝わっていることわざだから。
昔から伝わっている意味が載っていても、それが正しいかどうかは辞書が判断してくれるわけではない。
どう論理的に考えても、辞書が言葉の意味ではなく、その真偽まで判断しているとは考えられないし、
そんな辞書は見たことがない。
851名前は開発中のものです。:04/09/13 23:08:26 ID:G1SPhSRm
何マジになってんのこの人(ギャハ
馬鹿じゃない?wwww
852名前は開発中のものです。:04/09/13 23:10:13 ID:G1SPhSRm
一つだけいってあげよう
ことわざが当てはまらないと大嘘と
始めにいったのは君
まずそれを訂正しなさい
自分でも間違ってるときずいているはずだ
本気でおもってるのならかなりのアホだ
853名前は開発中のものです。:04/09/13 23:10:43 ID:je0jue7D
ええと、これはどこかの何箇条かにあった、最後の知能障害を起こすという奴?
854名前は開発中のものです。:04/09/13 23:12:31 ID:G1SPhSRm
さあ、出すんだ弘法は筆を選ばずが嘘だという証拠を
855名前は開発中のものです。:04/09/13 23:14:59 ID:EBVtUn4I
>>706の件についてだけど整理してみた

実行環境 ATI RAGE Mobility(ノートPC)
コンパイラ BCC 5.5.1

>>706氏自作プログラム
BCCでビルド→RAGEで動作せず、名無しさんの環境で動作する
VCでビルド→名無しさんの環境で動作する

サンプルプログラム
添付バイナリ→RAGEで動作する


>>706のソースを見てない(消えてた)けど>>706氏が加えた変更にRAGEだけが動かなく
なるような変更が加えられたってことだよね
オレの勘だけどVRAM不足じゃない?



ちなみに空海は筆の作り方についての論文を残すほどの筆ヲタ
856名前は開発中のものです。:04/09/13 23:15:53 ID:A4RjyPbx
議論・勉強系のスレでは、「スレのためにスルー」精神を広めたい今日この頃。
857名前は開発中のものです。:04/09/13 23:24:22 ID:G1SPhSRm
証拠が無いんなら
弘法筆を選ばずは本当だったってことで
大嘘といったje0jue7Dが大嘘決定だな
858名前は開発中のものです。:04/09/13 23:27:48 ID:G1SPhSRm
この大嘘やろうが!!!!
嘘つきは泥棒の始まりですよ
早く自首して死刑になってください!!
859名前は開発中のものです。:04/09/13 23:32:10 ID:qzpcRtyh
格言に論理の破綻を許さないというスタンスは
この機会に捨ててしまった方が良いかも知れん。

2度ある事は3度あるはずなのに3度目に成功する(3度目の正直)という格言もある。
860名前は開発中のものです。:04/09/13 23:32:30 ID:G1SPhSRm
俺はな、嘘つきが一番嫌いなんだ
反省もしないで俺に偉そうなこと言ってきやがって
このスレからデテケーバカチンガ
861名前は開発中のものです。:04/09/13 23:34:07 ID:je0jue7D
>>851
頭に血がのぼったあと、それでも悔しくて
>>852
となるわけだけど、
>始めにいったのは君
これはそうだけど、
>まずそれを訂正しなさい
訂正も何も、全て論破したのに、その反論がない上に、
心のよりどころが、カイガイノスゴイプログラマーと、
言葉の真偽まで書き記された究極の辞書だし。

>さあ、出すんだ弘法は筆を選ばずが嘘だという証拠を
証拠も何も、弘法が実際に良い筆を使っていたことは史実で伝わっている。
史実に対する証拠を出せと言うのなら探してくるけど、
それはそちらでも否定していないわけなんだが。

ことわざは実際にどうであったかではなく、後生の人間が例えとして作ったもので、
そのことわざ自体は必ずしも偉人が作ったわけではない。
教訓などを言い表すため極端になっていたりして、それが絶対の真実ではない。
「船頭多くして船、山に登る」が辞書で嘘と書いてなくても、
それが真実ではないし、ことわざは今回のように時として反例として用いられる。
引っ込みがつかなくなったからと言って、知能障害を起こしてまで盲信したふりまでしているし。

>>858
なんか可哀想になってきた。
862名前は開発中のものです。:04/09/13 23:37:11 ID:TlpvMxVt
>G1SPhSRm
( ´,_ゝ`)略w
863名前は開発中のものです。:04/09/13 23:37:12 ID:G1SPhSRm
弘法が良い筆を使っているのが証拠になるのか
悪い筆を絶対に使わなかったが論理的に証拠だろ
だから論理的に考えろっていってるんだよ
あとな事実じゃないというのなら筆を選んだという事実を
なぜ持ち出すんだ
決定的に矛盾してる
知能指数いくつだよ
俺は150はあると思う
864名前は開発中のものです。:04/09/13 23:38:21 ID:sMGtlGwC
スレだけに、スレたレスはスルーする。
865名前は開発中のものです。:04/09/13 23:39:23 ID:G1SPhSRm
お前は一貫性が無いから矛盾をしてきされて深みにはまっていくんだな
知能がサルなみで可愛そうなのはあなたよ
866名前は開発中のものです。:04/09/13 23:40:56 ID:TlpvMxVt
>G1SPhSRm
( ´,_ゝ`)もうわかったから、糞して寝ろw
867名前は開発中のものです。:04/09/13 23:41:21 ID:vV5a5ZT8
バカを相手にするのは時間の無駄。
スルーを覚えましょう。
868名前は開発中のものです。:04/09/13 23:42:34 ID:G1SPhSRm
ここは馬鹿の国ですね
馬鹿の為の馬鹿による馬鹿のスレです
馬鹿はこのスレからウセロ
869名前は開発中のものです。:04/09/13 23:43:03 ID:5/0W8ysj
「弘法筆を選ばず」の正しい解釈とは?
ttp://academy3.2ch.net/test/read.cgi/min/1095086445/l50

こっちで議論してください
870名前は開発中のものです。:04/09/13 23:43:06 ID:Vs/BVxTj
史実と諺がごっちゃになってますね…
871名前は開発中のものです。:04/09/13 23:45:00 ID:5/0W8ysj
852 名前: 名前は開発中のものです。 [sage] 投稿日: 04/09/13 23:10:13 ID:G1SPhSRm
一つだけいってあげよう
ことわざが当てはまらないと大嘘と
始めにいったのは君
まずそれを訂正しなさい
自分でも間違ってるときずいているはずだ
本気でおもってるのならかなりのアホだ

853 名前: 名前は開発中のものです。 [sage] 投稿日: 04/09/13 23:10:43 ID:je0jue7D
ええと、これはどこかの何箇条かにあった、最後の知能障害を起こすという奴?

854 名前: 名前は開発中のものです。 [sage] 投稿日: 04/09/13 23:12:31 ID:G1SPhSRm
さあ、出すんだ弘法は筆を選ばずが嘘だという証拠を
872名前は開発中のものです。:04/09/13 23:46:19 ID:G1SPhSRm
おい、やめろよ
恥ずかしいじゃないか
俺はもう降りる
じゃあな
873名前は開発中のものです。:04/09/13 23:50:17 ID:vV5a5ZT8
863 名前:名前は開発中のものです。 本日のレス 投稿日:04/09/13 23:37:12 G1SPhSRm
知能指数いくつだよ
俺は150はあると思う
知能指数いくつだよ
俺は150はあると思う
知能指数いくつだよ
俺は150はあると思う
874名前は開発中のものです。:04/09/13 23:50:35 ID:je0jue7D
そろそろIDが変わる時刻か…。
結構な短時間に厨房迷言集がを作ってしまった。
スレ汚しスマン。
875名前は開発中のものです。:04/09/13 23:56:03 ID:zac2Wg8A
いまNHK教育でやってるぞ
876名前は開発中のものです。:04/09/13 23:56:44 ID:Rf7vM6SW
なんだよ。プログラマーってのは変な議論をするのが好きなんだな。
よっぽろストレスがたまる職業なのか。
877名前は開発中のものです。:04/09/14 00:03:51 ID:scgzpgiP
すげー無意味な議論が続いていて笑った
なんだこのスレ
878名前は開発中のものです。:04/09/14 00:07:05 ID:TX8PjuRf
流れに合わずすいません、お助け下さい。DirectX9です。
例えですが、6個の頂点情報(D3DFVF_XYZのみ)と対応するインデックスのみで、
色と、メリハリの効いた陰影があるboxを描画したく思っています。

フラットシェーディングならばこの用途にぴったりと思い試してみました。
しかし面に色すら付けられない有様です。頂点法線の情報がないせいかマテリアルは適用できず、
またLVertex等ではライティング計算をDirectX側に任せられない上、いちいち色指定が冗長で…。

ヘルプには「フラットシェーディング時には面法線(※頂点では無い)が自動的に
計算される」とあります。なんとかこの辺を利用して、ライティング等を
DirectXに任せられないのでしょうか?
879878:04/09/14 00:11:27 ID:TX8PjuRf
すいません間違えました
×6個の頂点情報
○8個の頂点情報
880名前は開発中のものです。:04/09/14 00:24:38 ID:q1mIFFCK
ライティングしたいなら法線有りの24頂点でいいじゃない。
881878:04/09/14 00:29:17 ID:TX8PjuRf
>>880
レスサンクスです。

とはいえ、どうしても同一頂点はひとつの情報(と言うかバッファ)で扱いたいんです。
24頂点だと、インデックス値が全く意味無くなりますし…。
882878:04/09/14 00:31:14 ID:TX8PjuRf
失礼、全くじゃないですね

うーん、それにしても、なんとかならないものか…
883名前は開発中のものです。:04/09/14 00:54:01 ID:4jQZyFuC
遅くなっていいならD3DRS_NORMALIZENORMALS。
頂点数が多くなっても普通に法線を設定しておいた方が無難だと思うが。
884878:04/09/14 01:13:38 ID:TX8PjuRf
>>883
レスありがとうございます。
早速試してみましたが、しかし上手くいきませんで…。

D3DRS_NORMALIZENORMALSは
頂点法線を、長さ1に正規化する以外の機能もあるのでしょうか?
(例えば頂点法線を自動で算出してくれる等の)
885名前は開発中のものです。:04/09/14 01:26:23 ID:CQtWSWyU
>884
頂点情報、インデックスまであるんだったら自分で法線算出できるんじゃないかね
やりかたは適当にググてみるか適当に作ってみたら?
886878:04/09/14 01:37:03 ID:TX8PjuRf
>>885
ありがとうございます、法線算出自体はそれほど苦ではないです。

頂点をマウスで掴んで、移動したりなど、編集可能にしたいのですが、
その際、頂点情報が散らばっていると分かりづらいなというのが第一でして。

頂点に対する抽象度を、ひとつ上げれば良いのですが、
今後の複雑な操作や、私の実力を考えると、
できれば情報は1対1で、分かりやすくしておきたいなと…。
887名前は開発中のものです。:04/09/14 01:49:42 ID:QrQFla+K
>>886
それと法線とどんな関係があるのでしょうか?
888名前は開発中のものです。:04/09/14 02:01:12 ID:ILhTc7ff
弘法の法と関係あるかな?
889878:04/09/14 02:07:57 ID:TX8PjuRf
>>887
>>878の例で言いますと、実際の…というかEntityな頂点情報は8頂点です。
首尾良くここで何か情報を頂き、そのままの情報のみで描画可能ならば
頂点バッファの数も8頂点で済み、1対1で分かりやすくなります。。

しかし、もし方法が無くて法線情報を付けなければとなると
頂点バッファの方で描画用に必要な頂点が不特定(この場合24頂点)になり、管理しづらいなと。

以上が>>886と法線との関係です。弘法とは無縁です。
890名前は開発中のものです。:04/09/14 02:24:49 ID:QrQFla+K
>>889
なるほどー。
でも8頂点じゃ色が出力できねーじゃねーのかな?勘だけどw
立方体に真上から光なんか当てると上の面は一番明るくて
横の4つの面は上の面より暗くなるじゃん。
この時点で1つの頂点に複数の色が必要なわけで法線云々じゃなくて
そもそも出力できねんじゃね?(ようしらんけどw)
891878:04/09/14 02:54:25 ID:TX8PjuRf
>>890
ライティングまで自分で計算し、頂点カラーを直接指定して
描画する場合は、仰るとおりだと思います。
ただ一般には、頂点カラーよりも、マテリアルと法線でもって描画する方が多い気もします。

この法線を>>878で挙げた「面法線」とやらに任せたいのですが…。

ちょっと記憶が曖昧なのですが、以前同じツールを作った時は、
確かに頂点法線情報無しで、実装できてたんです(当時はまだDX7か8でしたが)。
これが今回こだわっちゃってる理由でして。

ちなみに以前のソースが入ったHDDは壊れてしまい、
今は直るという噂を頼り、冷蔵庫で冷やしています…。
892名前は開発中のものです。:04/09/14 02:59:25 ID:ELZnWVw/
>>878
要は共有頂点を扱えないのね?
グローシェードなら、共有頂点の含むフェイスの法線の平均でやるのが簡単。
フラットシェードなら、法線情報を分けるしかないかな?
どうしても共有頂点を分けないなら、フェイス毎にロックして法線情報を書き換えとかアホな方法も…

どのみち、この先マテリアル毎に描画とか必要になるんだから
頂点を分けた方が良いんじゃない?

あ、後はシェーダー使って、
頂点ポジション情報ストリームと法線情報ストリームを分けて持ってるとか?
…つーかこの方が分かり図らいか…

ま、我侭言うなって…
893名前は開発中のものです。:04/09/14 03:07:01 ID:scgzpgiP
話がつまんねーよ
弘法の無意味な議論とか続けろよ
そっちの方が遙かにおもしれえ
894878:04/09/14 03:33:33 ID:TX8PjuRf
>>892
うーん、となると「自動で計算される面法線」とやらは
どこで使われてるんですかねぇ…(ヘルプのシェーディング>比較)。
面法線の定義からして、単なる頂点法線の平均とは思いたくないのですが…。

変更が少なく済み、なおかつ分かりやすいので、マテリアル毎の描画は、
インデックスバッファの方を、マテリアル毎にソートしてやりたいと思ってます。

皆さんお付き合いありがとうございました。そろそろこの辺で…とはいえ
情報をお持ちの方がいらっしゃいましたら、よろしくお願いします。
895名前は開発中のものです。:04/09/14 03:46:37 ID:ELZnWVw/
>自動で計算される面法線
DX9ヘルプで見たこと無いよ?

>変更が少なく済み、なおかつ分かりやすいので、マテリアル毎の描画は、
>インデックスバッファの方を、マテリアル毎にソートしてやりたいと思ってます。
あんた、UVの事考えてないでしょ?

頂点を別個で持つのが普通だって。
キツイ言い方すると、出来ない事に延々と悩むのは無駄という物。
896名前は開発中のものです。:04/09/14 04:01:25 ID:TX8PjuRf
>>895
894でも良いんですが、「シェーディング モードの比較」で検索すれば一発かな。
英語だと「Comparing Shading Modes」、Automatic face normalsとなっています。

テクスチャ情報は扱わないんです。これがそもそも今回の設計の発端となってます。

仰るとおりなのですが、>>891、3段目の理由により、諦めきれなくて…。
スレの進行の邪魔にならないよう、もし可能でしたら、レスよろしくお願い致します。
897名前は開発中のものです。:04/09/14 04:23:20 ID:Dup5ARJw
フラットシェードでやってみたら?
898名前は開発中のものです。:04/09/14 04:30:40 ID:ELZnWVw/
>>896
よーく見たら、図の注釈みたく書いてあるのね…
えーと、英語でも日本語でもいいんだけど

どこにフラットシェーディング時に自動で計算されて、シェーディングに使用される
と言う意味で書いてある?

今、試してあげたけど
ライティングあり、テスクチャなし、法線なし、フラットシェード
でマテリアルの色が暗く出たけど…マトモなライティングじゃなさげだけど?
やっぱ、レンダリング時に面法線を使ってくれるなんてないんじゃない?
因みにライティングを切ったら色出たけど(当然シェーディング無し)

前の奴ってライティング切ってるんじゃない?
899名前は開発中のものです。:04/09/14 04:37:01 ID:ELZnWVw/
>>898
スマン、追加。
アンビエント切ってなかった。
暗く出てる色ってアンビエントの所為だった。

やっぱ、法線なしじゃライティングされてないね。
900名前は開発中のものです。:04/09/14 08:46:17 ID:Gw6ACLh/
>>855
>>706の環境ではリファレンスラスタライザ上も動作せず、も加えてくれ。
スプライト一枚表示するだけのプログラムなのでVRAM不足は考えにくい。
つーかもうどうでもいいや、後はBBXにでも行けって感じ。
901名前は開発中のものです。:04/09/14 15:11:57 ID:CQtWSWyU
>893
その話題を続けてもらう為にわざわざ専用スレたてたので使ってくれ

「弘法筆を選ばず」の正しい解釈とは?
ttp://academy3.2ch.net/test/read.cgi/min/1095086445/l50
902名前は開発中のものです。:04/09/14 15:45:21 ID:r/jAoFbW
>>901
立てる板を間違えてる。もっとふさわしい板があるから探せ。
903名前は開発中のものです。:04/09/14 19:25:01 ID:scgzpgiP
>>901
俺が議論したいんじゃねぇよ
バカかお前は
文意を理解しろよ文盲
904名前は開発中のものです。:04/09/14 22:45:39 ID:mAnZuR28
>>843
習字じゃなくて書道と言ってくれ・・・(´Д`;
905名前は開発中のものです。:04/09/15 06:02:31 ID:lNvzxKRk
プログラマってコンパイラみたいだな。
頑固にエラーエラーって。柔軟さが無いよね。
まぁどーでもいいけど。
906名前は開発中のものです。:04/09/15 08:18:25 ID:RT7RDoyC
疲労困憊る
907名前は開発中のものです。:04/09/15 11:02:36 ID:LFpLYAzn
>>905
柔軟になればエラーが無くなるんなら苦労しない
908名前は開発中のものです。:04/09/15 15:36:16 ID:zz/6Pbur
そりゃ、融通の利かない石頭(シリコン)相手にしてるんだもの。
日常レベルからエラーに敏感になるさ。
909名前は開発中のものです。:04/09/15 15:42:36 ID:uePpJVhs
昔、BASICでエラーの出る行を削除してエラーがなくなるまで繰り返した。
これを応用すればエラーはなくなるはず。
910名前は開発中のものです。:04/09/15 21:00:54 ID:t/0s0Y9M
ちゃんと動いたか?
911名前は開発中のものです。:04/09/15 23:45:50 ID:RC/7mD5z
>909
最後は画面の初期化命令の行だけになりそうだね
912名前は開発中のものです。:04/09/16 20:27:42 ID:s+vmQMPv
DX9で
D3DXCreateTextureFromResource関数を使って
リソースファイルからjpgファイルを
テクスチャとして読み込ませるのがうまくいきません。

リソースファイルに

IDR_xxx RT_RCDATA DISCARDABLE "xxx.jpg"
と追加する以外に何かしないとダメなんですか?

BMPファイルを
IDB_xxx BITMAP DISCARDABLE "xxx.bmp"
として読み込ませるのは、うまくいくんですが・・・
913名前は開発中のものです。:04/09/16 21:34:31 ID:3OlOIp19
>>912
D3DXCreateTextureFromResource関数から
エラーは出てる?
914名前は開発中のものです。:04/09/16 21:40:12 ID:3L+Buwm0
なんで、どう「うまくいきません」のか書かないの?
915名前は開発中のものです。:04/09/16 21:43:37 ID:3OlOIp19
>>914
それは初心者には難しい。
あえて聞くまいw
いまはリソースからのjpgファイルの読み込みがD3DXCreateTextureFromResource関数でできません。
って伝わっただけでもよしとしよう。
916名前は開発中のものです。:04/09/16 22:11:36 ID:s+vmQMPv
すいません。エラーは、
D3DXERR_INVALIDDATA
でした。

「メソッドの呼び出しが無効である。たとえば、メソッドの
パラメータに無効な値が設定されている場合などである」
へルプにはありますした。
まず、引数を調べてみることにします。
917天之御名無主:04/09/17 00:33:38 ID:nHq002fK
>>ID:scgzpgiP
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、民神板はお前の日記帳じゃねえんだ
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  チラシの裏にでも書いてろ
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
お前が削除依頼出せよ?
http://qb5.2ch.net/test/read.cgi/saku/1030111834/
918名前は開発中のものです。:04/09/17 00:34:27 ID:UgPh/ueq
DirectXに直接関係あることじゃないんですが、
3DのRPGやアクションなどの場合、
衝突判定はどうやっているのですか?
それと壁や木に衝突したときに方向キーを押したら滑っていくようにしたいのですが、
これは初心者には難しいですか?
919名前は開発中のものです。:04/09/17 00:43:22 ID:Vqnenajz
検索・・・してねぇだろうなぁ〜。
920名前は開発中のものです。:04/09/17 03:13:36 ID:nnlrBRyv
>衝突判定はどうやっているのですか?

検索すればいくらでも見つかるだろうが、これだけは言っておく。
アプリの種類、特性、モデルの数、複雑さ、お前の能力、センス、時間、こだわり次第。
アプリが100こあったら13通りはある。
921名前は開発中のものです。:04/09/17 03:32:18 ID:ITevDn9l
>>衝突判定
ふと思ったんだが知恵と勇気を使えば中学生にも発想できるんだよな。
そりゃ>>918はよりスマートな演算手法を使うべきだと顕在意識でも
無意識下でも自覚しているんだろうけど、ちょっとヘタレすぎてないか?
不完全なアルゴリズムを提示して相談したほうがより良い返答を期待できるだろ。
煽り、罵声も増えるだろうけどな。
922名前は開発中のものです。:04/09/17 04:39:19 ID:srfV5BuB
君ら、なんでそんな低レベルな質問と返答でそんなに偉そうなの?
923名前は開発中のものです。:04/09/17 04:44:52 ID:G2YWIKJI
勇気は無くても大丈夫だろ
924名前は開発中のものです。:04/09/17 05:00:45 ID:eOOFcE1Z
レベルは関係ない。
腰が低いのは質問するときだけ!
925名前は開発中のものです。:04/09/17 06:31:06 ID:8VacFD/E
>920
>アプリが100こあったら13通りはある。

なんかワラタ

>918
まずは2Dのゲームで考えてみたら?
昔の2Dのアクションゲームとかでも壁にぶつかったら壁にそって滑るってのは結構あったし
926名前は開発中のものです。:04/09/17 06:35:59 ID:2nZHg1B6
DirectXに関係ないことを書くなボケ
927名前は開発中のものです。:04/09/17 13:42:31 ID:+a+K/xoI
衝突判定など、最新の高速なのが海外にいっぱいライブラリで転がってるとうれしいね。
928名前は開発中のものです。:04/09/17 14:24:01 ID:ikPLKy2B
時間積分して何か障害物にめり込んだら、めり込まない位置まで法線方向に押し戻す。
929名前は開発中のものです。:04/09/17 15:08:06 ID:qKCUflXQ
まんPに衝突判定。ハァハァ。
930名前は開発中のものです。:04/09/17 21:27:30 ID:ugHwMHvE
Directxについて分からない事があり困っています。
Directx9.0が必要なゲームを買って、PCにDirectx9.0をダウンロードしたのです
が、ゲームを起動すると、
『システム内にDirectX9.0cと互換性のあるビデオカードを検出できませんでした。
DirectX9.0cに対応するビデオカードが装着されていて、製造元が提供する最新の
ドライバがインストールされていることを確認してください。』
と表示されます。
そこで、Windows Updateで最新のドライバを更新したのですが、起動することが
できませんでした。このことに関係あるのかは分かりませんが、更新の履歴確認で
は、『Windows Media Player9.0の更新』が進行中のままになっていました。
それから、PCはMEを使っています。
PCの初心者で、本当に分からなくて困っています。
よろしければ、どなたか教えてください。お願いします!
931名前は開発中のものです。:04/09/17 21:31:47 ID:20Af7ts/
なぜビデオカードの名前を出さないのだ。
それ以前に板違いだ。
932名前は開発中のものです。:04/09/17 21:34:11 ID:9SSHxphQ
9.0対応のビデオカードとWindowsXPを買ってくる。
933名前は開発中のものです。:04/09/17 21:34:11 ID:Vqnenajz
PCゲーム板へGo
934名前は開発中のものです。:04/09/17 21:38:40 ID:ugHwMHvE
あ!板違いなのですか。
DirectXについての板だったのでよいのかと思い、書き込みしてしまいまし
た。すみません。
935名前は開発中のものです。:04/09/17 21:45:52 ID:8VacFD/E
>934
あなたはゲームをする側
この板は作る側
936名前は開発中のものです。:04/09/17 21:53:36 ID:LmI0jVDg
Directxについて分からない事があり困っています。
Directx9.0が必要なゲームを作るため、PCにDirectx9.0をダウンロードしたのです
が、ゲームを作ろうとすると、
『システム内にDirectX9.0cと互換性のあるビデオカードを検出できませんでした。
DirectX9.0cに対応するビデオカードが装着されていて、製造元が提供する最新の
ドライバがインストールされていることを確認してください。』
と表示されます。
そこで、Windows Updateで最新のドライバを更新したのですが、起動することが
できませんでした。このことに関係あるのかは分かりませんが、更新の履歴確認で
は、『Windows Media Player9.0の更新』が進行中のままになっていました。
それから、PCはMEを使っています。
PCの初心者で、本当に分からなくて困っています。
よろしければ、どなたか教えてください。お願いします!
937名前は開発中のものです。:04/09/17 22:11:36 ID:+McLh2tw
ビデオカード変えろ
938名前は開発中のものです。:04/09/17 22:11:45 ID:mh0H/69j
メディアプレーヤーの更新が
毎度途中で失敗するは、俺もなったことあったな。
XPを再インストールしたら直ったぞぇ。
939名前は開発中のものです。:04/09/17 22:58:16 ID:FF369kKc
>>912
> IDR_xxx RT_RCDATA DISCARDABLE "xxx.jpg"

RT_RCDATA

じゃなくて

RCDATA

にしてみれ。
940912:04/09/18 12:25:30 ID:4abBz0m0
>>939
RT_RCDATA を RCDATA と書き換えたら
jpg画像からテクスチャが作れるようになりました。
ありがとうございました。
941名前は開発中のものです。:04/09/18 12:26:14 ID:RlgP6f2k
>>940
良かったね。
942名前は開発中のものです。:04/09/18 17:19:40 ID:sFBF1O0D
時間積分ってなんですか?
例をまじえて詳しく私に教えてください
943名前は開発中のものです。:04/09/18 17:51:14 ID:6uUOiR6z
速度→位置

これ以上はビジネスになるよ。いくら出せる?
944名前は開発中のものです。:04/09/18 17:51:49 ID:sFBF1O0D
100万出すから教えてください
銀行振り込みでいいですか?
口座番号教えてください
945名前は開発中のものです。:04/09/18 18:20:02 ID:MpWJanQd
>>944
うんこ is ベスト
946名前は開発中のものです。:04/09/18 18:30:00 ID:8Cp6rELz
じゃあ赤い羽根募金に100万募金してきて。
その証拠画像か映像出したら何でも教えてやるよ
947名前は開発中のものです。:04/09/18 18:37:09 ID:sFBF1O0D
100万円募金するので先に教えてください
948名前は開発中のものです。:04/09/18 18:57:45 ID:x9x9OXzo
どーでもいいーよ
949名前は開発中のものです。:04/09/18 19:10:39 ID:sFBF1O0D
200万円だすので教えてください
950名前は開発中のものです。:04/09/18 19:11:58 ID:lrYe7Gdf
そろそろ次スレの季節だね。まだ早いかな。
951名前は開発中のものです。:04/09/18 19:12:34 ID:MpWJanQd
>>947
うんこ is ベスト
952名前は開発中のものです。:04/09/18 19:20:56 ID:53AwORFa
         ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) < まだ〜?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        |  愛媛みかん  |/
953名前は開発中のものです。:04/09/18 19:21:25 ID:53AwORFa
テンプレ直すの忘れた。

         ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) < 次スレまだ〜?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        |  愛媛みかん  |/
954名前は開発中のものです。:04/09/18 19:55:26 ID:8Cp6rELz
>>947(>>949)
証拠画像出せっつってんだろボケ
955名前は開発中のものです。:04/09/18 23:19:03 ID:eN2sOfNm
つぎスレはこちらに吸収合併されました。

鬱だ氏のう DirectX (Part 14)
ttp://pc5.2ch.net/test/read.cgi/tech/1088594869/
956名前は開発中のものです。:04/09/18 23:53:31 ID:qSHVhroT
               | 糞スレ【「弘法筆を選ばず」の正しい解釈とは?】       |
               │ http://academy3.2ch.net/test/read.cgi/min/1095086445/|
    マチクタビレタ〜   < の削除依頼、まーーだーーー!?                >
   ☆           |_ _  _ _ _ _ _ _ _ _    _ _ _  |
     ヽ   ☆        ∨  ∨ ∨ ∨ ∨ ∨ ∨ ∨ ∨  ∨ ̄∨ ∨ ∨  ∨
       =≡= ∧_∧          ☆。:.+:  ∧_∧     マチクタビレタ〜
        / 〃(・∀・ #)  シャンシャン        ( ・∀・)  ♪.:。゚*
      〆  ┌\と\と.ヾ∈≡∋ゞ      / ̄ヽ/,― 、\ o。。。    マチクタビレタ〜
       ||  γ ⌒ヽヽコ ノ ||           | ||三∪●)三mΕ∃.
   ドコドコ || ΣΣ  .|:::|∪〓 ||           \_.へ--イ\  ゚ ゚ ゚
.     /|\人 _.ノノ _||_. /|\  ∧_∧     (_)(_)   ☆:.°+
                          ( ・∀・ )っτ        。::.☆ο
 マチクタビレタ〜            ♪〜 ( つ‡ /  |   マチクタビレタ〜
                         |  (⌒) |  ☆1
     ♪     ∬∬      マチクタビレタ〜 彡  し'⌒^ミ A 〃
     ∧_∧  ( ‘)        / ̄ ̄     ̄ /.|      ∧_∧ ____
    ( ・∀・)_//       | ̄ ̄ ̄ ̄ ̄ ̄ ̄| .|     ( ・∀・)) _/
  _( (   / Cミ         | 腐れDirectX  | .|  .   (\ ∧//     〜♪
  \((○ ̄ /_          |          .|/      >、\ξ)   〜♪
 Σソ\_/(_)ミ                         /∠(,,,)>\
    (_)                            (_) \| (_)
957次スレはちゃんと臭えケツふいてからな。:04/09/18 23:57:50 ID:qSHVhroT
min:民俗・神話学[スレッド削除]
http://qb5.2ch.net/test/read.cgi/saku/1030111834/
958名前は開発中のものです。:04/09/19 10:50:37 ID:aKO6l33e
しかし、何を考えてあんな板に立てたんだろうな。
959名前は開発中のものです。 :04/09/19 22:25:50 ID:NLCzQVAi
SDk8.1ってマイクロソフトからDL出来なくなった?
リンクからDL出来るページに飛んでも何もない・・。
960名前は開発中のものです。:04/09/20 03:40:07 ID:j9+2YhzY
>959
SDKは、もう9があるんだから8いらないでしょ?
961名前は開発中のものです。:04/09/20 14:48:49 ID:v9SNs+W+
DX9が動かないPCで開発してるんかな?
962名前は開発中のものです。:04/09/20 17:14:02 ID:H8KIJdUL
もう当分9のままだから9で行っときなさい。
LonghornのWindows Graphics Foundationも最初は9相当らしいですよ。
963名前は開発中のものです。:04/09/20 17:46:47 ID:w+lXInou
自分が知ってる(見れる)サンプルが8しかないから…
とか言う下らない理由なんだろうな…

8にこだわる理由。
964名前は開発中のものです。:04/09/20 21:57:56 ID:dP9mT21C
961が正解。最先端の性能で開発してる人もいるし
そういう環境じゃない人もいるってこと。
965名前は開発中のものです。:04/09/20 22:20:16 ID:YWvwqv4Q
8は動くけど9は動かない環境ってあるのか?

まぁ9のSDKで8の開発は出来るっしょ。多分。
966名前は開発中のものです。:04/09/20 22:24:07 ID:j9+2YhzY
>965
>8は動くけど9は動かない環境ってあるのか?
あるでしょ

でもDirectX9SDKでそれ以前の開発は可能だからSDKは最新版でいいと思う
あ、でも開発とテストをする環境が一つしかないんだったらランタイムライブラリの関係で新しいSDKが入れれないのかな?
967名前は開発中のものです。:04/09/20 22:24:33 ID:Olh89OaZ
ここのスレの方はどんなゲームを作っているんですかねー。
レベル高そう。ぜひやってみたい。
968名前は開発中のものです。:04/09/20 23:47:44 ID:1CCtnaAj
>>967
発言を見る限り、プロの人間は確実にいる。
後は店頭に並んでるゲームを買ってくだしゃんせw
969名前は開発中のものです。:04/09/20 23:51:54 ID:mxx/yhVd
あのう
ダイレクトエックスを使った
ゲエムは二ホンでは作られてないような気がするのですが
エロゲーとかならありうりますがwwwwwwwwwwwww
970名前は開発中のものです。:04/09/20 23:55:46 ID:j9+2YhzY
>969
XBOX
971名前は開発中のものです。:04/09/21 00:53:04 ID:SgxkSwyW
>>969
アヒャヒャヒャヒャヒャw
おまえんとこ、開発環境変わるたびにツール1から作りなおしてるの?
馬鹿じゃねぇの?w
PCでDirectX使ってツール作るに決まってるだろボケw
972名前は開発中のものです。:04/09/21 13:41:22 ID:mu9OdEqh
directXでツール使ってる会社ありませんよ
素人が知ったかぶらないでね
973名前は開発中のものです。:04/09/21 15:29:07 ID:SgxkSwyW
>>972
じゃあ、どうやってPC上で動かすのかご教授いただこうか。
974名前は開発中のものです。:04/09/21 15:48:34 ID:MP52fNZY
>>972が知ったか
975名前は開発中のものです。:04/09/21 17:39:42 ID:OMsnhWRe
DirectX9.0アンインストしてー
あぁぁぁあ神はいないの????
ttp://nacelle.info/cleanup/03017.php
976名前は開発中のものです。:04/09/21 17:48:39 ID:eVjGhYnT
あきらめろ
977名前は開発中のものです。:04/09/21 17:54:19 ID:OMsnhWRe
orz
978名前は開発中のものです。:04/09/21 19:30:34 ID:ExZojLU0
>975
まぁあきらめてOSから再インスコしなおせ
979名前は開発中のものです。:04/09/21 21:13:18 ID:SgxkSwyW
>>978
そこでうっかりですよw
980名前は開発中のものです。:04/09/21 22:13:41 ID:jsWwSatM
         ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) < 次スレまだ〜?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        |  愛媛みかん  |/
981名前は開発中のものです。:04/09/21 22:51:04 ID:6U31ghnl
次スレはマジでム板のスレに統合させるわけ?
こっちの板で独自なのがあっても良いと思うんだけど?
982名前は開発中のものです。:04/09/21 23:23:18 ID:3XtueNO8
そんじゃ立てて
983名前は開発中のものです。:04/09/22 01:30:18 ID:67WOMTsT
ム板のスレはヒサンなことになってるようだから、こっちでいいんじゃない。
984名前は開発中のものです。:04/09/22 01:47:12 ID:dVJgzqx3
うん
985名前は開発中のものです。:04/09/22 12:31:23 ID:CjMm2GWP
HLSLでのピクセルシェーダについて質問です。

HLSLのPSでforループを書いてみたんですが、
ループ回数を変数で制御すると正しい値が得られません。
GeForce6800 + ps_3_0 なら動的ループが正しく使えるものだと思っていたのですが、そうでもないのでしょうか。

要するに、

for(int i=0; i<16i++){
 iを利用した式
}

みたいにすると意図した計算が行われる(forで指定した回数の計算が行われる)のに対して、

int VALUE;
for(int i=0; i<VALUE; i++){
 iを利用した式
}

とした上でSetIntでVALUEを与えると、正しい計算が行われません。
(どうやら一回だけ計算して抜けてしまうようです。)
whileの評価式で変数と変数の比較を使ったときも同じことが起きました。

ちなみに、ループ回数を定数にすると、fxcが勝手にループ展開を行うようで、
命令数制限の突破によるエラーが起きてしまいます。
どうするべきでしょうか?


#というか、鬱だ氏のう DirectXが切れていたのでこっちにきたわけですが、BBXにでも行った方がいいですか?
986名前は開発中のものです。
次スレ立てました
追加テンプレなどあったら、書き込んどいて〜

DirectX総合スレ (Part2)
http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/