- ベストアンサー
DirectX テクスチャの拡大
こんばんは。最近DirectXを始めたばかりの初心者です。 開発環境はWindows XP + Visual Studio 2005です。 テクスチャを読み込んでスプライトで表示しているのですが、 拡大・縮小をする場合に指定した位置に行かずずれて表示されてしまいます。 色々なサンプルを見てもよくわかりません。 方法をご回答頂けると嬉しいです。
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- [DirectX9.0]テクスチャのサイズについて
Visual C++ 6.0でDirectX9.0を使用しています。 画像ファイルからテクスチャを作り、それを画面に表示します。 その時に、画像ファイルのサイズが縦横どちらとも2の階乗の数字でないと、勝手に拡大表示されたりしてうまく表示されません。 数字が2の階乗でないサイズの画像ファイルを、テクスチャを使用してそのままの大きさで貼り付けるのにはどうすれば良いのでしょうか? よろしくお願いします。
- ベストアンサー
- C・C++・C#
- DirectXのテクスチャについて
DirectXを始めて2週間もたたないレベルの初心者です。 下記サイトを見ながら勉強しているのですが、1つわからないことがあります。 テクスチャをポリゴンに貼り付けるという作業のなかで 貼り付け先のポリゴンを選択するという部分がどれだかわらないのです。 普通に考えて、ポリゴンが複数ある場合テクスチャを作成してもどこに貼り付けるかわからなくなってしまいます。 どういう仕組みで貼り付け先のポリゴンを選択しているのか教えてください。 できれば、初心者の私にもわかりやすようにお願いします><。 開発環境 VisualStudio2008(C++) 参考サイト http://marupeke296.com/DXGSmp_No3_CreateTexture.html
- 締切済み
- C・C++・C#
- 何故か拡大表示されます
最新版のDirectX SDKでゲームを作っています。 プログラムの勉強もつい先日始めたばかりで何もわかりませんが、よろしくお願いします。 さてお尋ねしたいのですが。 スプライトを描画したとき、何故か元のサイズより拡大されて表示されてしまうのですが、どうしてでしょうか。 48x48のddsファイルなのですが、64x64の大きさに認識されているようです。 RECTで表示領域を48x48と指定しているのですが、少し切れてしまっています。 描画するにあたっては、ごく単純なコードしか書いていません。 CTextureでファイルを読み込み、D3DXVECTOR2で位置を、、RECTで表示領域を指定。 D3DXMATRIXでマトリックスを作成し、ID3DXSpriteで描画しているだけです。 拡大して表示させるような変なコードは書いていないはずですが…
- 締切済み
- C・C++・C#
- DIRECTXのスプライト描画で質問です
いつもお世話になってます。 DIRECTX9.0、VC++6.0を使っています。 DIRECTXでLPDIRECT3DTEXTURE9(テクスチャ)とLPD3DXSPRITE(スプライト)を使って描画しています。 ですが、テクスチャの縦と横のサイズが256*256を超えたものが正常に表示できません。 色々調べてみると、縦と横のピクセル数が2の乗数以外の中途半端なサイズのテクスチャは、キリの良いサイズに変換されるみたいですが、一応縦横共に2の乗数のテクスチャなのにうまく表示できません。 例:768*512ピクセルのTGA形式のファイル 大きな画像ファイルを表示する方法はないでしょうか? どうぞ宜しくお願いします。
- ベストアンサー
- C・C++・C#
- テクスチャがうまく表示されない[DirectX]
こんにちわ。初歩的な質問かもしれませんが、よろしくお願いします。 テクスチャは読み込まれてはいるのですが、(色だけは表示される。違う画像にすると色が変わる)どうも模様が表示されず、画像どおりになりません。 とりあえず関係ありそうなコードだけ。。 -----頂点定義-------- struct CUSTOMVERTEX {FLOAT X,Y,Z; D3DVECTOR NORMAL; FLOAT U,V;}; #define CUSTOMFVF (D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1) ----頂点------ struct CUSTOMVERTEX t_vert[]={ {0.0f, 0.0f,0.0f,0,1,0, 0.0f, 0.0f,}, {-30.0f,0.0f,0.0f,0,1,0, 1.0f, 0.0f,}, {0.0f, 0.0f,30.0f,0,1,0, 0.0f, 1.0f,}, {-30.0f,0.0f,30.0f,0,1,0, 1.0f, 1.0f,}, }; -------描画処理------ d3ddev->SetStreamSource(0, t_buffer, 0, sizeof(CUSTOMVERTEX)); d3ddev->SetTexture( 0 , texture ); d3ddev->DrawPrimitive(D3DPT_TRIANGLESTRIP, 0, 2); ------------------------------------------------------------- テクスチャのサイズは512x512px、ライトはD3DRS_LIGHTNINGでTRUEにしてもFALSEにしても変化なし。 環境は以下のとおりです。 OS: WindowsXP コンパイラ:VisualStudio2005 DirectX9.0
- ベストアンサー
- C・C++・C#
- DirectX9を使って球を動かすデモの作成
当方DirectX初心者で、全く無学です。 先日DirectXに関する本を何冊か購入しまして、一読してみたのですが、全 く理解できませんでした…。 とりあえずDirectX9のシェーダー(?)で球を表示し、それをフルスクリー ンモードで画面の右から左に移動させるデモを作成したいのですが、プログ ラム(C++でお願いします)が全くわかりません。 浅薄な質問で申し訳ございませんが、よろしくお願い申し上げます。 なお、その際DirectX9対応のビデオカードがある場合は、ハードウェアで処理できるようにするプログラムを書いていただけると幸いです。 環境 Visual Studio .NET 2005 DirectX SDK - October 2006
- ベストアンサー
- C・C++・C#
- DirectX 入門書
こんにちは。 私は今までC++、WinAPIと学んできて、そろそろDirectXを使ってゲームを作りたいな、と思っています。 今まで色々なサイトを回ってきましたが、あまりしっくりくる物が無かったり、サンプルがコンパイル出来なかったりなので、何か入門書を買おうと思いました。 しかし、入門書と言ってもどれがわかりやすいのか、初心者向けなのか、という事がわからず迷いましたのでここに書き込ませていただきました。 今までに見てよさそうだな、と思った本は、 「書籍版 DirectX9実践プログラミング」 「DirectX9 DirectX Graphics」 「サンプルで学ぶDirectX9プログラミングテクニック」 の3つです。 これはいい、これは買わないほうがいい、また別にいい本がある、というご意見をお願いいたします。 もちろん「いいページがあるから本は買わなくてよい」や、「サンプルで理解せよ」等の意見もあればお願いします。 開発はVisal C++ 2005 Express Editionなので、注意点があれば教えていただけると嬉しいです。
- ベストアンサー
- C・C++・C#
- DirectXのスプライト機能で3D回転
http://oshiete1.goo.ne.jp/qa4484924.html 前回この質問をした者です。 疑問を整理して、もう一度質問させて貰います。 DirectX9.0cのスプライト機能で、X軸やY軸の回転のような3Dの変換は可能でしょうか? また前回での回答して頂いた事について一つ。 sprite->Begin(D3DXSPRITE_OBJECTSPACE)というフラグを指定した所、確かに3Dの回転を実現できました。 しかし今度はテクスチャの画像が表示されなくなり、白いポリゴンが表示されるようになってしまいました。これを解決する方法をご存じの方、どうかご教示下さい。 あるいはD3DXSPRITE_OBJECTSPACEを使ったサンプルソースなどが掲載されたHPや書籍をご存じでしたら、紹介して頂きたく思います。
- ベストアンサー
- C・C++・C#
お礼
ご回答ありがとうございます。 いや~、それにしてもDirectXって複雑ですね・・・。 もっとバージョンが下がるとさらにやる事が多くなっている筈ですから楽だと思うべきなのでしょうが・・・。 先人の努力に感謝しっぱなしです(^ ^;) 3回にわたる丁寧な解説に厚く御礼申し上げます。 これからも努力しいつか教える立場になりたいものです。