DirectXでテクスチャの貼り付けが出来ません。

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
naoto

DirectXでテクスチャの貼り付けが出来ません。

#1 投稿記事 by naoto »

 DirectXモードで使用したいのですが、
 「DirectXプログラミング講座」の
  4/ 2Dポリゴンの表示
  まではうまくいくのですが、
  5/ テクスチャの貼り付け
をしても、テクスチャが貼り付きません。(普通に2Dポリゴンのみが表示されます)
PCのスペックやDirectXのバージョン9.0c (4.09.0000.0904)は問題ないと思うの
ですが、何が原因なのでしょうか?

なお、OSがWin2000のものなど、つごう4台のPCで試してみたのですが、全く同
じでした。
ゲスト

#2 投稿記事 by ゲスト »

ぇ~基本的なことですが
バージョンはどのバージョンでしょうか?
ゲスト

#3 投稿記事 by ゲスト »

SetTextureはLoadImageで幅、高さを取得しているみたいなので
.pngとかだと表示されないかも
naoto

バージョン・画像

#4 投稿記事 by naoto »

申し訳ありません。
ActiveBasicのバージョンは
4.24

5.00.00Customer Preview3
です。
両方とも四角だけ表示されてテクスチャが貼り付きません。

画像は
http://www.activebasic.com/help_center/ ... test2d.zip
からDLしたtexture.jpgです。
naoto

一応回避しました

#5 投稿記事 by naoto »

解決したわけではありませんが、サンプルのコードをコピーすることで
一応回避しました。以下、私のとった方法です。
サンプルが起動できない問題もありますし、もっと良い方法があればお教えください。
http://gamemake.uijin.com/ActiveBasic001/AB_01.htm
ゲスト

bmp

#6 投稿記事 by ゲスト »

jpgではなく、bmpならうまくいくのではないかと
↑の者です

削除希望

#7 投稿記事 by ↑の者です »

↑を削除してください
naoto

Ver4.10.02 + DirectX

#8 投稿記事 by naoto »

 リンク先も書き直しましたが、ActiveBasic Ver4.10.02を使用することで、Ver.4.2を使用するよりは簡単な方法でDirectXのセットアップが可能となりました。一応報告致します。
【ActiveBasic Ver4.10.02 +DirectXセットアップ方法】
1/ http://www.activebasic.com/activebasic4 ... e=download の
   ・ActiveBasic Ver4.10.02 - 3.08MB(解凍後 7.00MB)
    をダウンロード。 Ver4.10.02 をセットアップする。
2/ インストールしたフォルダを開け、
  ActiveBasic\Include\directx9 の中のd3dx9shader.sbp を開ける。
3/ 最後のほうのこの行をコメントアウトする
   /*
'--------------------
' D3DXAssembleShader
'--------------------
Declare Function D3DXAssembleShaderFromFile Lib "dx9abm" Alias "D3DXAssembleShaderFromFile_abm" (pSrcFile As BytePtr, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER) As DWord
Declare Function D3DXAssembleShaderFromResource Lib "dx9abm" Alias "D3DXAssembleShaderFromResource_abm" (hSrcModule As HINSTANCE, pSrcResource As BytePtr, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER) As DWord
Declare Function D3DXAssembleShader Lib "dx9abm" Alias "D3DXAssembleShader_abm" (pSrcData As BytePtr, SrcDataLen As DWord, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER) As DWord

'-------------------
' D3DXCompileShader
'-------------------
Declare Function D3DXCompileShaderFromFile Lib "dx9abm" Alias "D3DXCompileShaderFromFile_abm" (pSrcFile As BytePtr, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, pFunctionName As BytePtr, pProfile As BytePtr, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER, ppConstantTable As *LPD3DXCONSTANTTABLE) As DWord
Declare Function D3DXCompileShaderFromResource Lib "dx9abm" Alias "D3DXCompileShaderFromResource_abm" (hSrcModule As HINSTANCE, pSrcResource As BytePtr, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, pFunctionName As BytePtr, pProfile As BytePtr, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER, ppConstantTable As *LPD3DXCONSTANTTABLE) As DWord
Declare Function D3DXCompileShader Lib "dx9abm" Alias "D3DXCompileShader_abm" (pSrcData As BytePtr, SrcDataLen As DWord, pDefines As *D3DXMACRO, pInclude As LPD3DXINCLUDE, pFunctionName As BytePtr, pProfile As BytePtr, Flags As DWord, ppShader As *LPD3DXBUFFER, ppErrorMsgs As *LPD3DXBUFFER, ppConstantTable As *LPD3DXCONSTANTTABLE) As DWord
*/
返信する