鬱だ氏のう DirectX (Part 12)
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNG技術情報交換&雑談するためのスレッド。
初心者用相談室では扱わないような少し高度な話題も受け持つ。
ちなみに、言語はC++がメイン。
C# / VB.NET 使いは、専用スレの方が話がスムーズに進むと思われ。
その他は>>2-10 に誰か書いてくれるでしょう
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG- DirectX Home Page
http://www.microsoft.com/japan/windows/directx/default.asp
- MSDN > DirectX
http://www.microsoft.com/japan/msdn/directx/default.asp
- DirectX Info Lib (デバイス情報のデータベース。すばらしい!)
http://www.netsphere.jp/dxinfo/
- BBX(掲示板)
http://isweb8.infoseek.co.jp/computer/bbx/
- spin
http://spin.s2c.ne.jp/
- 宇治社中改(3D基礎講座) のミラー
http://web.archive.org/web/20020607052151/http://www.cc.rim.or.jp/~devilman/
// 関連スレ
- Managed DirectX vol.2
http://pc2.2ch.net/test/read.cgi/tech/1061285378/
- ★初心者にVisual C++を教えるスレ★ Part10
http://pc2.2ch.net/test/read.cgi/tech/1074933908/
- Win32API質問箱 Build16
http://pc2.2ch.net/test/read.cgi/tech/1073830065/
0005デフォルトの名無しさん
NGNGPart 1: http://piza2.2ch.net/tech/kako/966/966655286.html
Part 2: http://pc2.2ch.net/tech/kako/997/997101556.html
Part 3: http://game.2ch.net/gamedev/kako/1005/10051/1005119775.html
Part 4: http://game.2ch.net/gamedev/kako/1016/10162/1016276254.html
Part 5: http://pc2.2ch.net/gamedev/kako/1027/10273/1027351925.html
Part 6: http://pc2.2ch.net/gamedev/kako/1033/10339/1033920036.html
Part 7: http://pc2.2ch.net/gamedev/kako/1039/10395/1039509250.html
Part 8: http://pc2.2ch.net/gamedev/kako/1046/10466/1046676308.html
Part 9: http://pc2.2ch.net/tech/kako/1054/10545/1054553472.html
Part10: http://pc2.2ch.net/tech/kako/1061/10614/1061420660.html
Part11: http://pc2.2ch.net/test/read.cgi/tech/1069376986/
0006きむたっくん
NGNG0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNG(.,○∀・) <ズヴァリ! ここが次スレですな!?
く[ ⊂]
┏━━━━┓
┃ ┃
0009デフォルトの名無しさん
NGNG素で期待してまつ
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNGhttp://www.itmedia.co.jp/anchordesk/articles/0402/12/news090.html
0012デフォルトの名無しさん
NGNGGeForce FX 駄目すぎ。
それともMSとの仲があまり良くなくなったから
DirectXではなくOpenGLを使わせようとしてる?
0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNGようは、使い手の問題かと。
0015デフォルトの名無しさん
NGNG厨房対策としては良く出来た記事だと思われる。
0017デフォルトの名無しさん
NGNG>>11の記事に
「ちなみに、ここで紹介していることは3Dアプリ開発者の間ではもはや既知の事実であり、なんら新しい情報ではない。」
とか書いてあるけど知らないし俺w(レベル低い?でもみんなのところの開発者ってどうよ?)
まずは普通のことが普通にできるようになるまで時間かかりそうだなぁ。
0018デフォルトの名無しさん
NGNGParthenon Renderer
ttp://members.jcom.home.ne.jp/parthenon_renderer/
みたいなのは使えないとどうしようもないだろ。
実際ATI RADEON9500以降専用になっちゃてる。
というかnVIDIAはこういう物のため遅くなるのを覚悟で
32bit浮動小数点を実装したんじゃなかったけ?
0019デフォルトの名無しさん
NGNG別にレベル関係ないとおもうねぇ
DirectX9でのPS2.0使ってプログラムしてるプログラマなら常識ということだと思うけど。
0020デフォルトの名無しさん
NGNG>1年以上説明し続けているが、改善されそうな兆しが見えない。
このあたりが駄目すぎ。
0021デフォルトの名無しさん
NGNGお前は愛が欲しいだけか?
0022デフォルトの名無しさん
NGNGキミらの場合はユーザーレベルのじゃれ合いがお似合いのようなので
http://pc3.2ch.net/test/read.cgi/jisaku/1076405574/l50
0023デフォルトの名無しさん
NGNGテクスチャを凝るくらいしか方法ありませんか?
0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNGnVIDIAの社員?早いとこ使えるドライバ出してよ!
RADEONにしとけばよかったよ。
0026デフォルトの名無しさん
NGNGビットマップ上の任意の点の色を調べれるdirectxの関数ってあるのでしょうか?
0027デフォルトの名無しさん
NGNGいやただのFXユーザーだろ…
単にFX批判にからんでるだけ。
DirectX9世代のボードなら浮動小数点フォーマットは
使えないより使えたほうがいいに決まってる。
0028デフォルトの名無しさん
NGNGサーフェスとテクスチャにはそういうメソッドはない。必要なら用意する。LockRect。
あるいは、GDIで間に合う部分は素直にGDIを使っとけばいいんでない。
>>25
ぐだぐだウルセーんだよ。消費者の発想のままなら自作PC板に逝け。
0029デフォルトの名無しさん
NGNGお返事ありがとうございます
LockRectをどのように使って色を調べるのでしょうか?
003028
NGNG日本語ヘルプに書いてある通りだ。フォーマットは既知なのだから
LockRectでゲトしたメモリ領域から所望のピクセルデータをゲトする。
あとはサンプルを検索してちょうだいな。
0031デフォルトの名無しさん
NGNGヽ)∵)ノ
( ( くねくねマン
) )
003222
NGNG>>27
申し訳ない。俺はRADEON9700なので対岸の火事ですよ。
NVIDIAの現行FX製品群がDirectX9のシェーダ2.0への対応がヘボヘボであっても
OpenGLのNV extensionsの更新にはご熱心の様子だから趣味プログラマは
そっちを叩けば楽しめるだろう。
0033デフォルトの名無しさん
NGNG現時点じゃ消費者は困ってないでしょう。
だって浮動小数云々の機能を使ったゲームなんて出てないですから
「DirectXについてきたサンプルが動かないよ」
ってぐらいじゃないですかね。
あと個人的にnVidiaはDirectX9対応(浮動小数云々の機能を使った)の
ゲームが出た後に対応したドライバを出すと思うよw
だってそれまで何も困らないじゃん。
後だしジャンケンはこの業界の必勝パターンだからね。
0034デフォルトの名無しさん
NGNGPCゲーマーは市販ゲームの対応度でしか投資(お小遣い)を回収できない。哀れ。
0035デフォルトの名無しさん
NGNG>今頃になって騒ぎ出してるのは
誰も騒ぎ出してないって、ていうか騒ぎ出せないでしょゲームでてないんだから。
自作PC板いくとFx5200とかマンセーしてる奴が結構多いよ。
俺もよく知らなかったからFx5200買っちゃったんだしw
0036デフォルトの名無しさん
NGNGまぁスレ違いなので手短に書くと、スペック厨は大騒ぎしてるわけですよ。。PCゲーム板と自作ゲーム板に行ってきなされ。
FarCryがまともに動かないとかHL2betaがまともに動かないどうしてくれるバーヤバーヤと癇癪を起こしているクズ共です。
0037デフォルトの名無しさん
NGNG>後だしジャンケンはこの業界の必勝パターンだからね。
>俺もよく知らなかったからFx5200買っちゃったんだしw
>俺もよく知らなかったからFx5200買っちゃったんだしw
>俺もよく知らなかったからFx5200買っちゃったんだしw
えーと、義務的に・・・FX厨必死だな。と。もう他所でやれよ喪前ら。
003836
NGNG結局は提灯記事に騙されてFX買っちまった香具師らが騒いでたんじゃねーか。アフォ草。
悪いことは言わないから喪前らCgでマターリ遊んでなさい。それが精神衛生上良いでしょう。
0039デフォルトの名無しさん
NGNGそんないまさらじゃん3DMark03から満足に動かないんだから。
>>37
いや重要なことだろうがそもそもここでFx買うかRADEON買うかで
DirectXやるにもかなり環境が変わっちゃうんだから。
まあ、「これから買う奴はRADEON9500以上を買えよ」ということで。
0040デフォルトの名無しさん
NGNGとても偶然とは思えない。
0041デフォルトの名無しさん
NGNG004236
NGNGベンダー間の駆け引きに振り回されて嘆いてる負け犬になるなと言いたい。俺もFXユーザだ。強くイ�`
0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNG負け犬っつーか流れ弾に直撃してるな俺等。
0045デフォルトの名無しさん
NGNGhttp://www9.ocn.ne.jp/~jackal/lab/instruments/oboe.gif
0046デフォルトの名無しさん
NGNG0047デフォルトの名無しさん
NGNG0048デフォルトの名無しさん
NGNGヽ)∵)ノ
( ( くねくねマン
) )
0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNG飲み会でも寒いこといってるけど、正直キモイだけだから
0051デフォルトの名無しさん
NGNG>現時点じゃ消費者は困ってないでしょう。
>だって浮動小数云々の機能を使ったゲームなんて出てないですから
困ってるわけじゃないけど >>18 が言ってるParthenonレンダラが
動かなくてショックでした。
GIで1フレーム当り60秒ってのはかなり魅力かと。
不動小数バッファはこういうの向きでゲームでは必要性が薄いと思う。
あと現状ではゲームに使うには制限が多すぎるし。
0052デフォルトの名無しさん
NGNGの方が2001/04/23に書いておられるような
簡単に「凹な空間を凸な空間に分割する方法」を知りたいのですが。
0053デフォルトの名無しさん
NGNGバーテックスシェーダとピクセルシェーダを書いてみた。
でもライトは1つの平行光線しか対応できなかった。これじゃショボくて使えない・・・
やっぱシェーダプログラムって使用する光源の数や種類ごとに自作しないとなんないの?
0054デフォルトの名無しさん
NGNG動きませんって報告が多過ぎる。
ついでにDX8.1にバージョンダウンした。
0055デフォルトの名無しさん
NGNGどっかのサイトで読んだのでは光源数に応じてシェーダ複数書いたみたいな
よっぽど光源に凝るタイプのゲームで無ければ
一つの物体に対して当たるライトなんて1〜2あれば十分だから
それでなんとかなったのでは
おれはシェーダやってないから詳しく知らんけど VS_20 移行だとループ処理が使えるみたいよ
まぁ、そのためには VS_20 に対応しているカードが普及してもらわなきゃ困るわけで
それが普及するためには上の論争になってしまうわけですが
005653
NGNG太陽光の他に、副光源やスポットライト1つあるだけでも、かなり雰囲気が
よくなるので、使えるようにいじってみよう…
あと>>53のシェーダのテキストファイル欲しいって人がいればUPするけどいる?
0057デフォルトの名無しさん
NGNGいらないって。
組んだんならわかってると思うけど、環境マップにしてもバンプマップにしても
手間がかかるのはシェーダの部分じゃないでそ。
あと、HLSLでかなり組みやすくなるからさっさと9に移行しちゃうのが吉。
ループが使えればライトが複数使えるようになるわけだからここはVS2.0普及待ち。
が、いいと俺は思う。どうだろう・・・。
005857
NGNG005957
NGNGVSもPSも命令数に限りがあるから(VSは結構書いても大丈夫だけどPSは限界がすぐ)
ライト2つは無理なシェーダが多いと思うよ(バージョンにもよるけど)。
だからライトを複数使いたいなら2.0に移っちゃった方がいいと思われ。
そんときにHLSLにしちゃった方が楽。
ちなみにこの辺の詳しい情報はt-potさんの出した
DirectX9シェーダプログラミングブック
がお勧め。
これ読んでから手をつけないと絶対に損する。(しなくていい苦労ばっかりするのは嫌だし)
0060デフォルトの名無しさん
NGNG想定してるのはシェーダ無し、マルチテクスチャ2枚、ライト1、
テクスチャサイズ512x512、頂点少な目、くらいの環境だけど、
逆にシェーダ有り、テクスチャ無制限だとどういう方法が可能かもしりたい。
0062デフォルトの名無しさん
NGNGなんか勘違いしてない?
普通にライト使う分にはVS回すだけでPS側は複数ライトでもかわらんよ?
バンプ複数光源ってなら話は別だが、
そもそもバンプ複数光源は現在のPSの速度では無謀
0063デフォルトの名無しさん
NGNGありゃ?通らないぞスペル間違ったかな?とか悩んだりした。
>>60 バンプは強力。アスファルトの道路や打ちっぱなしのコンクリートとか、
画像の濃淡から作ったテキトーな法線マップ使っただけでも相当リアルに見える。
0064デフォルトの名無しさん
NGNGすまん。
俺のは「面倒」って意味合いが強い。
できないってことじゃないのでよろ。
ちなみに
>DX8.1で、環境マッピングと、バンプマッピングと、ピクセル単位のスペキュラーを描画する
>バーテックスシェーダとピクセルシェーダを書いてみた。
これだと環境マップだけ?
ただ、こんな糞作業で10個も20個も手間かけてシェーダ組むのは(シェーダよりプログラム側のが複雑になりそう)
やっぱりお勧めできないw(ボーンもあるしね)
(できないってことではないのでよろ)
どうせならループが普及するのを待ちたいw
っていう腐れ根性なのでよろ。
混乱させてすまん。
0065デフォルトの名無しさん
NGNG案の定おっそろしく遅いんです。
DirectX9対応ビデオボード搭載機種に買い換えるしかないでしょうか?あ、DirectX8以前使えというのはなしの方向で。
0066デフォルトの名無しさん
NGNG0067デフォルトの名無しさん
NGNGそれだとDirectX8インストしてもだめだよ
0068デフォルトの名無しさん
NGNGフルスクリーンやウィンドウ化ってどんなAPI使えばいいのでしょうか?
VBやVCで遊んでいるのですが、どうやっても見つかりません。
そこらへんの技術に関するHPでも構いませんので、
どなたか教えて下さい。
よろしくお願いいたします。
0069デフォルトの名無しさん
NGNGノートPCのグラボ交換なら自作PC板の奴のが詳しいと思われ。
>>68
>フルスクリーンやウィンドウ化って
いまいち何が聞きたいのかわからないな。
0070デフォルトの名無しさん
NGNGDirectX以外のほうはスレ違い、っていうより知らない
0071デフォルトの名無しさん
NGNGこちらこそすまん。
>俺のは「面倒」って意味合いが強い。
確かにHLSLなら楽だね。
でも、シェーダをそのまま書くならPS1.1も2.0も似たような労力だと思われ。
オレはライトやらテクスチャやらの
全ての組み合わせシェーダを吐き出すツールを作ったけどね。
ポストエフェクト用とかの特殊なシェーダは手で書いてるけど
0072デフォルトの名無しさん
NGNG>DirectX9非対応なので
というよりも、D3D HALが無いのでハードウエア支援が全く得られないってこと。
旧世代のビデオチップでもとりあえずD3D HALさえあればそれなりの支援が得られる。
0073デフォルトの名無しさん
NGNGなんかすごいことやってるね。
全パターン用意かぁ。
ところで誰が考案したのか知らないけどこの腐り具合はシェーダの分け方がよくないのかなぁ。
ボーンやライトの数はループ命令でなんとかスマートになりそうだけど。
バンプかけた物体をnVidiaのサンプルにあるみたいな頂点いじってノイズかけて見たいとかいうとき
バンプ(普通の)
バンプ(ノイズ入り)
と用意しなきゃならんのが汎用性ないなぁと思う。
もちろんノイズと普通のと2つしかないならどうでもいいと思うんだけど。
実際はもっと色々と出てくるかなぁと考えるとなんかやる気無くなるw
妄想
頂点ストリームごとに頂点シェーダを設定できるようになればいくらかましになるだろうかとか考えてみたりして。
oPosはoPos用のシェーダを選んで突っ込めるとか・・・
007473
NGNG頂点ストリームごとじゃなくて・・・?なんだろ?w
0075デフォルトの名無しさん
NGNG>DirectX9対応ビデオボード搭載機種に買い換える
搭載機種に買い換えるんでなくパーツ買って組め
プログラマなら中身いろいろ取り変えれる自作の方が便利だぞ
>>69
SetWindowLong のことが訊きたいんじゃないんだろうか
0076デフォルトの名無しさん
NGNG初心者なら本を買え。勉強に金をケチるな
大抵基本的なことから書いてるはずだ
今我輩のすぐそばにある書籍にDirectX9実践プログラミング(工学社)があるが、そこにも書いてある
007765
NGNGしかし、気になるのはD3D_HAL使えない(はずの)ビデオボードでもエミュレーションで
D3D_HALで動かす方法があるという話をちらっと聞いた覚えがあるのです。
そのあたりを詳しい方がいたら「本当にそんなことができるのか」「できたとしてD3D_REFよりは速くなるのか」を
お聞きしたいと思います。
0078デフォルトの名無しさん
NGNG出来る。
>できたとしてD3D_REFよりは速くなるのか
>>77がどうエミュレーションレイヤーを作るかによる。
まあ、せいぜいがんばれ。
007953
NGNGでもoD0にバンブ用ベクトル、oD1にスペキュラ用ベクトルを入れてるので、
他の光源情報入れるとこないのよ。まあ背景オブジェクトの描画ならこれでもいいかな?
昨日夢の中で、複数の光源情報を空いてるテクスチャに入れとく方法を考えついた。
目覚めたら忘れた。
0080ここはゲーハー板の臭いがする。
NGNG_,‐―‐、,---、
/ ヾ \
/ /i \ ヽ
| | ///.ノ | | | |\、| / ̄ ̄ ̄ ̄ ̄ ̄
i' .| | -=・=| ト=・= |.|||<RADEON最高
| | 'ー―‐,! '――' .|| \______
| | .| (_^_) | |
.| ト、 =⇒ /| ||
| i ゝ\ /| | ||
//∧| ~`ー‐/ | | | |
( * ヽー--' ヽ )
(∵ ;) ゚ ノヽ ゚ ):)
(: ・ )--―'⌒ー--`,_)
(___)ーニ三三ニ-)
(∴ ー' ̄⌒ヽニ3 )
`l ・ . /メ /
ヽ ∵ /~- /
(__)))))_)))))
0081デフォルトの名無しさん
NGNGこういうでかいAAは見難くなるから冗談でもやめてくれないかなぁ。
0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNGそれならGetDC使ってTextOutとか。画面表示はリアルタイムで見れて便利なときはあるよね
俺はデバッグ用出力ファイルに吐き出すことが多いけど、ログに残るからそれはそれで便利
0084デフォルトの名無しさん
NGNGはい、デバック時に表示したいので
getDCとTextout調べてみます
drectx使ってない時にウインドに変数を表示するやり方と一緒なのですか?
0085デフォルトの名無しさん
NGNG0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG>>86
できました
ありがとうございました
0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG普通にDirectX9初期化時にCreateDevice()で作成したものを指定してもダメなのでしょうか?
D3DXLoadMeshHierarchyFromX()関数の終了行でエラーが出ます。
コメントなどで、原因がpDeviceっぽいのですが、みなさんはどうやって
引数を指定してあげてるのでしょうか?
レベルの低い質問で申し訳です
0090デフォルトの名無しさん
NGNG:" `,..,")`,..," `_:"` ,"`、
'~`.,
,......, .., ,ヾ)
ヾ,.;'ヾ,.; '^ヾ,.;'ヾ;;;;'゙`゙'゙`;,.,.ヾ)
ヾ,.;″ , ヾ;,)
)
ー――-,, ,,,,-'" i)
____ ヾ / ___ i′
ヽ(;;;;)丿 '.(;;;)ノ i ─┼─
 ̄ i ─┼─
