[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 09/06 21:18 / Filesize : 252 KB / Number-of Response : 915
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【C++】 DirectX初心者質問スレ Part36 【C】



1 名前:デフォルトの名無しさん mailto:sage [2011/10/19(水) 22:47:45.95 ]
回答する人も、質問する人も必ず読んでください

これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近DirectXを始めたばかり
3.SDKを見ても、Googleで検索しても、いまいち理解できない人
4.余計な雑談は不要ですよ

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」「SDK見れ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する方 】
・ どんな事で躓いているのか明確にしよう。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。
・ 回答して貰ったら、出来るだけお礼もしよう。

現在の最新バージョンはDirectX 11です。

前スレ
【C++】 DirectX初心者質問スレ Part35 【C】
hibari.2ch.net/test/read.cgi/tech/1305885376/

33 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 20:09:26.80 ]
>>29
CULL_MODEどうしてる? XYZRHWだとY+が下でXYZだとY+が上方向とかになって時計回りが上下反転するとかありそうだけど。
xファイルを原点で表示しながら横にそのソースを埋め込んでみたりは?
ライティングも疑うならNORMAL消してやってみるってのもどうか?
SetTextureStageStateも疑いたいからDirectXSDKのTut05_Texturesあたりに埋め込んでみて出るかどうか試してみるとか。
あんま役に立たなくてごめん。

>>32
いいんじゃね?
動く最低条件から調べて後はあればいいなって機能が使えればそっち優先するようにするのでもいいし

34 名前:クリエイト [2011/10/30(日) 20:21:10.04 ]
>>33
カリングNONEにしたら描画されました。感動しました。
仰るとおり、上下逆になったので調整が必要ですが。
本当にありがとうございました。

35 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 20:56:54.78 ]
>>34
解決してよかった。

XYZRHWでシューティング作ってた人だよね?
XYZになったのならついでにXYZB1とかの行列インデックス使って
行列だけで自機や弾の移動とかやるのも面白いかもよ
STRIPだと縮退させない限りつながっちゃうからTRIANGLE_LISTでDrawIndexedPrimitiveになると思うけど
256個までの弾なら一度に描画できるようになる
(頂点ロックの代わりに行列の転送になる)

さらに自分でシェーダー書くなら4x4のfloatでなく2D平面の場合3〜4個のfloatだけでxyと回転(スケール)ができるよ

36 名前:デフォルトの名無しさん [2011/10/31(月) 00:31:05.54 ]
DirectXでオブジェクトを1回送っただけで複数のカメラから見た画像を1度にレンダリングできますか?


37 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 01:12:19.75 ]
送るのは1回でもいいけど一度にレンダリングは無理だなぁ
VertexBuffer使いまわしで何度かViewMatrixだけ回転とかさせてそのたびにDrawPrimitive系でレンダリングになっちまう

38 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 13:53:19.93 ]
>>26

39 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 15:03:27.89 ]
>DrawPrimitive系でレンダリング
DrawPrimitiveの時点ではレンダリングなどされないんだが、何の話をしているんだ?

40 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 00:52:51.15 ]
>>39
発言が下らないよ

どっちにしてもzバッファもめちゃくちゃじゃね

41 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 09:36:46.12 ]
BackBufferWidth, BackBufferHeight
これはフルスクリーンの時はデバイスがサポートしてる値
ウィンドウなら自由(123などの半端な数でも可)ということでおk?




42 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 12:29:23.97 ]
イエス

43 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 12:29:41.16 ]
IDirect3D9に有効なDepthStencilFormatを列挙するメソッドがないとかおかしいだろ
どうやって調べるんだよこれ

44 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 12:33:05.58 ]
有効なって何よ
IDirect3D9::CheckDepthStencilMatchで駄目なん?

45 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 12:52:07.46 ]
初歩的な質問かもしれませんがお願いします。
背景に画像を描画する状態で、10〜20ほどの物体を個別に回転させたいのですが、
デバイスやスプライトはその数だけ生成する必要があるのでしょうか。

46 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 13:07:48.12 ]
>>45
まずはチュートリアルをやれ。

