2

グラフィックプログラミング(私が書いた)のやり方を学ぶための手段としてモジュールベースのシステムを使用してきましたが、私は今、シェーダーに飛び込む準備ができているところです。

D3Dを使用しているので、プロジェクトルートにシェーダーディレクトリを作成し、そこにシェーダーを保存して、すばやくアクセスしたいと思います。

これを行うには明らかに複数の方法がありますが、プロジェクトのルートディレクトリを取得するという明確な考えはありません。このための事前定義されたマクロ、またはプロジェクトのルートフォルダにアクセスするためのある種の関数はありますか?

4

2 に答える 2

3

ほとんどの言語にはアプリケーションパスを取得するメソッドがありますが、ほとんどの言語はGetModuleFileName()関数をラップし、nullモジュールハンドルを渡します。次に、結果のパスから実行可能ファイル名を削除して、ベースフォルダーを取得できます。

メソッドの広範なリストについては、この質問を参照してください。

于 2012-07-31T10:30:28.320 に答える
0
DWORD WINAPI [GetCurrentDirectory][1](
  __in   DWORD nBufferLength,
  __out  LPTSTR lpBuffer
);

現在のプロセスの現在のディレクトリを取得します。

これがあなたが探している機能だと思います。次に、プログラムが実行された場所である、返されたフルパスを基準にしてシェーダーが配置されているサブディレクトリパスを追加します。

于 2012-07-31T04:13:52.423 に答える