DXライブラリで画像を読み込むときってLoadGraph("img/img01.png");こんな感じで読み込みますよね
でも、もしimgディレクトリを誤って削除したりするとその画像がゲームで表示できなくなりますよね(そりゃ当たり前だが)
そういうのを防止するためにexeに画像などを埋め込みたいのですがどのようにやれば良いのでしょうか?
私はVS2008EEを使っているのですが、リソースを埋め込むとかいうのが出来るらしいです(ビルドの時になんか下に出てきます)
このリソース?を埋め込む作業の時に一緒に画像とかも埋め込めますか?
exeに埋め込んだ場合画像のロードはどのようにすればいいのでしょうか?
よろしくお願いします
EXEに画像や音声ファイルを埋め込みたい
Re: EXEに画像や音声ファイルを埋め込みたい
一応リソースの埋込みに付いては
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=1285
http://www.play21.jp/board/formz.cgi?ac ... 8&from=all
このあたりに書かれていますが、
そんなことを言ったら、exeファイルを誤って削除したり、セーブファイルを誤って削除してしまう場合だってあります。
imgディレクトリなどに入れておいたほうが、
画像データの更新などが楽なので無理に埋め込む必要はありません。
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=1285
http://www.play21.jp/board/formz.cgi?ac ... 8&from=all
このあたりに書かれていますが、
このような理由のためにexeにファイルを埋め込む利点はあまり無いと思いますよ。system32 さんが書きました:DXライブラリで画像を読み込むときってLoadGraph("img/img01.png");こんな感じで読み込みますよね
でも、もしimgディレクトリを誤って削除したりするとその画像がゲームで表示できなくなりますよね(そりゃ当たり前だが)
そういうのを防止するためにexeに画像などを埋め込みたいのですがどのようにやれば良いのでしょうか?
そんなことを言ったら、exeファイルを誤って削除したり、セーブファイルを誤って削除してしまう場合だってあります。
imgディレクトリなどに入れておいたほうが、
画像データの更新などが楽なので無理に埋め込む必要はありません。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: EXEに画像や音声ファイルを埋め込みたい
埋め込むことは出来ますが、次のデメリットがあります。
(1)表示や再生するのが面倒。
(2)全部メモリにロードされるので、常駐メモリ量が巨大化。
(3)実行ファイルを作るのが遅くなり、exeファイルが巨大化する。
(4)DXライブラリのアーカイブツールが使えない。
「DXライブラリ置き場 ミニテク」
http://homepage2.nifty.com/natupaji/DxL ... c.html#T11
>もしimgディレクトリを誤って削除したりするとその画像がゲームで表示できなくなりますよね(そりゃ当たり前だが)
もう一度インストールしてもらえば良いので、リソースにしなきゃいけないメリットを感じません。
(1)表示や再生するのが面倒。
(2)全部メモリにロードされるので、常駐メモリ量が巨大化。
(3)実行ファイルを作るのが遅くなり、exeファイルが巨大化する。
(4)DXライブラリのアーカイブツールが使えない。
「DXライブラリ置き場 ミニテク」
http://homepage2.nifty.com/natupaji/DxL ... c.html#T11
>もしimgディレクトリを誤って削除したりするとその画像がゲームで表示できなくなりますよね(そりゃ当たり前だが)
もう一度インストールしてもらえば良いので、リソースにしなきゃいけないメリットを感じません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
-
system32
Re: EXEに画像や音声ファイルを埋め込みたい
すいませんなんか勢いでimgディレクトリを削除したら……とか言っていましたがほんとうの理由は画像を使われたくないからです
友人が僕のゲームのために書いてくれた画像を他の人にまた使われたりするのではないかと、そういう理由です
それにエンディングで使われる画像がゲーム始める前から見れるとかってなんか嫌じゃないですか
そんな感じでこの質問をさせていただきました
貼ってもらったリンクを見て今から実際に試してみます
友人が僕のゲームのために書いてくれた画像を他の人にまた使われたりするのではないかと、そういう理由です
それにエンディングで使われる画像がゲーム始める前から見れるとかってなんか嫌じゃないですか
そんな感じでこの質問をさせていただきました
貼ってもらったリンクを見て今から実際に試してみます
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: EXEに画像や音声ファイルを埋め込みたい
ちなみに、BMPやPNGを単にexeに埋め込んでも簡単に取り出されますよ。そういうツールが出回っています。
取り出すツールを作る人よりも高度な知識がないと対抗できないのが現実です。
取り出すツールを作る人よりも高度な知識がないと対抗できないのが現実です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
-
system32
Re: EXEに画像や音声ファイルを埋め込みたい
リソースに埋め込んでもあまり意味はないみたいですね(やろうと思えばデータを取り出せるのかな?)
もう完全にココのタイトルからずれますがDXライブラリのアーカイバ(暗号化する方ですよね)ってどうなんでしょう
たしかにコレ使えば中身はパッと見わからないし、拡張子をdxaからdatとかにすればデータを取り出してやろうって人はなかなか現れませんよね
しかし、一個気になったのはこれってオープンソースですよね
ということはどうやって暗号化しているのか分かってしまうのでは?
それにパスワードを掛けてもソースを見ればパスワードの格納先って分かっちゃいますよね
これだったら中身はやろうと思えば開けてしまうのではないでしょうか?
もうタイトルからズレてしまってますがよろしくお願いします
もう完全にココのタイトルからずれますがDXライブラリのアーカイバ(暗号化する方ですよね)ってどうなんでしょう
たしかにコレ使えば中身はパッと見わからないし、拡張子をdxaからdatとかにすればデータを取り出してやろうって人はなかなか現れませんよね
しかし、一個気になったのはこれってオープンソースですよね
ということはどうやって暗号化しているのか分かってしまうのでは?
それにパスワードを掛けてもソースを見ればパスワードの格納先って分かっちゃいますよね
これだったら中身はやろうと思えば開けてしまうのではないでしょうか?
もうタイトルからズレてしまってますがよろしくお願いします
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: EXEに画像や音声ファイルを埋め込みたい
それは、そのとおりです。
なので、そこまで隠したいならメーカーに負けない暗号化などを施す必要があります。
それはsystem32さんのやる気次第ですが、そこまでやる必要があるのかは疑問です。
なので、そこまで隠したいならメーカーに負けない暗号化などを施す必要があります。
それはsystem32さんのやる気次第ですが、そこまでやる必要があるのかは疑問です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
-
system32
Re: EXEに画像や音声ファイルを埋め込みたい
今DXアーカイバのソースを見てきましたが全部で3000行ぐらいありましたw
あんなのfopenをなんとか理解した程度の私には読めません
softyaさんの言うとおりもうDXアーカイバを使うだけでいい気がしてきました
またやる気があったらDXアーカイバを改造してみようと思います
いろいろとありがとうございました
あんなのfopenをなんとか理解した程度の私には読めません
softyaさんの言うとおりもうDXアーカイバを使うだけでいい気がしてきました
またやる気があったらDXアーカイバを改造してみようと思います
いろいろとありがとうございました
Re: EXEに画像や音声ファイルを埋め込みたい
身も蓋もない話ですが、いくら強固な暗号化を施そうが、
最終的に画像データはメモリに展開され、さらに画面に表示されるわけですから
スクリーンショット撮るとか、いくらでも利用できてしまうことになります。
なゲームハードを自作して、
ハードウェアレベルで暗号化するとかなら別かもしれませんが。
最終的に画像データはメモリに展開され、さらに画面に表示されるわけですから
スクリーンショット撮るとか、いくらでも利用できてしまうことになります。
なゲームハードを自作して、
ハードウェアレベルで暗号化するとかなら別かもしれませんが。