47 名前:デフォルトの名無しさん mailto:sage [2011/11/01(火) 13:19:37.00 ]
>>42
あざっす


48 名前:デフォルトの名無しさん [2011/11/01(火) 14:45:03.76 ]
>>47
いえいえ

49 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 17:28:52.48 ]
>>43
documentよめよ

50 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 17:35:50.23 ]
D3DFMT_D16の決め打ちでおk
だいたいこんな所でコケるしょんぼりシステムで派手なゲームがまともに動くわけない

51 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 19:50:45.27 ]
さすがにD_16はないわ。
なんもできねー。



52 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 21:44:38.14 ]
転売用にAmazon自動予約スクリプト使いたいけど、パソコンの台数と、回線の数、どっちが大事?

53 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 21:45:41.60 ]
>>52
ルールを守るのが大事。

54 名前:デフォルトの名無しさん mailto:sage [2011/11/02(水) 23:05:10.63 ]
>>51
でも32だとクソ重くなるな
いまどきのグラボって速いところはクソ速いけど遅いところはちっとも進化してないな
塗りとかいまだにアフォかってほどおもいな

55 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 00:36:34.09 ]
頂点色じゃなくてマテリアルのディフューズ色を使ってポリゴンを描画させたいのですが
pID3DDevice->SetRenderState(D3DRS_COLORVERTEX, FALSE);
これでは頂点色が使われてしまい
pID3DDevice->SetRenderState(D3DRS_COLORVERTEX, TRUE);
pID3DDevice->SetRenderState(D3DRS_DIFFUSEMATERIALSOURCE, D3DMCS_MATERIAL);
これでもやはり頂点色が使われ、マテリアルの色は全く反映されません

ヘルプを見るとこれらのレンダーステートを設定すれば良いと思ったんですが
私の解釈が間違っているんでしょうか

56 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 00:55:19.69 ]
ライティング無効にしてるとかじゃないの?

余計なこと考えずに、SDKチュートリアルを4番から真似てりゃできると思うけどね

57 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 02:55:50.84 ]
表示キャラクタの移動量(dx, dz)から角度を計算したいんですが同じベクトル
または逆方向のベクトルの時にNaNになってしまいます(dxが0だと時々発生)

float angle;
D3DXVECTOR3 v(dx, 0, dz);

D3DXVec3Normalize(&v, &v);
angel = acosf(D3DXVec3Dot(&D3DXVECTOR3(0.0f, 0.0f, -1.0f), &v));

一応無理やり

if (!(ang < 7.0f)) ang = (va.z < 0.0f) ? 0.0f : D3DX_PI;

みたいにして対応してるんですがもっとスマートな方法はないでしょうか?
移動方向にキャラクタを向けたいんです

58 名前:57 mailto:sage [2011/11/04(金) 02:57:27.56 ]
if (!(angle < 7.0f)) angle = (v.z < 0.0f) ? 0.0f : D3DX_PI;
でした

59 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 03:23:37.56 ]
深夜のテンションでレスするとatan2じゃなくてacosfでいいのかな?

60 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 08:55:06.41 ]
2Dなら単位ベクトルの成分でatan2するだけでおk


61 名前:57 mailto:sage [2011/11/04(金) 09:48:42.64 ]
>>59-60
余計な処理もなく1行になりましたw
ありがとうございます



62 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 10:20:35.44 ]
あ、ていうかノーマライズもいらないか
(x,z)==(0,0)の時だけ注意してatan2(x, z)でいい

63 名前:デフォルトの名無しさん mailto:sage [2011/11/04(金) 17:21:46.75 ]
自分で作るdirectxのゲームはフルスクリーン時でも簡単にキャプチャ取ったり
デュアルウィンドウの時はカーソルを隣のウィンドウに行き来したりしたいんですけど
ひょっとしてフルスクリーンで行うのは実は無理でウィンドウバーを消した拡大表示をするしかないですか?


64 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 12:42:42.88 ]
>>63
ん?・・・

65 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 13:57:20.66 ]
ひょっとしてウィンドウモードの時って1ピクセルでも描画領域のサイズが変化したらリストアするべきなんですか?

