DXライブラリ 総合スレッド その19 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2016/01/05(火) 23:44:29.77ID:fkNSYSkc
Cを習得した程度のスキルでも、ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

【公式】
http://homepage2.nifty.com/natupaji/DxLib/

【関連スレ】
C/C++ゲーム製作総合スレッド Part7 [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1420939171/
ゲームプログラムなら俺に聞け32(c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1441693570/

●DXライブラリではなくDirectXの質問ならこっちへ
【C++】 DirectX初心者質問スレ Part39 【C】 [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1418438785/
2018/04/10(火) 21:49:07.34ID:I40ecfic
逆をいうとそのあたり以外はいらないんだよな。
とにかくハードウェア的な部分や初期設定関係以外は基本、DirectXの関数だけでいい。
あとは余計なことせずに処理が軽いことが一番。現状でいいよ。
あれもこれもと盛ってUnityみたいにならなくていいよ。
2018/04/11(水) 16:35:14.21ID:d45q6Zye
大きなフレーム持ってるツールは学習コストがそれなりにかかるらね。
同人や個人制作あたりだと結構あの手のツールは段取りに時間かかる。
実際、DXLIBってそういう位置づけのものだと思うよ。
2018/04/13(金) 13:56:40.97ID:Q35NURll
自分はどっちかといえばunity目指してほしい
上級者の玩具にするとDXライブラリの意味がなくなる
370名前は開発中のものです。
垢版 |
2018/04/13(金) 14:04:01.73ID:fX9ITxio
Unityの方が上級者(or情弱)向きじゃね
そもそもコミュニティの規模が違うんだからDXlibにUnityライクを求めるのは間違い
2018/04/13(金) 16:38:44.24ID:R7eEBoc/
>>369
Unityの開発何人いると思ってるんだよ。
DxLibはライブラリ。ゲーム開発ツールじゃない。
2018/04/13(金) 18:14:01.06ID:qnlmuij1
でもバグっぽいことを掲示板で聞くとすぐ返事返ってきて修正してくれたりするからすごいよね…
2018/04/13(金) 19:30:36.87ID:63ARccHk
あの人のサポート力は尋常ではない
2018/04/14(土) 08:14:47.03ID:J5fuJkMt
明らかにライブラリのせいじゃないクソみたいな質問にもちゃんと答えてるの凄いわ
俺ならキレてる
2018/04/14(土) 14:41:36.04ID:Hagdi1K8
あれは偉いよね。人間ができてるよ。
俺があの馬鹿みたいな質問の連続くらったらやっぱりキレてると思う(笑)
2018/04/15(日) 08:45:03.93ID:L///N+7G
心配しなくてもお前らじゃあんなの作れないから、いらつく心配なんかしなくていいぞw
2018/04/15(日) 20:44:24.72ID:7pypFUfB
なんだと?!
2018/04/18(水) 22:24:37.19ID:+i4Yavlh
サポートに時間かけて逆に開発が遅延してるけどな
スマホ対応おそすぎどんだけ遅れればいいんだ
2018/04/19(木) 01:03:17.04ID:qo2Hkkyx
偉そうやな、クレクレの分際で
2018/04/19(木) 03:13:18.60ID:amawE2AE
他のゲームエンジンの後追いじゃなくて別の新しい方向に向かってもよかったかもね
381名前は開発中のものです。
垢版 |
2018/04/19(木) 06:32:44.17ID:GWEoEFzB
言うほど後追いしてる?
2018/04/19(木) 09:24:27.36ID:jjgvHqgw
>>378
文句があるなら自分で作れよ。
完全にボランティアでやってくれてるんだぞ。
2018/04/19(木) 12:47:14.74ID:Q0kUJgfG
369 名前:名前は開発中のものです。[sage] 投稿日:2018/04/13(金) 13:56:40.97 ID:Q35NURll
自分はどっちかといえばunity目指してほしい
上級者の玩具にするとDXライブラリの意味がなくなる


こいつ利用者で一番馬鹿だわ
2018/04/21(土) 11:46:31.61ID:eaIElNnW
単なるラッパーライブラリとして末永くやってほしい
2018/04/21(土) 18:00:11.35ID:1vO5sgVY
てか、それが人一人ができる精一杯の限度だろうなあ。
2018/04/22(日) 18:51:58.41ID:cgPT0kaN
今のゲームが当たり前に実装する物理レンダや物理演算は
ラッパーライブラリじゃあ実装できない
Direct Xのラッパーライブラリ作れば時代の最先端だったというのはもうずっと昔の話でしょ
過去の成功体験を忘れられないってか老害よな
387名前は開発中のものです。
垢版 |
2018/04/22(日) 19:03:54.96ID:jyQNA3uE
それらが出来ないライブラリのスレに居座る老害が何いってんだ
乞食らしくUnity(笑)でも使っとけ
2018/04/22(日) 19:29:34.04ID:9/rq3Yyr
Unity(笑)UE4(笑)
本物の老害様だ!
2018/04/22(日) 20:26:07.89ID:cgPT0kaN
>>387-388
お前らはそこでUnityやUE4への批判をしてしまうところがよくない
DXライブラリでも面白いゲームは作れる!と熱っぽく語るべきだろ
DXライブラリが本当にダメみたいじゃないか
2018/04/22(日) 20:34:19.03ID:w7fu0Q1x
スーファミレベルの2Dゲームが作れれば満足な俺みたいなおっさんには
今のゲームが当たり前に実装する物理レンダや物理演算なんぞ要らんのです
2018/04/23(月) 07:23:43.24ID:zTmnRfht
>>398
ゲーム制作ツールとライブラリの区別もつかないとか
先に病院で頭見てもらうべきなんじゃないの?
2018/04/23(月) 15:53:58.50ID:wUUOYYgP
2D作るにしても物理演算はあった方が便利っしょ。box2dくらいは使えるようになった方がいい。
2018/04/23(月) 16:30:22.21ID:XokG/FK0
俺は物理演算いらんけどなあ。自前で組んで調整した方がいい動きになると思う。
2018/04/25(水) 18:53:22.42ID:pNPtAbT4
とある意見「Box2Dぐらいは使えるようになった方がいい(便利だし開発が楽だから)」
とあるマゾ「俺は楽したくない変態だから物理演算はいらない。他の人間もそうあるべき」
俺「開発の効率を上げるのを拒む人間って害悪だよなあ。真空管でパンチカードでも通してろよ・・・」
2018/04/25(水) 21:42:09.32ID:wCZSlXnR
>>394
その人にとって不必要な機能が追加されることは開発の効率を上げることに繋がらないどころか
その人の必要な機能に対して公式のサポートの手が回りにくくなることから
その人にとっては開発の効率が下がることに繋がるってことを理解しようぜ

機能はあればあるだけいいってもんじゃない、必要な機能だけあるのが一番いい
必要な機能は人それぞれ
2018/04/25(水) 23:48:47.29ID:G5A97PEX
>>394
同じCライブラリなんやから自分で組み込みゃいいでしょ。
何いってんの?
397名前は開発中のものです。
垢版 |
2018/04/26(木) 06:43:12.80ID:Q6Y0G65Q
>>394
Box2D使えばええやん
2018/04/26(木) 08:55:16.56ID:8FkhnZEo
自分で組んでbox2Dより洗練された高速演算のライブラリを書けるならまあいいけどさ
物理挙動は入れずに衝突判定だけ取ることも出来るんだよ。そこに使うだけでもめっちゃ楽。
2018/04/26(木) 21:26:43.42ID:Obi4vXUU
衝突判定作るのってそんな大変かね
丸と四角と線分くらいで十分でしょ
2018/04/26(木) 21:26:57.30ID:O7SEtfFF
>>395
うーん、とりあえず君はプログラム云々以前に日本語を勉強すべきかな
日本語も満足に操れない人間がプログラミングなんてちゃんちゃらおかしいよ
2018/04/27(金) 19:02:34.86ID:uyUfvLGU
資本力がないとゲームエンジンが開発できなくなったんだよね、今の時代
物理演算、物理レンダ、2Dボーン、タイルマップエディタ、シェーダーのビジュアルスクリプト
こういう「早い」「安い」「うまい」が実現できなければユーザー離れが起きる
2018/04/27(金) 20:17:38.78ID:jXn/jYw6
なんか、ここ、プログラムの「プ」の字も知らなさそうな奴らが多すぎないか?
2018/04/27(金) 22:07:00.13ID:uyUfvLGU
ん、君はプログラマーか?
最近はタイルマップエディタとかビジュアルスクリプトが普通に使えるようになったから、
プログラマの負担が減らせるわけで、それはいいことなんじゃないの
(DXライブラリではよく知らんが、少なくともUnityやUE4では)
2018/04/27(金) 23:36:34.96ID:+EQaH9fl
>>402
うるさい、バーカ
2018/04/28(土) 08:48:27.83ID:bZFWgAtf
>>402
少なくともここ数レスで君が一番アホっぽいよ?w
2018/04/28(土) 15:19:30.35ID:o1LwlEpU
無駄なものを無駄と判断して切り捨てる能力こそシステム開発において至高

キャラを動かしてるだけで気持ちイイという操作感を追求するのなら物理も有益
2018/04/28(土) 17:36:54.96ID:NvosXufr
>>405
そんな、図星を突かれたショックと悔しさを前面に出したレスをしなくても……
2018/04/29(日) 09:32:36.04ID:Z/Nwj4DW
>>407
効いちゃった?ごめんぬw
2018/04/29(日) 13:55:41.62ID:S7kv9d23
>>406
方向キー入れた瞬間から等速直線運動スタートしてくれた方が気持ちよくない?
確かにキャラが歩きだす時は加速度運動するのが物理的に正しいけど咄嗟の回避とか間に合わなくてストレスあるね
410名前は開発中のものです。
垢版 |
2018/04/29(日) 19:49:17.45ID:SoZNbWO3
>>408
誰かと勘違いしてるのかな? 謝らなくていいからキチガイは病院へ行こうねw
2018/04/30(月) 08:39:38.91ID:tt/t6/9o
>>410
煽られてキレて顔赤くするくらいなら煽らなきゃいいのに
煽らなかったら煽られないんだよ?わかる?w
2018/04/30(月) 09:46:00.03ID:mwpHyMRP
話が見えないんだけど、なんで>>402は突然このスレの住民に喧嘩売りだしたの?
誰かいじめた?
2018/04/30(月) 13:48:06.47ID:VZwEIDhP
IQ200の私にもわからん難問だな。
言えることはそっとしとけと言うことだ。
2018/04/30(月) 20:09:14.02ID:KhVGgt2z
このスレのレベルが低いのはわかりきってるのになぜわざわざ言葉に出すのか・・・・
415名前は開発中のものです。
垢版 |
2018/05/07(月) 13:58:29.93ID:Vfb9Bs9K
確かにうんこ旨そうだよな
2018/05/07(月) 19:41:54.85ID:gUi75qwS
実際は苦いけどな
2018/05/08(火) 19:55:01.58ID:zaHk58IC
ググったら本当に苦いらしいな
印象論だと思ってたわ
2018/06/08(金) 22:16:08.13ID:uYJdfwFz
Nintendo Switch対応だそうだ
2018/06/09(土) 01:01:18.87ID:fsH33aBO
まあいつも通り、素人が使う分には関係ない感じ?
2018/06/09(土) 21:18:20.35ID:mBF3zINb
プロでこれ使ってるの見たことない
2018/06/09(土) 21:58:18.52ID:fsH33aBO
それは流石にアンテナ低くない?
2018/06/10(日) 16:27:22.57ID:qJZsL4jW
>>421
さあ、クソの役にも立たないゴミみたいなマウンテンゴリラレスはやめて
人の役に立つレスをしようぜ
2018/06/11(月) 13:23:15.85ID:KAsMzLPf
ライブラリ公開してくれよ。
車輪の再発明は辞めたい。
勉強にはなるけど。
2018/06/13(水) 01:02:11.08ID:zpWb0K6R
最新のハードに対応するのはいいが、
グラフィックがもう10年前くらいの旧世代なのをなんとかしてほしいな
シェーダー使えないとか、HDR対応してないとか
形だけ対応して中身がついてきてない感じだ
2018/06/16(土) 19:40:00.09ID:8ewh1R16
>>423
DXライブラリはソース公開されてるよ
2018/06/17(日) 03:19:14.87ID:z6C9dnYv
ええ、公開されてますね(困惑。
2018/06/30(土) 00:04:57.83ID:QTwf7deE
ジオメトリシェーダとハルシェーダが使えないのは別に文句ないけど
technique使用不可なのは地味にイライラする
2018/07/04(水) 18:03:25.24ID:GKLylxjM
DXライブラリのシェーダーまわりはそれだけじゃないつーか
DirectX9とDirectX11でコーディング方法が違ったり、
Android版ではそもそもシェーダー使用不可能だったり、
2Dスプライトの表示にシェーダー使えなかったりして
あれもないこれもないって感じになっちゃうなぁ。まあそういうのがいらない人向けなんだろうけど
2018/08/09(木) 02:58:08.73ID:w7j+HefU
VRoidのVRMファイルの読込に対応しようとしたらマテリアルが物理レンダのパラメータで
DXライブラリだとVRMファイル読込むのは難しそうだ
物理レンダ対応してくんないかな
430名前は開発中のものです。
垢版 |
2018/08/11(土) 12:47:56.79ID:RmGfKRPO
DxLibのシェーダーのSamplerで、テクスチャごとに違うフィルタリングモードでSamplerを作りたいんだけど無理かな?
プログラム側でSetDrawModeで設定したフィルタリングモードになっちゃうんだけど
2018/08/11(土) 13:37:54.92ID:mdLblHI4
未だにMMDとメタセコだから
VRMファイルはナウでヤングすぎる
2018/08/11(土) 20:00:03.15ID:0BvUQheC
DXライブラリは時代遅れすぎてどうにもならない
2018/08/11(土) 20:48:54.21ID:V6BT8wZU
すぎてってほどではないと思う、まだ
2018/08/12(日) 00:15:54.84ID:DLCHw2GI
時代に遅れすぎた理由は、アセットストアがないせいだな
いまだにアセットがひとつもないのは、アセットおじさんも真っ青だわ
2018/08/12(日) 09:49:59.00ID:n2rCCHLV
お前は何を言ってるんだ
2018/08/15(水) 02:14:13.34ID:I59D2OX6
DXライブラリでようやく地面モデルと線分の当たり判定つけられた
そこに主人公モデルの位置を同じにした
まだモーションつけてないから
主人公が棒立ちのまま移動した
坂道登れるだけで感動した(小並感
2018/08/20(月) 12:57:34.10ID:HuW2CUtM
日記ですか
2018/08/26(日) 11:59:52.50ID:Oz7phZC4
日記の続きまたー?
2018/08/29(水) 12:37:25.65ID:8rKJxZI3
DXライブラリって世間的にはゲームエンジン扱いなのな
2018/08/30(木) 08:01:34.88ID:w5Eoz0MG
>>439
多分そこが一番誤解されやすいとこだよな。
基本はDirectXで自前で全部作りたいけれどめんどくさい設定周りだけはやって欲しい人向けのお助けラッパーだよね。
そこにDirectX以上の機能はいらないし。今の状態で十分。
2018/08/30(木) 14:26:51.75ID:83gEz2C2
「各種ゲーム用エンジン紹介」みたいなところで触れられる分には「そんなもんか」って感じだけど
「ゲームエンジンを使っている」カテゴリの中にDXライブラリ製ゲームが含まれるとあれ?って思う
自分でも基準がよく分からない
442名前は開発中のものです。
垢版 |
2018/08/31(金) 10:19:13.96ID:MuDS6z7U
教えてほしいんですが
int fp = FileRead_open("csvファイル");
この場合、fpにはcsvがそのまま入ってるという解釈でいいですか?
つまり、ifstream ifs(fp);が可能になるのかが知りたいです。

ifstream ifs(FileRead_open("csvファイル"));は無理ですか?

なんでこんな面倒なこと考えるかというと、
archive化したファイル内のcsvを読みたいんです。
443名前は開発中のものです。
垢版 |
2018/08/31(金) 10:29:38.50ID:MuDS6z7U
>archive化したファイル内のcsvを読みたいんです

厳密に言いますと、
ifstream ifs();で読み込んで
string buf[要素数];
while(ifs && getline(ifs,buf[line])){
line++;
}
とbuf[]に一旦、そのままcsvの中身を格納したいんです。

普通なら、
ifstream ifs(csvファイル);で問題ないじゃないですか?
でも、そのcsvがarchiveしたファイルから読み込む場合
ifstream ifs(csvファイル);だと読み込みません。
そこでFileRead_openを使うわけですが、
自分はどうしても
ifstream ifs(csvファイル);
string buf[要素数];
while(ifs && getline(ifs,buf[line])){
line++;
}
の流れで利用したいんです。
なので、ifstream ifs(csvファイル);に来る前に
FileRead_openを使い終わらせ、
あとはFileRead関数系を使わなくて済む様にしたいんです。

、、伝わりますか?僕の言いたいこと。。
444名前は開発中のものです。
垢版 |
2018/08/31(金) 23:18:37.63ID:8gsP87Iw
archive化したテキストファイルは改行コード\nが消えたバイナリファイル化してるから
最初にファイルサイズを計って1行ではなく全部をchar[filesize]に読み込むしかないんじゃない?
445名前は開発中のものです。
垢版 |
2018/09/01(土) 06:52:39.05ID:RWsTVHZH
>>444
>archive化したテキストファイルは改行コード\nが消えたバイナリファイル化してるから

え、それ本当ですか?

>最初にファイルサイズを計って1行ではなく全部をchar[filesize]に読み込むしかないんじゃない?

すみません、もう少し具体的に教えてください!
2018/09/01(土) 07:02:25.87ID:BLfEX+5a
>>445
ファイルサイズが1000なら
char t_data[ 1000 ] にファイルのデータを格納する

で、後は添え字で任意のデータにアクセスする
2018/09/01(土) 11:30:13.35ID:ghpuXsiR
FileRead_scanfじゃいかんの?
448名前は開発中のものです。
垢版 |
2018/09/01(土) 14:32:20.17ID:PENKT9BN
>>445
2chは長い行で書き込めないのよ

string all;
char* path = "./hello.csv";
int size = (int)FileRead_size( path ) ; // 1char = 1byte
char* buffer = new char[size];
int id = FileRead_open( path, false ) ;
FileRead_read( buffer, size, id) ;
all = buffer; // copy to string
delete[] buffer;
FileRead_close(id);

// allをcsvのrow(\r\n)とcol(,)でパースする。csv書式の不正チェックとか丁寧にやると長くなるので以下適当
string csv[ROW][COL];
string tmp = "";
int x = 0; int y = 0;
for(int i=0; i<all.length(); i++){
char c = all[i];
if(c == ',') {
csv[y][x] = tmp; tmp = ""; x++;
} else if (c == '\n') { // 本当は\r\nの2つで改行なんだけど
csv[y][x] = tmp; tmp = ""; x = 0; y++;
} else { tmp += c; }
}
csv[y][x] = tmp; // 最後の一個
文字列(string)から数値(intとか)に変えるときはatoiじゃなくてstrstreamだかを使うとよい
449名前は開発中のものです。
垢版 |
2018/09/01(土) 14:44:21.63ID:PENKT9BN
追記
csvファイルの最後に無駄な改行がついてたりすると配列のサイズ超えたりしがちなので注意
450名前は開発中のものです。
垢版 |
2018/09/01(土) 14:53:41.96ID:PENKT9BN
さらに追記
csvの最後ってヌル文字で終わってないだろうから自分で足したほうがいいかも

string all;
char* path = "./hello.csv";
int size = (int)FileRead_size( path ) ;

// '\0'が無い文字列char*をstringに渡すと長さ不定でまずい
char* buffer = new char[size+1];
buffer[size] = '\0';

int id = FileRead_open( path, false ) ;
FileRead_read( buffer, size, id) ;
all = buffer; // copy to string
delete[] buffer;
FileRead_close(id);
2018/09/02(日) 02:13:46.38ID:qrAMxSjg
Cは文字列処理が弱いからCSVParserを書くのも一筋縄にはいかんよ
2018/09/03(月) 04:26:51.22ID:8cSGEO2Y
そしてCSVの仕様を調べて、予想以上に面倒くさいことを知る
2018/09/03(月) 23:58:20.90ID:JgPc/ZW2
「,」じゃなくてTABスペースで区切るとか
「'座標(x,y)'」みたいにシングル・ダブルクォーテーションで囲む「,」を含むセルだとか
CSVも奥が深い
2018/09/04(火) 02:54:31.44ID:jVVbpFTb
ヘッダにコメントにセル内改行に空白セルに非固定列数に…
あれやこれや対応させると面倒なので、仕様はExcel出力版に決めうちとかしちゃう
それでいてExcel経由でもやり方によって微妙に違ったりするけど
2018/09/04(火) 12:16:43.15ID:qFImTgae
Excel出力でも小数点の区切りがカンマな国とかあって地獄絵図なんだよなぁ
2018/09/04(火) 12:18:12.23ID:qFImTgae
日本語がおかしかった
「小数点ががカンマ」ね
2018/09/04(火) 12:18:39.57ID:qFImTgae
死にたい・・・
2018/09/04(火) 18:21:03.16ID:87Ucq8PA
ワロタw
そもそも「小数点の区切りがカンマ」って別に変な日本語じゃないと思うけど?
2018/09/05(水) 02:54:47.49ID:6fPtkJ/i
「(整数と)小数の区切り記号がカンマ」か
「小数点という区切り記号がカンマ」かってとこじゃない?
まあいずれにせよ通じる内容、普通に見落としちゃうレベルではある
460名前は開発中のものです。
垢版 |
2018/09/05(水) 23:25:30.03ID:jdPHLPpw
もう>>442は投げ出しているだろうよ
461名前は開発中のものです。
垢版 |
2018/09/07(金) 06:49:13.67ID:SP/YWN4v
>>460
投げ出していません。
>>448さんのせっかくのソースがちょっと複雑で、、、
言葉でなにをしなければならないのか、アドバイスほしいです。

要は、
archive化したテキストファイルは改行コード\nが消えたバイナリファイル化してるから
普通にCSVを開くプログラムを書いていると
archive後、正常に読み込まないってことですよね?
ということは、バイナリ状態のCSVを読み込むプログラム文を書けってことですか?
でも、それだとビジュアルスタジオ上のデバッグプレイじゃ
バイナリ化してないcsvなんでエラーが起きますよね?

だからすごく困っています。
どうすればいいのか
2018/09/07(金) 12:19:35.09ID:knV8JfdB
>>461
>>でも、それだとビジュアルスタジオ上のデバッグプレイじゃ
>>バイナリ化してないcsvなんでエラーが起きますよね?
何を言っているのか分からん

デバッグモードだろうがバイナリ形式のファイルを読み込むプログラムを書けばバイナリ形式で読み込むし、
テキスト形式を読み込むプログラムを書けばテキスト形式で読み込むでしょ
463名前は開発中のものです。
垢版 |
2018/09/07(金) 12:41:21.71ID:SP/YWN4v
>>462
えっと、自分の知識不足かもしれませんが
普通に数字と「,」だけが詰まったcsvファイルを用意していても
バイナリ形式で読むプログラムを書いていれば
バイナリ形式で読むってことですか?

バイナリ形式で読むプログラムを書いた場合は
用意するファイルもバイナリ形式で保存されたファイルじゃないと
ダメなのかなと思っているんですけど。
2018/09/07(金) 13:34:50.10ID:knV8JfdB
>>463
そもそも上の方に書いてあった
「バイナリ形式は改行が削除される」っていうのが表現として適切じゃないな

改行コードを改行として認識するのがテキスト形式
改行コードをそのまま文字の羅列として認識するのがバイナリ形式

テキスト形式のファイルをバイナリ形式で読み込んだら
そのテキスト内の改行コードがそのまま文字列として読み込まれるだけ
2018/09/07(金) 13:46:37.16ID:2W2TZVJf
1 複数データを一つにまとめたい(暗号化したい)
2 読み込みプログラム(csvパーサー?)は既存のものをそのまま流用したい
ってことなのかな……

>>444,>>446,>>448のキモは、DXアーカイブファイルを一本のchar配列に読み込む(バイナリデータとして扱う)という部分なので、
結局DXアーカイブもifstreamも関係なくて、char配列内のバイナリデータを自力で解析できるかという話になる

パソコンで使うデータは全てバイナリデータと言えるので、csvだろうが音声だろうがDXアーカイブファイルだろうが全てバイナリ形式で読み込める
466名前は開発中のものです。
垢版 |
2018/09/07(金) 14:40:43.77ID:SP/YWN4v
>>462
>パソコンで使うデータは全てバイナリデータと言えるので、
>csvだろうがDXアーカイブファイルだろうが全てバイナリ形式で読み込める

その理論だとcsvや音声などの外部素材データをDXarchiveファイルにしたとしても、
archiveする前、つまりはビジュアルスタジオのプロジェクト上で
ビルドして正常に機能してるプログラムそのままでも
archive後も正常に機能するはずではないですか?

もう少し具体的に言いますと>>442で説明しきれなかったんですが
ifstream ifsを利用して、csvの中の数値を配列に入れ込むプログラムを
自分は書いてまして、そのプログラムで問題なく動いてるゲームがあるんですが、
それの完成後にreleaseビルドして、使用してるサウンドやcsvの素材は
フォルダごとarchiveファイル化したんですよ(配布する場合は皆さんそうしますよね?。
そしてexeファイルを実行したところ、画像やサウンドは正常に読み込むんですが、
csvだけ正常に読み込んでくれないんです。
エラーになるというよりは、数値を正しく読み込んで無いようで、配列を利用した背景画像が
バグります。
例えばそこで素材をarchiveファイル化せずに、素材が入ったフォルダをそのままで
利用すると画像やサウンドはもちろん、csvも正常に読み込み、ゲームも正常に動くんです。
なので、私は、こう思ったわけです。
「csvについては、archiveファイル化すること前提にしたプログラムを組まないと
正しく読めないのかな」と。
それで、「FileRead_open」を使わないとダメなのかなと。
archiveファイルのcsvを読み込む場合、FileRead_openを利用しろと言われたことがあるので。
でもあなたの話を聞いてたら、違うのかな、とか。。。
2018/09/07(金) 15:06:25.39ID:knV8JfdB
>>466
アーカイブは言わば「バイナリ形式」のファイルでしょ?

「テキスト形式のファイルを読み込むプログラム」でバイナリ形式のアーカイブを読み込もうとしてるからバグってるんじゃない?

123
456
789

上記のファイルがあったとして「1行読み込む」関数を使った場合
「123」「456」「789」って読み込むだろうけど
アーカイブ化(バイナリ形式)すると「1行読み込む」関数を使うと
「123\r\n456\r\n789」みたいに 一つの文字列として全部読み込むから数値が正常に読み取れてないと思うんだけど
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況