(.,,. .,,.) i │
,i | | /
,、____, i _/
.---‐ ,ノ
ヽ ヽ、 _ _ _ ,ノ
俺が仕事も勉強もしないのは別にできないからじゃない。
やりたくないわけでもない。
くだらない事に時間を費やすくらいなら、今は自分を見つめていたい。
こんなことって、
世間のがさつで無神経な奴らには絶対に理解できないだろうし、してほしくもない。
0091デフォルトの名無しさん
NGNGグローバル宣言で
LPDIRECT3DTEXTURE lpD3DTexture[64] =NULL;
とするとエラーが出るのはわかるのですが
配列で宣言することはできないのでしょうか?
0092デフォルトの名無しさん
NGNGとするか素直にコンストラクタ等で
for使って初期化
0093デフォルトの名無しさん
NGNG配列で宣言することは「できます」
LPDIRECT3DTEXTURE lpD3DTexture[64];
配列なのに後ろにNULL1つでで初期化しようとしてるのが失敗
0094デフォルトの名無しさん
NGNG即レス マジ サンクスです。
めっちゃ助かりました。
ありがとう!!!
0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNGつーか、グローバルなら何もしなくても0で初期化されることは保証されている
0097デフォルトの名無しさん
NGNGこれでは一つしか初期化されない。
>つーか、グローバルなら何もしなくても0で初期化されることは保証されている
そんな保証は無い。
0098デフォルトの名無しさん
NGNG>これでは一つしか初期化されない。
そんなことは無いよ。
>そんな保証は無い。
組み込み用でバグバグあるいは仕様に制限が沢山あるコンパイラでもなければ、保障されてるよ。
ローカル変数と勘違いしている予感・・・
0099デフォルトの名無しさん
NGNGttp://www.catnet.ne.jp/kouno/c_faq/c1.html#30
1.30項参照。
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNG静的変数でコレをやると最初の変数が1で初期化されて後は0
自動変数でコレをやると最初の変数は1で初期化されて後は未定義
こういうことかな
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG俺はcreatedeviceで作ったデバイスで普通にいけるよ。
0104デフォルトの名無しさん
NGNGhRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "SetCooperativeLevel FAILED");
で
// 協調レベルの設定
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "SetCooperativeLevel FAILED");
にすると実行時にSetCooperativeLevel FAILEDとエラーがでます
どうすればいいのでしょうか?
0105デフォルトの名無しさん
NGNGじゃあ引数変えなければいいじゃん。
0106デフォルトの名無しさん
NGNGフルスクリーンモードじゃなくてウインドウモードにしたいんです
0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNG演奏が時々ぶつ切りになるし不安になってきた…
あれIStreamのReadってどういうタイミングで呼ばれるのかよく分からん…。
状況がわかりやすいDirectSoundに切り替えようかなあと思案中なのだが。
0109デフォルトの名無しさん
NGNGHDC hdc;
hdc = GetDC(hWnd);
char str[100];
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_EXCLUSIVE | DDSCL_NORMAL| DDSCL_ALLOWREBOOT);
sprintf(str,"%c", hRet);
TextOut(hdc , 10 , 10 , (LPCSTR)str , strlen(str));
ReleaseDC(hWnd , hdc);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "SetCooperativeLevel FAILED");
これでhRetの値調べて原因調べようとしたけど
SetCooperativeLevel FAILEDとエラーが出て
ウインドウにはWとしか表示されませんでした、どこかおかしなとこありますか?
0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNG滅茶苦茶だな。
0113デフォルトの名無しさん
NGNGint hoge[64] = { 1 };
自動変数でも hoge[1]からhoge[63]まで0でしょ。
0114デフォルトの名無しさん
NGNG>TextOut(hdc , 10 , 10 , (LPCSTR)str , strlen(str));
>ウインドウにはWとしか表示されませんでした
ネタかよ
0115デフォルトの名無しさん
NGNGsprintf(str,"%x", hRet);
飯食いに行くけどね
0116デフォルトの名無しさん
NGNG>>112
>>115
HDC hdc;
hdc = GetDC(hWnd);
char str[100];
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);
sprintf(str,"%x", hRet);
TextOut(hdc , 10 , 10 , (LPCSTR)str , strlen(str));
ReleaseDC(hWnd , hdc);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "SetCooperativeLevel FAILED");
に変更してみましたけどCreateSurface FAILEDと出ました
ウインドにはなにも表示されませんでした
>>114
ネタじゃないです
プログラミング歴1週間なのでいろいろ間違いがあると思いますが…
0117デフォルトの名無しさん
NGNGじゃなくて
>sprintf(str,"%p", hRet);
だよ
0118デフォルトの名無しさん
NGNGえ?マジ?と思って実験したらマジでなった。正直びびった。
こんな言語仕様なんか知らなかったYO。
0119デフォルトの名無しさん
NGNGていうか、仕事では書かないでほしいコードだな。
わけがわからない。
0120デフォルトの名無しさん
NGNG↓
DDSURFACEDESC ddsd = { sizeof(DDSURFACEDESC) };
0121デフォルトの名無しさん
NGNG0122デフォルトの名無しさん
NGNG0123デフォルトの名無しさん
NGNG0124デフォルトの名無しさん
NGNG→(3)
0125デフォルトの名無しさん
NGNG終わってるな。
0126デフォルトの名無しさん
NGNGパッと見直感的じゃないのは俺の中では全部駄目なんだ。
言語仕様の詳細を知らないと動作が把握できないソースを
わざわざ書く意味がわからない。
これ↓
DDSURFACEDESC ddsd = { sizeof(DDSURFACEDESC) };
では何をしているのかわけがわからない。
dwSizeが必ず先頭にあるということを知っておかなければ理解が
できないソースというのが気持ち悪い。
DDSURFACEDESC ddsd;
ddsd.dwSize = sizeof(DDSURFACEDESC);
の方が普通はわかりやすいはずだ。
この意見に異論がある奴はスレ違いなのでこっちへこい。
http://tv3.2ch.net/test/read.cgi/geinin/1042054245/
相手になるぞ。
0127デフォルトの名無しさん
NGNG0128デフォルトの名無しさん
NGNG0129デフォルトの名無しさん
NGNG↓
DDSURFACEDESC ddsd;
ddsd.dwSize = sizeof(DDSURFACEDESC);
は間違い
DDSURFACEDESC ddsd = { sizeof(DDSURFACEDESC) };
↓
DDSURFACEDESC ddsd;
ZeroMemory(&ddsd);
ddsd.dwSize = sizeof(DDSURFACEDESC);
これが正解っしょ、こうなるとドッチが見やすいかは微妙になてくるとおもうけどねぇ
0130デフォルトの名無しさん
NGNGZeroMemory 使う方がいいのでは?
dwSize が必ずあればいいけど
D3DSURFACE_DESC みたいに dwSize 無いやつもあるし。
無い時はエラー出てくれたほうがいいと思う。
0131デフォルトの名無しさん
NGNG漏れはローカルスコープで変数を初期化リストに入れたりして
便利に使ってるよ。
0132デフォルトの名無しさん
NGNG私は、この掲示板の書き込みを見て、目を疑いました。
(英訳風)
0133デフォルトの名無しさん
NGNGどれとどれとどれよ
0134デフォルトの名無しさん
NGNGerror : "CreateSurface FAILED" 定義されていない単語です。
初心者なればこそ、人に聞かずに情報を集めること、を学べ。
>129
DDSURFACEDESC ddsd = {0};
ddsd.dwSize = sizeof(DDSURFACEDESC);
2行だしZeroMemory要らないし。
0135デフォルトの名無しさん
NGNG0136デフォルトの名無しさん
NGNG0137116
NGNG調べてみましたけど資料が少なくて参考にならなかったです
if (hRet != DD_OK)
hRetにDD_OKって文字が入ることもあるんですか?
0138134
NGNG何か変か?
確かにerror〜は面白くないネタでスマソだが。
>137
それが、情報を集める力が足りてないって事。
とりあえずDirectXやる前に
>hRetにDD_OKって文字が入ることもあるんですか?
こんな事を訊かないぐらいのCの知識は持っていてくれ。
あと>134のも一応説明しておくと、
>109のエラーと違って、"CreateSurface FAILED"って単語が、
提示されたソースの中に含まれていないのに、どうしろと。ってこと。
0139116
NGNGcの本調べてもこのようなif (hRet != DD_OK)文字との比較なんか載ってなかったです
if (a != 0)とか数字との比較のことしか載ってまっせんでした
// プライマリ・サーフェイスの生成
ZeroMemory(&ddsd, sizeof(ddsd));
ddsd.dwSize = sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount = 1;
hRet = g_pDD->CreateSurface(&ddsd, &g_pDDSPrimary, NULL);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "CreateSurface FAILED");
CreateSurface FAILEDの部分です
0140デフォルトの名無しさん
NGNGそれをチェックしろと言ってるんだよ
ゆうべのsprintf で出たstrを"CreateSurface FAILED"の代わりに入れてみ
0141116
NGNG// 協調レベルの設定
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT);
の時は// プライマリ・サーフェイスの生成がうまくいくのですがこのときのhRetには (null) が入ってました
だけど
// 協調レベルの設定
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);
の時は// プライマリ・サーフェイスの生成のところで設置したsprintfでhRetの値を表示する前後で
CreateSurface FAILEDとは違ったエラーが発生してるみたいでhRetの値を表示できませんでした
0142116
NGNGそのエラーはoutput,cの
#else /* _UNICODE */
if (flags & (FL_LONG|FL_WIDECHAR)) {
if (text.wz == NULL) /* NULL passed, use special string */
text.wz = __wnullstring;
bufferiswide = 1;
pwch = text.wz;
while ( i-- && *pwch )
++pwch;
textlen = (int)(pwch - text.wz);
/* textlen now contains length in wide chars */
} else {
if (text.sz == NULL) /* NULL passed, use special string */
text.sz = __nullstring;
p = text.sz;
while (i-- && *p)
++p;
textlen = (int)(p - text.sz); /* length of the string */
}
のwhile (i-- && *p)で起こっているそうです
フルスクリーンになるとブレイクポイントを使ったデバックもできなくなるみたいで
なかなか思うように作業がすすみません
0143デフォルトの名無しさん
NGNG0144116
NGNGHSPとか使ってたんですけど物足りなくなったのでC言語をやりはじめたんです
0145デフォルトの名無しさん
NGNG↓のようにできないか?
char str[100];
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);
sprintf(str,"SetCooperativeLevel FAILED(%x)", hRet);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, str);
0146デフォルトの名無しさん
NGNG0148デフォルトの名無しさん
NGNG俺の作ったPG 24bit ZでもZ-Fightingしまくりなんです、逃げ道ありますか
0149デフォルトの名無しさん
NGNG0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNGヾ,.;'ヾ,.; '^ヾ,.;'ヾ;;;;'゙`゙'゙`;,.,.ヾ)
ヾ,.;″ , ヾ;,)
)
ー――-,, ,,,,-'" i)
____ ヾ / ___ i′
ヽ(;;;;)丿 '.(;;;)ノ i ─┼─
 ̄ i ─┼─
(.,,. .,,.) i │
,i | | /
,、____, i _/
.---‐ ,ノ
ヽ ヽ、 _ _ _ ,ノ
俺が仕事も勉強もしないのは別にできないからじゃない。
やりたくないわけでもない。
くだらない事に時間を費やすくらいなら、今は自分を見つめていたい。
こんなことって、
世間のがさつで無神経な奴らには絶対に理解できないだろうし、してほしくもない。
http://uniup.hp.infoseek.co.jp/cgi-bin/img-box/img20040208183457.jpg
0153デフォルトの名無しさん
NGNGDD_OK という文字列を右クリック -> 定義位置を参照
これで分からないようであれば、
C言語からやり直した方が将来的にも良いかと。
0154153
NGNG"定義位置を表示" か "定義へ移動" だったか…
0155デフォルトの名無しさん
NGNG0156デフォルトの名無しさん
NGNGそれはz-testにかけるz値のバイアスとスケールの設定がイイ加減だから。
ちゃんと嫁↓
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/fixedfunction/transforms/projectiontransformation/whatisprojectiontransformation.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/fixedfunction/transforms/projectiontransformation/settingprojectionmatrix.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/fixedfunction/viewportsclipping/viewingfrustum.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/fixedfunction/viewportsclipping/clippingvolumes.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/fixedfunction/viewportsclipping/viewportscaling.asp
あとは整数バッファの精度とよく相談をして、シーンを(もしくは描画手続きを)作る。
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/gettingstarted/rendering/depthbuffers/depthbuffers.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/gettingstarted/rendering/depthbuffers/usingzbias.asp
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/advancedtopics/pixelpipe/depthbias/depthbias.asp
おしまい。
0157デフォルトの名無しさん
NGNGさきに2Dのゲームの作り方を勉強してから3Dのゲームを勉強したほうがいいのでしょうか?
それとも3Dのゲームからはじめてもいいのでしょうか?
0158デフォルトの名無しさん
NGNG自分のやりたい方から始める方がいいよ
知識やテクはあとからついてくるし
0159デフォルトの名無しさん
NGNG3Dからでいい。
0160デフォルトの名無しさん
NGNGもっとゲーム以外の根本的なことから勉強した方がいい
0162104
NGNG>>104の
>にすると実行時にSetCooperativeLevel FAILEDとエラーがでます
が書き間違いで
>にすると実行時にCreateSurface FAILEDとエラーがでます
でした
あと
>>109の
>SetCooperativeLevel FAILEDとエラーが出て
の部分も
>CreateSurface FAILEDとエラーが出て
に訂正します
すいませんでした
0163104
NGNG>>162で間違い訂正しましたのでその間違いをふまえた上で以下のように変更してみました
// 協調レベルの設定
hRet = g_pDD->SetCooperativeLevel(hWnd, DDSCL_NORMAL);
の状態で
// プライマリ・サーフェイスの生成
を
char str[100];
sprintf(str,"CreateSurface FAILED(%x)", hRet);
if (hRet != DD_OK)
return InitFail(hWnd, hRet, "CreateSurface FAILED");
に変更して実行すると
CreateSurface FAILED(887600e1) と出ました
>>154
#define DD_OK S_OK
#define S_OK ((HRESULT)0x00000000L)
となってました
#define SCREEN_WIDTH 640こんな感じの定義しか見たことないので((HRESULT)0x00000000L)の意味もよくわかりません
>>155
リモートってなんですか?
0164デフォルトの名無しさん
NGNG0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNG0167デフォルトの名無しさん
NGNG最近このスレこんなんばっか。┐('〜`;)┌ゲンナリ
0168デフォルトの名無しさん
NGNG笑っとけ。ぎゃははははは
あーおかしい
0169157
NGNG回答ありがとうございます。
とあるサイトで「さきに2Dをやっといたほうがいい」ということが書いてあったので、
先にどっちをやろうか迷っていたのです。(directx9の本には3Dのことばかり書いてあるので)
それでは3Dのほうを勉強させていただきます。ありがとうございました。
0170デフォルトの名無しさん
NGNG>CreateSurface FAILED(887600e1) と出ました
それならば887600e1をDXErr.exeで調べれば、原因と対処法を教えてくれる。
オープンソースのDirectX用ライブラリは多く出回っている。
該当する部分をチェックすれば、正しいやり方とかわかってくると思う。
0171デフォルトの名無しさん
NGNGCをもっと理解してから出直すか、HSPでもやっとけ。
とにかく今ここにいても、おまえに与えられるものは何もない。
0172デフォルトの名無しさん
NGNG_____________
|__/⌒i__________/|
| '`-イ.|∵∴(・)∴∴.(・)∴| | .| tanasinn
|ヽ ノ |∵∵∵/ ○\∵| | .|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
バタン
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
| |
| |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0173デフォルトの名無しさん
NGNGすこしでも期待した漏れがアフォだった。
0174デフォルトの名無しさん
NGNG激しく同意。
しかし、結構いい記事もあるにはある。
0175デフォルトの名無しさん
NGNG0176デフォルトの名無しさん
NGNGいや、ありゃコンピューターのCらしい。
0177デフォルトの名無しさん
NGNG/∵∴∵∴\
/∵∴∴,(・)(・)|
|∵∵/ ●ヽ|
|∵ /____|____) tanasinn
|∴ \_____/
|∵∴∵━━○┥
│∵∴/___|
|∵/∵\\__./|
○:/∴/∵∴|丶\
ノ∴/∵/∴∵|∵ヽ ゝ
 ̄ ̄ ̄| ̄| ̄| ̄ ̄