66 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 14:38:37.07 ]
>>65
バックバッファとウィンドウのサイズが常に一致することが望ましいならね

まあ、リサイズ時のデバイスのリセットを回避したいだけなら
デバイス作成時の既定のスワップチェインは無視して
ウィンドウに追加スワップチェインを割り当てると
リサイズ時は追加スワップチェインを作り直すだけで済むよ

ツール上のレンダリングを想定しててXP捨てていいならD3D11にするのがベストだけどね

67 名前:デフォルトの名無しさん [2011/11/05(土) 18:10:59.46 ]
へえ

68 名前:55 mailto:sage [2011/11/05(土) 22:03:11.27 ]
>>56
2D描画なのでライティングは無効にしているんですけど、ライティング無効だと頂点色を使うことしかできないんですか?
頂点色を変えるのにいちいち全ての頂点の色変えるのもなあ、と思い、マテリアルのディフューズ色で出来たらと思ったんですが
できないっぽいですね・・・ 素直に全ての頂点色を変えようと思います

69 名前:55 mailto:sage [2011/11/05(土) 22:10:09.80 ]
へえ

70 名前:デフォルトの名無しさん mailto:sage [2011/11/05(土) 23:01:50.29 ]
>>68
シェーダ使えやハゲ

71 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 00:09:15.65 ]
>>68
D3DTSS_CONSTANT/D3DTA_CONSTANTあたりで出来るんじゃねえの

使ったこと無いけど



