質問: 画像を表示するコードは書けるようになったのですが、 ビルドして、Debugフォルダにexeを作ってダブルクリックで実行すると、 何も表示されません。 しかしそのexeファイルと同じ場所に表示したい画像を入れると、普通に表示されます。 ### どのようにすれば、exeファイルと同じ場所に画像、曲がなくてもVisualStudioにて実行したときのように動作するのでしょうか? 言葉で表現するのが難しいですが、 VisualStudioにてビルドして作成された、exeファイルをダブルクリックして起動すると 真っ暗な画面で、音楽も画像も表示されません。 ただ、そのexeファイルがあるフォルダに画像と音楽を入れると正常に動作します。 現在のコードは、本文に入らないので、こちらに記しておきます。 ソースファイル.txt ゲームを作る際、勝手にゲーム内の素材を使われたら困るので、誰か教えてください
回答: > > ゲームを作る際、勝手にゲーム内の素材を使われたら困るので、誰か教えてください > > > 本当に知りたいのはこちらということですかね? 追記・修正依頼にあるように画像・音声をEXEに埋め込むという方法もありますが、一般的なゲームで良く見られるのは、独自フォーマットに変換したり、独自圧縮ファイルで一纏めにするというパターンです。 (ファイル解析したらそれでも分かりますが、カジュアルなコピーは防げます) 1. 独自形式ファイルをメモリ上に読み込む(or 独自圧縮ファイルからファイルデータを取り出す) 2. 読み込んだ独自データをBMP、PCM等の生データに変換する 3. DirectXオブジェクトに画像、音声を読み込む という手順になるかと思われますが、当然これらの関数は自分で考えて作成する必要があります。 単純な方法なら、ヘッダを少し書き換えて既存ソフトで読めなくして、プログラム側でヘッダを正常に書き戻した一時ファイルを作成して読み込むという手もありますが、本格的にやるなら、既存ファイルの構造を熟知した上で独自ファイル構造を考えたり、圧縮⇒復元など高度な知識が必要になります。 既存のゲームライブラリやミドルウェアは、ゲーム開発者がゲーム開発だけに注力できるように、こういった部分までサポートしています。どこまでを自分でやるかは、ある程度妥協する必要があります。