| ̄| ̄|
L ⌒l⌒l
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0178デフォルトの名無しさん
NGNG0179デフォルトの名無しさん
NGNGやねうらお様マンセー!!!!
DirectX Graphicsで2D!!!
ぷよーんと同じネタやってるう!!!
0180デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/gamedev/
0181デフォルトの名無しさん
NGNG/__ \
| | | |
(_) (__)
愛用ツール:ツクール
0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNG流行ってるのかな?
サンプルがDirectX8だったんだけど、書き直す時間がなかったのかな。
0184デフォルトの名無しさん
NGNG0185デフォルトの名無しさん
NGNG0186デフォルトの名無しさん
NGNG0187デフォルトの名無しさん
NGNG(.,○∀・) <魑魅魍魎の跳梁跋扈する頻闇の帳が
く[ ⊂] スレを包む宵、決闘の緞帳が開く!
┏━━━━┓
┃ ┃
>>183
流行ってるってーか、まあフツーの流れだあね。
>>186
まあ簡単だあね。こんなカンジで。
http://www.mvps.org/directx/articles/blit3d.htm
018865=77
NGNGどうやって勉強したらいいでしょうか?
いい本がありますか?
にしても、これだけ苦労してD3D_REFとほとんど同じ速度だったら(´Д`)だな。
0189デフォルトの名無しさん
NGNG誰が存在すると言った?
0190デフォルトの名無しさん
NGNGレイヤーを書くためにそのことが書いてある本を買うくらいなら
俺はGeForce4MXを買うだろうな
0191デフォルトの名無しさん
NGNGそういう場合はDirectDrawで2D専用のエンジンを書いたほうがよいと思います。
0192デフォルトの名無しさん
NGNG>どうやって勉強したらいいでしょうか?
とかいっている段階の奴が作れるはずがない。
0193デフォルトの名無しさん
NGNG0194デフォルトの名無しさん
NGNG0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNGCD-ROMに焼いて他のパソコンに入れたいと思ったんですが、場所を忘れてしまって(ノД`)
よろしくお願いしまつ(´・ω・`)
0198197
NGNG今の話はなかった事に_| ̄|○
0199デフォルトの名無しさん
NGNG/∵∴∵.|∧∧|∴\
/∵∴∵∴|(゚∀゚)|∵∴\ < tanasinn
/∵∴(・)∴.|.⊃⊂|∴.(・) |
|∵∵∵./ |.∪∪|○\∵|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
___ _ガシャ
/∵∴∵.||∴\─_ _
/∵∴∵∴||∵∴\― - ―
/∵∴(・)∴.||∴.(・) |― ―-−
|∵∵∵./ ||○\∵|−-―−
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG自分がどう実装するか次第なんだから、他人に結論を求めても意味がないだろ。
0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNG違いを教えて。エロい人。
0204デフォルトの名無しさん
NGNGヘルプに書いてある。
0205デフォルトの名無しさん
NGNG____
/∵∴∵∴\
/∵∴/∴∵\\
/∵∴●∴∴.● |
|∵∵∵/ ●\∵| tanasinnだね
|∵∵ /三 | 三| |
|∵∵ |\_|_/| |
\∵ | \__ノ .|/
/ \|___/\
0206デフォルトの名無しさん
NGNG読みましたがD3DPOOL_DEFAULTの存在意義が行間から読み込めません。
教えてエロイ人
0207デフォルトの名無しさん
NGNG0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG背景(空などの遠いもの)のテクスチャーは球に貼り付けるのか
箱に貼り付けるのか、1枚絵として用意するのか、どれが一番一般的なのでしょうか?
スカイドームかスカイボックスか4点の2Dポリゴンに貼り付けか
ということなのですが。
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNGそりゃキューブマップに流用できっからスカイボックスの方じゃないの?
ドームかボックスだけどそりゃ用意するテクスチャによるだろ?
ドーム用のテクスチャ用意する人(できる人)ってとりあえず見たこと無いから(俺は)
スカイボックスでいいんでない?
これだったらモデリングソフトで簡単に作れるって話。
0213210
NGNG0214デフォルトの名無しさん
NGNG真っ白に表示されてしまいます。
これは何が原因でしょうか。
0215デフォルトの名無しさん
NGNG0216デフォルトの名無しさん
NGNG(´゚∀゚`)
0217デフォルトの名無しさん
NGNG_._._._ __
| | | | |. |.||
) . vヽ. 丿 ソ
ヽ ノ__. _/___/
ノ____ノ∵∴∵ヽ /:∴/
/∴∵/:(・)∴.(・)ヽ /∵:/
/∵∴/∵/ ○\:l ./:∴/
/∴/:/:./三 | 三|:| /∵:/ tanasinn
/∵/:/∴| __|__ |:| /:∴/
/∴/:/ヽ.:| === .|ノ:∵:/
/∵/:く∴:ヽ\__/∵∴/
━(〒)━
0218デフォルトの名無しさん
NGNG0219デフォルトの名無しさん
NGNGD3DXLoadSurfaceFromMemory で D3DX_FILTER_NONE 指定して
転送してたんだが、 自分で テクスチャをLockして矩形を転送したほうが
遥かにはやかった。
なんでだろ?
0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNG__
//∴\___
|∵<・>∴∴<・>∵|
|∵∵/ ●\ ∵..|
|∵ /三 | 三|∵ |
|∵ |\_|_/|∵|
| | \__ノ | |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
tanasinnフォルダ(3)
0222デフォルトの名無しさん
NGNG・メッシュに法線がない。
・ライトの影響をうけないようになっている。
・マテリアルが真っ白だ。
・ディスプレイが白黒だ。
>>219
D3DXLoadSurfaceFromMemoryは布団の中でゴソゴソするタイプ。
おれも普通にロックして転送してるよ。
0223デフォルトの名無しさん
NGNG最初、立方体を使っていたけど、見る角度によっては、立方体であるのが
見え見えでみっともないのと、霧の効果をうまくかけられなかったかったので。
0224デフォルトの名無しさん
NGNG作成した後に作成するべきという制約があるので、それが守れるなら使った方がいいだろう。
でも無理だろそんなの。
0225デフォルトの名無しさん
NGNG自分はラッパーを作って、ロックと振り分けるようにしてる。
0226あぼーん
NGNG0227デフォルトの名無しさん
NGNGそんな制約あったか?
リファレンス見たが、それらしき記述は見当たらなかったのだが。
0228デフォルトの名無しさん
NGNG制約というほどでもないかもしれんけど、一応C++ヘルプでは下記のページに書いてあるよ。
Application-Managed Resources and Allocation Strategies
0229デフォルトの名無しさん
NGNGそれはDEFAULTを集中させてオーバーヘッドを減らすだけ。
どちらにせよDEFAULT優先でVRAM使うから、不足すればMANAGEDはキックされる。
それに後からでもメモリ配置は並べ替えできる。(全部破棄してDEF確保してMANA確保する)
0230デフォルトの名無しさん
NGNG_./ ̄ ̄ ̄ ̄\
/( 人____) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
/ .|ミ/ ー◎-◎-) < 見ろ俺のセクシーなヌードを!! │
,/ (6 (_ _) )\ \_____________/
`、 `,| ∴ ノ 3 ノ‐'`ノ モワ〜
\ ヽ,._____ノ ノ←>>1-1000
豸. ``Y" 拜."..::.::.::.::.::・・'゚。.・'゚。.::。.::・'・'゚。.::。.::・'・'゚。.::。.::・'・'゚。.::。.:
;": :: i. 、 ¥ ノ ・'゚。.:・・'゚。.::。.::・'・'゚。.::。.・:(;´Д`)オエーッ
; .;: :∴:(. ` -‐´;`ー ) ・'゚。.::。.::・'・'゚。.::。.::・・'゚。.::。.::・''・'゚。.::。.::
. ': .;".;": ( 彡 ミ ) モワ〜
: .;"∵;": ::″: ; ゝ '´ ̄"`ヽ
: .;".;":: :.;".;": / ■_,,,,,、 ノ
´ ..‘ :´ ;` :. ~. ;. / /`' ( ノ
:´ `: .``:. ;' ~ヾ ( ノ | (_,,-,,,
: : .~.. :´; ` :` , `: \ `ヽ / __ノ
;`: ,´ ;: ;` : :. .~.. \ \  ̄
; : ..‘:´ ;`:. ~.. ; :,´ : ノ _)
` ;..``:. ; ' ;.~ ;ヾ (.,,_/~
0231デフォルトの名無しさん
NGNGそれは知らなかった。ヘルプ鵜呑みだと、正確に管理できないと読めるので
そう思っていたよ。
純粋に疑問なんだけど、>>229の情報はただヘルプを読むだけでは
得られないものばかりだが、アンタその情報をどっから得たの?
0232デフォルトの名無しさん
NGNG>D3D 管理リソースとアプリケーション管理リソースの両方を同時に使用するときは、
>管理リソースを作成する前に、すべてのアプリケーション管理リソースを D3DPOOL_DEFAULT メモリに割り当てる必要がある。
>D3DPOOL_MANAGED メモリにリソースを割り当てた後で D3DPOOL_DEFAULT メモリにリソースを割り当てると、
>D3D メモリ リソースは使用可能メモリの不正確なアカウントを指定する。
0233デフォルトの名無しさん
NGNG漏れとしてはDEFとMANAをごちゃ混ぜで使うな、と読める。
0234デフォルトの名無しさん
NGNG3D製作ソフトでメッシュを製作して表示させるときに
ライトなしでマテリアルの色の表示(?)は可能でしょうか。
0235デフォルトの名無しさん
NGNGいつのまにか>>234なんかで悩まなくなるから。
0236デフォルトの名無しさん
NGNG一応頂点シェーダについてはある程度は勉強したつもりです。
ライトの影響を受けるものがマテリアルと学んでいるので普通は無理かと思います。
が、もしかしたら何か表示させる方法があるのかと思い聞きました。
0237デフォルトの名無しさん
NGNGD3DRS_LIGHTINGをFALSEじゃ駄目?
0238デフォルトの名無しさん
NGNGはい。
FALSEにするとテクスチャ表示は可能ですが、
マテリアルの色は駄目でした。
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG0241240
NGNGほい
http://www.microsoft.com/japan/msdn/library/ja/DirectX9_c/directx/graphics/programmingguide/usingdirect3d/lightsandmaterials/directlightvsambientlight.asp
D3DDevice.SetRenderState(D3DRS_LIGHTING,TRUE);
D3DDevice.SetRenderState(D3DRS_AMBIENT,D3DCOLOR_RGBA(255,255,255,255));
direct lightはひとつも要らない。
0242デフォルトの名無しさん
NGNG,.‐'´∴∵∴∵∴∵∴∵ `‐.、
./∴∵∴∵∴∵∴∵∴∵∴∵\ tanasinn
,i´∴∵∴∵∴∵∴∵∴∵∴∵∴∵ヽ
. /∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵i、
,i∴∵∴∵∴∵∴∵∴∵∴∵∴∵∧∴∵l ∧
|∴∵∴∵∴∵∴(・)∴∴.(・)∴∵:/ ヽ_∵.l . / . ヽ
. | ∴∵∴∵∴∵∴ / ○\ ∴∵./ `、⌒ヾ⌒ヽ/ ヽ
. |∴∵∴∵∴∵∴/三 | 三|∴./ (.....ノ(....ノ / ヽ
. |∴∵∴∵∴∵∴| __|__ |∴| ι ι::(....ノノ.
l∴∵∴∵∴∵∴| === .|:/ ̄ ̄ヽ ::::::::::::::/`ヽ
. ゙i ∴∵∴∵∴∵ \__/:(___..ノ :::::::::::::::::::(....ノノ
ヽ∴ ∵∴∵∴∵∴∵∴∵∴:ヽ ι ::::::::::::::::::::::::::ノ
0243デフォルトの名無しさん
NGNGマジウゼーなDirectXのマテリアルはよー。
ライトOFFでなんでambient生きてんだよw
これDirectXの制作者の勝手な解釈でこうなってんだろ。
確かに便利なときもあるやもしれんが頂点色と
マテリアルのambient,diffuse,specular,emissive・・・etcと
レンダリングステータスのambient。
さらにレンダリングステータスの頂点色使用の有無。
マテリアル使用の有無。
マルチテクスチャのブレンド。
どうにも管理してられん。
最終的な色は一体どうなんだよホントw
0244デフォルトの名無しさん
NGNGもしかしてSetMaterial()呼んでないとかいうオチでは。
0245240
NGNGRGBはD3DRS_AMBIENTMATERIALSOURCEのambient項とD3DRS_AMBIENTの乗算。
アルファはD3DRS_DIFFUSEMATERIALSOURCEのdiffuse項。
腐ってます。普通にvertex shader使いましょう。
0246デフォルトの名無しさん
NGNG0247240
NGNG0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNG0250デフォルトの名無しさん
NGNG0251デフォルトの名無しさん
NGNG/||∵/∴∵\∵∴∵∴l
/ ::::||∵<・>∴∴.<・>∵∴∵|=-<
/:::::::::::||∵ / ●\∴∵∴∵,'、
|:::::::::::::::||∵/三 | 三|∵∴∵/ ト
|:::::::::::::::||∵|\_|_/|∵∴,ィ'
|:::::::::::::::||∵| \__ノ |∵,/\_
|:::::::::::::::||∵\__/ ,イ |
|:::::::::::::::||∵∴∵ ,, ┐' ト-
|:::::::::::::::||| ̄乃'゙人 ∧
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ .|| tanasinn
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ . ||
|:::::::::::::::|| 〈 . ..||
|:::::::::::::::||,,/\」 . ..||
\:::::::::::|| ̄ ̄ ̄ ̄
0252デフォルトの名無しさん
NGNG体感速度がだんち
0253デフォルトの名無しさん
NGNG0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG複雑な3D処理の中核ボトルネック部分をアセンブラで書き直すと劇的に早くなることがあるね
0256252
NGNGWinMain以外全部asmだよ
0257デフォルトの名無しさん
NGNG0258デフォルトの名無しさん
NGNGばりはや
0259デフォルトの名無しさん
NGNG0260デフォルトの名無しさん
NGNG一体内部でどんなことやってるんだか
0261デフォルトの名無しさん
NGNGRTS型の縦シューだから経路探査にものすごい複雑な処理が必要なんだよ
0262デフォルトの名無しさん
NGNG0263252
NGNG0264デフォルトの名無しさん
NGNGだとしても、WinMain以外全部asmである必要はない。
最内ループやそれに類する高負荷部分以外は
コンパイラに任せた方が良い結果を生むことの方が多い。
いや、君が万人に一人の天才なら話は別だよ?そんときゃ素直に謝るよ
0265デフォルトの名無しさん
NGNG0266デフォルトの名無しさん
NGNGつか、縦シューなら素直にH/Wに頼れよ。
0267デフォルトの名無しさん
NGNG一体どんなキャラ/弾幕数とどれだけ複雑な処理を行っているのやら.
労力を無駄に浪費したいだけのアホなのはよく分かった.
0268デフォルトの名無しさん
NGNG敵キャラはもちろん敵弾一つ一つだ
0269デフォルトの名無しさん
NGNG,.‐'´∴∵∴∵∴∵∴∵ `‐.、
./∴∵∴∵∴∵∴∵∴∵∴∵\ tanasinn
,i´∴∵∴∵∴∵∴∵∴∵∴∵∴∵ヽ
. /∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵i、 ↓>>265
,i∴∵∴∵∴∵∴∵∴∵∴∵∴∵∧∴∵l ∧
|∴∵∴∵∴∵∴(・)∴∴.(・)∴∵:/ ヽ_∵.l . / . ヽ
. | ∴∵∴∵∴∵∴ / ○\ ∴∵./ `、⌒ヾ⌒ヽ/ ヽ
. |∴∵∴∵∴∵∴/三 | 三|∴./ (.....ノ(....ノ / ヽ
. |∴∵∴∵∴∵∴| __|__ |∴| ι ι::(....ノノ.
l∴∵∴∵∴∵∴| === .|:/ ̄ ̄ヽ ::::::::::::::/`ヽ
. ゙i ∴∵∴∵∴∵ \__/:(___..ノ :::::::::::::::::::(....ノノ
ヽ∴ ∵∴∵∴∵∴∵∴∵∴:ヽ ι ::::::::::::::::::::::::::ノ
0270デフォルトの名無しさん
NGNG,.‐'´∴∵∴∵∴∵∴∵ `‐.、
./∴∵∴∵∴∵∴∵∴∵∴∵\ tanasinn
,i´∴∵∴∵∴∵∴∵∴∵∴∵∴∵ヽ ↓>>249
. /∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵i、
,i∴∵∴∵∴∵∴∵∴∵∴∵∴∵∧∴∵l ∧
|∴∵∴∵∴∵∴(・)∴∴.(・)∴∵:/ ヽ_∵.l . / . ヽ
. | ∴∵∴∵∴∵∴ / ○\ ∴∵./ `、⌒ヾ⌒ヽ/ ヽ
. |∴∵∴∵∴∵∴/三 | 三|∴./ (.....ノ(....ノ / ヽ
. |∴∵∴∵∴∵∴| __|__ |∴| ι ι::(....ノノ.
l∴∵∴∵∴∵∴| === .|:/ ̄ ̄ヽ ::::::::::::::/`ヽ
. ゙i ∴∵∴∵∴∵ \__/:(___..ノ :::::::::::::::::::(....ノノ
ヽ∴ ∵∴∵∴∵∴∵∴∵∴:ヽ ι ::::::::::::::::::::::::::ノ
0271デフォルトの名無しさん
NGNG0272デフォルトの名無しさん
NGNGハァ??
君ってチンカス以下だね
0273デフォルトの名無しさん
NGNG0274デフォルトの名無しさん
NGNGLPD3DXSPRITEのDrawを使って等倍で描画すると64*64になってしまうのですが
2のN乗のピクセル数じゃないとダメとかって仕様なんですか?
Drawで75%にして表示させるのだと
48*48になってもスケーリングでぼやけてしまうので…
0275デフォルトの名無しさん
NGNG>2のN乗のピクセル数じゃないとダメとかって仕様なんですか?
うん、そう。
ていうか何がしたいんだよ。
0276デフォルトの名無しさん
NGNGぼやけるのは別問題。
三角形ラスタ化ルールをよく嫁。
0277デフォルトの名無しさん
NGNG0278デフォルトの名無しさん
NGNG>ぼやけるのは別問題。
>三角形ラスタ化ルールをよく嫁。
全然別問題じゃないぞ。
脳内反射でテクセルのせいだと思いこむな。
0279デフォルトの名無しさん
NGNGmonshoさんところのボーンの説明なんだけど。
ttp://monsho.hp.infoseek.co.jp/msys/sys08.html
どうして、ボーンをそう一度に突っ込もうとするんだ?
わけて描画するよりソフトウェア処理のがいいのか?
ちなみに俺はシャイなので直接本人に聞けなかったりする。
0280デフォルトの名無しさん
NGNG一つの頂点に対して、多数のボーンが割り当てられている場合、
どうやって分けるつもりなんだ?
0281デフォルトの名無しさん
NGNG0282デフォルトの名無しさん
NGNG例えば、(ボーンじゃなくて)ローカルのメッシュごとに描画すると考えて
そのメッシュの描画に必要なボーンがわかればいいんじゃないのか?
0283デフォルトの名無しさん
NGNG0284デフォルトの名無しさん
NGNGその変、色々こしょこしょごにゃごにゃ実験研究したんだが
おれも結果的には「スキニングはCPUで」になった
その過程の紆余曲折に関してはとてもここで述べきれないが
パフォーマンス以外の理由もかなり絡んでくる
0285デフォルトの名無しさん
NGNGなぁ?>>282の方法では駄目だった?
#いや、俺、自分じゃスキニング実装したことないんだけどねw
スキニングをCPUに妥協した理由がシェーダが面倒っていうなら納得するけど。
かいつまんでいうとなんで?
0286デフォルトの名無しさん
NGNGテクスチャ補間で、その領域の外部の点がサンプリングされて
周囲にノイズがのってしまうんですが、
どうやって回避するのが普通なんでしょうか?
各領域の境界に1ドットの遊びをつくってとりあえず対処しましたが、
もっと楽な方法ってあります?
0287デフォルトの名無しさん
NGNG今やるなら適当に分けて頂点シェーダーで処理したほうが絶対いいと思う。
それにゲームなら分けないで済んじゃう場合が多いのでは?
>>284
一つでいいのでCPU処理の利点を教えて欲しい。
0288285
NGNG>一つでいいのでCPU処理の利点を教えて欲しい。
では、代わりに俺が2つ利点をば・・・。
1つ目。
スキニングをCPUでやると設計が楽ってところです。
頂点シェーダって組み方にもよると思いますけど
スキニング有り無しと2つ書かないといけないですよね。
バンプマップもスキニング有りと無し
環境マップも同様。
そのほかのものも同様。
って感じではっきりいって面倒です。
スキニングをCPUでやるととっても楽になりますってただそれだけなんですけどね。
2つ目。
ボーン一箇所に何本までね。とかいう制限が無くなる。
こんな感じでどうでしょうか?
ってか実装したことないんですけどね。俺w
これからやろうと考えてるので色々とうまい組み方が知りたいです。
0289デフォルトの名無しさん
NGNGでもCPU資産の方が余程重要と考える俺はケチなんだろか
0290デフォルトの名無しさん
NGNGおれはPEN4-3.2GHzDualだからね
0291デフォルトの名無しさん
NGNGcaps.MaxVertexBlendMatrixIndex
がカードによってばらばらだから。
convert2*BlendedMesh
がめんどくさい。
0292デフォルトの名無しさん
NGNG0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNG環境を幅広く取ったらやる気失せるよなあ
0295デフォルトの名無しさん
NGNGだじゃらメッシュ単位の問題ではなく、
同一頂点に対して、ハードの限界を上回るボーンが関連付けられたら、
分けようがないということなんだが。
0296デフォルトの名無しさん
NGNG>>279のリンク先に関していえばレジスタ数の問題って書いてあるからそっちじゃないんじゃないかな。
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNGDirectShowで簡単なビデオ編集(切り出し)ソフトを作ろうとしていて、
タイムライン表示用にBMPを撮りたいのですが、ISampleGrabberもIMediaDetも
DX9と共存できなくて困っています。
GetImage的な使い方が出来る方法はないですか?
0299デフォルトの名無しさん
NGNGGUIDを自分で定義するなりすれば使える。
0300デフォルトの名無しさん
NGNG,.‐'´∴∵∴∵∴∵∴∵ `‐.、
./∴∵∴∵∴∵∴∵∴∵∴∵\
,i´∴∵∴∵∴∵∴∵∴∵∴∵∴∵ヽ
. /∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵i、
,i∴∵∴∵∴∵∴∵∴∵∴∵∴∵:../⌒ヾ皿⌒ヽ
|∴∵∴∵∴∵∴(・)∴∴.(・)∴∵∴./_(.....ノ─(.....ノ_
. | ∴∵∴∵∴∵∴ / ○\ ∴∵:../11 12 1\
. |∴∵∴∵∴∵∴/三 | 三|∴∵./ ↑ / ヽ tanasinn
. |∴∵∴∵∴∵∴| __|__ |∴../ 10 ......↑ (....ノノ
l∴∵∴∵∴∵∴| === .|∵.l .. ...│ .. /`ヽ
. ゙i ∴∵∴∵∴∵ \__/∴.l 9 .... ● (....ノノ
ヽ∴ ∵∴∵∴∵∴∵:./ ̄ ̄ヽ . lノ
(___..ノ. 4 /
0301デフォルトの名無しさん
NGNG0302298
NGNG0303デフォルトの名無しさん
NGNG>同一頂点に対して、ハードの限界を上回るボーンが関連付けられたら、
>分けようがないということなんだが。
ハードの限界を上回るって一頂点に何十本も割り当てる意味ってあるの?
あまりにも微妙すぎて結局無駄になりそうな気がする。
0304デフォルトの名無しさん
NGNG確かGeForceでは固定機能ではインデックス不可で2Weightまでだったはず。
単純に制限が強すぎて使えない。
0305デフォルトの名無しさん
NGNGそれって頂点シェーダの話?
0306303
NGNG今なら頂点シェーダーが動かないボードでもシェーダーを使った処理をして
初期化時にソフトorハード処理を切り替えたほうがいいと思う。
DirectX8世代より前のボード使ってる人ってもう少数派なのでは?
まあシェーダーは一切使わないって方針もありだとは思うけど…
>>305
固定機能って書いてあるよ。
0307デフォルトの名無しさん
NGNG頂点シェーダじゃなかった。すつれい。
自分も昔固定機能HWスキニングの為に、メッシュ分割モジュールを組んだことがあるが
今はもうHDDの肥しになってる訳で。こんなもんに労力を割くのは無駄。
実装も美しくなくなるし。
同様の理由でHDRLightingも無駄、つーかDirect3D自体無駄。
0309デフォルトの名無しさん
NGNGこれを使って複数のバッファを同時再生すると、
バッファAのシグナルが発生するタイミングで
バッファBのシグナルも発生してしまうようです。
これの回避方法は無いでしょうか?
使用しているのはDX8.1で、目的はストリーミング再生です。
ちなみに、調べてみたところ、OSがw2kだと起こり、98だと起こらないらしいです……
0310デフォルトの名無しさん
NGNG問題というとMsgWaitなんたらかんたらかなぁ。
あの関数は全ての自動リセットイベントを非シグナル状態にします。
マニュアルリセットにして、ストリームへロードしたバッファのイベントのみ
非シグナルにすれば上手く行くかもしれません。
0311309
NGNGシグナルの検知にはWaitForSingleObjectを使っています。
シグナル発生のたびにバッファへ書き込みを行い、
書き込んだ分だけ読み込み用ポインタをずらしているのです。
そのため、他のバッファのシグナルを検知してしまうと、
バッファ内容が意図しないタイミングで更新され、
読み込みポインタがどんどんズレてしまうハメに。
結果的には音飛び状態になっています。
マニュアルリセットの件については、
どういう事なのかピンときませんでした……すみません。
0312デフォルトの名無しさん
NGNGバッファつくるときにDSBCAPS_LOCSOFTWAREを指定。
って、解決策になってないね…。
誰かH/Wにリソース置いても上手くいく方法教えてくだせえ。
0313デフォルトの名無しさん
NGNGそういうのはスレッドの設計があまりよろしくないと思います。
今のままで解決する方法もあると思いますが思い切って設計変えたほうが楽な気がします。
こういうタイプの実装方法って主に3つパターンあると思うんですが
1)1スレッドに1イベントと1バッファを割り当てる
2)1スレッドで全イベントを管理、イベント発生したら対応バッファを処理、終了したら次のイベントを待機
3)1スレッドで全イベントを管理、イベント発生したら待機スレッドを起動、対応バッファを割当、そのスレッドでバッファを処理
1番と3番はスレッドが複数必要で同期要りますが、2番のスレッドは1つです。
MsgWaitForMultipleObjectsを使ってイベントを待ちましょう。この関数の注意点は310の通りです。
0314313
NGNGもしかして全てのバッファで同じイベント使ってない?(;´Д`)
0315デフォルトの名無しさん
NGNG0316309
NGNG>イベント発生したら対応バッファを処理
これが出来ないから困っているんです……
イベントが発生しても、対応するバッファを知ることが出来ないのです。
バッファAにイベント1、イベント2を設定し、
バッファBにイベント3、イベント4を設定したとします。
バッファAの再生位置がイベント1に達したとき、
本来ならイベント1のみがシグナル状態になるはずですが、
なぜかイベント1とイベント3が一緒にシグナル状態になったりするのです。
これですと、イベントが発生したからといって、バッファを処理して良いとは限りません。
0318デフォルトの名無しさん
NGNGハードウェアの時だけ出る症状なの?
0319デフォルトの名無しさん
NGNG漏れの環境ではハードウェアの時だけ。
んで今、DirectXのヘルプ見たらDSBUFFERDESCの注意の項に
VxD ドライバの場合、DSBCAPS_CTRLPOSITIONNOTIFY を使って作成された
サウンド バッファは常にソフトウェア バッファである。(中略)
ハードウェアが利用可能な場合は、WDM ドライバにより、通知可能なバッファが
ハードウェアに存在することがある。
とある。
Win9X系では正常で、Win2kではおかしいってのはこのせいじゃないかと思ってる。
で、これドライバ最新のにしても直らんのよ。皆、どうしてる?
0321309
NGNGなるほど……DSBCAPS_LOCHARDWAREでやっみたら上手くいきました。
悲しいですがとりあえず、w2kではハードウェアを捨ててやってみます。
>>320
うう、私の説明が下手なんでしょうか……。
どのイベントがシグナル状態になっているかは分かっています。
しかし、シグナル状態になるタイミングそのものが異常なのです。
0322313
NGNGハードウェアからの通知が遅すぎて変なタイミングで更新されるってことですか(;´Д`)
とにかく解決してよかったです。
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNG0325313
NGNGWDM系ドライバだとハードウェアに通知可能なバッファを置くことが出来るがその通知がどうも怪しい
だからソフトウェア配置にすれば通知タイミングが安定する環境がある
…そういうことじゃないの?(;´Д`)
気になって試しにサンプルのソース弄ってみたけど
Win2k&LOCHARDWAREにしてもちゃんと動いたよ
結局ドライバとかハードウェアの問題じゃないの?
0326デフォルトの名無しさん
NGNG0327デフォルトの名無しさん
NGNG0328デフォルトの名無しさん
NGNG0329デフォルトの名無しさん
NGNG検索すれば、同じ現象で悩んでる(た)人を見つけられるはず。
ちなみに俺が出した結論は
SetNotificationPositions を 使 わ な い
0330デフォルトの名無しさん
NGNG定期的に適当な関数呼び出して貰って位置取得しつつロックすりゃいい。
…って位置取得もなんか問題あったような。
ホントDirectXって糞だな。
0331デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNG/∵∴∵∴\
/∵/∴∵\∵\ . .. \|
/∵<・>∴∴.<・>∵| . . / ̄ ̄ ̄
|∵∵/ ●\∵∵| . /
|∵ /三 | 三|∵ | |
|∵ |\_|_/| ∵| ∩
\ | \__ノ |/ . |.| tanasinn
\___/:、 ∪、
/∵━○━∵ヽ ..| \
/∵人∵∵∵ \:\ \ \
⊂´:_/ )∵∵∵∵ヽ:_`⊃ / ̄ ̄ ̄ ̄ ̄ ̄
/
0333デフォルトの名無しさん
NGNG0334デフォルトの名無しさん
NGNG0335デフォルトの名無しさん
NGNGつうか24になってゲームなんか作ってる俺の方がもっと糞だ
0336デフォルトの名無しさん
NGNG0337デフォルトの名無しさん
NGNG0338デフォルトの名無しさん
NGNG0339デフォルトの名無しさん
NGNG書き込む前にGetCurrentPos()使って、次の書き込みが再生位置に被らないか判定する。
一回の通知で二つ分のバッファを書き込むようにしているから、こうしているんだが。
まあこの方法でも、USBサウンドデバイスが通知を受けた後のGetCurrentPos()で、
通知位置より前の位置を返してきたりして困ったが。
0340デフォルトの名無しさん
NGNGいい加減、質問する前に少しは調べる癖を身につけろよな・・・
ttp://www.tobysoft.net/toby_diary2003.html
ttp://www.namikaze.org/yodiary/200010.html
結局はそんな腐ったインターフェース使うなということで
ファイナルアンサーなんだからさ。
0341デフォルトの名無しさん
NGNG講釈師 見てきたような 嘘をいい
0342デフォルトの名無しさん
NGNG解決策にはなってないな。
0343デフォルトの名無しさん
NGNGこれがFAだとすると、ほんとに鬱だ氏のうって感じだな
DirectX腐れすぎだ
0344デフォルトの名無しさん
NGNG0345デフォルトの名無しさん
NGNG0346デフォルトの名無しさん
NGNG現在はBGMと、効果音(銃声)を再生したいと思っております。
効果音の種類は今後追加することになるかもしれません。
本などを調べて、IDirectMusicPerformance8,Loader8,AudioPath8はひとつずつ用意して、
segmentにかんしては、再生させるWAVファイルの種類分必要というこということを
しりました。
BGMはひとつあれば十分ですが、銃声に関しては鳴らすキャラクターも複数おりますので、
音声がかぶることがあります。
ということでPlaySegmentExの引数に、BGMはプライマリーで、銃声はセカンダリーと
指定すれば、銃声は複数のセグメントを用意しなくても1つで十分ということみたいですが、
(そうですよね・・・?)、たとえば、ゲームをポーズさせて、のちに再開たい場合はどう
すればいいのでしょうか。
中止時刻を記憶しておいて、途中再開させるときはそこからスタートさせるような処理
を行うのでしょうか。でも、BGMなら1つだからまだ可能そうですが、1つのセグメントを
複数に多重再生させているような状態でそれがかのうなのでしょうか。
IDirectMusicSegmentState8を使えばなんとかなるかもとおもったのですが、そうも
思えなくて困っております。
よろしくおねがいします。
0347デフォルトの名無しさん
NGNG∵ ∴ ∴∵∴ ∴
∴∵∴∵∴∵∴∵∴∵∴∵∴∴∵
∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
∴∵∴∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴
∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵/ ⌒ヽ∴∵∴∵∴
∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵| | |∴∵∴∵
∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∪ / ノ∴∵∴∵∴∵
.. ∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵| ||∵∴∵∴∵
.∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∪∪∴∵∴∵∴∵
.∵∴∵∴∵∴∵∴∵:(・)∴∴.(・)∵∴∵∴∵∴∵∴∵∴∵∴∵∴
∵∴∵∴∵∴∵∴∵∴/ ○\∵∴∵∴∵∴∵∴∵∴∵∴
..∵∴∵∴∵∴∵∴∵/三 | 三ヽ∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
. ∴∵∴∵∴∵∴∵ | __|__ │∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵ tanasinn
.∵∴∵∴∵∴∵∴∵| === │∵∴∵∴∵∴∵∴∵∴∵∴
.∵∴∵∴∵∴∵∴∵\___/∵∴∵∴∵∴∵∴∵∴∵∴
..∴∴∵/ ̄.. \∴∵∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴
∴∵∴/ ,. i ∵∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
∴∵∴| /.| |.∵∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
∵∴| | :| |.∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴
∴| | |::| |.∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
∴| | |∵U∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴
| | |∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵∴∵
/ / / ∵∴∵∴∵∴∵∴∵∴∵ ∵
/ / / ∴∵∴∵∴ ∴
.しし’ ∵
0348デフォルトの名無しさん
NGNG今更だが、
Pen4はDual不可だぞ。
0349デフォルトの名無しさん
NGNG保証されてますか?
DirectXSDKについてるPickのサンプルでNULLを渡してますが、
ヘルプにはNULLを渡す事について何も書かれてないと思うのですが。
見落としだったらすいません。
使ってるのはDirectX9.0bです。
0350デフォルトの名無しさん
NGNGMSの掟。
0351デフォルトの名無しさん
NGNGそこが大きな問題だ。
0352デフォルトの名無しさん
NGNGWindowsから一歩離れればDirectXなんか無いシナー
0353デフォルトの名無しさん
NGNG0354デフォルトの名無しさん
NGNG0355デフォルトの名無しさん
NGNG0356デフォルトの名無しさん
NGNGdxdiagのテストプログラムソースって有りませんか?
0357デフォルトの名無しさん
NGNGコード晒してください。
0358デフォルトの名無しさん
NGNGTextureはD3DPOOL_DEFAULTってまずいかな?
0359デフォルトの名無しさん
NGNG結婚生活はMANAGEDってまずいかな
0360デフォルトの名無しさん
NGNGべつにまずくはない。
0361デフォルトの名無しさん
NGNGWIN32SDKからやる方法って、どうやるんでしょうか?
0362デフォルトの名無しさん
NGNG0364デフォルトの名無しさん
NGNGD3DCREATE_MIXED_VERTEXPROCESSING
って使ってる?
0365デフォルトの名無しさん
NGNG0366デフォルトの名無しさん
NGNGどのくらいのハードを対象にしてるの?
ピクセルシェーダぐらいは使っていいの?
0367デフォルトの名無しさん
NGNG0368デフォルトの名無しさん
NGNGじゃあ次は何の時代なんだ?
0369デフォルトの名無しさん
NGNG0370デフォルトの名無しさん
NGNG0371デフォルトの名無しさん
NGNG0372デフォルトの名無しさん
NGNG最初から4次元だったんだよ。
セーブからやり直せるし。
037310次元→ひも理論をへて
NGNG0374デフォルトの名無しさん
NGNGSDKを落として、最初のサンプルをビルド。エラー。
なんか関数の定義がサンプルでの使用法と違ってるらしい。
結局、summer版SDKを入れてたせいでした。本はその前のSDK向けだったみたい。
というか、何で同じバージョンで、しかも初心者向けサンプルに含まれる関数定義をあからさまに変えますか。
どうせ俺はヘルプ読めねえよ!
8.1をやるか、OpenGLをやるかというお達しかね…_| ̄|○
0375デフォルトの名無しさん
NGNG少なくとも別バージョンにするべきだったと思う。
0376デフォルトの名無しさん
NGNG面倒は嫌いなんで、次回作ゲームを作り始めるタイミングで入れよっと。
でも、DirectX10とかが先に出てるかもしれん。
0377デフォルトの名無しさん
NGNG0378デフォルトの名無しさん
NGNGsummerの一つ前のDirectX9SDKをインスコすればいいだけじゃーん
3Dの勉強したいだけならOpenGLが簡単でいいかもね
0379デフォルトの名無しさん
NGNG0380374
NGNG>>378多謝。
3Dをやりたいのだが、ネットワークとかサウンドも扱ってみたいのでDirectXを選んでみました。
とりあえず、これから勉強してみますわ。
0381デフォルトの名無しさん
NGNG今後のメジャーバージョンアップは9.1、9.2、9.3になるので(10はナシ)
0382デフォルトの名無しさん
NGNG0383デフォルトの名無しさん
NGNGこのサンプルを動かすとフルスクリーンで起動するんですが、普通のウィンドウのように起動するには
どうしたら良いですか?
0384デフォルトの名無しさん
NGNG0385デフォルトの名無しさん
NGNGジョイスティックを使って画像を動かしたいのですけれど、なぜか動かないので・・・
0386デフォルトの名無しさん
NGNGのちのち為になるし
0387デフォルトの名無しさん
NGNG0388デフォルトの名無しさん
NGNG0389デフォルトの名無しさん
NGNG本はかってます。工学社のやつ。しかし見てもわからないんです。
画像を動かすやつのサンプルがないですし。
>>387
サンプルにあるんですか?
一通り見たけどなかったような・・・
0390デフォルトの名無しさん
NGNGちなみに普通に考えればその機能はDirectInputじゃないんだがな…。
0391デフォルトの名無しさん
NGNG本とサンプル見れば分かるだろ
本当に読んだのか?
0392デフォルトの名無しさん
NGNGSDKインスコしたとこよく見れ。Joystickってのがある。
あとヘルプのDirectInputチュートリアルがわかりやすいので嫁。
0393デフォルトの名無しさん
NGNG2Dの画像を上下左右に動かしたいのです。
例えばパックマンみたいな感じで。
0394デフォルトの名無しさん
NGNG直接データとバッファリングデータの読み込み方法はわかったのですが、
画像を動かそうとするとなぜかうまくいかず・・・
変数を使って表示位置を変えるというのはわかってるんですが。
0395デフォルトの名無しさん
NGNGDirectXとかプログラム以前にPCの常識的なことを学ばないと…。
それはDirectInputの問題ではなくDirectX Graphicsのほうだ。
ジョイスティックを扱っても画面を書き換えることは出来ないだろ。
0396デフォルトの名無しさん
NGNG>画像を動かそうとするとなぜかうまくいかず・・・
ここが肝心なところ。
どんなふうに「うまくいかない」のか説明してくれないとアドバイスできない。
ジョイスティックからの入力に間違いがないか、表示して確認する。
画像の移動に間違いがないか、XかYを変化させながら表示して確認する。
両者が正しいのなら、あとはつなぎ合わせるだけ。
0397デフォルトの名無しさん
NGNGどう上手くいってないか書かないと推測のしようもないわけだが・・・・・・・
DirectInputのサンプルは\DX90SDK\Samples\C++\DirectInput
ウィザードで生成されるものにもDirectInputは使われている
ついでにお勉強サイト
http://masafumi-t.cool.ne.jp/directx9.htm
http://www3.omn.ne.jp/~renas/DirectX/index.html
ソースを晒して叩いてほしいならウプロダは
http://gamdev.org/up/
ゲーム開発関係専用なので要注意
予備知識を仕入れたいなら
http://gamdev.org/w/?%5B%5B%A5%CB%A5%E5%A1%BC%A5%B9%A5%BD%A1%BC%A5%B9%5D%5D
のリンク集がよくまとまってる
勉強したいならこのリンク集
お勉強ページ 勝手にリンク
http://pc2.2ch.net/test/read.cgi/gamedev/1005060553/
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNG画像の表示位置を変数で指定→ジョイスティックのボタンを押したら変数が変わる→これによって画像の位置を変化
という風にしようとしているのですが、なぜかボタンを押しても表示位置が変わらないのです。
0400デフォルトの名無しさん
NGNGその変数とやらは変化してるのか?
デバッガ使えばすぐに分かるだろうし。
0401デフォルトの名無しさん
NGNGジョイスティックだけで動かしてみて確かに入力が取れてるのかどうかとか
画像表示は表示位置を変えてもちゃんと描画されるのかとか
そーいうことを確かめろって言われてるんだってば
0402デフォルトの名無しさん
NGNGプログラム内で変数を変えてみる→動かない→画像を移動させる処理が変
↓
動いた
↓
入力処理が変→入力自体が出来ていない→エラーコードを調べる
↓
入力出来てる
↓
条件分岐や変数の処理が間違ってないか確認
少なくとも聞く前にこれくらいはやろうぜ。
0403デフォルトの名無しさん
NGNG0404デフォルトの名無しさん
NGNGデバッガのブレークポイント設定で、きちんと更新されてるかどうか調べてみぃ。
>>398
DirectX7以前のことは知らないのだが、ソースちらっと見た感じだと、
dd_lib.hのDD_INITあたりが該当するんでないかと。
どうもフルスクリーンモードしか作れないような仕組みになってるような…。
あとプログラム動かしてみたがテクスチャがキモイ。なんか間違ってる気がする。
0405デフォルトの名無しさん
NGNGこれを
ddret = OldDDObject->SetCooperativeLevel(hwnd, DDSCL_NORMAL);
こう変えてみたんですが無理ですた。
>>404
やっぱ無理ですか?
0406デフォルトの名無しさん
NGNGそれってその場面でエラー出てる?
0407デフォルトの名無しさん
NGNGビルドは出来ました。
しかし実行するとプライマリィサーフェースが生成できませんとダイレクトドローの初期化に失敗しました
というメッセージボックスがでて終了してしまいます。
0408デフォルトの名無しさん
NGNGそのエラーメッセージが出る場面は314行のところだな。
手元にDX7のヘルプが無いのでかなり憶測でしか言えないんだが、
恐らくウィンドウモードではフリッピングが不可能なのではないかと推測。
バックバッファとプライマリバッファの入れ替えが出来るのはフルスクリーンならではの芸当だからね。
一般のバッファに描画して、それをプライマリバッファへコピー、という描画方法にしてみてはどうだろう。
多少パフォーマンスは落ちるが今のPCなら無問題でないかと。
0409デフォルトの名無しさん
NGNGん〜俺の頭はショート寸前…。
0410デフォルトの名無しさん
NGNG0411デフォルトの名無しさん
NGNG@や:みたいな一文字だけを立体で表示する方法を教えてください
あと、ランダムに生成されるダンジョンのマップから
三次元の部屋を構築する方法も教えてください
0412デフォルトの名無しさん
NGNG・モデラーでメッシュを作成してそれを表示する
・Text3Dサンプルを見る
>ランダムに生成されるダンジョンのマップから三次元の部屋を構築する方法
抽象的すぎて答えようがない
0413デフォルトの名無しさん
NGNG0414デフォルトの名無しさん
NGNGなるほどw ワロタ
0415デフォルトの名無しさん
NGNG0416デフォルトの名無しさん
NGNG型変換てどうやったらいいんでしょうか?
(DirectXじゃないかと思いますが
型のことをよくわかってないので他スレだと説明が…)
0417デフォルトの名無しさん
NGNGchar str[100];
sprintf(str, "数字表示したいよ〜ん%d %f," i, f);
その後strを云々…
0419デフォルトの名無しさん
NGNG0420デフォルトの名無しさん
NGNGそれにちゃんと答えてやってるのも珍しい
0421デフォルトの名無しさん
NGNGこうやって低レベルな質問にマジレスしてしまうとスレのレベルが下がる、
低レベルな質問は叩くぐらいの殺伐とした感じのほうがよいかもな。
0422デフォルトの名無しさん
NGNG0423デフォルトの名無しさん
NGNG>@や:みたいな一文字だけを立体で表示する方法
412にあるとおりだが
・モデラーでメッシュを作成してそれを表示する
に関しては、SDK付属のMeshViewerでも半角文字ならメッシュ作成して
Xファイル保存は出来るな。
0424デフォルトの名無しさん
NGNG文字を画面に表示させたいのですが上手くいきません。
#include <studio.h>
main()
{
printf("ハローワールド\n");
}
絶対あっているはずなのですがコンパイルできません。
このままでは先に勧めませんので誰か助けてください
0425デフォルトの名無しさん
NGNG|
__|_
あ゛ /;;;;;;;;;;;;;;;;ヽ >>424
あ゛ /;;;;;;;;;;;;;;;;;;;;;;;;;;;;i. そんな餌で
あ゛ l;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i, わいは釣られへんでー
〈 'i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;i,
.〉 |;;;;,、;;;;;;;;;;;;;;ノ|ノ レ' ,、
〈 , !、| !、lVl/ `、_/ .ノ l l
!! i´l / |__./ //
// |. V\_,-| ト┘
| | \./ 〉 _,/ !、
く_____,/
,i;;;;;;;;;;;;;;;;;;;;;i
,!\;;;;;;;;;;!'´ 'i
l ./´`i |
| / | |
/ ./ |. |
/`'7 |´`|
/ / | |
i´`| i'´`i
| / ! ノ
STDndard Input/Output
0426デフォルトの名無しさん
NGNG#include <stdio.h>
じゃねーか?
それとひとついっておくと「スタディオエイチ」とでも脳みそで発音してそうだが
「エスティーディーアイオー」が正しいらしいぞw
なんの略だっけか・・・スタンダードなんちゃらでいいんだっけ?
0427デフォルトの名無しさん
NGNGですよ。
覚えましたか?
0428デフォルトの名無しさん
NGNGなんで「あいおー」だけそのままなんだ?
0429デフォルトの名無しさん
NGNG0430デフォルトの名無しさん
NGNG自演臭いですね。
0431デフォルトの名無しさん
NGNGごほうびにいっぱい出したげるね
0432424
NGNGありがとうございました!!!!!!
0433デフォルトの名無しさん
NGNG0434デフォルトの名無しさん
NGNG0435デフォルトの名無しさん
NGNG0436デフォルトの名無しさん
NGNG0437デフォルトの名無しさん
NGNG0438デフォルトの名無しさん
NGNG0439デフォルトの名無しさん
NGNG0440デフォルトの名無しさん
NGNG今3Dの勉強をしているんですが2Dのほうも知っておくべきでしょうか?
0441デフォルトの名無しさん
NGNG0442デフォルトの名無しさん
NGNGねこ
435 名前:デフォルトの名無しさん 投稿日:04/03/03 13:03 ID:EfTGq2hX
こねこ
436 名前:デフォルトの名無しさん 投稿日:04/03/03 13:04 ID:EfTGq2hX
大好き
437 名前:デフォルトの名無しさん 投稿日:04/03/03 13:22 ID:EfTGq2hX
お兄ちゃん?
438 名前:デフォルトの名無しさん 投稿日:04/03/03 13:23 ID:EfTGq2hX
ん がついたから>>437の負け
0443デフォルトの名無しさん
NGNGねこ
435 名前:デフォルトの名無しさん 投稿日:04/03/03 13:03 ID:EfTGq2hX
こねこ
436 名前:デフォルトの名無しさん 投稿日:04/03/03 13:04 ID:EfTGq2hX
大好き
437 名前:デフォルトの名無しさん 投稿日:04/03/03 13:22 ID:EfTGq2hX
お兄ちゃん?
438 名前:デフォルトの名無しさん 投稿日:04/03/03 13:23 ID:EfTGq2hX
ん がついたから>>437の負け
442 名前:デフォルトの名無しさん[sage] 投稿日:04/03/03 17:44 ID:EfTGq2hX
0444デフォルトの名無しさん
NGNGねこ
435 名前:デフォルトの名無しさん 投稿日:04/03/03 13:03 ID:EfTGq2hX
こねこ
436 名前:デフォルトの名無しさん 投稿日:04/03/03 13:04 ID:EfTGq2hX
大好き
437 名前:デフォルトの名無しさん 投稿日:04/03/03 13:22 ID:EfTGq2hX
お兄ちゃん?
438 名前:デフォルトの名無しさん 投稿日:04/03/03 13:23 ID:EfTGq2hX
ん がついたから>>437の負け
442 名前:デフォルトの名無しさん[sage] 投稿日:04/03/03 17:44 ID:EfTGq2hX
443 名前:デフォルトの名無しさん[sage] 投稿日:04/03/03 17:44 ID:EfTGq2hX
0445デフォルトの名無しさん
NGNG今日は楽しい姫初め
0446デフォルトの名無しさん
NGNG#include <stdio.h>
__stdcall WinMain(HINSTANCE, HINSTANCE, char*, int)
{
printf("ハローワーク\n");
}
0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNG現在Direct3Dを勉強中なのですが
上の行の意味を教えてください。
0450デフォルトの名無しさん
NGNG・Matrix.RotationX(System.Environment.TickCount / 150.0f) → 時間と共にX軸を中心に回転させる行列
・Matrix.Translation(0.0f, 0.0f, -4.0f) → Z方向に-4だけ動かす行列
・Matrix.Multiply(…) → 上の二つの行列を組み合わせる
・device.Transform.World =… → ワールドトランスフォームは上の結果
0451デフォルトの名無しさん
NGNG0452デフォルトの名無しさん
NGNG本やサイトを参考に記述して
「Zバッファを使って前後関係を正しいシーンを描写する」
って言うのをやってみたのですがうまくいきません。
初期化などの設定は以下の通りです。
d3dpp.EnableAutoDepthStencil= TRUE;
d3dpp.AutoDepthStencilFormat= D3DFMT_D16;
gl_lpD3ddev->SetRenderState(D3DRS_CULLMODE,D3DCULL_NONE);//裏面消去しない
gl_lpD3ddev -> SetRenderState(D3DRS_LIGHTING,FALSE);//ライティングしない
gl_lpD3ddev -> SetRenderState(D3DRS_ZENABLE, TRUE);//Zバッファ
gl_lpD3ddev -> SetRenderState(D3DRS_ZWRITEENABLE, TRUE);//
gl_lpD3ddev->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);//テクスチャ透過
gl_lpD3ddev->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);//
gl_lpD3ddev->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);//
で描写の前にこのようにZバッファをクリアしています。
//---バックバッファ、Zバッファクリア
gl_lpD3ddev->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER ,D3DCOLOR_XRGB(255,255,255),1.0f,0);
スレ違いだったり、変数が意味不明だったらもうしわけないです。
何か情報が足りなかったら提示しますので言ってください。
ですが明日卒業式前日で召集かかってるので
レスは遅くなってしまうかもしれません。
違点にお気づきの方がいましたらレスください。
0453デフォルトの名無しさん
NGNG0454デフォルトの名無しさん
NGNGサーフェスを使って表示するのとどちらがいいのでしょうか。
0455デフォルトの名無しさん
NGNG3Dカードがない場合、どちらが高速ですか?
0456デフォルトの名無しさん
NGNGサーフェス
0457デフォルトの名無しさん
NGNGだから比較しようがない。
0458デフォルトの名無しさん
NGNGDirect3D9: (ERROR) :Memory still allocated! Alloc count = 107
0459デフォルトの名無しさん
NGNGただの外国語
0460デフォルトの名無しさん
NGNGフォグをかけるとRGBすべての成分にフォグの効果がかかりますが、
これを特定のカラー成分だけに適用させることって可能ですか?
ポリゴンを描画する際、B成分のみフォグを適応させたいんですが…
0461デフォルトの名無しさん
NGNGあと、前投影面を0に設定していたりしてない?
0462デフォルトの名無しさん
NGNGピクセルシェーダでできるようなできないような。
0463デフォルトの名無しさん
NGNG0464452
NGNG後ろにあるオブジェクトが前に表示されたんです
0465デフォルトの名無しさん
NGNG正直いまさら説明するのもアホらしい
0466デフォルトの名無しさん
NGNG0467デフォルトの名無しさん
NGNGじゃあこれ↓
http://www.microsoft.com/japan/msdn/library/ja/directx9_c/directx/graphics/programmingguide/gettingstarted/devices/devicetypes.asp
0468452
NGNGこのことですよね?
D3DXMatrixLookAtLH(
&gl_ViewMat,//our
&D3DXVECTOR3(0,5,10),//form
&D3DXVECTOR3(0,0,0),//focus
&D3DXVECTOR3(0,1,0));//up
このようにビュートランスフォームしています。
前投影面は0ではないと思います。
gl_Near = 0.000001f;//前方投影面
gl_Far = 50.0f;//後方投影面
こんな感じです。
0469デフォルトの名無しさん
NGNG検索しろよ
0470デフォルトの名無しさん
NGNGビューポートはビュー行列とは違うぞ
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/directx9_c/directx/graphics/reference/d3d/structures/d3dviewport9.asp
この辺を読めばなんのことかわかるのではないかと・・・。
0471452
NGNGと思ったのですが。間違えてビュートランスフォームを書いてしまいました。
Directx5についてのチュ−トリアルだったのですが、設定してる内容が似てる
のでこれだと思ったのですがやはり違いますか、、、、
//---射影行列
D3DXMatrixPerspectiveFovLH(
&gl_ProjMat,//out
60.0f * 3.1415f / 180.0f,//角度
1.0f,//比
gl_Near,//近点
gl_Far);//遠点
0472452
NGNGD3DVIEWPORT8VP={0,0,800,600,0.0f,1.0f};
gl_lpD3ddev->SetViewport(&VP);
今したのですが。
でもうまく描写してくれません。。
0473デフォルトの名無しさん
NGNGちなみに3Dの描画の流れはこんな感じです。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/directx9_c/directx/graphics/programmingguide/fixedfunction/legacyfvfformats/vertexandpixelprocessing.asp
ところで>>452ではアルファブレンドをかけてるみたいですが、
ちゃんと不透明なものを全て描いてから透明なものを描いていますか?
どううまくいかないのか書いてくれないと答えようがないです。
0474452
NGNG私が参考にしてるチュートリアルの画像です。
最終的にはこのように表示したいのですが、
カメラの座標を移動して
地面の裏から投影してもキャラクタが
描写されてしまうのです。
gl_lpD3ddev->SetTexture(0,gl_lpPlayerTexture);//伽羅テクスチャの設定
gl_lpD3ddev->DrawPrimitiveUP(D3DPT_TRIANGLEFAN,2,gl_PlayerVertex,sizeof(TLVERTX));//伽羅の描写
gl_lpD3ddev->SetTexture(0,gl_lpEarthTexture);//地面テクスチャを設定
gl_lpD3ddev->DrawPrimitiveUP(D3DPT_TRIANGLEFAN,2,gl_EarthVertex,sizeof(TLVERTX));//地面の描写
このようにすると描写した順番に描写されるだけで前後関係が無視されてしまうのです。
0475デフォルトの名無しさん
NGNGgl_Nearの値を1.0fくらいにしてみたら?
以前、視点ギリギリのポリゴンを表示したいと思い、この値を
小さくしすぎたら、Zソートが変になってギザギザに表示された。
ビデオボードがショボかったからかもしれんが。
0476452
NGNGうまくいきました。
Zバッファのサイズからして
gl_Near = 0.000001fでは
ほとんど0に近似して処理してるのでしょうか、
とにかくうまくいきました
ありがとうございます。
0477デフォルトの名無しさん
NGNGあの深度じゃ0扱いだと思う。
0478デフォルトの名無しさん
NGNGVC++でDirectXを使用し、3DのRPGを製作しようと思っているのですが
3Dのフィールドマップを設置するにはどの様な手段がございますか?
DXSDKのサンプル等を見て自分なりに考えた方法は
モデリングツールで作成したフィールドマップをX形式で保存して
それをDirect3Dによって表示させるという方法です。
他に手段がございましたらご教示下さい。お願い致します。
0479デフォルトの名無しさん
NGNGわざわざX形式を仲介するほどのことはないと思います
0480デフォルトの名無しさん
NGNGXでもいいけど自分のアプリに適した自前形式に変換し、Direct3DかOpenGLで表示でございます
0481デフォルトの名無しさん
NGNGまずどんなフィールドにするのかという条件を明確に定義しろ。
話はそれからだ。
0482デフォルトの名無しさん
NGNGみんないいの持ってんのかね?
おれは六角フリー版だ、、
0483デフォルトの名無しさん
NGNG割れ物じゃないぞ。
0484デフォルトの名無しさん
NGNG0485デフォルトの名無しさん
NGNG今調べてみたんだが
メタセコいいね。
0486デフォルトの名無しさん
NGNG0487デフォルトの名無しさん
NGNG0488デフォルトの名無しさん
NGNG0489478
NGNGX形式でなくても大丈夫なのですね。
>>481
条件ですか・・・。
イメージとしてはフル3Dで構成されたMMOのようなフィールドです。
具体例を挙げると、最近のではリネージュ2がそうでしょうか。
ん〜・・・説明が曖昧すぎますね、ハッキリしなくて申し訳ない。
0490デフォルトの名無しさん
NGNGちなみにROみたいな3Dフィールドは内部データはほとんど2Dと一緒
ゼノギアスとかああいう完全3Dのフィールドは3D用のデータ構造を作らなきゃならない
0492デフォルトの名無しさん
NGNGフィールドデータを用意するのが大変なのもそうだが何よりもプログラムが大変だな。
あとFF11とROの決定的な違いは論理移動空間が3Dと2Dで違うこと。視点云々の問題ではないです。
0493478
NGNGスマソ。↓の行は余計でしたね・・・。
>ですから視点変更なども出来るようにしたいと思ってます。
フィールドマップについてですが
ハイトフィールドを使って高低差をつけてみます。
0494デフォルトの名無しさん
NGNGどうやって細かい部分を作ってるの?
モデリングソフトで読み込めないじゃない?
ウチのところは一回ハイトフィールドをポリゴンで出して
モデリングソフトで読み込んで色々と配置して実際のデータでは
ポリゴンを普通に読み込んで表示。
当たり判定は標高データを使うってしてるけど。
みんなのところはどうよ?
0495デフォルトの名無しさん
NGNG普通にD3DCREATE_SOFTWARE_VERTEXPROCESSINGを指定するだけで
頂点シェーダを使用することは可能なんでしょうか?
(使うバージョンは1.1です)
0496デフォルトの名無しさん
NGNG0497デフォルトの名無しさん
NGNG早速のお答えありがとうございます。
これで安心して使えます。
恐縮ですが、もうひとつだけ質問させてください。
頂点フォーマットがRHWの時は頂点シェーダをスルーして
直接スクリーン座標を出力しているのか、それとも
なんらかのシェーダを通って射影座標を出力しているのでしょうか?
というのも、XYZRHW,RHW=1と同じ表示を
XYZで頂点シェーダを使用して表示させているのですが、
もしRHWではシェーダを全く使用しないなら
単にコストが多くなってるだけなのかと思いまして・・・。
0499デフォルトの名無しさん
NGNG実際の表示データを作るときはそれでいいんじゃない?
無理に論理データと一緒にする必要は無いしなー
0500デフォルトの名無しさん
NGNGそれがですね。
なんだかハイトフィールドからポリゴン作って
モデリングソフトでいじってっていう手順を踏むと何故か
ハイトフィールドと整合性が取れなくなることがあるんですよw
(デザイナいじったでしょ?みたいなw)
なのでデザイナが作ったデータからハイトフィールド作れみたいな要望が
あったんですけどこれは面倒ですよね。ぜひ省きたい作業ですね。
いや、そりゃーできるっちゃあできると思いますよw
で、なんか楽なやり方知ってる人いないですかねーということで・・・。
0501デフォルトの名無しさん
NGNGメッシュからハイトフィールドを求めるのはそれほど難しくないんじゃない?
xy平面に垂直な直線とメッシュとの交差点を求めれば高さが求まるし。
まー究極を求めたらポリゴンレベルで判定しなきゃならんわけだが
ゲームなんだし適当なところで妥協していいかとw
0502デフォルトの名無しさん
NGNGあー結局やることになっちゃらほいw
terragen→ハイトフィールド出力→メッシュ変換ツール→モデリングソフト→ポリゴン出力→ハイトフィールド変換ツール→ハイトフィールド出力
あーあ無駄無駄無駄無駄無駄馬鹿馬鹿馬鹿馬鹿馬鹿・・・。
この一連の作業を間違えずに最後までやれると
考えてるところがなんともデザイナさんらしいですw
0503デフォルトの名無しさん
NGNGまあ泣くな、同士は沢山いる
http://www.solid-web.com/article/2001/0930.html
0504497
NGNG「それ」とは、RHW使用の時でしょうか?
確かにRHW使用時には
ワールド トランスフォーム行列が使用がされていないようなので、
平行移動時は頂点座標を直接いじる必要があるようですね。
これは単にワールド行列を無視したシェーダを使っているのか、
別の処理なのかが謎で・・・。
自前シェーダ時は任意の行列をかけられますが、
今作っている物は、2Dで複数のスプライトをまとめて表示しているので、
基本的に回転等は頂点を動かしてスクリーン座標を直接渡しています。
ちょっと見当はずれの答えかもしれませんが・・・。
0505デフォルトの名無しさん
NGNG表現は難しいがスクリーン座標ともちと違うちょっとずれたスクリーン座標だw
例えば800X600じゃなくて1:1とか変な単位になってるだけのスクリーン座標だ。
0506デフォルトの名無しさん
NGNGちうか、市販CGツールをステージエディタ代わりに使うなら
ステージデータのImporter/Exporterぐらい作るだろ普通。
0507デフォルトの名無しさん
NGNG市販CGツールのSDKでもさわれたらいいんだけど、
そんな暇ないからその辺手作業。なんてったって中小ですからw
いくらか設定も必要な場合が多いので自動ってわけにもいかないので
ちくちく手でやってもらってたりして・・・。
0508505
NGNG人手足りないなら仕方ないか・・・。
そういう場合は、perlとかpythonで簡易なコマンドラインツールを
シコシコろ作りつつ、それらをバッチ処理させるかな。やや古典的だけど。
データの作りこみ・修正作業の手続きが煩雑だと後々ボディーブローのように
ジワジワ利いて修羅場化するから、ないよりマシな代物でも重宝されるよね。
0509508
NGNGs/506/507/
s/505./506/
0510デフォルトの名無しさん
NGNG0511デフォルトの名無しさん
NGNG/(ヘ ω.)ヘ 丿ヽ.)L
('A` ;) ハァハァ
/(ヘ ωヾ('∀` ;)>.)L
メッ!!
( `A')
/(ヘ ωヾ(゚∀゚;;;)>.)L
( `A') ('A`;) スミマセン
/(ヘ ω.)ヘ ノ )
^ ^
ヒトノ キンタマ
カッテニ サワリヤガッテ!
( `A') ('A`;) モウシマセン
/(ヘ ω.)ヘ ノ )
^ ^
クラエ!! ティンコレーザー!!!
( `A') ┌ ('A`;)丿 ノワー!!!
/(ヘ .☆━━━━━━∴ノ )
0512デフォルトの名無しさん
NGNGGUIでビジュアル的に使えないとあとで駄目っぽいです。
とりあえず地形の方は
「地形のモデルでハイトフィールドを作りますので、地形ノードの名前のはじめの3文字を半角のGroにしておいてください。」
っていっておいたら、また、色んな人がいるわw
1.Gro Gだけ全角w
2.Gra つづりがちがうじゃんw
3.Gら またまたw
4.じめん Σ(゚Д゚)
動物園かよ・・・。
0513デフォルトの名無しさん
NGNGプリレンダのムービーパートしかやったことない連中は
「命名規則なんざクソ喰らえだせ」な奴が多いけどな。
>GUIでビジュアル的に
いや、バッチ処理のためにコンバータの中核部分だけ
コマンドラインツールにしておき、Tcl/TkでGUIラッパー。
ってそこまでするならプラグイン作っちまうけどな。
0514デフォルトの名無しさん
NGNG10分足らずでtiny君が歩いてくれたよ
感動した
DirectX9マンセー
0515デフォルトの名無しさん
NGNG0516デフォルトの名無しさん
NGNGtinyちゃんと呼べ。tinyタンでも可。
0517デフォルトの名無しさん
NGNG0518デフォルトの名無しさん
NGNG0519デフォルトの名無しさん
NGNGノシ
0520デフォルトの名無しさん
NGNG課長とかが部下に「佐藤君、お茶」とかいうし。
0521デフォルトの名無しさん
NGNG0522デフォルトの名無しさん
NGNG0523デフォルトの名無しさん
NGNGむしろ可愛い。
0524デフォルトの名無しさん
NGNG0525デフォルトの名無しさん
NGNGtinyタン詳細プロフィールとか無いの?
0526デフォルトの名無しさん
NGNG0527デフォルトの名無しさん
NGNG0528デフォルトの名無しさん
NGNG0529デフォルトの名無しさん
NGNGDXUpdateの方が容量が少なくて不安だからです。
0530デフォルトの名無しさん
NGNG嫁
http://www.microsoft.com/downloads/details.aspx?FamilyId=9216652F-51E0-402E-B7B5-FEB68D00F298&displaylang=en
> Major components include: DirectX 9.0b system components (runtimes);
0531デフォルトの名無しさん
NGNG0532デフォルトの名無しさん
NGNGDirectInput8Create(gl_Hinstance,DIRECTINPUT_VERSION,IID_IDirectInput8,&gl_lpDI,NULL)
の第4引数がダイレクトインプットオブジェクトへのポインターになるんですよね?
その後の
gl_lpDI->EnumDevices(DI8DEVCLASS_GAMECTRL, EnumJoysticksCallback,NULL, DIEDFL_ATTACHEDONLY)
でgl_lpDIがポインターじゃないっていわれるんですけど何が悪いのでしょうか?
日本語ドキュメントも英語版ドキュメントも見ましたがさっぱりわかりません
gl_Hinstance アプリケーションのインスタンスハンドル
&gl_lpDI LPVOID型
0533デフォルトの名無しさん
NGNG0534デフォルトの名無しさん
NGNGLPVOIDってなんなんでしょうか?
0535デフォルトの名無しさん
NGNGLPVOIDってなんなんでしょうか?
0536デフォルトの名無しさん
NGNGLPVOIDってなんなんでしょうか?
0537デフォルトの名無しさん
NGNG0538デフォルトの名無しさん
NGNG0539デフォルトの名無しさん
NGNGチュートリアルを見ろ。
0540デフォルトの名無しさん
NGNG障害者には優しく接しましょう。
障害者は強い不安を抱いてしまうと、目の前にあるものが見えなくなります。
また自分の存在すら見えなくなるので、同じ言葉や行為を繰り返すことがあります。
0541デフォルトの名無しさん
NGNGLPVOIDってなんなんでしょうか?
LPVOIDってなんなんでしょうか?
LPVOIDってなんなんでしょうか?
0542デフォルトの名無しさん
NGNG2chのような低レベルな場所で質問した私がバカでした。
時間を無駄にしてしまいました、もう来ません。
0543デフォルトの名無しさん
NGNGLPDIRECTINPUT8 g_lpDI;
DirectInput8Create(gl_Hinstance,DIRECTINPUT_VERSION,IID_IDirectInput8,(void**)&g_lpDI,NULL);
0544デフォルトの名無しさん
NGNG2chのような低レベルな場所で質問した私がバカでした。
時間を無駄にしてしまいました、もう来ません。
0545デフォルトの名無しさん
NGNG0546デフォルトの名無しさん
NGNGP=ポインタ
VOID=空っぽの
0547デフォルトの名無しさん
NGNGまだ9.0が使い物にならんらしいね。ハード依存があるらしいね。
ちょうどSDK落とそうと思っていたんだけど、いろいろと検索をかけてみると、
9.0はまだ駄目駄目らしいですから。
8.1bは英語資料しかないらしいですね。要は8.0の日本語資料を使えということですかね。
0548デフォルトの名無しさん
NGNGNG
>まだ9.0が使い物にならんらしいね。ハード依存があるらしいね。
8だろうが7以前だろうが、ハード依存はある。
0549547
NGNG0550デフォルトの名無しさん
NGNGそういう問題じゃなくて?
0551デフォルトの名無しさん
NGNGしかし8完全対応のビデオカードも自作系の人間を別にすれば、
それほど普及していない。
どこで折り合いを付けるかというだけで、フルに機能を使わなければ、
どのバージョンでも関係ないし、対応がされていないのなら、
代替動作を用意する手もある。
0552デフォルトの名無しさん
NGNG分かりにくいというのが問題だよな
0554デフォルトの名無しさん
NGNG0555デフォルトの名無しさん
NGNG0556デフォルトの名無しさん
NGNG0557デフォルトの名無しさん
NGNG0558デフォルトの名無しさん
NGNGD3DXの算術関数だけを使いたい時があるんだけどD3DX9.libだけを
リンクし、算術関数だけを使用した場合、DirectX9をインストール
していなくても起動するでしょうか?
算術関数の実体がD3DX9.libにあればいけると思うのですが…
0559デフォルトの名無しさん
NGNG0560デフォルトの名無しさん
NGNGありがとうございました
0561デフォルトの名無しさん
NGNGDirectX7で必要十分だからね。
0562デフォルトの名無しさん
NGNG俺もだけど。
0563デフォルトの名無しさん
NGNG0564デフォルトの名無しさん
NGNG・自分で試したほうが早い。
・どのDLLがロードされたかVCのツールで確認してみる。
・算術関数の中身はネット上に転がっているのでそれ使う。
0565デフォルトの名無しさん
NGNG0566デフォルトの名無しさん
NGNG0567デフォルトの名無しさん
NGNG>>564
> ・算術関数の中身はネット上に転がっているのでそれ使う。
M$が実際に実装しているコードが転がってるということ?
それなら是非見てみたいが…アドきぼん
0568デフォルトの名無しさん
NGNGって意味じゃねーの?
0569デフォルトの名無しさん
NGNG意味が違う
0570デフォルトの名無しさん
NGNG違う
0571デフォルトの名無しさん
NGNG合成しちゃうってぇのは無理ですかねぇやっぱり。
0572デフォルトの名無しさん
NGNG0573デフォルトの名無しさん
NGNG毎フレーム生成するってことかいな?
陰影無しの画像と陰影のみの画像を描画して、
それらを合成するってことなら、やったことあるけど。
0574デフォルトの名無しさん
NGNG行列って何よ?ベクトルって何さ?
0575デフォルトの名無しさん
NGNGそれらに対し計算(足し算や引き算、掛け算)を定義してあげると、
いろいろ便利ってだけの話。
0576デフォルトの名無しさん
NGNG高校出てねーのか?
0577デフォルトの名無しさん
NGNG行列
ttp://www.lib.kanazawa.ishikawa.jp/kinsei/archive/daimyo.htm
ベクトル
ttp://www.vector.co.jp/
0578デフォルトの名無しさん
NGNGそれがシャドウマップだろ。
0579デフォルトの名無しさん
NGNGシャドーマップって、影を書いたテクスチャ画像を
モデルに貼り付ける手法のことじゃなかったっけ?
0580デフォルトの名無しさん
NGNG下のリンクはすでに色が変わってるので、あまりネタとして面白くない。
0581デフォルトの名無しさん
NGNGポストエフェクトとか諸々の都合で
別バッファに書き込む場合もあるよ。
0582デフォルトの名無しさん
NGNG俺の場合、ポリゴンモデルに陰影のテクスチャを貼り付けるんじゃなくて、
ライティング無しテクスチャ有りで作成したカラー画像と
ライティング有りテクスチャ無しで作成した白黒画像の2つを
合成して影を表現させて、バックバッファに入れるって話。
0584デフォルトの名無しさん
NGNGテクスチャをレンダーターゲットにすればいいのでは?
0585582
NGNGいや、画像ファイルとして保存したものじゃなくて、>>584のいっているように
書き込み可能なテクスチャに格納した画像の合成だよ。
シャドーボリュームで作った影と、ライトによる陰影を滑らかに合成する
うまい方法を思いつかなかったので、2度手間だけどライトの陰影を
別サーフェスに描画したんよ。
0586デフォルトの名無しさん
NGNG環境光が無い場合は影の部分を単純に真っ黒にすればイイですけど
ある場合は数学的に正しい明るさにするのは結構難しいっすね。
陰でグラデーションになってる部分に影が落ちた場合グラデーションは消えなくちゃダメなのですが
影部分を減算、乗算どちらでもそうはなりませんし。
っていうか>>585のように「普通の陰影画像」と「影の白黒画像」で正確に合成するのは無理っしょ
「普通の画像」でグレーの部分があったとしても、グレーの物体なのか、
それとも白い物体が陰で暗くなってグレーになっているのかわからないけど
影を落とした結果の色は異なるわけで...
正確にやりたい場合、オイラが思いつく主な方法は、
・「陰も影もない画像」「陰の画像」「影の画像」の3枚を用意して合成
・影の部分をステンシルバッファに描画。影でない部分は普通のライティングで描画、
影部分はアンビエントライトのみで描画
ってかんじかなぁ。
ただ、光源が複数になるとそんだけレンダリング回数が増えてタイヘンそうだし
もしゲームとかでパフォーマンスが必要なら
正確では無いけどそれっぽく見える手法を選択したほうが良いかもね。ケースバイケース
0587デフォルトの名無しさん
NGNG残ってしまうんです(F5で消える)しかもその絵が今終了したものではなくサンプルプログラムの絵だったりするんです。
原因と解決法わかりませんか(クリッパーはしっかり使ってるはずです)?
0588582
NGNG明暗の画像は、物体本来の色は考慮せずに、ライトの方向ベクトルと
頂点の法線ベクトルから、確実に日があたらないときが255(内積が-1〜0の時)で
ライトの方を向いて影が薄くなる(内積が大きくなる)につれ0に近づくという
256階調の画像を作るでしょ。
次に、シャドーボリュームとステンシルつかって、影のとき255、そうでないとき0
っていう2階調の画像を作る。
この2つを加算すると、物体に光をさえぎられた場所は255(255以上になっても255なんで)で
シャドーボリュームによる影に近づくにつれてなだらかに明暗が変化する画像ができるでしょ。
それを、ライティング無しでレンダリングした画面に、適当なカラーとαでブレンドすると、
普通にライティングしたモデルにステンシル影をブレンドした場合より、ステンシル影の境目
が目立たなくなるって話なんす。重いけど。
0589デフォルトの名無しさん
NGNGclass DirectInput{
...
protected:
BOOL CALLBACK EnumJoystickCallback(LPDIDEVICEINSTANCE lpddi, LPVOID pvRef);
...
};
関数の定義で
BOOL CALLBACK DirectInput::EnumJoystickCallback(LPDIDEVICEINSTANCE lpddi, LPVOID pvRef)
{
...
}
としてコンパイルしようとすると、
if (FAILED(m_DI->EnumDevices(DI8DEVCLASS_GAMECTRL, EnumJoystickCallback,
this, DIEDFL_ATTACHEDONLY)))
↑この部分で
directinput.cpp(181) : error C2664: 'EnumDevices' : 2 番目の引数を 'int (struct DIDEVICEINSTANCEA *,void *)' から 'int (__stdcall *)(const struct DIDEVICEINSTANCEA *,void *)' に変換できません。
となってしまいます。EnumDevicesの第2引数の型情報をVC++6.0の型情報ヒントでみると
int __thiscall DirectInput::EnumJoystickCallback(DEVICEINSTANCEW *, void *)
となっているようです。どこがおかしいのでしょうか?
0590デフォルトの名無しさん
NGNG0591デフォルトの名無しさん
NGNGこうすればいい。
で、次はメンバ変数にアクセスできないよドラえもんー
と言って来るんだろうが、知ったことか!
0592デフォルトの名無しさん
NGNGprivate:
int private_member;
protected:
void EnumJoystick();
static BOOL CALLBACK EnumJoystickCallback(LPDIDEVICEINSTANCE lpddi, LPVOID pvRef);
};
void DirectInput::EnumJoystick() {
if (FAILED(m_DI->EnumDevices(DI8DEVCLASS_GAMECTRL, (LPDIENUMDEVICESCALLBACK)EnumJoystickCallback, this, DIEDFL_ATTACHEDONLY))))
}
BOOL CALLBACK DirectInput::EnumJoystickCallback(LPDIDEVICEINSTANCE lpddi, LPVOID pvRef) {
((DirectInput *)pvRef)->private_member = 0;
return DIENUM_STOP;
}
0593デフォルトの名無しさん
NGNGこんなところでお決まりパターンを繰り返すなよ
ちったあ勉強してから質問しろよ
ちったあ無視してやれよ
0594589
NGNG0595デフォルトの名無しさん
NGNGエラーメッセージ嫁
static BOOL CALLBACK EnumJoystickCallback(LPCDIDEVICEINSTANCE lpddi,LPVOID pvRef);
正しいエラーをキャストで握りつぶす。
こういうことする奴がつまらんバグを量産するんだろうな。
0596589
NGNG0597デフォルトの名無しさん
NGNGところでおまいはコールバック関数の型をどこで調べたんだ?
0598587
NGNG描画関係をpeekmessageの中でやると悲惨なことになります。
WM_PAINT(の中でやる)が正解でした。
0599589
NGNG0600デフォルトの名無しさん
NGNG実際は普通のグローバルで定義した関数と何も変わらない関数と思っちゃっていい。
グローバルの関数の宣言をcdeclからstdcallにするにはそれを書けばいい。
ってことは、クラス関数でも一緒のことなのです。
0601デフォルトの名無しさん
NGNGとりあえずDirectXのヘルプをみて、一字一句引数の型が間違ってないか確かめろ。
というか>595で書いたプロトタイプは試してみたか?
0603デフォルトの名無しさん
NGNGttp://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi?log=39&vew=10
0604デフォルトの名無しさん
NGNG女の名前にすれば優しく丁寧に教えてくれるとでも思っているのか
うちのBBSにも同じ質問内容で違う女の名前で来るし
BBXはマルチポストネカマに優しいよな
0605デフォルトの名無しさん
NGNG0606デフォルトの名無しさん
NGNG自然に男口調で書き込むと思うがな。
0607デフォルトの名無しさん
NGNGワラタ。
いるんだそんな奴。
0608デフォルトの名無しさん
NGNG俺も某MMOでリカとかナツミとかやったしな。
0609デフォルトの名無しさん
NGNG気にするな
0610デフォルトの名無しさん
NGNG0611デフォルトの名無しさん
NGNG0612デフォルトの名無しさん
NGNG0613デフォルトの名無しさん
NGNG0614デフォルトの名無しさん
NGNG0615デフォルトの名無しさん
NGNG0616デフォルトの名無しさん
NGNG0617デフォルトの名無しさん
NGNG0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNGもう、お兄ちゃんってば。スレのみんなに迷惑かけちゃダメじゃない。
みなさんどうもお騒がせしましたあ。ぺこり。
0622デフォルトの名無しさん
NGNGお前はいつもいつも余計なことを
お兄ちゃんが生で教育してやる
0623デフォルトの名無しさん
NGNG0624デフォルトの名無しさん
NGNG0625デフォルトの名無しさん
NGNG□絵に糞プログラマもエロゲプログラマ
0626デフォルトの名無しさん
NGNG0627デフォルトの名無しさん
NGNG0628デフォルトの名無しさん
NGNG0629デフォルトの名無しさん
NGNG0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNG0632デフォルトの名無しさん
NGNGいつも私の腕や脚や腰をぶらんぶらん揺らします。
お兄ちゃんのプログラミングに役立ちそうなHPを
教えてください。お願いします。
0633デフォルトの名無しさん
NGNGいつも私の腕や脚や腰をぷにぷに触ります。
0634デフォルトの名無しさん
NGNGコンドームをかぶせるのを手伝わさせるんです・・・
0635デフォルトの名無しさん
NGNGageるほどおもしろいと思ったのか?
0636デフォルトの名無しさん
NGNG糞スレになったんかよ
0637デフォルトの名無しさん
NGNGうん、こ。
0638デフォルトの名無しさん
NGNG0639デフォルトの名無しさん
NGNG0640デフォルトの名無しさん
NGNG0641デフォルトの名無しさん
NGNG0642デフォルトの名無しさん
NGNGちゃんとオペレーションコードがあって
ATiやnVidiaで命令表みたいなのがちゃんと用意されてるの?
おしえて!エロゐ人!
0643デフォルトの名無しさん
NGNGユーザー側としてはDirectXのヘルプを読んだほうがいいんじゃね?
0644デフォルトの名無しさん
NGNG0645デフォルトの名無しさん
NGNGny
0646デフォルトの名無しさん
NGNG今度はDebugでエラーが出てReleaseでは全然エラーが出なくなったんだけど
これってどういうこと?両方ともエラーが出ないようにしたほうがいいのかな
0647デフォルトの名無しさん
NGNG両方とも、問題なく動くようにしたほうが良いじゃろ。
0648デフォルトの名無しさん
NGNG0649デフォルトの名無しさん
NGNG動作が不定なところがメモリリーク臭いな。
0650649
NGNGアクセスバイオレーション?の類?
0651デフォルトの名無しさん
NGNGデバッグ環境とリリース環境では初期化したり初期化しなかったりするから。
niftyserve時代のCフォーラムで不確定性バグと呼ばれてたことがあったな。
さて私の処遇は皆様にお任せしますわ
0652デフォルトの名無しさん
NGNG実際は2ちゃんのAAみて笑ってられるほどぬるいバグじゃねぇからな。これ。
あんまりいい加減な設計の元で作られたプログラムでこれを修正するのは
ほぼ不可能といっていいぐらい大変だからな。
0653デフォルトの名無しさん
NGNG初期化しわすれ色濃し。
自動変数ぜんぶ調べてみろ
0654デフォルトの名無しさん
NGNG0655デフォルトの名無しさん
NGNG0656デフォルトの名無しさん
NGNG0657646
NGNGオブジェクトをnewしたときにカウントを初期化するのを忘れてたみたい
初期化しなかったらReleaseでエラーが出なくて
初期化したらDubugでもReleaseでエラーが出ない
0658デフォルトの名無しさん
NGNGバグを出したことじゃなく、
こんなことで大騒ぎしてたのが。
0659デフォルトの名無しさん
NGNGお前等ダサ過ぎ。
こんなことで大騒ぎするな。
レベル低い。
0660デフォルトの名無しさん
NGNGレベル低い。
0661デフォルトの名無しさん
NGNG0662デフォルトの名無しさん
NGNG0663デフォルトの名無しさん
NGNG0664デフォルトの名無しさん
NGNG0665デフォルトの名無しさん
NGNG0666デフォルトの名無しさん
NGNG0667デフォルトの名無しさん
NGNGしょせんゲムデヴ板を崩壊させた奴らだし
こういう人間性
0668デフォルトの名無しさん
NGNG0669デフォルトの名無しさん
NGNG0670デフォルトの名無しさん
NGNG0671デフォルトの名無しさん
NGNG0672デフォルトの名無しさん
NGNG0673デフォルトの名無しさん
NGNGDirectPlayはスレッドセーフだとかヘルプに書いてあったけど。
0674デフォルトの名無しさん
NGNG動画として表示させるようなことは出来るのでしょうか?
ムービーテクスチャのように表示できればとおもったのですが、
DirectShowではswfファイルはサポートされていないようですし・・・
0675デフォルトの名無しさん
NGNGマルチポストする前に、厨の巣に帰れ。
0676デフォルトの名無しさん
NGNG0677デフォルトの名無しさん
NGNG資料見て自分でswfプレイヤー実装したまえ。
既にテクスチャにFlashムービー貼り付けてるゲームとかあるようだぞ。
0678デフォルトの名無しさん
NGNG試してみようっと
0679デフォルトの名無しさん
NGNGまともになってきたんだからそろそろいいだろ
0680デフォルトの名無しさん
NGNG0681デフォルトの名無しさん
NGNGあっちはあっちでやってホスィ
0682デフォルトの名無しさん
NGNGそういうスレきぼんぬ
書き込みよりコード行数のほうが絶対多いだろ、あの板は
0683デフォルトの名無しさん
NGNG物理シミュとか次世代UIとか
0684デフォルトの名無しさん
NGNG0685デフォルトの名無しさん
NGNGttp://www.tulrich.com/geekstuff/gameswf.html
ttp://www.openswf.org/
0686デフォルトの名無しさん
NGNGOpenGLは両方立ってるし問題ないよね
ム板から消えるのだけは勘弁して
0687デフォルトの名無しさん
NGNGのFPS固定で、
>なお、今回のプログラムでは、GetRasterStatusの呼び出しで無限ループをかけて
>無駄にCPUを使っています。都合に応じて、Sleep で休ませたり、他の処理を呼び出すなりしてください。
とあるのですが、具体的にどのような命令を書けばいいのでしょうか。
sleep(10)とやった場合、CPUは何もしないのでしょうか。それともたとえば別ウィンドウで動画を
再生しているときにはそちらの処理を行っているのでしょうか。
0688デフォルトの名無しさん
NGNGそれにしてもt-potってこんなことも記事にしてたのね。ちょっと意外(笑)
0689デフォルトの名無しさん
NGNGsleepというのはあくまでスレッドを待機させるというということだったのですか。
FPSを固定にしたいと前から思っておりまして、ただ単純に無限ループとbreakを行えば
済む話とは思うのですが、どうせならば、メディアプレーヤーとか動かしながらゲームの
動作確認をしたいとおもったので、ほかの処理を呼び出すようなことをしたいとおもった
しだいです。
エクセルVBAをいじったときはDoEventsというのを呼び出していたのですが、DirectX
ではどうすればいいかわからなかったもので。
つまり、FPS固定にしたいのだが、ずっとループさせておくのはもったいないので
ほかに処理を渡したい。でも、渡したことで処理がもどってこなくなって固定した
はずのFPSが崩れてしまうということは避けたいということなのです。
0690デフォルトの名無しさん
NGNGちょっと短めに指定して残りはブン回す(Sleepの精度より精密に制御したいなら)
Sleepから戻ってくる保証はないが、○○しながらが可能なほどCPUに余裕があるなら
問題ない程度にはなると思われ
timeBeginPeriodとtimeEndPeriodを忘れないようにな
ついでに聞くがゲ製作技術板は嫌いか?
見てもいないようだが
0691デフォルトの名無しさん
NGNG0692デフォルトの名無しさん
NGNG10ms以上止まる可能性もある
他のプロセスにCPU時間を回すだけなら Sleep(0); でよい
(これでもCPU100%占有は回避できる)。
0693(ログ差分)
NGNGSleep(0)だと他アプリの処理があればそいつにCPUを譲るが、
誰もいないとCPUを握りっぱなしでOS全体の使用率は100%になるから、
あんまり好ましくないけどな。
694 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 15:29
OnIdle使ってたらSleep(0)はイラネ
695 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 15:42
ところで100%になったら何か困ることあるの?
696 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 15:54
>>695
同時に動作している他のアプリの動作が鈍くなるぐらいじゃねーの?
697 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 16:15
>693
他にCPUタイムを欲しがるプロセスが誰もいないということはあり得ないので安心してよい
心配なら Sleep(0); を入れた無限ループを実行して、タスクマネージャのCPU使用率見てみ
0694(ログ差分)
NGNG行儀悪い。他のアプリまでもっさりさせると評判悪い。重いプログラムだと見なされる。
699 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 16:21
>>695
不安定なPCで熱暴走とか起こすようになって、自作PCオタからクレームが来る。
まあ、それはともかくノートPCとかならバッテリー消費量とかあるし。
700 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 17:17
>697
100%になるんだが。
701 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 17:34
Sleep(0)なら、優先順位を最下位にして無限ループさせても、
他のアプリに対する重さでは大して変わらない。
702 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 18:10
>>694
?
0695(ログ差分)
NGNG・他のアプリがもっさり
・System Idle ProcessのCPU使用率が低くなる(それ以外のCPU使用率が100%に近くなる)
この2点は別問題
Sleep(0)が影響を与えるのは前者
無限ループというとても重い処理をしているゲームでは
CPUを少しでも多くぶん取ろうとする
無いよりマシだがCPU使用率を低くしろというニーズには合致しない
704 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 19:00
ゲームの場合Sleep(0-1)とかしとかないと最小化したときとかに重くなる
705 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 19:05
最小化時はゲームループを止めない?
706 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 19:27
メディアプレーヤもDirectXバリバリだよね
707 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 19:31
一般アプリに次世代の並を起こせるのはおまいらだ!!
DirectXまんせー
708 名前: デフォルトの名無しさん 投稿日: 04/03/25 19:49
吉野家に牛丼の並を起こさせるのは松屋だ、
ぜったい。
0696(ログ差分)
NGNG2DエフェクトオンリーのDirectXとか出ないんかな
710 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 20:56
Nスク作者はbusy loop以外ありえないとしています。
全てのゲームプログラマはこれに従うべきです。
711 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 21:00
>>710
( ´_ゝ`)フーン
712 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 21:28
>>709
グラボがそもそもそういう風にできてないから意味ないっしょ?
2Dやるにも3D機能使った方がいいっていうか
両方満たしてるんだから問題ないじゃんいまだって。
713 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/25 22:29
>>709
GDI+のことか
長角まで封印されてるけど
714 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/26 00:10
クリリンのことか
715 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/26 03:55
くりりんのことかぁぁぁ〜〜〜〜〜!!!!
0697(ログ差分)
NGNG字幕を表示させるシステムを個人で作るのはほぼ無理ですか?
せりふすべてのテクスチャを作って文字以外のアルファを抜くしかないのですか。
テキストに書いてある文字を一字ずつ読んでテクスチャを作成するツールを作るか、
一まとめにシートをつくってそこからUV指定して切り抜いていくか、どうしようか
迷ってます。50音ひらがなくらいならばそれでもいいかなとは思ったのですが、
漢字も使うとなるとかなり大変なことになりそうです。
717 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/26 07:24
専用のTrueTypeフォントを作るという意味ならばそりゃ大変だろうが・・・
データの持ち方という意味か?
俺は任意の解像度で綺麗なフォントを得るために
GetGlyphOutlineでOSにパターンを作らせてる。
生成したフォントデータをキャッシュするとか
テクスチャの更新を最低限に抑えるとか工夫すれば
MMORPGくらいでも、
速度やデータ量は実用上問題はないけど。
718 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/26 09:16
リアルタイムに処理しても大した問題にならないにもかかわらず、
なぜ文字というだけで、独自の装飾を加えるわけでもないのに、
ツールなどを別プログラムで作ろうとするのか、さっぱり理解できない。
719 名前: デフォルトの名無しさん [sage] 投稿日: 04/03/26 09:24
エロゲプログラマはやることなくなると、どうでもいいことに拘るようになる。
0698デフォルトの名無しさん
NGNG>>現在のレス番.差分のレス番 (>>697.716)
見たいにやった方がわかりやすいかもな。
あと、これ以降のログもってるヤシは、補完よろしこ。
0699デフォルトの名無しさん
NGNGすると1部描画がおかしくなるのですが何故でしょうか。DirectX9のAPIでビルドしていた時には問題なかったのですが
8.1にソースを変更するとおかしくなりました。特定の処理のところだけ一時的にCLIPPINGをTRUEにすれば
解決することはするんですが気持ち悪くて・・・。環境は8.1SDK、MobilityRadeonです。
http://cgi.f3.aaacafe.ne.jp/~yoiche/up/upfiles/022.gif OFF
http://cgi.f3.aaacafe.ne.jp/~yoiche/up/upfiles/023.gif ON
ただGF4Tiだと正常に表示されるんですよね・・・ドライバが悪いのかなぁ。
0700デフォルトの名無しさん
NGNGGeForceはHWでは常にクリッピングしていると昔どこかで呼んだ記憶がある。
0701699
NGNGCLIPPINGを切ってるのにCLIPPINGされたような現象になってるということでしょうか?
あとさらに当初のD3DRS_CLIPPINGをTRUEのプログラムをGF4Tiで動かすとなん普通に動いてるようで・・・。
意味が分からない。
0702デフォルトの名無しさん
NGNGD3DXComputeNormals(pMesh);
でコンパイルが通らないから、
試しにDirectX9SDK形式で
第二引数にNULLを追加してみたらコンパイルできた。
・・・仕様変えたんならHelpも更新しろやゴルァ(゚Д゚)
それともHelpはDirectX9用のを見ろってことか?
0703デフォルトの名無しさん
NGNG0704デフォルトの名無しさん
NGNG付いてるだけ。
0705デフォルトの名無しさん
NGNGD3DXComputeNormals(pMesh);
の引数が1つだけなのはDirectX 8.0の仕様だろ。
8.1の英語版ヘルプにはちゃんと書いてあるだろ?
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dx81_c/directx_cpp/dx8.1_cpp_start.asp
0706デフォルトの名無しさん
NGNGどうしたらよいとおもいますー?
0707デフォルトの名無しさん
NGNG萎えるわ
0708デフォルトの名無しさん
NGNG30レス前くらい見れ。
0709デフォルトの名無しさん
NGNG(アプリケーション起動時の絵がずっと出ている)。
原因としていくつか候補を上げてくれませんか?
0710デフォルトの名無しさん
NGNG0711デフォルトの名無しさん
NGNGの傾き情報はうまく取得できるようになったのですが、フォースフィードバックが
うまくいかないのです。ただ振動させたいだけなのですが、一応DirectX8.1サンプル
についていたFFConstというサンプルを読んでカスタマイズさせながらエフェクトをStart
させたところ、最初は振動せず、初期化後に->SetParametersを呼び出したら何とか振動
はするようになったのですが、そのままではふるえず軸を適当に傾けると急にコントローラ
がふるえるというよくわからない動作をするようになりました。また、PSコントローラは振動部
分が左右2個ついているのでさらによくわからない事態に陥っております。軸とか関係なし
にただ、左右の振動をどのくらいの強さでどれほどの時間振動させるということをやりたい
のですが、
DIEFFECT
DWORD rgdwAxes[2] = { DIJOFS_X, DIJOFS_Y };
LONG rglDirection[2] = { 0, 0 };
などにどのような値を入れればいいのでしょうか。
0712デフォルトの名無しさん
NGNGもしかしてトリガにFFBを割り当ててない?
0713デフォルトの名無しさん
NGNGDIEFFECT eff;
ZeroMemory( &eff, sizeof(eff) );
eff.dwSize = sizeof(DIEFFECT);
eff.dwFlags = DIEFF_CARTESIAN | DIEFF_OBJECTOFFSETS;
eff.dwDuration = INFINITE;
eff.dwSamplePeriod = 0;
eff.dwGain = DI_FFNOMINALMAX;
eff.dwTriggerButton = DIEB_NOTRIGGER;
eff.dwTriggerRepeatInterval = 0;
eff.cAxes = 2;//軸の数
eff.rgdwAxes = rgdwAxes;
eff.rglDirection = rglDirection;
eff.lpEnvelope = 0;
eff.cbTypeSpecificParams = sizeof(DICONSTANTFORCE);
eff.lpvTypeSpecificParams = &cf;
eff.dwStartDelay = 0;
という感じになってます。
0714デフォルトの名無しさん
NGNGハードかドライバか両方かが糞ってこともあるかもな。
0715デフォルトの名無しさん
NGNG以前のバージョンだとレジストリファイルが用意されてたはずなんですが・・・
Texture Toolが動かないよママン
0716デフォルトの名無しさん
NGNGコントロールパネルからDirectX開いて、Direct3Dタグ。
その辺にEmurate Reference Rasterizerって項目があるからチェックすりゃOK。
0717715
NGNG前はあったような気がするんですが・・・・・
0718デフォルトの名無しさん
NGNG0719デフォルトの名無しさん
NGNG経験者談求む
0720デフォルトの名無しさん
NGNGここの人も苦労しているが、おそらく操縦桿にかかる空圧の重さ
(エルロンが重いってやつね)を振動で簡易再現するドライバなんだと思われ
0721デフォルトの名無しさん
NGNGマルチサンプルまわりを作りこんでるとちょっと手間はあるかも。
0722デフォルトの名無しさん
NGNG投げ出しちゃうくらいだから相当大変なんでしょう。
一昔前はコンバーターといえばスマートジョイパッドだったんですけど
ELECOMのコンバーター
http://www2.elecom.co.jp/peripheral/gamepad/converter/index.asp
はamazonでも上位にはいるくらい売れてて、2個コントローラが使えて
販売価格も2500円程度だから、家にプレステパッドが余ってる人には
便利なんですよね。私もスマートジョイパッド最初に買ったときは1個
つなぎで3000円程度だったのを覚えてます。
さて、振動に関してですが、左がわのモータに関しては強さと振動する
時間を指定して回すことができるようになりました。どうもありがとうございます。
しかし、右側のモーターがどうにもならないのです。
おそらくは軸の部分だとは思うのですが、どこをどう書けば左側もしくは
右側のモーターに関する設定をするかということがわからず、とりあえず
左側が動いてしまったといった感じです。
0723デフォルトの名無しさん
NGNGちなみに絶対にできないかといえばそうでもないようで、コンバーターに
ついてきたドライバをつかってコントロールパネルでゲームパッドの
動作チェックができるのですが、そこにはフォースフィードバック部分
に関するチェック項目があり、左右それぞれのボタンを押すとそれに
応じたモーターが回るようになっているのです。これを開発者が
どうやって作ったのかはわかりませんが(ちなみにこのコンバーターは
DirectX7以上必須となっています)何とかすれば動くのでしょう。
軸を列挙させる関数部分で、コールバックが4回呼び出されている
ので軸は4つあると思われ、
DWORD rgdwAxes[2] = { DIJOFS_X, DIJOFS_Y };
でエフェクトを作成した後に右軸の値はZとRZになっているので
DWORD rgdwAxes[2] = { DIJOFS_Z, DIJOFS_RZ };
とやればできるだろうと思い試したところエフェクト作成部分でエラーがでてしまいました。
ここくらいしか、左右のモーターを指定する場所がないような気もするのですが
以前苦戦しております。
0724デフォルトの名無しさん
NGNGこういうくだらないことにこだわるよね
0725デフォルトの名無しさん
NGNG| ≡ ('A` )
│ ≡ 〜( 〜)
↓ ≡ ノ ノ
0726デフォルトの名無しさん
NGNGそれすらしないプログラマはウ○チ・・・と餌に食いついてみる。
0727715
NGNGありがとうございます
0728デフォルトの名無しさん
NGNG>こういうくだらないことにこだわるよね
もしかしてあなたは、テクモのDOAXビーチバレーの開発者の人ですか?
0729デフォルトの名無しさん
NGNG0730709
NGNGしかし、InvalidateRectでは画面がちらつく上に重いのでもっと良い方法はないでしょうか?
0731デフォルトの名無しさん
NGNGdwFlags
DIES_SOLO
このフラグを省略すると、エフェクトはデバイス上で
既に再生が開始されている既存のエフェクトと混合される。
---------------------
とあるのですが、エフェクトが混合されません。
LPDIRECTINPUTEFFECT Effect1,Effect2;
Effect1:弱く30秒間
Effect2:強く1秒間
例えばEffect1をStartさせ、終わる前にEffect2をStartさせると、
Effect1が中断されてしまいます。SetParametersのほうを使っても同じでした。
それぞれのエフェクトはCreateEffectで作成し、単体では問題なく再生されます。
エフェクトを混合させるには何かやらないと駄目なのでしょうか?
0732デフォルトの名無しさん
NGNGそのへんで売ってるPSパッドコンバータの動作なんて信用ならん。
「なんでもいいから震える」表現にしかならんよ。
0733デフォルトの名無しさん
NGNGうーん、そうなんですか・・・他の方法考えてみます thx :D
0734デフォルトの名無しさん
NGNG0735デフォルトの名無しさん
NGNGテクスチャの輪郭部分を抽出する方法が思い付かなくて・・・。
0736デフォルトの名無しさん
NGNGビルド時に
D3DXCreateFont(lpD3DDEV, hFont, &m_lpPrint );の部分で
error C2660: 'D3DXCreateFontA' : 関数に 3 個のパラメータを指定できません。
m_lpPrint->DrawText(str,-1,&rect,DT_LEFT | DT_EXPANDTABS,color);
error C2660: 'ID3DXFont::DrawTextA' : 関数に 5 個のパラメータを指定できません。
とでてしまうのですが、同じ経験された方いますか?
MSDNにかかれていることと
d3d9core.hにかかれていることが違うんですよね
0737デフォルトの名無しさん
NGNG日本語ヘルプ、日本語MSDNはsummer未対応
0738デフォルトの名無しさん
NGNG海外のサイトで見かけたけど輪郭トレースでポリゴン化してた
角度によってはボリュームが荒れるのと速度が遅くなるのが欠点
結論はアルファを輪郭トレースするより
作りこんだモデルから普通にボリューム作ったほうが速かったんだったかな
0739デフォルトの名無しさん
NGNGアルファマップをディスプレースメントマップにつっこんで
テセレータからゴニョゴニョしたら出来そうではないだろうか?
0740デフォルトの名無しさん
NGNG0741デフォルトの名無しさん
NGNGどこで切っても身が詰まってるような物。
可能なら、αテクスチャを伸ばせないかな・・・。
0742デフォルトの名無しさん
NGNGなんつー曖昧な質問を・・・
0743741
NGNG0744デフォルトの名無しさん
NGNG筒じゃないけど、各頂点の法線ベクトル(面の法線)と
指定したベクトル(光の方向)の内積を計算して
その結果によって頂点を移動させるってのは
バーテックスシェーダ使ってできるよ。
でも、この方法できれいな影を表示したいなら、
影モデルのエッジにちょいと細工しないとだめだけど。
0745744
NGNGでも、ピクセルシェーダじゃ無理っぽい気がするけど・・・
0746デフォルトの名無しさん
NGNGボカスのに激重な方法しかないのが辛い…
あと金網の影とか投影しようものなら重いし…鬱だ。
0747デフォルトの名無しさん
NGNGこういうくだらないことにこだわるよね
0748デフォルトの名無しさん
NGNGプログラマの自己満足の世界。
0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNG0751デフォルトの名無しさん
NGNG頂点を5つ用意しないと無理でしょうか?(0と4は同じ座標)
縁取り内の四角形も描画するのですが、その四角形を描く4頂点をそのまま利用、はできますか?
0752デフォルトの名無しさん
NGNG0753デフォルトの名無しさん
NGNGでしょうね。640*480のゲームなんで、テクスチャは1024*1024以上となると思うんですが、
もうvoodooは切り捨てしかないですかねぇ。
0754デフォルトの名無しさん
NGNG0755デフォルトの名無しさん
NGNG0756デフォルトの名無しさん
NGNGタイトル画・イベントCG用なら1枚1024x1024とって使いまわせば?
640x480の余った部分に英字フォントやカーソルなどのシステム系データを置くのもよくある話だ。
Voodoo対応なんてほとんどプログラマーの自己満足だよ。
市販ゲームとして3万本売り上げる目算と仮定したら、割合として1人もいないかもしれない。
0757デフォルトの名無しさん
NGNG0758デフォルトの名無しさん
NGNGriva以下(DirectX7)
voodoo,G400
最近のonbord
geforce2MX(DirectX8)
geforce4Ti
Radeon9800XT以上(DirectX9)
今作ってるのはgeforce2MXでぎりぎり動く3D物だけど、
ユーザーの割合どれくらいなのかな?
パソゲーやっててもオンボードとか多いみたいだし。
0759デフォルトの名無しさん
NGNG815あたりを使ってる人はまだ以外と残ってる気がする。
3Dなんで、一応動くけどキャラが多くなるとゲームにならないくらい重くなるけど。
GeForce2MXだと低めの設定ならまあ、遊べる。
んでGeForce4Tiだと高解像度・高品質表示でも普通に遊べる。
ステンシルバッファとかある程度のカードでないと持ってない機能は高画質オプションでのみ使用するとかして
可能なかぎりクソビデオカードでも(快適でなかったり画面の品質が悪くても)「一応ゲームは動く」
という状態にしといた方がイイと思う。
そーすっと「オレのビデオカードの性能が悪いんだなー」と気付いてもらえる。
動作すらしないと「起動しません。バグですバグ」とか言われる。
もちろんゲーム内容やターゲットによるけどね。
ハイエンドカードでないと動作しないけどそのぶん超キレイなグラフィックなのもアリだし。
数世代前のカードでもサクサク動くのもイイことだし。
でも最新ハイエンドカードでしか動かないのにショボイのはカンベンな。
0760デフォルトの名無しさん
NGNGこの辺だけ押さえとけば8割のPCをカバーできるはず。
0761デフォルトの名無しさん
NGNG815で3Dってすごいですねぇ。
DirectXのバージョンはどうしています?
0762デフォルトの名無しさん
NGNGhttp://pc.watch.impress.co.jp/docs/2004/0401/kaigai080.htm
マイクロソフト流でいくと今はTi4200ぐらいを想定していればいいのかな
0763デフォルトの名無しさん
NGNGフリーゲームじゃ重すぎだろ
市販ゲームを今から作り始めるならそれくらいでいいかもな
0764デフォルトの名無しさん
NGNG一年後はハイエンドがGF6900?RADEONX800?て感じになって
ローエンドにTi4200あたりがかろうじて残るんだろうさ。
それ以下では起動しないってのはどうかと思うが。
DXのバージョンで言えばDX9で作って
Ti4200で動くようにシェーダーのバージョンを考えるってとこか。
0765デフォルトの名無しさん
NGNG0766デフォルトの名無しさん
NGNGオンボードなんて問題外だよ
0767デフォルトの名無しさん
NGNG0768デフォルトの名無しさん
NGNG0769デフォルトの名無しさん
NGNGスマートに見える方法ってないかな
0770デフォルトの名無しさん
NGNG○○○ぽ → ○○○っぽい
○○○にょ → ○○○???
このはてな部分に入るのは何?
0771デフォルトの名無しさん
NGNG0772デフォルトの名無しさん
NGNGテンプレートでも,インラインでも,マクロでも,好きなの使って一行にまとめたら?
0773デフォルトの名無しさん
NGNGフレームレートがえらい落ちるんですが、これは仕様なんですか?
0774デフォルトの名無しさん
NGNGGPU「おいらできねーCPUやって」
CPU「なんだよーわかったよオレがやるよ」
0775デフォルトの名無しさん
NGNGCPU「おめーの性能の無さが原因だろヴォケ」
0776デフォルトの名無しさん
NGNG|┃ 、))
|┃, --" - 、
|┃〃.,、 GPUヽ
|┃ノ ノハヽ、 i
|┃l'┃ ┃〈リ
|┃|l、 _ヮ/从 わたすの出番?
|┃/∀_ヽ.
______.| (ゝ 〈、つ
|┃/___ゝ
|┃/-/-|
|┃二) ニ)
ガラッ
0777デフォルトの名無しさん
NGNG終了しないで開放するにはどうしたらいいんですか?
0778デフォルトの名無しさん
NGNGそこでCreateVertexBufferとCreateIndexBufferの第四引数(D3DPOOL列挙型)を
D3DPOOL_MANAGEDからD3DPOOL_DEFAULTに変えたところFPSがあがったようなきがします。
といっても確信がもてなくいのでお聞きしたいのですが、
一般的に上のどちら(それとも他の?)を選んだほうがいいのでしょうか?
よろしくお願いします
0779デフォルトの名無しさん
NGNG>D3DPOOL_MANAGED は、ほとんどのアプリケーションで D3DPOOL_DEFAULT よりも適している場合が多い
と書かれているので悩んでいます。
本当にここがFPSが落ちた原因かどうか…
0780デフォルトの名無しさん
NGNGパーティクルシステムなどで毎フレーム書き込みアクセスするような物は
D3DPOOL_DEFAULTで確保して、ロック時のフラグを適切に設定すれば、
DrawPrimitiveUPと同じかより高速。
あとは計測してみなきゃ分からんのでは?
お前さんが計測ツール作ってうpすれば、物好きが試してくれることもあるだろうな。
0781デフォルトの名無しさん
NGNGこれだけアクセスするものだとDEFAULTの方がよさそうですね
0782デフォルトの名無しさん
NGNG100個のパーティクル作る場合
100個の頂点バッファ作って、毎回LockとUnlockを繰り返して
その中で、座標やら色を変えるのと、
1個の頂点バッファを作成して、
マトリクスを100個用意、Lockはしないで、ほかのメンバ変数にもたせた座標情報を
書き換え、描画の際に座標に応じたTransマトリクスを作成。
という方法では、どちらが速いのですか?
ちなみに、下の方法でも、SetStreamSourceの呼び出しは1回でも大丈夫
ですよね?100個の色すべてを変えたいのであれば、頂点シェーダーを
使わないとだめでしょうけど
0783デフォルトの名無しさん
NGNG0784デフォルトの名無しさん
NGNGやっぱり、誰かもうすでに実験していれば
自分でやらなくてすむからって理由じゃないの?多分。
俺もそれで済めばそれでいいと思うよ。
0785デフォルトの名無しさん
NGNGフルスクリーンにしてみると60で安定しました。
これはどんな原因があるのでしょうか?
0786デフォルトの名無しさん
NGNGフルじゃないから
0787デフォルトの名無しさん
NGNGSDKのPointSpriteサンプル見ろよ
0788785
NGNGフルスクリーンで60でるなら一応処理は間に合ってるということで大丈夫でしょうか?
0789デフォルトの名無しさん
NGNG何を聞きたいのかよくわかんない。
一般的な環境ではフルスクリーンの方がパフォーマンスがでるから
ウィンドウモードの方がフレームレートが低いのは不思議なことではない。
表示する内容によってフレームレートが変化するのはあたりまえ。
フルスクリーンモードでは通常flipはリフレッシュレートに同期させられるから
リフレッシュレート以上出るパフォーマンスを持っていればフレームレートはリフレッシュレートと同じになる。
「処理が間に合ってる」ってのはどういう意味?
もし60fps出ることが前提でプログラムを組んでるならそのような処理はやめましょう。
(フレームレートが下がるとキャラの移動速度も下がるとかそーゆーのはヤメレ)
0790785
NGNG>ウィンドウモードの方がフレームレートが低いのは不思議なことではない。
他のアプリ等を起動してたりしてなかったのでちょっと不思議に思ったもので。
何も起動しなくても不安定になるんですね。ありがとうございます。
>もし60fps出ることが前提でプログラムを組んでるならそのような処理はやめましょう。
>(フレームレートが下がるとキャラの移動速度も下がるとかそーゆーのはヤメレ)
フレームレートがさがると移動速度もさがる状態です。
これはリフレッシュレート論争の話になっちゃうのかな。
俺は初回起動時にリフレッシュレートを調べて60以下とそれ以上にわけてやっています。
61以上の場合は時間で制御してます。(B宗1派とかいうやつです)
60近く出ない(50とか)には特に対応させてません。
大して大きなプログラムじゃないのでこれで60出ないのは問題あるだろうってことで
ほっといたのですが最近どんどん大きくなって数年前のPCだと重いです。
FPSに関係なく移動速度などが同じになるA宗もこれから色々試してみたいと思います。
0791デフォルトの名無しさん
NGNGA宗B宗なつかすぃ
最近はA宗でゲームがなりたたなくなるとB宗に切り替えたりと
複合技になってきてますね
ネトゲは大手メーカーのレースゲームでもフレームレートによって
有利不利が出るという信じられない状況が続いてます
あ、例外をわざわざ持ってきてるので信じないように :P
0792デフォルトの名無しさん
NGNGMSDNでLPDIRECT3DVERTEXBUFFER8を見たんですがそれらしいものを見つけれなかったのでお聞きします。
lpD3DDEV->CreateVertexBufferで頂点バッファを作成しますよね。
このとき渡した自分で作成した頂点データのX、Y値を変えれば表示するテクスチャの位置を変えれると思うのですが、
LPDIRECT3DVERTEXBUFFER8からどうやったらX、Yの値を変えれるかわかりません。
どのように変えれるのでしょうか?
0793デフォルトの名無しさん
NGNG0794デフォルトの名無しさん
NGNGありがとうございます
早速やってみます
0795デフォルトの名無しさん
NGNG0796デフォルトの名無しさん
NGNGDirectX9使ってるなら
特に指定しないと、勝手にfps60固定処理にされるのは理解してますよね?
0797デフォルトの名無しさん
NGNGすいません、それを解除するにはどうしたらいいですか?
最近9を触り始めたんですが、fpsがもっと出てもおかしくないはずなのに
無理矢理押さえ込まれてるような気がしてたんですが。
0798デフォルトの名無しさん
NGNGD3DPRESENT_INTERVAL_IMMEDIATEは使ってる?
0799785
NGNG>特に指定しないと、勝手にfps60固定処理にされるのは理解してますよね?
そうなんですか?初耳です。
DirectX9ですが、うちのPCでは普通にリフレッシュレートと同じなんです(85fpsでる)。
60になるのはビデオカードによると思ってたのですがどうなのでしょう…
60固定のはずなのに俺のPCで85でてる理由はわかりませんが
固定してくれるならリフレッシュレート論争というのはDirectX9にはないってことですね。
でもレスを見る限り処理が60になるだけでリフレッシュレートを変えてるわけじゃなさそうなのでガタガタになっちゃうのかな…?
0800デフォルトの名無しさん
NGNG>>799の85fpsでたというのはデスクPCです。
0803デフォルトの名無しさん
NGNGなんだかよくわからないエラーが出て困ってます。
pd3dDevice->BeginScene();
pSprite->Begin();
pSprite->Draw(省略);
pSprite->End();
pd3dDevice->EndScene();
というように、ちゃんとBeginSceneとEndSceneの間にはさんでますし、
スプライトオブジェクトとかテクスチャの作成には失敗していないようです。
エラー:
'Begin' : 関数が不正な 0 個の実引数をともなって呼び出されました。
'Draw' : 関数が不正な 7 個の実引数をともなって呼び出されました。
こういう「関数が不正な〜」みたいなエラーはどこが悪いんでしょうか、、、
どなたか教えてください。よろしくお願いします。
0804デフォルトの名無しさん
NGNGエラーメッセージそのまま、引数の数が間違っているという意味。
英語版のヘルプを見てみよう。
0805803
NGNG助かりました。ありがとうございます。
Summerで変わってたみたいですね。
日本語Docと英語版で内容が違うとは。
しかしこれ、回転できなくなっちゃったんですか・・・orz
0806デフォルトの名無しさん
NGNGA宗B宗って何の略?ググっても出てこなかったので教えてクレクレ
ちなみに俺はキャラを動かすルーチンと表示するルーチンにわけて
前の描画に時間がかかりすぎたら動かすルーチンを多めに呼び出す、ってしてる
0807デフォルトの名無しさん
NGNGSetTransformで回転マトリックスを設定すると回せる。
拡大縮小も同じ。
0808デフォルトの名無しさん
NGNGhttp://mimizun.com:81/2chlog/tech/piza.2ch.net/tech/kako/972/972165437.html
これの9かな?
0810デフォルトの名無しさん
NGNGFPS(フレームレート) VSYNC(垂直同期 リフレッシュレート)
http://bbs.gamdev.org/test/read.cgi/gamedev/1063274576/
>>803
ttp://www.plustarnet.com/aspil/Programming/ID3DXSprite.htm
0811デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/gamedev/1020064462/
0812デフォルトの名無しさん
NGNGマウスのデバイスを取得して、GetDeviceStateでマウスのデータを読んでいるのですが、
デバッガ上でブレークすると、マウスの操作がしばらく引っかかるような状態になってしまいます。
何か特別な設定が必要なのでしょうか?
ちなみにSetCooperativeLevelは、DISCL_FOREGROUND | DISCL_NONEXCLUSIVE、
Windows2000、VC++6.0を使用しています。
(以前、WinXPとVC.NETを使用した時は問題なかったような気もします)
0813デフォルトの名無しさん
NGNGWindowsXP,VC++6,DirectX9という環境で、フルスクリーンモードで動く
プログラムをAppWizardを使用しないで作ってみたのですが、マウスを
左上端あるいは右上端に移動してクリックすると、他のアプリケーションに
切り替わってしまいます。
こうなってしまう原因や対処方法などご存知の方がおりましたら教えてください。
0814デフォルトの名無しさん
NGNG0815デフォルトの名無しさん
NGNG複数のDirectXアプリを起動させておいて、そのうちの一つをIDirect3DDevice8::Reset使ってフルスクリーン化させると、他のDirectXアプリが止まります。
9.0aに戻したくてもRuntimeはダウングレードできねえし。クサレMS。。。
0816デフォルトの名無しさん
NGNG0817デフォルトの名無しさん
NGNG一つのアプリが排他モード使ったら他のアプリは全部弾かれるんじゃないか?
0818デフォルトの名無しさん
NGNG複数起動って…
0819デフォルトの名無しさん
NGNGお前のだけ固まるなら、お前のソフトが糞ってことだ。
0820デフォルトの名無しさん
NGNG>他のDirectXアプリが止まります。
どこで止まっているのか。
なぜ止まってしまったのか。
止まらなくするにはどうすればいいのか。
ほら解決した。
0821デフォルトの名無しさん
NGNGオレが作ったプログラムならさっさと動くように変更するさ。
ところが一個はバイナリのみ。もう一個はソースはある、という状態。
とまっちまう方がバイナリしかないから、なんで止まるのかも不明なんだこりゃ。
9.0aまではそれでも動いていたからよかったんだけどねえ。
あーあ、なんでこんなクソプログラムをメンテしなきゃならねえんだ。
0822デフォルトの名無しさん
NGNG0823デフォルトの名無しさん
NGNGそんなのをいちいち質問しにくるなんて情けないな
0824デフォルトの名無しさん
NGNG0825デフォルトの名無しさん
NGNGdx9でテクスチャ貼って2Dゲーム作りたいんだけど、
画像1枚ですむものをわざわざ2枚以上用意するのが面倒なので
テクスチャを256色ビットマップで読み込んでパレットを作成して
1Pカラー、2Pカラー、・・・、4Pカラーってな感じのことをやりたいんだけど
こういうことって出来るのでしょうか?
0826デフォルトの名無しさん
NGNG0827デフォルトの名無しさん
NGNG背景をグラデーションにしたいので頂点変換済みバッファで
// 各頂点の位置
t[0].p = D3DXVECTOR3( 0.0f, 0.0f, 10.0f );
t[1].p = D3DXVECTOR3( 640.0f, 0.0f, 10.0f );
t[2].p = D3DXVECTOR3( 640.0f, 480.0f, 10.0f );
t[3].p = D3DXVECTOR3( 0.0f, 480.0f, 10.0f );
// 各頂点の色
t[0].color = D3DCOLOR_ARGB( 255, 5, 18, 190);
t[1].color = D3DCOLOR_ARGB( 255, 5, 18, 190);
t[2].color = D3DCOLOR_ARGB( 255, 255, 255, 255);
t[3].color = D3DCOLOR_ARGB( 255, 255, 255, 255);
な感じに初期化しました。
自分のノートPC(一年ちょい前のもの)だと問題なく表示されるのですが、
自分のデスクPC(3年近く前のものだがドライバは最新にした)や、
知り合いのPC(新しいものや古いもの)だとClear()で指定した色が表示されます。
頂点バッファが使えない環境があるとどっかで見たので他にも同じような頂点を作ってやってみたのですが
前者が表示されないPCでもまったく問題なく表示されました。
この現象はどのような原因が考えられるでしょうか?
どなたかわかる方いましたらよろしくお願いします。
0828デフォルトの名無しさん
NGNG3Dデバイスで頂点バッファが使えなかったら、
どうやって描画すればいいんだ?
0829デフォルトの名無しさん
NGNGテクスチャフォーマットにD3DFMT_P8が使えるビデオカードを挙げてみろよ、知ったか君。
0831デフォルトの名無しさん
NGNGアタマカタイネ
0832デフォルトの名無しさん
NGNGそんなビデオカードはありません。
論破完了。
0833デフォルトの名無しさん
NGNG真偽はともかく>>832は「頭が硬い」の意味をググってこい
0834デフォルトの名無しさん
NGNGですから、そんな名前のビデオカードはありません。
0835デフォルトの名無しさん
NGNGパレットでは出来ない。
それだけの話。
0836デフォルトの名無しさん
NGNGハードにパレット機能ついてなきゃヤダヤダとかごねる、パレットオヤジとかいそうですが。
0837デフォルトの名無しさん
NGNG色違い作るくらいフリーのドローソフトでできるっしょ
てか今の時代パレットで色違いなんてやっても
安っぽく見えるだけじゃないかな
0838デフォルトの名無しさん
NGNG初期化時に生成するんじゃなくて?
0839デフォルトの名無しさん
NGNGその辺は各々の好みでいいと思うが…
0840デフォルトの名無しさん
NGNG日焼け・赤ら顔・ゾンビ化を避けられんだろ
0841デフォルトの名無しさん
NGNGZソートされなくなって画面グチョグチョになってしまうようになったんだけど
原因がさっぱりわからん…_| ̄|○
こんな現象出た人いない?
フルスクリーンモードに切り替えると正しく表示されるんだけど、
もう一度ウィンドウモードにすると元に戻っちゃうし…
0842デフォルトの名無しさん
NGNG0843デフォルトの名無しさん
NGNG大きさ可変の自作のメニューウィンドウなんかを作りたくなったとき、
・自分で頂点登録してDrawPrimitive
・大きさ変えるときは必要な部分の頂点をいじって表示(面倒な手続きが色々必要そう)、
とかかなり面倒くさいことをしなきゃならないんでしょうか。
GDIだと普通に矩形領域を塗りつぶす関数とか、
角の丸まった矩形描画とか、いろいろ便利な機能があったんですが・・・
DirectXの場合、こういったことはどうやってやるものなんでしょうか。
0844デフォルトの名無しさん
NGNG1キャラ1Mで16キャラ16Mとすると
4Pカラー分用意したら16×4=64Mだぜおい
16Mで済むものを64Mってどうよ
0845デフォルトの名無しさん
NGNG0846デフォルトの名無しさん
NGNG0847デフォルトの名無しさん
NGNG必要なもんだけローディング。
まーさか16人対戦とかありえないわけで
いまどきHDD容量が64M食ってもどーでもいいしな。
ダウソに時間かかるってのはちと辛いかもしれんが。
0848デフォルトの名無しさん
NGNG256色パレットカラーでキャラテクスチャ持って
ステージ開始時に32ビットに展開する手もあるよ
展開作業はロックしてシコシコ
0849デフォルトの名無しさん
NGNGリアルタイムに展開しても60fpsは余裕だろ。
透明部分だけランレングス圧縮しただけでも容量は半減するし
0850デフォルトの名無しさん
NGNG0851デフォルトの名無しさん
NGNG0852デフォルトの名無しさん
NGNGhttp://www.microsoft.com/japan/msdn/directx/techart/nodelaydirectinput.asp
0853デフォルトの名無しさん
NGNG一部環境でなぜか表示ができないです。
何か特別な設定がいるのでしょうか?
0854デフォルトの名無しさん
NGNG0855デフォルトの名無しさん
NGNGどこを書けばいいのかよくわかりませんが、適当に…
m_D3DPP.EnableAutoDepthStencil= TRUE;
m_D3DPP.AutoDepthStencilFormat= D3DFMT_D16;
や
g_pD3DDevice->SetRenderState( D3DRS_ZENABLE, TRUE);
くらいでしょうかzバッファに関するものは。
色々試してみたのですが1.0fは大丈夫でした。
さっきまで駄目だったような気がしたんですができました。
5.0fだともう他の環境では表示されませんです。
自分のPCだと大丈夫なんだけど…
0856デフォルトの名無しさん
NGNG0857デフォルトの名無しさん
NGNG範囲外に出た場合に、描画される保証はない。
0858デフォルトの名無しさん
NGNGヘルプのサンプルでz = 10.0fとか使われてまして。
もし1.0fまでとしたら0.0f〜1.0fはどこの距離(?)を指すのでしょうか?
0859デフォルトの名無しさん
NGNG深度バッファの範囲
0860デフォルトの名無しさん
NGNG現在やっているのは画面外へでることはないものです。
640*480なのですが必ずその中にしています。
それでも環境によって表示できなくて…
0861デフォルトの名無しさん
NGNG0.0f〜1.0fはZバッファの深度。
0862デフォルトの名無しさん
NGNGZバッファが範囲外なら描画される保証はない。
0863デフォルトの名無しさん
NGNGm_D3DPP.AutoDepthStencilFormat= D3DFMT_D16;
としてますので深度というのは16bitってことですよね。
これは座標とかに直すと(?)どんな感じなのでしょうか。
この今表示できた変換済み頂点のほかに未変換済み頂点で表示してる奥行き(z=9.0f)のある物体があるのですが、
頂点変換済みのzを0.2fにしたときはほぼかぶってしまったのですが
0.5fにしたときは完全に表示できました。
0864デフォルトの名無しさん
NGNG>としてますので深度というのは16bitってことですよね。
深度バッファが何ビットとかは関係ない。
16だろうが24だろうが0.0〜1.0になる。
>これは座標とかに直すと(?)どんな感じなのでしょうか。
ProjectionのFarとNearの間が0.0〜1.0になる。
>未変換済み頂点で表示してる奥行き(z=9.0f)のある物体がある
これはワールドでの座標。
トランスフォーム済みのZ値はワールドとは無関係。
あくまでカメラが向いている方向の深度を、0.0〜1.0で表しただけ。
0865デフォルトの名無しさん
NGNGトテモ参考になりました。
変換済みと未変換は完全に別物と考えた方がいいのですね。
お世話になりました〜
0866デフォルトの名無しさん
NGNG上で変換されてる頂点と未変換の頂点の話がでていますが、
混同して使う場合、変換されてる頂点は0.0fか1.0fしか普通は使えなくないですか?
nearが1でfarが100だとしたら変換済みのz=0.5fがワールド座標でのz=50.0fってことじゃないんですよね。
カメラの位置が原点で向いてる方向がz方向だったらz=50相当になるのかも・・・?
0.0fならゲームメニュー画面だったりで1.0fなら背景 は使えそうですけど。
0.0fか1.0f以外はどのような使い方ができますか?
0867デフォルトの名無しさん
NGNG> カメラの位置が原点で向いてる方向がz方向だったらz=50相当になるのかも・・・?
なりません。
0868デフォルトの名無しさん
NGNG>nearが1でfarが100だとしたら変換済みのz=0.5fがワールド座標でのz=50.0fってことじゃないんですよね。
>カメラの位置が原点で向いてる方向がz方向だったらz=50相当になるのかも・・・?
数学の前に算数は大丈夫なのかと・・・。
それとも単にボケただけなのかどうなのかはっきりしろ。
0869デフォルトの名無しさん
NGNG深度バッファは0.0〜1.0に対して均一ではない。
near寄り10%が深度バッファの90%を消費してしまう。
0871デフォルトの名無しさん
NGNG>near寄り10%が深度バッファの90%を消費してしまう。
マジで!?
0872デフォルトの名無しさん
NGNG0873デフォルトの名無しさん
NGNGそのくらい計算すればすぐに分かるだろうに。
0874デフォルトの名無しさん
NGNG計算すりゃいいじゃん。
どうせ「なんとなくそれっぽい」でいい処理なんだろ?
0.0fか1.0fしか使えないって何よ?
現在では、市販のほとんどすべての 3D アクセラレータが、
z バッファリングをサポートしており、Z バッファが最も一般的な深度バッファの種類になっている。
しかし、Z バッファにも欠点がある。使用する数学的処理が原因で、Z バッファに生成される
z 値は、Z バッファの範囲 (通常 0.0 から 1.0) 全体に均等に分布されない傾向がある。
特に、遠くのクリップ面と近くのクリップ面の間の比率は、z 値の不均一な分布に強い影響を与える。
近くの平面の距離に対する遠くの平面の距離の比率を 100% とした場合、深度バッファ範囲の 90% が
シーンの深度範囲の最初の 10% に費やされる。娯楽や風景のシミュレーション用の典型的なアプリケーションでは、
比率 (遠くの平面 / 近くの平面) がどこでも 1000 から 10000 の間である必要がある。比率が 1000 の場合、
深度バッファ範囲の 98% が深度範囲の最初の 2% に費やされ、比率が高くなるにつれて分布状態が悪くなる。
これによって、遠くのオブジェクトでサーフェイス ディテールが隠れてしまうことがある。これは、
特に 16 ビット深度 (最も一般的なビット深度) バッファを使用する場合に顕著である。
0875デフォルトの名無しさん
NGNG素(ry
0876デフォルトの名無しさん
NGNGどう頂点変換後のZの0.0f〜1.0fにマッピングされるのかは確かめておいたほうがよいと思ー。
意外とみんな気にかけてない。
0877デフォルトの名無しさん
NGNGDrawIndexedPrimitive一回かDrawPrimitive六回のどっちがいいですか?
テクスチャあるので結局24頂点になりインデックスバッファの利点がないような気もしますが
一回で描画できるので悩んでます。
というかインデックスがうまくいかず六回で書いちゃおうかと思ってたりするわけですが…
0878デフォルトの名無しさん
NGNG0879デフォルトの名無しさん
NGNG0880デフォルトの名無しさん
NGNGDrawPrimitive使ってるんなら
製作を進める前にそれをちゃんとできるようにしといたほうがよくないか?
俺はxファイルに頼ってるけどな
0881デフォルトの名無しさん
NGNGめちゃくちゃ馬鹿っぽいのでどうにかして下さい。
24頂点でもなんでも、普通に正しいコストを払うのは悪くないと思うけどな。
あとIndexedならTRIANGLELISTでも0,1,2, 2,1,3のようにすれば
HWのキャッシュもきくんじゃなかったっけ。HWTnLの頃の話なんでどうでもいいか。
0882デフォルトの名無しさん
NGNG可能なんですか?
>>880
ちゃんとできるというのはどういうことでしょうか。
DrawPrimitiveはよくないからDrawIndexedPrimitiveを使えるようにしろという意味ですか?
3Dソフトがサパーリなのでxファイルはあまり使わないです(^^;
立方体くらいなら作れますが、テクスチャ張るのが難しいです…
>>881
馬鹿っぽいと言われましても…
うまくいかないのがそんなに馬鹿ですかね(;´Д`)
いまいちわかりませんがDrawIndexedPrimitiveを使った方がよさそうなので
色々調べなおして動作させるようにしたいと思います。
0883デフォルトの名無しさん
NGNG>>あとIndexedならTRIANGLELISTでも0,1,2, 2,1,3のようにすれば
そんなのあったのか、知らなかった・・・。
0884デフォルトの名無しさん
NGNGこれはどううまくいかないのか書かず、
全てをうまくいかないという一言で片づける馬鹿さ加減のこと。
「うまくいかず」はなく、これこれこのようになると言う状況を書くべき。
うまくいかないという言葉は、質問するときのNGワード。
0885デフォルトの名無しさん
NGNGDrawPrimitive6回って、本当の立方体だな、それは。
どんなサイコロでも面取りくらいしてあると思うぞ。
0886デフォルトの名無しさん
NGNG申し訳ありませんでした。
一応俺としてはインデックスバッファの数字の順序(?)が悪くちゃんと表示されない、
というのを「インデックスがうまくいかない」といったつもりなんです。
DrawPrimitiveとDrawIndexedPrimitiveのどっちがいいのかを聞くのが本題だったので
DrawIndexedPrimitiveのエラー内容は特に書かなくていいやと思っちゃいまして。
今後は気をつけます。
0887デフォルトの名無しさん
NGNGUnregisterClass( "D3D Tutorial", wc.hInstance );
return 0;
}
と書いてありました。
今までは、UnregisterClassを使わずにreturn 0;だけしか書いてなかったのですが、
これは必須なのでしょうか?
0888デフォルトの名無しさん
NGNG0889880
NGNGこれからDrawPrimitiveなりDrawIndexedPrimitiveをメインにして開発していくなら、
今のうちに苦手は潰しといた方がいいんじゃないかと思ったんだが。
まぁ気軽にプログラミングしたいんなら後回しでもいいかも。
0890デフォルトの名無しさん
NGNG読んだけど、必須かどうかわからないんですが
0891デフォルトの名無しさん
NGNG0892デフォルトの名無しさん
NGNG似たようなのが2つあるし
おれもハマったけど
ちなみに使用される頂点範囲の設定、
ルーズに設定した場合ときっちり設定した場合と
ラデとゲフォで挙動違うので注意な
どっちがリファレンスと同じ動きしたかは忘れた
0893デフォルトの名無しさん
NGNGMinIndex
[in] この呼び出しの間に使用される頂点群に対する最小の頂点インデックス。
StartIndex
[in] インデックス配列の中で頂点の読み取りを開始する位置。
この2つだっけ?俺もハマったなぁ…
0894デフォルトの名無しさん
NGNG0入れとけば問題なし!・・・と考えてみた!俺は!
0895デフォルトの名無しさん
NGNGMinIndex = この呼び出しの間に使用される頂点群のインデックスのうち、最小のもの。
が正しい気がする。
point3d vertex[5];
int index[] = { 0,1,2, 1,2,3, 2,3,4 }; // 三角形3枚
ってときに、二枚目の三角形を描くときは
MinIndexは1(=min(1,2,3))
StartIndexは3
であってる?
0896デフォルトの名無しさん
NGNG0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNGDirectx Graphics Error 0x82000003
というエラーをはかれたのですが、対処法をご教授願いたいのですが。。。
スレ違いでしたらすみません。。
0899デフォルトの名無しさん
NGNG0900デフォルトの名無しさん
NGNG環境は
DirectX9.0a
Geforce4Ti
WindowsXP
です
0901デフォルトの名無しさん
NGNG0902デフォルトの名無しさん
NGNG失礼しました・・・
0903デフォルトの名無しさん
NGNGWindowsXPでVC++を使ってるんですが、
DirectDrawを使うことは可能なんですか?
0904デフォルトの名無しさん
NGNG0905デフォルトの名無しさん
NGNG0906デフォルトの名無しさん
NGNGどうもファイルが展開されないんで、どうしたものかと思っていたら、
サポートされているOSの欄にXPが載ってませんでした。
XPだと、8の日本語ドキュメントは展開できないのですか?
0907デフォルトの名無しさん
NGNGたぶんDLミス、もう一回DLし直すが吉
0908デフォルトの名無しさん
NGNG以前7の日本語ドキュメントを展開しようとした時もできなかったんです。
何度もダウンロードし直しても結果は一緒でした。
Error creating process
指定されたパスが見つかりません。とエラーが出てしまいます。
0909デフォルトの名無しさん
NGNG意地悪しないで教えてください。
0910デフォルトの名無しさん
NGNGできるよ。DirectDrawのゲームはXPで動くだろ。
http://www.microsoft.com/downloads/details.aspx?FamilyID=3fae2dbe-1d47-4f03-97d3-3274bff70e8d&displaylang=en
0911デフォルトの名無しさん
NGNGそれすら判断できないなら
プログラム書く前にPCについて勉強する方が先かと
回答は>>910が正しい
0912903
NGNGその辺がどうなのかなぁと思ったんだけど。
DirectX7のSDKを入れればOKってことなのかな?
完成したものがXPの上で動くのは当然だと思うけど。
0913デフォルトの名無しさん
NGNG>WindowsXPにはDirectX8が最初から入ってるから、
これはランタイム。8だろうが9だろうが関係ない。
>DirectX7のSDKを入れればOKってことなのかな?
好きなバージョンのSDK入れれば使える。
0914903
NGNGがんばってみます。
0915デフォルトの名無しさん
NGNG>サポートされているOSの欄にXPが載ってませんでした。
マジレスすると。
8の日本語ヘルプが書かれた頃にはXPは発売してなかった。
それとXPは8.0ではなく8.1
0916デフォルトの名無しさん
NGNGたとえばワールド座標で1.0*1.0の物体を近くからみて描画したときと
10.0*10.0を遠くから見たときの違いです。(両方とも画面上では一緒の大きさに見える場合)
一応自分でやってみたのですが特に違いは見られなかったのですが、
もしかしたらやり方が違ったのかと思い質問させていただきました。
プログラミングを始めてからは市販ゲームなどをやりながら画面をよく見るようになったのですが、
某3Dゲームで小さい物体もものすごく鮮明に描画されているのをみて驚きました。
実際今その描画が気になるのが長方体が近づいてくるというもので、
速度が遅いのと斜め上から見下ろしているのもあり、ふにゃふにゃ動いてるように(?)見えてしまいます。
速度をあげるとそれなりに綺麗に見えます。
もし何か描画の仕方でありましたらアドバイスお願いします。
0917デフォルトの名無しさん
NGNG0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNGなんだよ当たり前って?
0920デフォルトの名無しさん
NGNG(||丿`;´ ||)丿なななな
0921デフォルトの名無しさん
NGNGLODも不要だし。
でもみんなやればできる子なんだよね。
0922デフォルトの名無しさん
NGNG0923デフォルトの名無しさん
NGNGDirectX使用者の裾野を広げているのは確かなこと。
0924デフォルトの名無しさん
NGNG0925デフォルトの名無しさん
NGNGDX9SDKにも DX7,DX8のヘルプが付いてくる
と教えてやる奴はおらんのか?
0926デフォルトの名無しさん
NGNG??
0927デフォルトの名無しさん
NGNG0928デフォルトの名無しさん
NGNG0929デフォルトの名無しさん
NGNG0930デフォルトの名無しさん
NGNG0931デフォルトの名無しさん
NGNG0932デフォルトの名無しさん
NGNG0933デフォルトの名無しさん
NGNGこういうのがすぐ、勝手に刺激されて飛びついてくる
0934デフォルトの名無しさん
NGNG>>933
0935デフォルトの名無しさん
NGNG0936デフォルトの名無しさん
NGNG0937デフォルトの名無しさん
NGNG0938デフォルトの名無しさん
NGNG自前ワンスキン3000triモデルより軽いんだけど
テクスチャサイズとか小さくしても全然勝てん
0939デフォルトの名無しさん
NGNG0940デフォルトの名無しさん
NGNG0941デフォルトの名無しさん
NGNG0942デフォルトの名無しさん
NGNG0943デフォルトの名無しさん
NGNG0944デフォルトの名無しさん
NGNG0945デフォルトの大嘘そさん
NGNGドミナント(スキン最適化)使ってるからじゃないの?
www.3d-files.net/win/tools/dominant
0946デフォルトの名無しさん
NGNG0947938(ライトウェーバー
NGNG0948デフォルトの名無しさん
NGNG塗る面積がでかい方が処理が重いと思う。
ポリ数なんてあてにならねぇとおもうんだけど。どうよ?
Tinyはサンプルの中じゃポリ数多いけど一度に塗る面積はすごく少ない。
0949デフォルトの名無しさん
NGNGつまり縮小すれば動作が速くなると言いたいのか?
SkinnedMeshでTinyを豆粒にしてみろ。
自分がいかに大馬鹿か理解できるだろう。
0950デフォルトの名無しさん
NGNG0951デフォルトの名無しさん
NGNG0952デフォルトの名無しさん
NGNGもちろん環境にもよるけどね。
モデル作成する時にウェイトマップをきっちり区切って、
頂点にかかるウェイトの数(の平均)をなるべく少なく抑えるべし。
0953デフォルトの名無しさん
NGNG俺の環境
Radeon9600SERIES 解像度1152X796
豆粒時約240Fps(Farクリップ限界)
拡大時約170Fps(Nearクリップ限界)
確実に速くなってるじゃん。
大馬鹿はてめぇだ。ブッ殺。
0954953
NGNG100Fpsで動作することから考えても。
速度の影響具合は、ポリ数より塗り面積と考えるのが正しいと思うがどうよ?
0955デフォルトの名無しさん
NGNG10体では分かりづらいので、とりあえず50体出す。
Sを押し続けて、最大まで小さくする。
面積の影響が大きいのであれば、これで劇的にFPSが変化するはずだが?
0956デフォルトの名無しさん
NGNGテクスチャの大きさは負荷に比例するため、Mipmap使用時は近いほど不利。
面積だけならポリゴンの計算に比べれば、とるに足らない負荷。
0957デフォルトの名無しさん
NGNGもうフィルレートなんて問題にならないのかな
0958デフォルトの名無しさん
NGNGどちらでもビデオカードの限界に達したら遅くなるよ。
0959デフォルトの名無しさん
NGNGそれ、ありえないポリ数出してフィルレートの遅さが目に付かなくなっただけ。
0960デフォルトの名無しさん
NGNGマチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < 次スレまだ〜?
\_/⊂ ⊂_ ) \_____________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| 愛媛みかん |/
0961デフォルトの名無しさん
NGNG"::::::::::/:::/ /::::!::::::/,!::::/:l:::::/,;;::''テ''::::Oi゙ ゙' !::::://'ー、、l::/::::/::イ:::/、!:l
::::::::/:::::/ ./::::::!:::/!∧::i:::|:/!'''、 l :::゚: / /// ::(/l、/:::ノ:/,'/ 、 !'
::::/:::::::/ ./:::;;::ヾi::ツ:::ヾ:::゙'::| 、>::=''- /' ,,゚_,,/ "/ '-!'´、" l `'、
///:::/ /::::l!::i::::::l::::::::::::::::ヾ `゙' 7::::::ヾ:::::ヽ ! ',
/i/i'!:::'ー-':::::l:!::l::::::ヽ::::::::_,!,,.!ヾ-- 、 ' /::::::::::i_、::::iヽ l ',
'´`ー--':、_;;::ゝ‐'''">" `ヽ、 \ -- ,. : ''゙゙゙゙ヽl、!i `i::! i ー-'
,-=ニニ゙''ー.、 / \ `''ー-、,. : '´ | ヾ! !
. / `ヽ、`ソ `ヽ / !, / ! ヽ .|
次スレ立つ前に埋めたてようと思います・・・兄さん・・・
0962デフォルトの名無しさん
NGNG。 。。 GPU、DirectXなどのパソコンのCGの技術も険しい
。ρ。 山にさしかかっている、ううっ!出るっ!!
ρ  ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄
mドピュッ
C|.| /⌒⌒⌒ヽ/~ ̄ ̄ ̄ ̄ヽ
/⌒ヽ⌒ヽ___ | ∴ヽ 3 )
./ _ ゝ___)(9 (` ´) )←>>1-1000
/ 丿ヽ___,.───|彡ヽ ―◎-◎-|
_/ ) ( Y ̄ ̄ ̄ ̄)
(__/ \____/
0963デフォルトの名無しさん
NGNG/__ \
| | | |
(_) (__)
0964デフォルトの名無しさん
NGNGお前、荒らしてた奴だろ?
寒すぎ、二度と顔見せんな。死ね。
0965デフォルトの名無しさん
NGNGSDKとして配布するのはDirectX9.0dまでとか。
www.microsoft.com/japan/msdn/directx/x10release
www.3dscene.uk/akabeamo/aten
0966デフォルトの名無しさん
NGNGなんで?
0967デフォルトの名無しさん
NGNG開発会社だけに公開でも大勢には影響しないのかもしれないが。
0968デフォルトの名無しさん
NGNGどっちのページも出てこないぞ
0969デフォルトの名無しさん
NGNG0970デフォルトの名無しさん
NGNG表向き Windowsデベロッパーとゲームマーケットの活性化
裏向き >>969 & インテルとクライテリオンにゲーム開発市場をとられたくなかった
0971デフォルトの名無しさん
NGNGどういう風に判別してるんだろう。
いまいちOSとドライバがどんなやり取りをしてるのかが想像できない。
教えてエロい人
0972デフォルトの名無しさん
NGNG0973デフォルトの名無しさん
NGNG0974デフォルトの名無しさん
NGNGヘルプに書いてあるだろう、おまえは盲目か?
0975デフォルトの名無しさん
NGNG盲目の人がグラフィック処理の話をするとは
禅問答のようだな。
0976デフォルトの名無しさん
NGNG. . :;;;;;:.:;;,, ..:.;;;;.:
:;;''' .:';;; . . .:.:;;;;;':. . . .,,,,;,,...,,
.:;;;' : .:;;;;; .: ,,,;;;,,, , .:;;;';;''' ''';;;;,,
. :.;;;;' . .: ;;;;;;;;'''' ';;;:.:.. ,;: . . ''''''"
';;:;' ''''; .:.';;;;,,;;.
''' ,.:.:';;;;,,,,
,、―-、 .;.';:;.:.: ;;;;;;:.;.;...
-、_ (_二ニ=っ,、;;;:.:;.:;...:.:...'''''''''''
`‐-、_ ( ´∀)f、 `''、:..:.:. .:
`-,ノ つ; /
(〇 〈-`'"
(_,ゝ ) `‐-、_
(__) `'‐-、,_..
`‐-、._
0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNG?
0979デフォルトの名無しさん
NGNG0980デフォルトの名無しさん
NGNGめちゃいけです
0981デフォルトの名無しさん
NGNG/ _,、;;;、r-'ミ;;,, 'i ヘ,
/'''''''" .r==彡"~ __ '''i、, ') 'i,
/ ./ 丶●、 | |
/彡 ./ ~'''' :::''''''-::;,,_ /l |
r/ / :::: _ ''リ ' |
/ ./ , - ::;;::: '●ヽ, ./ |
. / / / :::'''" l ;;;, ::|::' ~~ヘ./ .|
/ 彡l | ::" ヽ...,,, | ./ .|
巛 | ‖ ヽnニ''--、:::: ''''''~ 丿 / < めちゃ生けです
\|ヘ | ヽロヘ \:::::| ./ 丿
ヽヘ lヽ ヽニニゝ-'''~ / /
/ヽ\ ;:::::/ / ./
_,,/ \ ::::/--フ" /
0982デフォルトの名無しさん
NGNG0983デフォルトの名無しさん
NGNG0984デフォルトの名無しさん
NGNGひどいよ、カエルくん
0985デフォルトの名無しさん
NGNGマチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・#) < で、次スレまだ〜?
\_/⊂ ⊂_ ) \_____________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| 愛媛みかん |/
0987デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1083313796/
ほれ。
以下、セントリノで
>>987
なぜありえんのじゃ?
0989デフォルトの名無しさん
NGNG0990デフォルトの名無しさん
NGNG0991デフォルトの名無しさん
NGNG0992デフォルトの名無しさん
NGNG0993デフォルトの名無しさん
NGNG0994デフォルトの名無しさん
NGNGエロ画像をひっそりと貼る俺w
0995デフォルトの名無しさん
NGNG0996デフォルトの名無しさん
NGNG0997デフォルトの名無しさん
NGNGなんか最近ペイピッポォとかいうのがきてる。
0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。