72 名前:デフォルトの名無しさん [2011/11/06(日) 10:40:44.70 ]
(´・ω・`)無いけどね

73 名前:デフォルトの名無しさん mailto:sage [2011/11/06(日) 16:27:22.43 ]
そんな事するぐらいなら頂点色使うわ

74 名前:デフォルトの名無しさん [2011/11/06(日) 19:15:57.63 ]
>>73
頂点色つかうよね

75 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 06:51:31.13 ]
頂点色を変えるのにいちいち全ての頂点の色変えるのもなあ
って何?

76 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 06:57:55.89 ]
モデラーに無い機能実装して実機でしか見れない状況作って
仕事増やして自分の居場所を確保するとか涙ぐましいにも程がある

77 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 07:13:45.05 ]
D3DXCreateTextureで生成したテクスチャに図形ソースのマスク後付けって出来ます?

78 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 07:30:27.01 ]
ロックしてアルファ値に書き込めばいいじゃねえの

79 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 11:25:52.54 ]
>>78
なるほど
あざまーす

80 名前:デフォルトの名無しさん mailto:sage [2011/11/07(月) 16:12:05.63 ]
遅そうだけど

81 名前:デフォルトの名無しさん [2011/11/07(月) 18:23:09.94 ]
>>79
いえいえ



82 名前:動け動けウゴウゴ2ちゃんねる mailto:sage [2011/11/08(火) 00:01:13.61 ]
超初心者なんですが、Managedで勉強少ししたんですが、
C++で勉強した方が後々良いのでしょうか。
ちなみに、C#で正四面体を表示しようと
sorceryforce.com/manageddirectx/direct3d_box.html
上記のページを参考にコードを書いたのですがうまくいきません
スレ違いはわかってますが、できれば教えていただきたいです。
private byte[] vertexIndices = new byte[] {
0,1,3,
3,2,1,
1,0,3,
3,2,0
};
vertex = new VertexBuffer(typeof(CustomVertex.PositionColored),
4, device, Usage.None, CustomVertex.PositionColored.Format, Pool.Managed);
using (GraphicsStream data = vertex.Lock(0, 0, LockFlags.None))
{
CustomVertex.PositionColored[] vertices = new CustomVertex.PositionColored[4];
vertices[0] = new CustomVertex.PositionColored(1f, 1f, 1f, Color.Red.ToArgb());
vertices[1] = new CustomVertex.PositionColored(1f, -1f, -1f, Color.Green.ToArgb());
vertices[2] = new CustomVertex.PositionColored(-1f, 1f, -1f, Color.Blue.ToArgb());
vertices[3] = new CustomVertex.PositionColored(-1f, -1f, 1f, Color.Yellow.ToArgb());
data.Write(vertices);
vertex.Unlock();
}
indexBuffer = new IndexBuffer(device, 4 * 3 * 1, Usage.WriteOnly,
Pool.Managed, true);
using (GraphicsStream data = indexBuffer.Lock(0, 0, LockFlags.None))
{
data.Write(vertexIndices);

indexBuffer.Unlock();
}

83 名前:82 mailto:sage [2011/11/08(火) 00:03:36.60 ]
なんか名前欄の名前がどっかでコピーしたものを
そのままペーストしてしまったみたいで、気にしないでください。

84 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 00:04:55.35 ]
Managed Directxとかオワコン
SlimDXかXNA推奨

85 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 10:17:20.86 ]
XNAは資料とかあるけど、SlimDXはほとんどないよね


86 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 11:55:39.41 ]
ただのラッパーに必要な資料とは何ぞや

87 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 06:53:02.80 ]
>>82
パッと見、vertexIndicesがbyte配列なのがまずいんだと思うよ。
short配列にするかint配列にしてsixteenBitIndicesをfalseにしてやってみ。

88 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 17:16:53.86 ]
頂点ブレンドに関して、線形でやっていたのですが、つぶれに我慢できずデュアルクォータニオンにしてみました。
しかしねじれに関しては中々なのですが、曲げに関しては膨らんでしまうのがどうも・・・。

知人に、今はデュアルクォータニオンより良いブレンド方法があると聞いたのですが、どういうものなんでしょうか?

89 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 17:55:05.98 ]
>>88
知人に聞け

90 名前:88 mailto:sage [2011/11/11(金) 18:16:01.14 ]
知人はモデラーでして、曖昧な上にプログラム的なことはさっぱりなのです
検索しても出てきませんし、知人の勘違いですかねぇ

91 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 20:16:39.47 ]
>>90
モデリングソフトの話ならメーカー独自のワケわからんのがたくさんある
でも計算式が公開されてるわけではないんだぜ



92 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 23:34:35.46 ]
曲げに関して膨らんでしまうのはブレンド手法うんぬんよりも
むしろデータの方に問題があるんじゃね。
どんな入力データでも破綻なく描画できる魔法のブレンド手法っつー意味ならないよ。

ところでここは初心者スレな。

93 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 00:51:55.22 ]
上級者スレなんかあるのか
鬱出し脳スレも昔になりにけり

94 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 05:54:09.18 ]
C++とDirectxSDKを落として参考書もそろえたのに、1週間経ってもエラーだらけで何も始められていない
何がいけないんだ・・・

95 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 06:22:18.55 ]
>>94


96 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 13:58:21.75 ]
誰か上級者スレ立てろよ
俺みたいなスーパーハイレベルプログラマになると
このスレの話題は初歩的すぎて暇つぶしにもならない

97 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 15:37:25.85 ]
上級車は自己解決できるから、スレなど不要。

98 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 18:08:57.81 ]
中級者は?

99 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 19:02:16.49 ]
ハイパーかわいいスーパープログラマなオレも中級以上スレはあればうれしいな
会社でいまだにXP使わされてるやついるから9まででしかプログラムさせてもらえないオレに
テッセレーションとかの話題を見せ付けて癒してくれ

100 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 19:06:59.99 ]
曲線の話ならもしかしたらいくつかのサンプル点から連立方程式を解けば計算式が出・・・無理無理w

101 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 21:01:57.59 ]
サンプル点の最小の数としてとりあえず3つのP0、P1、P2があるとして
そこからコントロールポイントを各線に二つ生成して3次ベジェを作るとする
(3次はいろんなお絵かきソフトで使われてて馴染み深いから)

P1の両脇に生やすCPのの傾きは
sv = normalize( P2 - P0 )
もしくは
nv = normalize( P1 - P0 ) + normalize( P1 - P2 )
cv = P2 - P0
sv = cv - nv * dot( cv, nv )
とかやって長さは∠P1の角度をもとに線の長さの1/3〜2/3あたりになるようにし
3次元上に曲線を引いてみたら結構きれいにいったんだけど
それをPathとしてキャラを歩かせたりしたら
当たり前だが速度が一定にならず困ったもんだ。

ニコニコで有名なあのPV作成ツールのように時間軸も曲線で補間するしかないが
あれのパラメータでやると二分探索(Newton法)かBezierClipで求めることになるのかな

とかそういう話題でハイパーかわいいスーパープログラマ、オレを癒してくれ



102 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 21:10:05.24 ]
3D技術の話はスレチ
ここはDirectXを応用する前段階の人が来るスレです

103 名前:デフォルトの名無しさん mailto:sage [2011/11/12(土) 23:08:23.59 ]
>>101
てか、こんな馬鹿な方法で1メーカーの1コンテンツを再現できるわけない
っていう予想も立てられずにやってみてる時点で無駄てか馬鹿

104 名前:デフォルトの名無しさん mailto:sage [2011/11/13(日) 11:41:55.56 ]
3Dアルゴリズム全般
hibari.2ch.net/test/read.cgi/tech/1164171086/

105 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 22:05:26.53 ]
モニタの解像度より小さくできないゲーム(アプリでサイズを変更したら右と下が切れる)があるんだけど
これをキャプチャして縮小して再表示して遊ぶ、みたいなことはDirectXでできる?

106 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 22:08:54.98 ]
常にフルスクリーンなアプリなの?
意味が分からん

107 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 22:17:49.55 ]
今使ってるモニタよりゲームの要求してる解像度のが大きいということです
ゲームのクライアント領域が1024*768(無理やり小さくすると右と下がはみ出て描画されない)だけどモニタが1024*600しかない、という感じで


108 名前:デフォルトの名無しさん mailto:sage [2011/11/15(火) 23:29:19.53 ]
>>107
キャプチャ・縮小再表示まではできる
遊べるかどうかは君のパソコンのスペック次第だろうが・・・無理だろ?
でかいディスプレイ買うべきだと思うけど、きっとネットブックか何かだろ?

109 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 00:09:47.55 ]
CreateFont関数って実用性ありますか?
ノベルゲームで使えるぐらい文字を表示したら遅かったりしませんかね?

110 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 00:14:40.17 ]
ID3DXFontですね、すみません

111 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 08:50:57.20 ]
>>110
bitmap画像用意する方法と比較検討したことがあるけど、速度面で大して有利でもなかった
ノベルゲームで使う分には申し分ないはずだけど、過去の資産があるなら乗り換えるほどじゃないよ



112 名前:デフォルトの名無しさん mailto:sage [2011/11/16(水) 17:41:49.71 ]
>>111
なるほどありがとう

113 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 03:25:08.69 ]
Direct3Dのベクターデータをプリンターに出力することってできますか?

114 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 08:09:33.43 ]
レンダリング結果じゃなくベクトル?
まわりではポリライン使ってる人が多かったかも、ノーマライズしてるのだけ色分けしたりしてた

115 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 12:11:55.30 ]
>>114
>レンダリング結果じゃなくベクトル
そうです。ベクトルデータを出力したいです。
四苦八苦しましたが、どうも無理な気がして質問してみました。
ポリラインですか。ちょっと調べてみます!



116 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 12:24:49.40 ]
どういうふうに出力したいのか不明だし、それが分からない限り無理だろう。

117 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 12:34:48.53 ]
初心者スレだし、質問者に正確さだとか詳細さを求めてもなあ

118 名前:113 mailto:sage [2011/11/17(木) 12:40:34.79 ]
>どういうふうに
Direct3Dで描画してるんですが、
デバイス作成(CreateDevice)時にウィンドウのハンドルを渡しますよね。
プリンターの場合はウィンドウハンドルが存在しないのでデバイス作成できずに困っている状態です。。。



119 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 13:39:36.16 ]
ほら、結局は話を聞かないで余計な気を回すと、こういうくだらない落ちになる。

120 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 14:49:08.99 ]
>>118
発想の飛躍っぷりがすげー。
プリンタ(プロッター?)をD3Dデバイスとして扱おうってのは完全に用途外だし無理な相談。

そもそもD3Dを使わなきゃいかんほどのリアルタイム性が求められるような話でもないだろうから
それ用に設計された別のライブラリ探すか自力で組むかした方が早いと思うよ。

D3Dは3Dに関することなら何でもやってくれる魔法のライブラリ、ではないので。

121 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 15:08:43.95 ]
単にサーフェイスへレンダリングした後、それをBltすればいいだけの話。
D3Dは何でもやってくれる訳じゃないが、今回のケースぐらい処理できる。
直前にアホが混ざってるけど。



122 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 15:28:20.05 ]
デバイスコンテキストハンドルとDirect3Dのデバイスをごっちゃにしてるのかね
秒間60枚印刷するプリンタを想像してワロタ、パラパラ漫画とか作れそうだな

123 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 15:47:43.50 ]
>>121
>>115見る限りベクター形式の(解像度非依存の)印刷用データを
D3D使って吐きたい、というように読めるんで
そういう方向には対応してませんよという意味での「魔法のライブラリではない」なんだけど。

124 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 15:48:51.27 ]
物理的に印刷して遊べるゲームか
プリンタ何台必要なんだ


125 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 18:05:21.70 ]
環境型ゲームで主人公がカメラ持ってて、写真取ると物理的にプリンタから出てくるとか。妄想妄想・・・。

126 名前:113 mailto:sage [2011/11/17(木) 18:19:10.50 ]
自分の無知と言葉足らずのせいで混乱させてしまったようでスイマセン

「プリンターに出力」というのは紙を印刷するわけではなく
具体的には「仮想プリンタドライバに出力」するのが目的です

>>121
>それをBltすればいいだけ
Bltしちゃうとベクトルデータではなくなってしまいますよね?
D3Dにおけるベクトルデータがどれにあたるのかが分かってないですが。。。

>>120
勝手な推測ですが、あなたは私の目的を過不足なく理解してくれている気がします
>プリンタ(プロッター?)をD3Dデバイスとして扱おうってのは完全に用途外だし無理な相談
このトドメのひとことを言ってもらって諦めがつきました

頂いたレスにあるようにリアルタイム性が求められる部分ではないので
描画方法を変えるしかない、というのを前提に対策を考えようと思います

127 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 19:16:24.47 ]
ベクトルが何か分からないってのはかなり問題、3Dの基礎から順番に学ぶべきかと

128 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 19:28:34.98 ]
出力結果をどうしたいのかはっきりしないのに、
プログラムの組みようがないだろう。

129 名前:113 mailto:sage [2011/11/17(木) 19:57:43.80 ]
>>127
>3Dの基礎から
その通りですね
現状のコードは自分が書いたものでなく、処理の流れを最初から確認していったら
初っ端のCreateDeviceで困ってしまったという情けない状態です。。。
GDIでの処理は経験あるので簡単にできるとナメてました

>>128
出力結果をどうしたいのかはハッキリしているので大丈夫です
ただ、D3Dを使わずに現状の処理を実現できるんだろうか、と途方に暮れています

最悪BMPデータで妥協するしかないかもしれません

130 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 20:05:55.76 ]
3Dグラフィックスなんかで使う数論的な意味での「ベクトル」と
画像データの格納形式区分としての(ラスターに対する)「ベクター」は
言葉としては同じvectorだが全然別の概念なので注意な。

131 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 20:08:28.76 ]
>>129
たぶんあなたに必要なのはベクトルや行列を計算するライブラリであってDirectXではない
Direct3Dってのは最終的にラスタライズする使い方がメイン、これに固執してもきっと遠回りになる



132 名前:113 mailto:sage [2011/11/17(木) 21:21:38.97 ]
>>131
>たぶんあなたに必要なのはベクトルや行列を計算するライブラリであって
いえソッチじゃないです
>画像データの格納形式区分としての「ベクター」
こっちです

GDIでの画像処理の経験はあるのでそのへんの混乱はしてないです
日本語で表記するときベクターって書いたりベクトルって書いたりしちゃいますけど

133 名前:デフォルトの名無しさん mailto:sage [2011/11/17(木) 21:27:44.58 ]
まずはプリンタに出力したいものをディスプレイに出せ。
あとはプリンタのDCにBltすれば解決する。
ただそれだけの話だ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<252KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef