[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 06/11 19:11 / Filesize : 240 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

DXライブラリ 総合スレッド その12



1 名前:名前は開発中のものです。 mailto:sage [2012/02/23(木) 21:35:32.53 ID:Si08WDH/]
Cを習得した程度のスキルでも、
ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

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

【過去スレ】
DXライブラリ 総合スレッド
pc11.2ch.net/test/read.cgi/gamedev/1197468399/
DXライブラリ 総合スレッド 2008
pc11.2ch.net/test/read.cgi/gamedev/1224923873/
DXライブラリ 総合スレッド その3
pc11.2ch.net/test/read.cgi/gamedev/1238429676/
DXライブラリ 総合スレッド その4
pc11.2ch.net/test/read.cgi/gamedev/1249822550/
DXライブラリ 総合スレッド その5
pc11.2ch.net/test/read.cgi/gamedev/1259912953/
DXライブラリ 総合スレッド その6
hibari.2ch.net/test/read.cgi/gamedev/1267108154/
DXライブラリ 総合スレッド その7
hibari.2ch.net/test/read.cgi/gamedev/1286180687/
DXライブラリ 総合スレッド その8
hibari.2ch.net/test/read.cgi/gamedev/1301818631/
DXライブラリ 総合スレッド その9
hibari.2ch.net/test/read.cgi/gamedev/1310904069/
DXライブラリ 総合スレッド その10
hibari.2ch.net/test/read.cgi/gamedev/1313655495/
DXライブラリ 総合スレッド その11
toro.2ch.net/test/read.cgi/gamedev/1322844235/

309 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 10:48:16.61 ID:+JFG91BQ]
>>307
サークル活動しててここに名を挙げられて迷惑なことはないんじゃないかな
何年も前から結構凄いソフト作ってる所でさえ最近まで全く知らなかった
なんてこともざらなくらい非大手サークルの知名度って低いし・・・

310 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 11:10:06.01 ID:Hun1O81I]
>>300
DirectXが使えないプラットフォームで3Dゲームといえば
ほとんどOpenGLじゃないのか?

311 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 11:52:50.87 ID:+JFG91BQ]
>>307
まあ要は自分がDXライブラリでここまでできるのかと感心したソフトを紹介したいだけなんだよね

というわけでDXライブラリの使用をTwitterで公言しているサークルの一つ「LION HEART」
『Mystical Chain』『サナエチャレンジ』など主に東方二次創作ソフトを作ってて、現在『天壌のテンペスト』制作中

Mystical Chainを買ってプレイしてみたんだけど、固定画面ではあるもののゲームシステム、演出、エフェクト、ドット絵
どれも結構クオリティが高くて、そんでそれがDXライブラリで動いていると知って少し驚いた

同人ソフトチェックしてる人なら大抵知ってるかも・・・

312 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 12:11:17.16 ID:4IS6psrm]
ただのライブラリだしゲームのクオリティに
DxLib使ってるとかDirectX直接打ってるとか関係なくね?

313 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 12:16:36.39 ID:+JFG91BQ]
同じくDXライブラリ使用と知って驚いたソフト『ディアドラエンプティ』
同人ソフトサークル「ふろーずんおーぶ」制作のファンタジーゾーン型STG

Xbox360にも完全移植は難しいかもしれない程の低スペックPC無視っぷりの仕様
でも誰もが低スペックPCにある程度配慮していたので結果的に誰も作ったことがないようなモノに仕上がってる

綺麗な動画があったのでニコニコ動画のプレミアム会員の人はこちらをどうぞ
www.nicovideo.jp/watch/sm14755827

314 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 12:27:07.27 ID:+JFG91BQ]
>>312
まあね
でも理論上そうだとしても実証されていないとほんとにあのレベルの作品が作れるのか半信半疑だったりしない?

自分もLION HEARTの人は弘法筆を選ばずで、多分DXライブラリじゃなくてもあのクオリティ出せると思うけど
ディアドラエンプティ作った人はサークルメンバーから前作のプログラム担当だった人が抜けちゃって
已む無く絵担当だった自分がプログラムを組むことにしたのだそうな
本格的なプログラム初体験だったからDXライブラリは大いに役に立ったと講演で言ってたよ

315 名前:名前は開発中のものです。 [2012/03/31(土) 12:30:06.58 ID:bmWK3Pkg]
入門サイトで東方もどきが作られているせいかSTGが多い印象を受けるね

316 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 12:46:46.00 ID:+JFG91BQ]
>>315
STG多いよね、しかも多分入門サイトのプログラムを弄って作ったと思われるSTGが・・・
でも使用が公言されてないからここには載せないけど前述ソフトクオリティ並の
格ゲー・横スクアクション・横スクアクションSTG・横スクアクションSTGRPG・SLGもあるよ

フリーソフトあんまりチェックしてないから全部同人ソフトだけど・・・
フリー含めたらハイクオリティなRPGやパズルなんかもあるのかな

317 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 12:52:09.44 ID:E9bSa40u]
それ、素人だまして俺スゲーしてるだけの人じゃないw




318 名前:名前は開発中のものです。 [2012/03/31(土) 13:02:28.70 ID:/GUbNrv+]
>>309
>サークル活動しててここに名を挙げられて迷惑なことはないんじゃないかな

>>311
>>313

宣伝ステマ自演乙



ここれだけで相手側に迷惑がかかる可能性があることぐらい考えろ


319 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 13:44:47.49 ID:EE+r8EV1]
偽英国紳士団もライブラリ使ってたはず

320 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 14:12:48.49 ID:kxJHQwtS]
夜行蛾、ステラバニティ、エデンズエイジス、サイバークライシスはログがあったかな
クリクロもログはいた気がする。あとエスプガルーダっぽいのも表記があった
個人的には同人STGは半分以上DXLib使ってるイメージ

321 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 14:33:47.21 ID:/kaMiMCs]
自分のサークルの作品を宣伝するなら今がチャンス!他のサークルのも一緒に並べればバレないぞ!

322 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 15:53:06.45 ID:+JFG91BQ]
知っている中でDXライブラリの使用を公言しているサークルもう一つあった「illuCalab」
『東方十七歩』を制作、現在『TAKKOMAN』制作中
Googleで「DXライブラリ」で検索すると上位にヒットする「DXライブラリのススメ」を書いた人がサークル代表だから知っている人も多いかも

この人は弘法筆を選ばずの典型でDXライブラリを使う理由は「サポートの手間が省けるから」
実際Unityをサクっと使いこなして3Dゲームを作ってしまったりしている

>>318
なるほど、そんな人が居るかもしれないね
ただ仮に311,313をステマだと言い張る人が現れたところでそれを信じる人が何人いるのか

>>320
サイバークライシスというソフトは見たこと無いと思うんだけど検索しても引っかからない・・・

323 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 16:37:08.52 ID:P70wWqCY]
無駄に知名度あげたくない側からすると>>309みたいな思考回路持ってる奴は迷惑この上ない
何を語ろうが勝手だろって人には何も言わんが 自己正当化しようとする奴には本気でムカつく ので
良識派気取りたいのならそこら辺にも気を回した方がいいよ

324 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 16:43:54.88 ID:uvNKl7UP]
「2chで有名になった」とか汚名以外の何者でもないからな・・

325 名前:307 mailto:sage [2012/03/31(土) 16:46:12.51 ID:aSxt+fA0]
>>311
なんで俺が出そうと思ったサークルと被ってんのwww

326 名前:325 mailto:sage [2012/03/31(土) 16:49:41.71 ID:aSxt+fA0]
言い間違い。
出そうと思った → 名前を出すかどうか迷った で。

俺の中で、まさにその2サークルを想定してた

327 名前:名前は開発中のものです。 [2012/03/31(土) 16:55:50.42 ID:jz3Jj4zk]
こんな所で名前が出た所で有名になるわけないじゃん
なにドリーム見てんの?



328 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 19:27:54.03 ID:yFx6jOOS]
意味のない煽りあいするなよ。
それだけDXライブラリは同人ゲー製作者に浸透してるってだけの話だろ。

329 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 20:58:49.05 ID:YVo+7Qj+]
全部初めて聞くし
個人的にはこういった情報は面白いけどね

330 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 20:59:54.97 ID:+JFG91BQ]
>>325
同人ゲームサークルで高いレベルのソフトを作っていて発言の中でDXライブラリの話題も普通に出すといったら自然とこの2つに絞られるのかもw

>>323
>>324
327も言ってるけど、ここがゲーム速報板やゲハだったらその意見もわかる
でもここは数年書き込みが無いスレでもDAT落ちしない過疎板だよ?
ディアドラエンプティの作者は今仕事が忙しいらしくて同人活動から離れてるけど
「LION HEART」も「illuCalab」も同人ゲーム界隈では上位クラスで制作ソフトの知名度で言えば少なくとも一万人前後
ここに載ったところで既に知ってる人を除けば新規に知る人なんて高が知れてるでしょう

331 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 21:01:13.45 ID:TTL/pZVw]
無駄に知名度上げたくないっての普通にやっても知名度上がらない出来のやつがよく言い訳に使うよな

332 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 21:12:46.61 ID:+JFG91BQ]
>>328
アマチュアゲーム制作者の集い(とはいえ多分ほぼ同人ソフト制作者?)の感想でDirectX直叩き派の人が
「DXライブラリ使用率が高い、この傾向は良くない」とつぶやいてた
同人ゲーて古き良きアマチュアPCゲー的なものよりもプロ志向のゲーム目指そうとするから
その条件で絞ると殆ど選択肢が無いのかもね

333 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 21:37:15.14 ID:P70wWqCY]
>>330
どのスレだろうが何書こうが勝手だと思うよ、それについて止めさせようと思ってないし止めさせられないし
けど、なんで「良識人ぶって自己正当化」しないと気がすまないの?
そういうのがムカつくって言ってるだけだよ

334 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 21:55:18.71 ID:QxJ1bjsx]
作れない奴が顔真っ赤にしてるのかな〜?

335 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 22:07:03.50 ID:yFx6jOOS]
>>332

何が言いたいのかよくわからん。

まぁDirectX直叩きの人にとっちゃDXライブラリユーザーはツクラーと大差ないんだろうな。
実際俺もDXライブラリ無しじゃWindows環境でゲーム作る事できなかったヘボプログラマーだから解る。
DXライブラリが、PC等の進化について行かなくなってサポート打ち切られたりしたら
一蓮托生でぶっつぶれるもんな。
プロ嗜好うんぬんがどう関係するのかわからんが、こっちの方が問題だろう。

336 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 22:15:54.88 ID:TTL/pZVw]
サポート打ち切りになったらゲーム作る気あるやつは直叩き覚えるなり別のライブラリ探すだろうしゲーム作る気ないやつはそのままやめるだけだろ
別に問題とも思わないが

337 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 22:19:54.91 ID:TTL/pZVw]
ていうか直叩きは無理だけどDXライブラリの助けがあればゲーム作れるってやつを拾い上げているってプラスの面見るべきじゃねーのその制作者



338 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 22:24:30.07 ID:+JFG91BQ]
>>333
どうぞ

>>335
多分DirectX直叩き派の人はそれを懸念しているんだと思う
派手な演出や大量のオブジェクトを高速に裁けるC++とDirectXの組み合わせとなったときに
DirectX直叩きや海外産エンジンが敷居が高くて手を出せないとなるとSeleneとDXライブラリしか選択肢が無いというのが実情だと思う
Seleneが消えかかってるしね・・・一時期話題になった今年リリース予定のSiv3Dはまだ未知数

339 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 22:55:34.28 ID:+JFG91BQ]
主旨忘れてた
同人界隈ではあと2003年くらいからDXライブラリを使ってる老舗サークルを紹介したかったんだけど
Twitter、マニュアル含めほぼDXライブラリ使用を表に出してないのでそんなサークルもあることを伝えるに留める

あとDXライブラリ使用作品の知名度ではかなり上位にありクオリティも高い未完成品としてはまどか☆マギカの3DACT

ttp://www.nicovideo.jp/watch/sm14606851

ニコニコ動画での再生数は45万越え・・・だがまどか人気の賜物なので再生数にDXライブラリは関係ない
作者はうp主の弟の高校生、少し経過を追ってみたがどう考えても弟スペック高過ぎ
これも弘法筆を選ばすの例で彼なら時間さえあればDirectX直叩きでも作れたであろうし
仮にこれを今年作っていたら間違いなく今流行のUnityで作っていたであろう
まあこんなDXライブラリ使用作品もあるよということで・・・

340 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 23:04:38.88 ID:+JFG91BQ]
>>336
>>337
なるほど
ディアドラエンプティの例みたく専門外の人がDXライブラリ使ってプログラム作ってる例もちょくちょく見かけるから
DXライブラリに相当するものが無かったら専門外の人は他の制作可能な環境を探して
専門目指す人はDirectX直叩き又は海外産エンジンに挑戦という構図になるだけかもね

341 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 23:15:30.99 ID:pvXw95cc]
DirectXのライブラリなら俺も前に作ってたけど
スレッド、XML、zipと足していったら作りきれなくなったわ。

342 名前:名前は開発中のものです。 mailto:sage [2012/03/31(土) 23:30:51.55 ID:3uug+YQi]
海外物て機能ごとにバラバラなのが多くてさらにバージョンアップが良くあるから追いかけるのが大変なんだよな
boost,zlibあたりは他の用途でも使うから普段から更新してるけど描画エンジン,GUI,OpenAL,物理エンジンetc
下手にそれぞれの最新版集めても動かないし英語我慢してもセットアップが面倒
あとUnicode含めても日本語表示やファイルパスに弱いよな・・・

343 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 01:12:24.52 ID:H06GkK8V]
DXライブラリの存在を知ってゲーム作ろうと思った奴だっていっぱいいるだろう
俺がそうだしな、DXライブラリには感謝してるぜ。

344 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 02:03:44.66 ID:ojuMFIJJ]
>>336
他人にとっちゃ問題じゃなくても当人にとっちゃ問題なんだよ。
そもそも直叩き覚えられるくらいならDXライブラリに頼ってない。

345 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 02:19:08.89 ID:IeTLX9mJ]
DirectX直で叩けるというか、自前のライブラリは作ってみたけど
動作実績とかメンテナンスとか規模の関係で、実際に何か作るときはDXライブラリ頼りな俺が居る

346 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 03:03:42.96 ID:0wsA7XM8]
正直DirectX直叩きでやりたいんだがグラフィックチップ毎の動作チェックなんてまず無理だから結局ライブラリに頼ってしまう
実際ネットで公開して動作報告を求めるとバグとかの報告は来るんだけどハードウェア依存の動作不良の報告はほとんど来ない
結構メジャーなグラフィックチップでの不良を確認したまま配布してたのだがそれについての報告もゼロ
結局フリーゲームが動かなくてもそのままゴミ箱に送られるだけで報告してくれる人は殆どいないってことに気付く
ここらへんは気付かずに有料化してたらと思うと怖いね、だからこその体験版なんだろうけど

347 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 03:31:17.14 ID:9URqj6c8]
>>332
そんな些細なとこつついてるから、肝心なとこの技術があがらない
どっちであれ、すでにあるものを利用するって意味では一緒なんだから
生産性が高い方を使えばいいんだよ

そうじゃなくて作り出すほうに力を入れるべき

>>335
DirectXなんて9から11にかわって全部覚え直しだよ
9の時だって何回仕様変更したんだよ
そういう意味ではDXライブラリのほうがよほど安定してる

>>344
個人的にはあんま変わらんと思うけど、やる人の相性もあるしな
導入部分として選択肢が多いのはいい事だと思う


どうせスキルアップしたってゲームエンジン使うんだから直叩きにこだわる意味は薄いんじゃないだろうか
昔はアセンブラが必修科目だったが今はそうでもないしな
もちろん趣味でやる人が直叩きにおもしろさを感じる事までは否定しないよ
俺だってマイナーCPUでアセンブラ使うのは楽しいしな
直叩きできる人がゲームエンジン使えるかっていったらまた違う話だから、大は小を兼ねる的なイメージしてたら改めたほうがいい




348 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 04:44:16.77 ID:ojuMFIJJ]
>>347
>DirectXなんて9から11にかわって全部覚え直しだよ

そんな事はわかってる。
問題はそれを理解するだけの頭があるかどうかだ。
9が理解できないのに11が理解できるとかがあるなら別だけど。

349 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 10:05:09.18 ID:l25Sbup6]
DirectXの手続きは、毎回コード眺めながら思い出してる。
その部分だけに集中してるわけじゃないから暗記は出来ないwww

350 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 13:02:43.36 ID:c77ZBHW3]
んでさー
お前らゲーム作ってるの?

351 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 13:44:37.65 ID:PUdAdUWh]
つい最近新作リリースしたばかりだよ。
売れてるかどうかはまだわからん。
今は燃え尽き状態で何も作ってないが。

352 名前:名前は開発中のものです。 mailto:さage [2012/04/01(日) 15:43:48.07 ID:Q5HA7rOQ]

一作作ってみてDXライブラリへの不満や逆にこの機能が良かったなんてのある?

353 名前:351 mailto:sage [2012/04/01(日) 16:11:09.68 ID:FKtKpYD9]
俺の事か。一作じゃなくて三作目だけどね。

不満ねぇ……大抵の事は公式で要望したりすれば改善してもらえるから基本的に不満はないんだけど。

PlaySoundMemでBGM流してるけどフェードアウト機能とかあればいいなぁとは思ったな。
自分で作ったやつは管理が面倒でいかん。

パレット機能があればいいなぁとも思ったがまぁこれは無茶な希望だな。

画像ごとの輝度を上げる機能が欲しかったが、これも代替機能あるらしいし……。

354 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 16:30:36.24 ID:IeTLX9mJ]
自前でラッパして使うことが結構多いから、
DXライブラリに無い機能は、その過程で作っちゃったりするんだよな。

355 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 16:41:31.03 ID:Q5HA7rOQ]
三作目か凄!

パレット機能おれも欲しい
でも確か固定機能で対応してないんだよな
シェーダーでパレット実現できるけどパレットのためだけにシェーダー未対応PC切り捨てとかありえないし・・・

輝度は単にRGB上げるだけだったらDX_BLENDMODE_ALPHAとDX_BLENDMODE_ADD使う代わりに
DX_BLENDMODE_ALPHA_X4とDX_BLENDMODE_ADD_X4使えばいけるよ
各RGBが4倍されるからSetDrawBright(64,64,64)で普段のSetDrawBright(255,255,255)の明るさ

356 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 18:51:19.52 ID:9URqj6c8]
>>350
土日スレにうpしても、レスが2〜3個ついて終わりだからつまんない

357 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 19:36:16.00 ID:IeTLX9mJ]
>>356
自サイトにあげるだけだと、1コメントも貰えなかったりするしなあ。



358 名前:名前は開発中のものです。 mailto:sage [2012/04/01(日) 23:57:44.61 ID:8XiLEYb5]
なんか、DirectX の直打ちは高度な事みたいに思ってる方がいるみたいだけど、
面倒くさいだけでリファレンス読めば大抵理解できるし、そんな高尚なもんじゃないと思うけど。

359 名前:名前は開発中のものです。 mailto:sage [2012/04/02(月) 01:23:28.08 ID:U8YWKm79]
DirectX も言ってしまえばライブラリだしな

360 名前:名前は開発中のものです。 mailto:sage [2012/04/02(月) 02:29:29.84 ID:Ctiwo6aX]
やるやらないとやれるやれないは別の話。
やれないやつはDXライブラリもまともにつかえんよ。
DX9のマルチスレッド制限しらないで
DXライブラリのマルチスレッド未対応嘆いてたりな。

361 名前:名前は開発中のものです。 mailto:sage [2012/04/02(月) 08:28:04.74 ID:7vHnDqRq]
シェーダ―使う分にはDX11>DX9>DXLIBになる
基本がHLSLなDX11はとっつきやすいとおもうけど
ただDirectX9はつかえなくともDXLIBはそこそこ使える


362 名前:名前は開発中のものです。 mailto:sage [2012/04/02(月) 19:56:25.39 ID:T8PMhm3b]
>>正直DirectX直叩きでやりたいんだがグラフィックチップ毎の動作チェックなんてまず無理だから
このあたりHELで吸収してくれると思ってたんだけど違うのね。

363 名前:名前は開発中のものです。 mailto:sage [2012/04/03(火) 08:08:23.65 ID:sXFq0lrt]
DXの初期バージョンと現バージョンとでは、理念も方向性も違うからな

364 名前:名前は開発中のものです。 mailto:sage [2012/04/03(火) 08:20:01.26 ID:i0l1yDNl]
>グラフィックチップ毎の動作チェック
聞いたこと無いけどピクセルシェーダ3.0が使えるか判定するとかそういう話?

365 名前:名前は開発中のものです。 mailto:sage [2012/04/03(火) 11:25:38.49 ID:LgfrVDKy]
動作実績があるというのは有難い

366 名前:名前は開発中のものです。 [2012/04/03(火) 12:45:16.34 ID:sq7wwreb]
絵がかけなくてマジやばい

367 名前:名前は開発中のものです。 [2012/04/03(火) 16:51:37.04 ID:Xf1Hu+PQ]
まずはペンタブをぽちる所から



368 名前:名前は開発中のものです。 mailto:sage [2012/04/03(火) 23:15:11.24 ID:LFoNkqSP]
絵より音楽作るの上手くなりたい

369 名前:名前は開発中のものです。 mailto:sage [2012/04/04(水) 02:28:03.27 ID:FqS83uG1]
>>364
いやチップやドライバが原因でスペック上は使えるはずの機能が使えなかったり
まともに動作しなかったりする
昔に比べたら随分ましになったけどね

370 名前:名前は開発中のものです。 mailto:sage [2012/04/04(水) 18:35:10.16 ID:b6l9BJ3o]
タイマーで動く2Dアニメーションクラス作ってるんだが
RPGやSLGで使う分にはいいんだが、
アクションやSTGで使えるものを作ろうとすると難しいな。

371 名前:名前は開発中のものです。 mailto:sage [2012/04/04(水) 18:47:15.80 ID:f8mdIbBH]
ループ型、非ループ型、静止画型があれば、その切替さえちゃんとすればどこでも十分使えるんじゃないかな

372 名前:名前は開発中のものです。 mailto:sage [2012/04/04(水) 18:48:43.97 ID:b6l9BJ3o]
アニメーションって歩行グラとか画像を切り替えるアニメーションと
キャラクターが町を巡回して歩き回るような
座標移動のアニメーションがあると思うんだけど、
後者は一般化できるんだろか。

373 名前:名前は開発中のものです。 mailto:sage [2012/04/04(水) 19:03:11.72 ID:SvhxiXZf]
決め打ちで座標を弄るくらいなら、なんとかならなくもないが、
それ以上だとスクリプトとかそういうレベルになりそうだな。

374 名前:名前は開発中のものです。 mailto:sage [2012/04/05(木) 16:47:36.17 ID:qgwvIoG6]
2Dでキャラクターのグラフィックつけるとどうしてもマリオみたいな縦横のゲームになるよな
平面上のゲームだとグラフィック大量に作らなきゃならないし

375 名前:名前は開発中のものです。 mailto:sage [2012/04/05(木) 17:08:19.35 ID:KC8VqBcF]
完全に真上からだと、グラフィックは減るぜ

376 名前:名前は開発中のものです。 mailto:sage [2012/04/05(木) 17:55:00.77 ID:Z6eu+BGn]
人型のキャラだと真上からは映えないのが問題だけどね
初期のGTAとかみたらよく判る

377 名前:名前は開発中のものです。 mailto:sage [2012/04/05(木) 18:35:51.37 ID:bL7aB4hC]
上から視点だとRTSとかTBSみたいなシミュレーションゲーかボンバーマンみたいなやつしか用途ないよなあ・・・



378 名前:名前は開発中のものです。 mailto:sage [2012/04/05(木) 19:02:56.36 ID:m50NX7mN]
人型のキャラクターを出さなきゃいけないと思ってる時点でゲームの定義狭すぎ

379 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 07:52:04.92 ID:jJJOrnuA]
>>378
誰もそんなこと言ってなくね?

380 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 16:16:12.12 ID:LE0H4/zO]
サンプルコードが動かないんだが、理由はなんなんだこれ?
codepad.org/2diVmQkw
OSはUbuntu 11.10上のVirtual Boxの中で動かしてるWindows Server 2008 R2 Standard 64bit。
仮想マシンの方に当ててるメモリは551MB、3Dアクセラレーションと2Dビデオアクセラレーションは有効にしてある。

381 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 16:17:33.66 ID:LE0H4/zO]
>>380はウィンドウは出るけどそのまま固まって応答なしになるって感じ

382 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 16:26:55.11 ID:LE0H4/zO]
>>381
開発環境はVC++2010Professionalです

383 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 16:57:37.43 ID:9+msROOR]
DirectX入ってんの?

384 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 17:38:01.83 ID:eP3h7d9K]
DXLIBのヘッダーじゃなくてスタティックライブラリの方が
パス通ってないんじゃない?

385 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 17:53:05.54 ID:LE0H4/zO]
>>383 SDKもランタイムも入ってる

>>384 確認してみる、ありがとう

386 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 18:42:24.19 ID:jJJOrnuA]
>>384
それビルド中に止まるんじゃw

387 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 19:07:32.85 ID:NkUGEveL]
SDKのUtilitiesにあるDXDiagを実行して各機能が動いてるかチェックしてみそ



388 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 20:29:44.44 ID:LE0H4/zO]
プログラムとファイルの検索からdxdiagってやって出てきたやつを実行した結果
DirectXの機能
DirectDrawアクセラレータ: 使用可能
Direct3Dアクセラレータ: 使用可能
AGP テクスチャ アクセラレータ:利用できません
とのこと。一番下がよくわからん…

389 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 20:51:57.67 ID:eP3h7d9K]
グラフィックには基本VRAM使うけど足りない分は
遅いシステムメモリを混ぜて使うことができる。
でもこの混在メモリ(AGP)をグラボがサポートしてなくても
DXLIBは動作するはず。関係ない。

390 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 20:54:20.94 ID:NkUGEveL]
Virtual Boxのグラフィックエミュレーションがきっちり動いてない気がする
DXライブラリの初期化部分書き換えてHEL選べば動くパターンかな、試せる?

391 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 21:04:21.83 ID:LE0H4/zO]
>>390 DxStatic.hってやつ?

392 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 21:30:56.08 ID:NkUGEveL]
いや、ソースの方。気楽にできる体制じゃないなら試さなくていいよ
どのみちDirectXのプログラムが最低限動くかどうかが分かるだけで根本的な解決にはならんから

393 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 21:49:13.90 ID:JYK9MxwR]
SDKサンプルのビルド・動作が正常化かどうか試せばいいんじゃないか

394 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 21:55:41.25 ID:LE0H4/zO]
>>392 そもそもDirectXに触れるのが始めてみたいなもんだからDirectDrawのオブジェクトの時点で混乱してできそうにない。すまない。

395 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 21:57:51.50 ID:LE0H4/zO]
>>393
SDKの方のサンプルはちゃんと動作するな
やっぱりDXライブラリの方の問題なのか?

396 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 22:06:59.18 ID:NPgdIkcO]
頭にブレークポイントつけてトレース実行しながらDXlibのログをチェックすればどこで止まるのか分かると思うけど
まさかVC++ごと落ちてるとか?

397 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 22:10:49.64 ID:LE0H4/zO]
>>396
そうか、それもそうだ少しやってみよう
ちなみにクラッシュするのはビルドされたアプリケーションの方。VCは生きてる。



398 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 22:20:23.81 ID:LE0H4/zO]
>>396
ウインドウを出してキーの入力待ちをするだけのコードでやってみると、DxLib_Init()で停止してるっぽい
ログ見ても何かに失敗した旨の事は書いていないんだよな…
1261:IDirect3DDevice9 オブジェクトを取得します...ハードウェア頂点演算を使用します
ってとこでログは終わってる

399 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 23:10:52.15 ID:NPgdIkcO]
ソース読む限りでは同期待ちの計算あたりで止まってるのかな
けどvirtualBoxに垂直同期絡みのオプションなんてないよなぁ
もしライブラリのコンパイルができるのならDxGraphics2.cppの4134〜4168行をコメントアウトして
GRH.FrameTime=16;
に置き換えてみるとか・・・

400 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 23:38:17.60 ID:LE0H4/zO]
>>399
DevMode.dmFields=なんとかってとこから
DXST_ERRORLOG_ADD(なんとかってところまででいいの?

401 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 23:42:18.85 ID:JYK9MxwR]
>>399
自分も同じところ見てた。これ失敗したらループ抜けなくなるんだな
たぶんスキャンラインの位置が正しく取得できていない予感

>>400
今のやつだと5661行あたりのお話

402 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 23:50:34.40 ID:LE0H4/zO]
>>401
すると一フレームの時間を取得する箇所を変更してやればいいのか
DxStatic.hをライブラリにコンパイルすりゃいいということか?

403 名前:名前は開発中のものです。 mailto:sage [2012/04/06(金) 23:51:52.57 ID:NPgdIkcO]
>>400
すまん、うちのVS2008だから行番号表示が違うのかも
// 1フレームの時間を取得しておく
の後の{}で閉じられたところです

>>401
for(;;)なんて書き方死ぬほど久しぶりに見たw
while(1)もそうだけどうちの規約じゃ縛り首にされる

404 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 00:10:22.95 ID:Px4uBuWn]
>>402
ちょっと時間かかるけど変更した後に
VC++ならDxLibMake.vcprojを開いてReleaseでビルドすればいいんじゃないかと

405 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 00:12:47.33 ID:eJGei3wu]
>>404
書き込んだあとに自分でも何言ってんだこいつ状態だったw


406 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 01:01:22.54 ID:eJGei3wu]
ライブラリに変更加えてやってもやはり例の如くクラッシュするorz
仮想マシンやめるか、DXライブラリやめるか…

407 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 01:45:38.22 ID:Y7E6HKpP]
そこまでいけば問題が有りそうな範囲はほんの数行に限定されるでしょ
とりあえずDXST_ERRORLOG_ADD( _T( "適当な数字\n" ) ) ;をそこらへんに散らして
どこが原因なのか炙り出したら?



408 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 09:39:27.24 ID:XqVmR/uM]
レス流し読みしただけだけど、
既存のDXライブラリ使ったアプリは動くのか?


409 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 11:48:07.50 ID:eJGei3wu]
>>407
やってみる
>>408
すくなくとも公式HPにおいてあるやつは動かない。

410 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 11:56:46.80 ID:pj9+UnpC]
動作環境的に、公式には頼れない類の問題だろうからなあ。大変そうだ。

411 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 12:02:35.61 ID:/u/WJIAb]
DxLibのバグ対策で公式頼みになるのを避けるために
バグがあったら自分でなんとかしようと思うんだけど
ライブラリ側にステップインとかで入っていく方法分かりませんか?
どうやってライブラリをデバッグしたらいいんだろうか。

412 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 12:25:27.55 ID:pj9+UnpC]
昔、普通にソースをVCのプロジェクトに組み込んだ記憶があるな……どうやったのかは忘れたが

413 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 12:30:56.56 ID:W381u4CU]
デバッグ版のLibならステップイン出来ないかな
できないならライブラリのビルドのプロジェクト作ってスタートアップに設定してデバッグプロパティで
DXライブラリのデバッグしたい関数のある実行ファイル指定する

414 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 12:48:44.34 ID:UzgkVzGh]
DxLib_Init()をコールする前に、

ChangeWindowMode( TRUE );
SetWaitVSyncFlag(FALSE);

とかコールしておくと、フルスクリーンやvsync待ちが原因かの切り分けはできる、のかな

415 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 12:52:41.63 ID:eJGei3wu]
GetVSyncWaitTime()が悪さしているのかな?
そこでどうがんばってもログが止まっている

416 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 13:14:57.18 ID:yRJeMU69]
ソリューションにDxLibMakeのプロジェクト追加して
プロジェクトの依存関係設定してやればいんじゃね?

417 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 14:04:29.58 ID:9U7nDMaZ]
ライブラリを作るプロジェクトを開いてdebugで一旦コンパイル
ライブラリを呼ぶプロジェクトを開いてツール->オプション->VC++ディレクトリ
->ディレクトリを表示するプロジェクトをライブラリファイルにしてライブラリを作るプロジェクトのdebugディレクトリをトップに追加
ライブラリを呼ぶプロジェクトをdebugビルト

正しいやり方は知らないけどこれで普通にライブラリの中もトレースできる



418 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 15:09:35.45 ID:XqVmR/uM]
他の仮想化ソフト(VMwareとか)使ってみるとか?


419 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 17:26:35.40 ID:eJGei3wu]
処理的には何も変更していないdebugの方でビルドしたライブラリをコピーしたら動くようになった…意味が解らない…
レスを読んで返答してくれた人たちに最大級の感謝をしたい。
おかげでライブラリのコンパイル方法とかも勉強できたし。

420 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 18:23:24.09 ID:UzgkVzGh]
・DXライブラリが一部のemu上で動作しない
・debugビルドしたDXライブラリの場合は動作する
ってこと?

421 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 20:30:28.52 ID:eJGei3wu]
>>420
そういうことです

422 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 20:50:18.65 ID:BFiYvq37]
debugビルドっつっても別に特別な事してるわけじゃないんじゃない? コンパイルパラメータが違う程度で。

上手く動くやつと動かないやつの違いを探してみないとな。

423 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 20:53:21.01 ID:BFiYvq37]
ちなみに以前、似たような現象があったが、あの時は
「アーカイブしたデータを読み込む時に異常に時間がかかる(のでフリーズしてみえる)」
というバグだったので、今回のサンプルは関係ないけど、まぁ参考までに言っておく。

424 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 20:59:15.02 ID:MAorgco6]
VC++は設定パスを辿って最初に見つけたライブラリを使う
DXlibはリリースビルド時はDxlib.libを、デバッグビルド時はDxLib_d.libを使う
多分このあたりをきちんと理解してないだけだと思われ

425 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 21:43:26.37 ID:eJGei3wu]
>>424
激しく初耳だ。改めて自分の無知さが恥ずかしい。
でもログに幾つか出力するマクロを加えてビルドしただけなんだけど何故こうなるのか…

426 名前:名前は開発中のものです。 mailto:sage [2012/04/07(土) 21:48:24.77 ID:eJGei3wu]
あと現在の問題点で、
ウインドウモードにすると左下によくわからないアイコンのようなものが表示されることがある
DrawBox関数でFillFlagをtrueにすると描画されなくなる(falseだとしっかりと描画される)
ってのがある。
まあなんとかなる程度だからいいけど。
誰か情報があったらお願いします。


427 名前:名前は開発中のものです。 mailto:sage [2012/04/08(日) 05:17:12.70 ID:jgma09be]




428 名前:名前は開発中のものです。 mailto:sage [2012/04/08(日) 05:18:45.07 ID:jgma09be]
お、規制解除された

今更だけど、以前、急にDXライブラリ製のゲームだけ動かなくなって、
その時はグラボのドライバを入れ直したら直った、ってことがあったよ

429 名前:名前は開発中のものです。 mailto:sage [2012/04/08(日) 08:55:45.89 ID:GXyS4reM]
そういえば他のグラボの人がvirtual boxで再現確認ってしてるのかな
そこで再現されないならグラボが原因ってのはありうるわけか

430 名前:名前は開発中のものです。 mailto:sage [2012/04/11(水) 11:19:33.85 ID:zPibrwBZ]
DXライブラリを使おうとする人は、大抵普通のWin環境持ってるからなあ。

431 名前:名前は開発中のものです。 mailto:sage [2012/04/11(水) 15:54:22.25 ID:RWWoJ9Z8]
linuxでわざわざdirectx動かすより
openglつかったほうがいいんじゃないか?

432 名前:名前は開発中のものです。 [2012/04/11(水) 22:09:21.55 ID:nOhzJPxm]
初心者スレから誘導されて来ました

LoadSoundMem()とPlaySoundMem()で効果音を鳴らしています。
再生が終了する前に同じ音を鳴らすと、最初の音が終了してしまいます。
2つの音を鳴らすにはどうすればよいでしょうか
DuplicateSoundMem()などで事前に複数のハンドルを用意しておくしか無いでしょうか


433 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 01:11:38.36 ID:vUJcZSD8]
>>432
前にここで同じ事書いたけど回答得られなかったな
その方法で解決してると思うよ

434 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 01:26:00.01 ID:C5XFHCZT]
そりゃリファレンスに答えが書いてあるんだから回答得られなくて当たり前だろw
わからない人ほど基本から外れたがるのは何なんだろうな

435 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 01:48:42.49 ID:2MiPPbSn]
わからんからだろ

436 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 10:59:13.60 ID:OCMdHEJy]
シンプルに考えるなら、DuplicateSoundMemで取得したサウンドハンドルを配列なりlistなりで保持しておき、
CheckSoundMemで再生中ではないハンドルを検索して、そのハンドルの音声を再生って感じかね。

437 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 12:58:33.07 ID:ZywlwjDx]
同時発音数だけハンドル生成してインデックス付けて循環、発音チェックとかはやらない



438 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 13:15:12.55 ID:yHa5EyEH]
現実的な話をすると一つの音を複数再生させるよりも
複数の音を一つの音として再生できるようにした方が聴いた時に自然になる

439 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 13:56:41.46 ID:3dAghtwS]
ゲーム的な話をすると、ほとんどのゲームは同じ効果音は重ねて再生せず、前の効果音を止めて再生してる
でも違和感ないでしょ?

440 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 14:00:52.33 ID:oGuhhIRs]
同じ音を重ねてもうるさいだけだしな。
でもまぁ、432はどうしても重ねて鳴らさないといけないような特殊な事をやりたいのかもしれんし。
例えば楽器代わりに使うとか。

441 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 14:06:41.42 ID:3dAghtwS]
もしくはステレオやサラウンドで空間表現がしたかったりかな

442 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 14:12:15.80 ID:7rRe2PMr]
便乗になるのだけど、SEで連続して爆発する音の場合、
DuplicateSoundMemで複製しておいて
ずらしてならすってことでいいのかな?


443 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 14:16:15.86 ID:LYx5lLkn]
2Dなら>>439、3Dなら>>438のやり方を推奨

444 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 16:25:46.11 ID:OCMdHEJy]
左右のスピーカーに割り振るような場合とかは、途中で切れると困る

445 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 19:16:36.29 ID:SCZHIOGy]
具体的な使用場面を明確にすることが先決かな

446 名前:名前は開発中のものです。 mailto:sage [2012/04/12(木) 19:41:17.26 ID:wDm4eTwP]
DuplicateSoundMemって再生カーソルの複製作ってるだけで
バッファのコピー作ってないと思うから
メモリ浪費が大きいということはないと思う。

447 名前:名前は開発中のものです。 mailto:sage [2012/04/13(金) 02:13:36.59 ID:RpSfv+HU]
誰もメモリ消費量の話してないし憶測で適当なこというなやボケ



448 名前:名前は開発中のものです。 mailto:sage [2012/04/13(金) 02:14:26.85 ID:Vtmv2oG8]
横から罵倒とか何様のつもりだボケ

449 名前:名前は開発中のものです。 mailto:sage [2012/04/13(金) 02:48:39.53 ID:UHnz960b]
>>432です、皆さんありがとうございます
>>440>>445
そうですね、ある意味楽器みたいな感じなんです
STGやアクションで、自分のいる位置や敵撃破位置で、SEが変わったらどうなるかな?と思いまして

450 名前:名前は開発中のものです。 mailto:sage [2012/04/14(土) 01:25:36.60 ID:NRsL35Yq]
PlaySoundFile ( PlaySoundMem ) と PlayMusic の違いがわからん

451 名前:名前は開発中のものです。 mailto:sage [2012/04/14(土) 01:48:16.31 ID:c5bRA40t]
PlayMusicはストリーミング
PlaySoundはバッファリング
じゃなかったっけ?

452 名前:名前は開発中のものです。 mailto:sage [2012/04/14(土) 02:10:11.51 ID:qbHzTos0]
DirectXの音管理がDirectMusicとDirectSoundに分かれてた名残
MIDIを使わないのなら総てPlaySoundでOK

453 名前:名前は開発中のものです。 mailto:sage [2012/04/14(土) 11:11:22.92 ID:5BUazka2]
PlayMusicにハンドルがない不思議
MCIと一緒のせいだろか

454 名前:名前は開発中のものです。 mailto:sage [2012/04/14(土) 14:37:37.12 ID:d2QxVYyl]
PlayMesicMem()あるよ。リファレンスにはないけどね

455 名前:名前は開発中のものです。 [2012/04/16(月) 20:47:38.30 ID:sqQ7wHbj]
そういえばたまにバージョンアップせずに過去のバージョン使ってる人いるけど、なんなんだろうな
設定で単純にファイル差し替えるだけにできるのに

456 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 20:52:42.97 ID:CbrcIT4F]
闇雲な「ライブラリのアップデートで動かなくなる」みたいな状況や言葉がやたらネット上にあるから普通怖いでしょ

457 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 20:53:44.62 ID:OkxR79A2]
そんなの滅多にないが
それにバックアップはとっておくべきものだろうし



458 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 21:13:57.25 ID:fElCZsp5]
使いたい機能が特になければ新しいのじゃなくてもそれほど困らないんじゃ?

459 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 22:56:27.24 ID:Tub7X132]
単にめんどいからじゃね、つまりあまり考えてないという

460 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 23:28:07.89 ID:bZELwB4q]
ライブラリの更新は基本的に自作ソフトのメジャーアップデートに合わせるし
特にクリティカルなバグフィックスでもなきゃアップデートしないよ
無駄な作業が増えるだけで大して意味ないもん

461 名前:名前は開発中のものです。 mailto:sage [2012/04/16(月) 23:52:39.17 ID:hF/64Hcu]
2.x→3.xのとき、当時作ってたゲームが動かなくなったなあ

462 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 09:22:13.78 ID:cmj6scJE]
c++の命名規則ってどうしてる?
c#とかjavaだとクラス関数の先頭を小文字にするけど
C(DXLIB, Win32, DirectX)だと大文字だよね。

463 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 10:24:51.26 ID:FXYZrvCf]
制作集団に特に決まりがなければ好みの問題です

464 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 10:59:40.38 ID:YZv8T9Gr]
>>462
>c#とかjavaだとクラス関数の先頭を小文字にするけど

C#は先頭大文字でしょ

465 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 13:29:17.05 ID:kV92Gyue]
クラス
Ckurasu

変数
kurasu

466 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 16:24:27.01 ID:DcBjzTk2]
m_value

467 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 17:21:28.16 ID:sMJ/oSzG]
staticなクラスとシングルトンの差が分からないんだけど



468 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 17:32:22.46 ID:r51DMbgu]
静的メンバ関数はクラスのインスタンスが生成されなくてもアクセスできる
静的クラスはいつインスタンスが生成されるか分からない
静的メンバ関数から静的クラスの生成を確定させれば、ちょっぴり安心

469 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 20:45:14.74 ID:icgY8HP5]
>>467
static なクラス
初期化プロセスが自動で発生しない。
解放の必要がない。が、解放プロセスが自動でコールされないことを意味する。

シングルトン
初期化プロセスの発生するタイミングが不定 (意図的に呼べば確定は可能)
唯一のインスタンスをメソッド内でstaticに確保すれば
終了前に必ず解放プロセスが呼ばれることを期待できる。
(ポインタを確保してnewした場合はデストラクタが呼ばれないので注意)。

正直、あんまり変わんないけどね。
半分は趣味。

470 名前:名前は開発中のものです。 mailto:sage [2012/04/17(火) 21:38:21.03 ID:TBQVpXJP]
>>468
それだけだとVCだと非スレッドセーフだからちょっぴり安心なのか

471 名前:名前は開発中のものです。 mailto:sage [2012/04/18(水) 01:00:15.20 ID:fDV6H22e]
staticなクラスってクラスのメンバが全てstaticっていう意味なんじゃないの?

472 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 12:47:22.43 ID:pxg6qWV/]
Chidoriとかあったの覚えてるか?国産3Dフリーライブラリということで応募したら、Facebookで友達と認められなきゃダメだという奇妙さ。
それでも待ってたら、向こうからあなたはどういう立場でどういう用途で使うのか教えて、それを審査してDL許可が出るだって
日本はホントライブラリくらいで閉鎖的でダメ。こんなことだから日本は世界から取り残されてガラパゴスになる
以上愚痴終わり

473 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 12:56:10.17 ID:sPfCIXdo]
ガラパゴス自体はなにも悪くないけどな
その環境に対して最適化されてるってことだから

474 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 13:02:45.48 ID:uyLIiFt/]
物を作る人間なら何かを他人のせいにしたらオシマイっすよ
違うと思うことは自分で覆せばいいだけ
つうかソース公開して改造も認められてるDXライブラリスレで言うべき愚痴じゃないだろ

475 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 14:52:07.70 ID:ISIfegPQ]
>>472
「ぐらいで」っていうならそれを自分で準備しなきゃね。
誰もあなたのために無償労働したくはないでしょ。
フリーを銘打っていて実は…ってのは悪質だが、他人に求めすぎてて
しかも「こんなことだから」って合理化するのはとても格好が悪いよ。

476 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 15:11:33.73 ID:sPfCIXdo]
合理化じゃなくて正当化な

477 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 15:31:36.39 ID:ISIfegPQ]
すまん。心理用語の合理化ね。



478 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 16:17:19.48 ID:2+pU6vOV]
>>475
こういう狭小が奴が多いから、海外のように大規模フレームワークを制作して
多くの会社で共有しようって流れにならないんだよな
他人に頼らず、自社製のしょぼい独自フレームワークにこだわった結果が今の現状

479 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 16:20:18.87 ID:ISIfegPQ]
>>478
あほいうなよ。それはビジネスとしてかあるいは協力体制の契約を
おこなってやってるものだ。一方的な関係じゃない。

480 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 16:22:32.95 ID:4OYFZy3w]
次の荒らしの口実は日本の閉鎖性かw
ここはDXライブラリスレですから言い争いは他のスレでやってください

481 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 16:27:37.68 ID:sPfCIXdo]
日本のに比べて海外のは世界で通用する汎用性が〜だったら海外の使えばいいんじゃw

482 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 17:10:46.76 ID:2+pU6vOV]
DXライブラリは好きだから荒らす気はないよ
設計思想も共感できるしね
あくまで現状を語っただけ

売れるものを大量生産するハリウッド的思想はやっぱり儲かるんだよ
映像はすごいが、どれもよく似たパターンだなってのはあるけど
じゃあ、日本が独自性があるかって言うと世界的に見たら確かにあるが
国内で比べると、判子アニメ、判子ゲームだらけ
だったら、もっと技術提携するような方向にもっていけないのかなと思うよ

海外のフレームワーク使えっていうけど、いろんな意味で無理でしょ

483 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 17:17:13.28 ID:ISIfegPQ]
国内ゲーム企業の技術提携はあっていいと俺も思う。
あと、DXライブラリ作者さんに少し報われてほしいな。

484 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 17:18:09.50 ID:QpkDmGOt]
サイト見てきたけど、どう見てもフリーライブラリじゃないだろ
有償で法人向けに提供されているようにしか見えないよ
個人や同人で使うならこういうのは実績ないと厳しいんじゃないか

485 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 17:22:04.83 ID:ISIfegPQ]
無償提供はしてるらしいぞ。たぶん売れなかったんだろ。
あるいは、フレームワークのシェアを広げて何か付加価値の部分で商売する目的かも。
まあ、それでもどこの馬の骨ともしれない奴にぽいとただであげるよ、
とはいかないのは当然の措置だよね。

486 名前:名前は開発中のものです。 [2012/04/19(木) 18:09:39.23 ID:Z6NQbpXt]
無償版はウォーターマークが常に表示されるとか
使わせる気無いなw

487 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 18:12:57.47 ID:JZ1Plsdi]
体験版か



488 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 18:54:45.18 ID:nL4dPgzp]
企業の技術提携どころか社内でも技術共有できずに、
車輪の再発明を繰り返してたりするらしい

489 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 19:00:51.25 ID:62tTC7bW]
ありそうな話だ。

490 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 19:16:37.37 ID:2+pU6vOV]
技術で食ってきた日本人の気質がそうさせているんだろうな
もう個人プレイでやれるような時代じゃないのに

491 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 19:20:16.67 ID:2+pU6vOV]
教育もまともにせず、ようやく使えるようになったころにはもういい年で
新しい発想も生まれず、頭の硬い地味な作業を繰り返すだけの人間に育つ
保身のための行為が自分の首を占めている結果になっているのにも気づかないんだよね

492 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 19:44:38.26 ID:62tTC7bW]
よくわからんのだが、ここでそういう毒を吐く事が君にとって何かプラスになるのか?
新しい発想のキッカケになるとか。

493 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 19:45:10.88 ID:sPfCIXdo]
思いついたことをその度垂れ流すな
そういうのはtwitterでやれ

494 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:02:45.98 ID:rhTaoDYw]
>技術で食ってきた日本人の気質がそうさせているんだろうな
こんなこと言ってる時点で現場にいない人間なのがまる分かりなんだが

495 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:06:20.79 ID:sPfCIXdo]
個人プレイでやれないのは才能・実力不足だしね

496 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:13:17.02 ID:2+pU6vOV]
>>494
現場といってもいろいろあると思うけどね

>>495
それはそうだが、Unityのようなソフトウェアを個人で作れますか?って話

497 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:22:36.75 ID:sPfCIXdo]
もういいから



498 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:28:54.19 ID:llBpt5eP]
うざいから

ゲームエンジン総合スレ
toro.2ch.net/test/read.cgi/gamedev/1296547110/
こっちでやれ

499 名前:名前は開発中のものです。 mailto:sage [2012/04/19(木) 20:50:30.28 ID:JfKbnz4T]
むしろゲームハード・業界板向けだろ。
anago.2ch.net/ghard/

500 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 00:27:41.69 ID:LVyH3nbi]
siv3Dは大学のチームでやってるんか?
個人だとseleneの二の舞になりそう

501 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 05:48:49.83 ID:QRHU35vB]
個人プレイで一番つらいのは時間だな
いくら時間あっても足りねえよ

502 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 08:38:06.21 ID:ytlVzcrB]
DXライブラリの入出力関数しか使わないんだけど他に使うものあるの?
まあゲームによって違うとは思うけど

503 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 13:33:54.52 ID:iSPOVfuZ]
>>502
他の奴も1つ2つ使ってることはあるけど、俺もだいたいそんな感じかなあ。
DXライブラリがそういう理念で作られてるというのもあるだろう。


504 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 13:44:15.87 ID:BJ0/LrO+]
ゲームプログラムで面倒なのってほとんど入出力じゃねーの。

505 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 14:52:39.63 ID:DWIKZtqP]
XOBXのパッドに対応してないのかな
スティックと十字キー押しても、戻り値0

506 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 15:09:13.34 ID:zxwJsUat]
シンクパッドの真ん中のボタンも使えるようにならないかな?

507 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 15:14:01.37 ID:iSPOVfuZ]
箱のパッドって、仕組みからして違うんだっけ?



508 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 15:32:07.72 ID:BJ0/LrO+]
XBOXのドライバはどうしたんだ。

509 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 17:32:38.16 ID:e4qNB1Ch]
ここの人たちがどんなゲームを作ってるのか気になる。
普段俺の手の届かない次元で話ししてるからなぁ

510 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 19:03:34.51 ID:C5cZq6LS]
DXライブラリを使って汎用ゲームエンジン組んでるだけでゲーム自体は普通のSTGだな

511 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 20:24:31.42 ID:JPhLpB9e]
俺もただの2Dゲー作ってるだけだよ。(先日完成して今は何も作ってないけど)
ただ、ここで出るプログラミング話は全く付いていけてないw

512 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 22:51:32.60 ID:DWIKZtqP]
エロゲって素直にいいなさいよ

513 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 22:55:29.04 ID:iSPOVfuZ]
DXライブラリでエロゲってことは、スクリプトローダとかそういう系統か。

514 名前:名前は開発中のものです。 mailto:sage [2012/04/20(金) 23:07:09.31 ID:8sRHzIee]
脱衣STGかもしれぬぞw

515 名前:名前は開発中のものです。 mailto:sage [2012/04/21(土) 00:34:11.13 ID:fS6DJLOg]
DXライブラリでエロゲって商業だとちらほらみるな

516 名前:名前は開発中のものです。 mailto:sage [2012/04/21(土) 01:18:43.90 ID:muN1+m+6]
ブロック崩しと

517 名前:名前は開発中のものです。 mailto:sage [2012/04/21(土) 02:59:16.54 ID:+R2G5xox]
DXライブラリを使って普通の2DSTG作ってるだけだよ
いつになったら完成するのやら



518 名前:名前は開発中のものです。 mailto:sage [2012/04/21(土) 03:35:50.68 ID:KpdwKgSD]
>>505
DxLib.hでGetJoypadDirectInputStateを検索してみな
この関数使えばXBOXのパッドの入力も取れるよ

519 名前:名前は開発中のものです。 mailto:sage [2012/04/22(日) 10:55:03.64 ID:kg6EG9U2]
3.07fが出てた

520 名前:名前は開発中のものです。 mailto:sage [2012/04/22(日) 16:35:31.17 ID:7iFZqzNj]
>>518
一部だけね

521 名前:名前は開発中のものです。 mailto:sage [2012/04/22(日) 19:05:05.19 ID:GAb19Bzs]
>>520
ん?
一応ガイドボタン以外は全部取れたと思うが・・・

522 名前:名前は開発中のものです。 mailto:sage [2012/04/22(日) 23:38:24.47 ID:J5Yh/ZmE]
箱? 箱◯?

523 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 00:10:53.93 ID:nOBOEirj]
ま、UNITYみたいのが出てきたいまDXライブラリは役目を終えつつはあると思う
UNITYスレもスレ住人もくそ杉だが


524 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 00:30:15.61 ID:C19dNN09]
そう、それはよかったね

525 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 01:53:19.94 ID:cPXNnGH0]
3Dしかまともに作れないからなぁ・・・
確かに次の時代のゲーム開発環境ではあるけど、まだプログラムする意味が無くなる程の代物ではないかな

ADV作るならNScripter・吉里吉里、2DRPG作るならRPGツクール

これに

3Dゲームを作るならUnity

が加わった感じ
当然3DならどんなジャンルでもUnity使った方が良いというわけでもないけど

526 名前:名前は開発中のものです。 [2012/04/24(火) 02:41:00.88 ID:pixaW8Xr]
2dアクションゲームを作るならDXライブラリでいいと思う?

527 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 02:53:12.06 ID:mwz0LFvI]
いいと思う。

ただ時代の流れで、肩身が狭いのは覚悟しておく必要があるね。
見栄えはやっぱり3Dの方がいいし。
(もちろんテクスチャやモデリング次第だが、最近は技術が成熟してきてるし、ツール系も充実してきてるようだし)



528 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 02:55:25.79 ID:csmob4DT]
DXライブラリはあくまで描画や音楽再生を手軽にできるだけだから、
ゲームの動作は全部自分で書かないといけないのは変わらないことに注意だ
2Dアクション程度ならステージエディタを用意する以外はそれほど難しくないと思うけど

529 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 03:24:03.70 ID:YK27atVn]
C/C++勉強用としてなら、まだまだ最前線で戦ってる印象

530 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 08:04:36.86 ID:Of4oYWoA]
自分で書かなきゃいけないのが逆に勉強用としてはいいよな
本音言えばもうちょっと製作支援になるのが欲しいけど
ちょっとしたのでいいからキャラモデル作ってくれるのとか

531 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 11:33:10.85 ID:4IkrpGAX]
俺はそういうツール化するのはヤダな。
あくまで個人的な話だが、DXライブラリは、俺にできない事をサポートしてくれて、
俺にできる事は自分でやらせてくれる、ちょうどいいレベルのものだ。


532 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 11:34:43.61 ID:csmob4DT]
ゲーム用3Dモデルなんて、「ちょっとしたツール」レベルがプロユースレベルな世界だぞ

533 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 18:01:55.40 ID:H7+1pTLB]
ちょっとしたモデル Lv60と。

534 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 18:04:04.62 ID:H7+1pTLB]
unityってDXライブラリで整理された同様のゲームよりコードより重くなるよな
触った事ないからわからないけど、
プログラム並みに自由度あるのか?
◯◯ゲームツクールと同じ気がしなくもない

535 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 18:05:59.14 ID:H7+1pTLB]
もっと言えばマインクラフトと同じものを作ろうとしたときC++やjavaみたいにストレートに作れるのかと・・・

536 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 22:57:48.35 ID:ZOT7AkmC]
作れる作れないはライブラリにあらず
作者の意気込みできまる

537 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 23:35:26.90 ID:aU/j2TaN]
まぁ、コストは多少度外視してでも、
手段は選ばずに、目的を実現しちゃえばいいよな、
趣味の世界なら。



538 名前:名前は開発中のものです。 mailto:sage [2012/04/24(火) 23:45:51.60 ID:vQvq3rL1]
重さはある程度作れるようになってから考えればいいよ。
それとUnityはプログラム使うよ。

539 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 00:20:29.17 ID:BPiF5OeU]
最近はツクールもかなりプログラム寄りの作り方が出来るらしいしなー…


540 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 00:24:58.57 ID:Gh4S025H]
ツクールで3Dゲーム作れないだろ

541 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 01:37:10.11 ID:fyDcYZ+l]
と思うじゃん?
ポリゴンが表示できないだけで3Dはできる

542 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 02:53:25.54 ID:iSIcHNw0]
ツクール系でFPS作ってるのってなかったっけ……?

543 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 03:32:38.11 ID:13BCaGhK]
たしかにDoomみたいなやつは作れそうな気がするな

544 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 07:08:28.30 ID:uSnNSbDV]
3D格闘ツクール

545 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 09:46:06.37 ID:/P+hidJR]
>>544
あれなんて選択肢から用意されてるモーション選んで差分調整するだけじゃん

546 名前:名前は開発中のものです。 mailto:sage [2012/04/25(水) 09:50:25.48 ID:fyDcYZ+l]
アレはただのモーションエディット機能の付いた格ゲー

547 名前:名前は開発中のものです。 mailto:sage [2012/05/02(水) 18:12:06.06 ID:y6BLahRk]
GraphBlendRectBltで合成した画像って
たとえばキャラチップの透過部分は優先される?
水画像をキャラ部分だけに合成したいんだけどそこ上書きされると困るんだ



548 名前:名前は開発中のものです。 mailto:sage [2012/05/04(金) 18:27:02.38 ID:vCHh+N25]
透過って工夫しないと前後関係が狂うよな

549 名前:名前は開発中のものです。 mailto:sage [2012/05/06(日) 22:47:15.54 ID:WhAnw8ZQ]
DXライブラリにマウスカーソルを変更する関数ってある?
指マークにしたり砂時計にしたりする奴

550 名前:名前は開発中のものです。 mailto:sage [2012/05/06(日) 23:35:26.61 ID:DxjrJISV]
マウスカーソルを非表示にして、マウスポインタの座標に任意の画像を表示するやり方ではだめなの?

551 名前:名前は開発中のものです。 mailto:sage [2012/05/06(日) 23:37:17.82 ID:WhAnw8ZQ]
だめなの!

552 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 11:45:33.03 ID:3UubK6Dz]
やってること同じだとおもけど
なんでだめなの?

553 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 13:09:13.22 ID:LmhjfTpa]
作ってるのがゲームじゃなくてツールだから
それでOKならすでにやってるし

554 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 14:05:10.42 ID:HNg0tXA5]
理由になってないし、DXライブラリに拘る理由も分からんし。

555 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 14:19:27.30 ID:LmhjfTpa]
DXライブラリのゲームで使うエフェクトエディタなんだよ

556 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 14:28:38.37 ID:QjWZaIgH]
ツールならほかにもGUIいるしなぁ。
スクロールバーとか全自作するぐらいなら他の言語使ったほうがいい。

557 名前:名前は開発中のものです。 mailto:sage [2012/05/07(月) 16:02:14.35 ID:LmhjfTpa]
WinAPIでできたけど、ちょっとチラつくな
このくらいは仕方ないか



558 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 14:27:58.57 ID:XU/nbluC]
ツールはC#でDxLibのがよさげやね

559 名前:名前は開発中のものです。 [2012/05/08(火) 18:24:11.12 ID:U1Qqw03N]
今さっきゲーム用のグラフィック書いてた所....
もうこれだけで10日くらい費やしてる。
しかも静止画。
まぁ2Dスクロール作ろうとしてるんだが...
デザインだけでこれだけかかるとやる気はあっても
時間が足りなさすぎる。
書いた絵を動かさないといけないって考えると途方もない
よな。そもそもゲームって大人数で数カ月何年かけて作るもんだよな。
一人でやろうとして馬鹿みたいだ。
皆できないと思って諦めよう....

560 名前:名前は開発中のものです。 [2012/05/08(火) 18:25:44.22 ID:U1Qqw03N]
ゲーム作る時はやっぱ、大人数でやるべきだ。
DXライブラリは便利だがやっぱ時間かかりすぎる。
自分の役割が音楽であれ画像であれ、プログラム部分であれ、
確実に関わってるなら自分で全部作れなくても嬉しいだろ。


561 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 18:44:39.52 ID:MlgRjvwb]
どんな超大作作る気か知らんが、基本的にゲームなんて一人で作った方が楽だぞ
コードとグラフィックと音楽とか分野で分けて3人体制とかならわからんでもないが、それでも相当大変だぞ。

大人数で数か月何年かけて作るもんって、
それは最近のプロ(最新のグラフィックで3Dバリバリのゲーム作るような)に限った話。

試しに一人でテトリスでも作ってみなよ。
しっかり全ての機能を詰め込むと、それなりに時間かかるけど途方もないって程じゃない。
プロが大人数で何年もかけて作ったゲームよりも、素人一人が短期間で作ったテトリスの方が何倍も面白いだろうな。

562 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 18:51:30.61 ID:wKw8BPWu]
最初は糞みたいなグラだろ、普通。
エンジン作ってるときなんかCUIの数字の羅列と睨めっこだぞ?
で、完成に近づいてきたらちゃんとした絵を描く。
絵心が無いならとりあえず60点程度の絵は描いて公開。
で、絵師を募る。

563 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 18:52:01.21 ID:U1Qqw03N]
例えば熊のキャラクター描くじゃん。
それをさ、動かすには、色々なアングルから描かないといけないでしょ?
しかも、プログラム使って動かせるんじゃね?とかも思うわけ。
プログラムとデザインの間で何か巧い事できないかなと思うと
プログラムもデザインも捗らないんだよ....

総合的な動作機能の結集がゲームなわけで、
単にツール作ったり、マンが描いたり、音楽作ったりするわけじゃないでしょ。

テトリスくらいなら10日あれば作れると思うけど。


564 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 18:56:26.48 ID:KIKAQOnq]
では残念ながら、ご縁がなかったということで。

565 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:11:31.50 ID:LsYiAlVD]
>それをさ、動かすには、色々なアングルから描かないといけないでしょ?

3Dやればいいじゃん。
俺はできんからコツコツやるしかないけど。

566 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:12:48.02 ID:MlgRjvwb]
動かすって一言でまとめられても、こっちは君の頭の中まで見えないからなあ。
普通2Dで動かすって言ったら、基本1枚だろ。もちろんQVなんかだと多少枚数増えるけども。
プログラムを使って動かすとかも意味不明、部品に分けてアニメーションするってことか?

基本的にゲームで難しいのは、面白いアイデアと、最終調整なんだよね。
コード、絵、音楽は単に作るだけだよ。

商業レベルのテトリスを10日で作れる能力があれば、そんなくだらないことで愚痴ってないだろと思ってしまうな。

567 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:13:18.19 ID:U1Qqw03N]
>>565
2Dが好きなんで。3Dは神の上だろ。凡人の俺には無理だ。
色んな機能詰め込んで、目に見えない部分で快適な動作するような
スクロールゲーム作りたい。

そういやゲーム会社勤めてる人って多い人では月250時間くらい働くそうだな。
どんだけゲーム作るの大変なんだよ....
体もつのか?



568 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:24:47.39 ID:U1Qqw03N]
>>564
だな。少なくとも大学の授業期間やるもんじゃない。


569 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:40:13.52 ID:KIKAQOnq]
ここはゲームを作る人のための板なんです。
ゲーム作り自体の経験の有無はともかく、制作に興味のない方は、ここに居ても余り役に立ちませんよ。

参考 togetter.com/li/298110

570 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 19:58:21.11 ID:dnlbnzGD]
絵は簡単でいいから動くゲーム作って公開してしまえば、
そのゲームに絵を付けたいってやつが出てくるかも知れないぞ。

571 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:12:03.76 ID:wKw8BPWu]
>>563
それは単にアイディアが固まってないだけじゃね?

572 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:15:19.74 ID:D7xPHi12]
ゲームなんか作ったって金がもらえるわけでもいい大学にいけるわけでも就職に有利になるわけでも出世に有利になるわけでもないからな
資格の勉強したり友人と交友深めたり読書でもしてた方がマシ
商業レベルのゲーム作ろうと思ったらそれこそ人生の一部をドブに捨てる覚悟が必要になる
なんの見返りもないのに人生を捨てる馬鹿はいないわけで

573 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:19:19.26 ID:LsYiAlVD]
学生が暇つぶしか現実逃避だかで気軽に手を出してみたが良いが
製作の厳しさを知って挫折感を味わったというだけのお話。

574 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:42:30.68 ID:tUp/FLet]
DXライブラリで一番分かりやすい解説サイトってどこだろう?
館でいいのかな

575 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:50:11.08 ID:LsYiAlVD]
公式リファレンス。

576 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:52:31.88 ID:tUp/FLet]
確かにリファレンスは一個一個は分かりやすいけど
組み方が分からないとな…

577 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:56:30.35 ID:IvFN0rbw]
あれで組み方がわからないってどういうことなんだ



578 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 20:57:56.44 ID:CD5cDomn]
DXライブラリ以前にゲーム作ったことがないのだろ。言わせんな恥ずかしい。

579 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 21:13:23.77 ID:dnlbnzGD]
館でいいと思うよ。

580 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 21:15:58.26 ID:LsYiAlVD]
DXライブラリが解り易いのは公式リファレンスだ。
プログラムの組み方知りたいなら他所へ。

581 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 21:17:57.36 ID:NUwLyfbY]
マニュアルの方しか見てなくて,ゲームのサンプルがあることに気がついて
いないって事は・・・ないよな?

582 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 21:23:04.55 ID:L+B6daUo]
>>581
うわああああごめん本当ありがとう
こっちの方が参考になりそう

583 名前:名前は開発中のものです。 mailto:sage [2012/05/08(火) 23:09:13.67 ID:pQJ579z8]
挫折しないための鉄則があるかもしれない
・1日で完成するゲームを作って発表しろ(習作でもなんでもいい)
・それができたら2日で完成するゲームを作(略)
・それができたら4日で完成するゲームを作(略)
・それができたら8日で完成するゲームを作(略)
日数の増やし方は適当。実際にはもっと適した日数があるかもしれない

584 名前:名前は開発中のものです。 [2012/05/08(火) 23:20:38.15 ID:ZUBEYPbm]
>>583
確かに作る事は楽しくなるかもしれんが、何を目指すんだろww
挫折せずに楽しくゲームを作り続けるだけじゃ。


585 名前:名前は開発中のものです。 [2012/05/08(火) 23:21:25.79 ID:ZUBEYPbm]
でも良い案だと思う。
いつかそれを試すか。
後3年は無理だが....

586 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 01:02:13.00 ID:C9Sg667m]
絵がかけないから3Dに逃げたんだけど今度は大きさが合わないでござる

587 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 05:57:02.47 ID:QHiUcLvL]
ちゃんと1mm=1単位
とか決めて作らないと……



588 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 07:08:45.85 ID:BZtoCYkJ]
ゲーム作ること自体が楽しい

589 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 18:40:34.57 ID:dJBnz5Pn]
ステフスレでグラフィックだけ募集したらいいんじゃないか

590 名前:名前は開発中のものです。 [2012/05/09(水) 19:24:08.53 ID:fBkaoQm7]
マジレスすると中学の時に戻りたい。
中学の時にプログラミング勉強してたらよかった。
あの時ゲームしかしてなかった。

今は単位を取る事のほうが大事。

591 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 21:09:43.56 ID:rUsvNlt6]
>>380
この件、うちの環境で試してみたら、同様に固まってしまいます。DXライブラリを自前で
コンパイルする以外の方法で既に解決してる等の情報があったら解決法の提供いただけるとうれしいです。

こちらの環境:
ホスト/ゲスト共にWindows XP Pro. SP3 (DirectX 9.0c)、コンパイラ: Visual Studio 2008 Express
DXライブラリ: 3.05 (最新の3.07fにしても解決せず)
VirtualBox: 4.1.14
3Dアクセラレーションと2Dビデオアクセラレーションは有効。
VirtualBox Guest Additionsのビデオドライバインストール済。

見た目の現象も >>381 の↓と同様。
> ウィンドウは出るけどそのまま固まって応答なしになるって感じ
Log.txtに出るメッセージも同じ
「IDirect3DDevice9 オブジェクトを取得します...ハードウェア頂点演算を使用します」
で終わってる。
ChangeWindosMode(TRUE)して、SetGraphMode()で指定したサイズのウィンドウが
出るので、そこまでは動いてるっぽい。固まってる状態でタスクマネージャで見ると状態=応答なし。

>>388
うちでもdxdiagではDirect3D 7のテストが下記エラーで失敗する以外は
正常(バウンスする□やXロゴの立方体が正しく表示される)。
| ステップ 40 (バック バッファを1つ持つフリッピング プライマリ サーフェスを作成中): HRESULT = 0x88760064(エラー コード)」

>>414 のSetWaitVSyncFlag(FALSE);も入れてみたけど解決せず。
Log.txtも「IDirect3DDevice9 オブジェクトを取得します...」で終わるのも変わらず。
Debug/Releseビルド共に同じ現象で解決せず。

元レスの人はDXライブラリを自前でdebugビルドしたものにしたら動いたようですが、こちらは未確認。
時間があれば週末にでも >>399 含めて試してみるつもりですが、
既に解決済だったら徒労なので何か情報ありましたらお願いします。


592 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 21:36:58.04 ID:CQqmGqdX]
>>590
正直、大学の時期を逃したら先はないよ。
就職後は時間に余裕がなくなる一方だ。

 ※ ただしニートを除く

593 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 21:45:30.54 ID:uIe4Uns+]
しかし一番いいのは大学でしっかり勉強する事だ。

594 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 21:50:19.11 ID:BhwDzGzN]
>>590
今プログラミングやれよ。好きなだけsin、cos使えるんだぞ

595 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 22:07:36.38 ID:tsrIJ06j]
DXライブラリのゲームが動かない場合は、directXのツールで異常なしと表示されてても、グラボのドライバを入れなおせば治る場合が多いよ

596 名前:名前は開発中のものです。 mailto:sage [2012/05/09(水) 22:22:14.21 ID:7036Lux4]
>>592
就職して10年経ったら会社辞めてプログラミングするわ。


597 名前:名前は開発中のものです。 [2012/05/09(水) 23:41:17.09 ID:9iScSVCb]
いまやらない奴が10年後に何をやるって?
時間が無いとか逃げてるようじゃ向いてないよ。
時間は無いものじゃなく、作るもんだ



598 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 00:47:47.27 ID:2KkjXKar]
ゲーム作りなんてほどほどに諦めとけ。
10年古い遊びだし、ニートになったらどうするつもりだ?



599 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 01:52:46.02 ID:UJVg5yao]
サインコサインタンジェントが全然わからん
sin cosはセットで使って角度から座標を求める
tanはなんだろ?

600 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 02:09:50.75 ID:ETRl6Ipe]
ゲーム製作では、アークタンジェント(タンジェントの逆関数)で、座標から角度を求める。
自機狙い弾を撃たせる時とか、使用頻度は高い。


601 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 02:25:10.92 ID:iDwpb+K6]
実際にそんな処理をやってたら重くてしょうがないw
数学関数の呼び出しはループの中では極力行わないのが常識。

602 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 06:18:14.97 ID:vzflkD1H]
昔はゲームコンテストに中学生が入賞して大金を手に入れたり
ゲームプログラマーデビューしたと聞いた

603 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 06:35:35.77 ID:UZbNhvsp]
中村光一のことかなと思ったけどちょっと違うか…
昔はネットも普及してなかったけどそういう夢はあった時代だねえ

604 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 07:38:40.06 ID:8vGyKgxt]
中村祐一

605 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 10:05:38.16 ID:tesXth+b]
ゲームはオワコン

606 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 12:09:07.74 ID:ZDbcr+Is]
>>601

そんなに重い?
想定するPCで処理落ちしない程度に抑えるのは当然として、仕様を諦めるほどのものか?
マウスカーソルの方に向きが変わるエフェクトだって毎フレーム角度を取らなきゃ出来ないだろうし、そういう表現を全部諦めなきゃいけないほど今のPCって遅い?
私も実際そういうの作ったけど、重いと言われた事はないなぁ。もっと重くなりそうな処理はたんまりあったのに。

607 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 12:16:27.13 ID:tfJkmKLP]
sinテーブルとか使ってた頃の常識じゃないかな



608 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 12:34:52.15 ID:4XOda0N/]
10数年前の常識だから、今はバンバン使ってもいい
つーか使わなきゃ3Dゲーム作れないよ・・・

609 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 13:22:25.06 ID:v9pLXRdM]
sin cos テーブルなら俺今も使ってるけどね。
同じ計算何度もさせるのに、いちいちsin cos 再計算させるとか無駄だし。

610 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 15:04:57.12 ID:kc9Z57zY]
テーブルなんて使ってたら超長距離の狙撃ゲーとかできなさそう

611 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 15:11:34.69 ID:tfJkmKLP]
テーブルの間の値を取るときに線形補完でもすれば結構使えそうな気はするな

612 名前:名前は開発中のものです。 [2012/05/10(木) 15:21:30.43 ID:VHianwBM]
内積とか使わないの?

613 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 15:23:18.02 ID:v9pLXRdM]
そんなピンポイントな仕様の時だけテーブル使わなければいいだけじゃ。

CPU性能が上がったからテーブル使わなくていいじゃん、て理屈なら
メモリ増えたからテーブル大きくしてもいいじゃん、って手もあるし。


614 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 16:45:22.46 ID:dVfrJx5F]
でかいテーブルにキャッシュ圧迫される位なら素直に計算したほうが速いと思う

615 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 16:58:49.22 ID:dtfgAWXR]
インタプリタで弾幕STGが作れる時代だぜ?

616 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 18:55:39.93 ID:v9pLXRdM]
俺も最初は普通に計算させていたが、「これテーブルでいけるんじゃね?」と思って
テーブル処理させるようにしたら、スピードは変わらなかったがCPUファンが急に静かになった。

また、随分前に別のスレで同様の議論が起こった時、サンプルコード作って実測値を求め、
コードとその結果を晒すと、今までなんだかんだと言ってた連中は黙り込んだ。
つまり比較検討すらせずに論じてたわけだ。

よって俺は、PC性能が向上したからテーブル処理は不要という説は机上の空論だと思ってる。

617 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 19:02:46.00 ID:sVBnl2Jo]
三角関数のコストの話題をsinテーブルで例えたのは俺だけど
特に誰もそれを不要とか言ってないからね
俺もちゃんと的確な場所で使えば今でも十分通じる最適化の手法だと思っております



618 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 20:11:40.30 ID:ZR8vamBu]
テーブルで処理してる人って固定小数点数とか使ってるの?
俺は浮動小数点数使ってるんでテーブル化の恩恵とかいまいちピンとこない
グラフィックの処理限界が先に来るんでCPUの処理速度に無頓着なのもあるんだろうけど

619 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 20:51:13.05 ID:mUHUEJ/5]
VCで数学系の関数を高速化する命令ってなかったっけ? 内部でテーブル作ってくれるやつ

620 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 21:35:16.35 ID:2KkjXKar]
アプリケーションの計算頻度しだいで必要としか言いようがない。

621 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 21:41:39.79 ID:dtfgAWXR]
数年前のCPUでさえ、普通に毎回計算しても弾幕シューで一万発60フレーム出せるし
core2とかなら更に数倍計算できるだろうし

622 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 21:52:54.52 ID:e/HoFmGV]
1日目 dxlibraryをインストール
2日目 visual c++をインストール
3日目 Dxlibraryのサンプルプログラムを観賞
4日目 リファレンスを見て関数勉強
5日目 リファレンスサイトを探す
6日目 you tubeを見て作品観賞
7日目 ニコニコ動画を見て作品観賞
8日目 Dxlibraryの普及度をネットで調べる

こんな感じで一向にゲーム作る気になりませんでした^o^
やる気はあるんだよ?
バイトしてるほうがマシだなでもww

623 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 21:56:57.00 ID:8OIpRinM]
sinテーブルなんかは最適化には有効だけど、
わざわざsinテーブルなんて作るよりベタ書きでいいじゃんって話でしょ。
毎秒何フレーム描画したいかにもよるけど、どんな酷い書き方しても今のCPUなら最低でも60fpsは出るぞ。

そもそもcore2なんて化石だしなあ。
三千円出してSandyのCeleronでも買えばいい。

624 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:01:40.33 ID:8OIpRinM]
>>622
お前みたいなやつに限ってやる気はあるってのが口癖だったりするんだよな。
自分でもう一度眺めてみろよ。

既にdxlibをインストールしてるのに、後から普及率を調べたり
リファレンスがあるのに、別のリファレンスサイトを探したり、
今までいろいろなゲームを見たことがあるはずなのに、今さらゲーム作品を鑑賞している。

全部プログラムを書くことからの逃げでしかないだろ。

1時間程度でvc++インストールしてdxlib入れて、リファレンスとにらめっこしながら書きはじめない時点でやる気が無いのと同じ。

625 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:01:42.65 ID:K6/fMJqa]
atan2は普通に使ってるけど、

1/60sec.内に必ず処理が終わるようにしなければならない、っていう決めのもとで、
newとdeleteなど動的なメモリ確保する処理がこわくて使えない
具体的にはSTLのmapがこわくて使えない

低確率であろうとも負荷が集中して1/60secを超えるリスクがもしあるのなら、と思って使ってない
そんなことがあるのか、よくわからないんだけど

で、全インスタンスを予め確保して使ってる
アクションゲーならあらかじめ敵最大1000匹とか決めておいて、インスタンス1000個を配列で確保して、
で1個1個に生死フラグをもたせてる

626 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:07:23.83 ID:feNuwH83]
>>621
自分弾幕やらないからよく分からないのだけど
解像度800x600 で 8x8の小さなドット敷き詰めても 7500発にしかならないと思うんだ
一体どんなゲーム(計算方法が分かっているならツール?)なんだろ

627 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:08:02.47 ID:e/HoFmGV]
>>624
石橋を叩いて渡るタイプだから俺はw





628 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:12:18.01 ID:e/HoFmGV]
どっちかっていうと勉強できない奴がゲーム作るのに逃げたって風潮なのに
回転座標とか行列とか、三角関数とか嫌にならないのかね。

629 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:15:05.37 ID:dtfgAWXR]
>>626
あくまで昔作ってたゲームでどこまで弾が出せるかの計測の結果だから、実際のゲームでそんなに出したわけじゃないよ
なので、普通にゲーム作る分には三角関数は最適化しなくても余裕はあまりまくるって意味

>>627
やらない奴のテンプレすぎるw

630 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:15:53.49 ID:e/HoFmGV]
内積はベクトルが作る面積、外積は体積だよな。

631 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:17:05.95 ID:dtfgAWXR]
高校の頃は、ゲームに活用できる単元だけテストの点数高かったな
ゲーム制作に活かせることなら興味モリモリだろ普通

632 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 22:39:01.08 ID:yUL5kazs]
>>627
渡ってないだろw

633 名前:名前は開発中のものです。 mailto:sage [2012/05/10(木) 23:03:40.82 ID:um7ucooq]
目的なくリファレンス見ても何も頭に入らないと思うんだが

634 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 00:12:18.56 ID:7pB6w4/u]
ロダやパス聞いて叩かれてるタイプ

635 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 00:16:59.89 ID:IxDfbQFz]
グローバル変数使いまくってたのをクラスにまとめてすっきりしたと思ったら100エラー越えて泣いた。
オブジェクトの宣言てどこですればいいの。もうexternは使わんと決めたお…

636 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 00:19:27.34 ID:GbmOtmCH]
同じスタイルでやるならexternの数を減らせる以外の効果は無いと思うよ
externが一個で済むようになるならいいじゃん

637 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 00:46:06.52 ID:IxDfbQFz]
>>636
散らかってた変数や関数を複数のクラスにまとめたってこと。そして素人の俺はクラスの数だけexternすることに。
もっとゲーム設計に適したやり方はないの?とお前さんらに泣きついた次第



638 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 00:53:39.42 ID:N2bOf4fY]
セーブ・ロードするんでもなきゃ、下手にクラスにまとめないほうがいいよ
クラスにまとめるくらいなら、ネームスペースで囲っとけ

639 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 01:04:26.09 ID:IxDfbQFz]
>>638
クラスは便利って聞いたから慣れようとしたんだけどね。いろいろ試してみる

640 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 02:39:58.68 ID:bSxE0QNK]
クラスの実体をグルーバル変数にしない→どうやって実体化したクラスにアクセスするか?→ポインタ(リファレンス)を渡す
後はメンバのアクセス権とかを設定すればなんとなくC++っぽいプログラムになる

641 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 02:51:15.70 ID:B2rtNnmh]
基本的にexternてextern "C"位しか使わないはずだけどな
ポインタの引数渡しだとかシングルトンとかでポインタ返したりするので間に合うし
#pragma once等で多重インクルード防止してるよね?

642 名前:名前は開発中のものです。 [2012/05/11(金) 08:33:33.00 ID:ZM042uCS]
目的が達成されればやり方はなんでもいいんだよ

643 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 10:30:32.73 ID:3e5VHKoo]
クラス設計見てないからなんとも言えんが、
ゲーム総括クラスを一つwinmainで
メッセージループ入る前やWM_CREATEで生成、終了時破棄ってのが普通じゃないか?
ってかDXライブラリ関係ないな。クラス設計スレあったと思うよ。

644 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 10:45:55.87 ID:vcjHam5B]
>>625
毎フレームmapに自前でnewはあんまやらないと思う
別コンテナにすでにインスタンス確保してあるなら、
そのポインタかスマートポインタを入れたらいんじゃね


645 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 17:14:52.22 ID:ROU9gqxB]
DXライブラリって直接半透明に画像描画することって出来ないのかな?
透明メッセージ枠やりたかったけどSetDrawBlendModeが必須なのか…

646 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 18:12:28.51 ID:dJRyU0/j]
普通は、それができるようにDXライブラリを更にラッピングして描画関数やフレームワークを作る

647 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 18:21:46.43 ID:ZalIzh5v]
α情報ある画像ならいけるよ



648 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 19:17:48.33 ID:3dGi95mh]
透明メッセージ枠くらいならアルファ画像の方がいいんじゃないかな。

649 名前:名前は開発中のものです。 [2012/05/11(金) 22:34:22.76 ID:4SsxSVut]
フリーゲーム紹介サイト一覧(登録関係) 
ttp://www.geocities.jp/y_u_n_o_a/distribution/chapter1-2.html

ゲームを制作したらここへ

650 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 23:02:20.93 ID:y/guoP93]
自貼りするのは構わんが、あちこちのスレにマルチはするなよ。

651 名前:名前は開発中のものです。 mailto:sage [2012/05/11(金) 23:46:30.66 ID:o/+Gc2jH]
透明画像なんて使えたのか…

652 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 00:05:05.70 ID:c1qmluZz]
>>644
ありがとう
STLのmapでのinsert/eraseでsecondをポインタにするのなら、
ほとんどnewとかdelete発生しない
(か発生してもサイズが小さいから、負荷が集中しても1/60sec超えるほどにはならない)
ってことか
mapが内部的に保持している要素数をオーバーしたときに再配置が生じるくらいかな…
先に大量に配置してからclearしておけばいいのかな

1/60secに常に収まることが必要な敵オブジェクトやタスクの管理にもmapは使えそうな気がしてきた
必要に応じてvector/set/multimapあたりになるのかもしれんけど

653 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 00:12:48.35 ID:nwxeejja]
宣言した変数に文字を代入したいんだけどcharやintじゃダメなのかな
char Sound = BGM1; みたいにやってるんだけどどうも美味くいかない
文字はcharだと思ってたんだが

654 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 01:06:33.81 ID:nwxeejja]
ごめん分かり辛かったかもしれない

--main.cpp-----------------------------------------------
int BGM001 = LoadSoundMem( "BGM/音声.mp3" );

int BGMVol = 255; //BGM音量
int SEVol = 255; //SE音量

char SoundSet,SoundVol = BGM001 , 255;
void Sound_On();
--Sound.cpp----------------------------------------------
char SoundSet = 0;
int SoundVol = 0;

void Sound_On(){
ChangeVolumeSoundMem( SoundVol, SoundSet );
}
--------------------------------------------------------

こんな感じで指定するだけで流すBGMとその音量を楽に変えられるようにしたいんだけど
文字列が使えないとなるとここからどうすればいいんだろう全く分からない

655 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 01:14:46.09 ID:Sk4hsssu]
Cの基礎文法から地道に勉強したほうがいいよ
勉強するのが嫌ならchar[]とかstringで検索

656 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 10:20:02.82 ID:oiw6jIIK]
おっぱい

657 名前:名前は開発中のものです。 [2012/05/12(土) 11:08:26.00 ID:4PAPvi2J]
>>654
ツリーマップとかハッシュマップがしたいんじゃないか?



658 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 11:33:22.89 ID:pM6R2rdg]
stringってなんだよ
char*やchar[]となにが違うんだ

659 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 11:44:07.77 ID:pM6R2rdg]
動的に配列を確保したぃだけどできる?

kurasu hoge[] = new kurasu[i]

660 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 11:44:13.65 ID:7ZI1drDU]
なにって、文字列長可変できることに決まってるじゃまいか

661 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 11:46:31.53 ID:7ZI1drDU]
>>659
vector使っとけ

662 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 13:15:24.26 ID:Y7LnpGkk]
>>654
色々とダメすぎ。
char型にint型を代入しようとしているし、
char SoundSet,SoundVol = BGM001 , 255;
こんな代入ってできたっけか?
少なくとも、このコードで文字列を使うようなところはないぞ。
LoadSoundMem()の引数で使うのなら別だけど。

最低でも、配列ぐらいは勉強しようぜ



663 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 13:20:23.81 ID:scKJS9wa]
>>654
"BGM/音声.mp3"以外に文字列使ってるところないと思うけど
あとcharは+-127で 255いれるならアンサインドしないといけない。
SoundVol = BGM00はキャストしないといけないけど
int型のハンドルからcharにいれるとおかしくなる


664 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 13:33:12.14 ID:e6ix4ssi]
charがsignedとは決まってないぞ?
unsignedとも決まってないが

665 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 14:03:15.85 ID:Cm45Qp6Q]
>>664
釣乙と思って調べてみたらマジで処理系依存だった。
今まで何も意識してなかったんだぜ。

666 名前:654 mailto:sage [2012/05/12(土) 14:28:24.06 ID:6R8HK7WJ]
ダメ過ぎてごめんなさい
charもstringも使わずに出来ました、レスくれた人ありがとう

667 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 16:54:50.46 ID:MLybp27S]
atan2って0渡すと落ちない?



668 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 17:17:40.32 ID:aTzzNn3r]
c#用のdxlibがあるらしいけど、
使い心地はc用と比較してどう?



669 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 17:49:08.27 ID:bBRavtqR]
>>667
処理系依存なのでVCは0を返す
BCCならエラーになるかも
GCCは0だったかな?

670 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 18:04:49.21 ID:e6ix4ssi]
>>667
C99対応処理系の場合、設定次第で例外を生成する

671 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 18:47:25.96 ID:dhHNv3dR]
>>668
構造体名が全部大文字だったり
C#ならenumを使うようなところが全部const静的メンバだったり
C#を使い込んでいる人ほど使いにくいと感じるかもしれない

個人的な感想をいうと
「どうしてもC#で使いたい人向けにとりあえず用意しました」
という感じが強い
使い心地という観点では、正直あまり良くない
まぁ、もともとCやC++用のライブラリだから仕方ないんだけどね

672 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 19:15:17.60 ID:qdtYJdCq]
enumで定義して欲しいとかはC/C++でもあるけどね
演算に利用するような定数でもなければ、型で縛っといてくれた方が安全だし

673 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 22:25:31.97 ID:0khMsYy7]
練習に簡単なじゃんけんゲー作ってたら面白くなってきた

674 名前:名前は開発中のものです。 [2012/05/12(土) 22:35:13.58 ID:vkMbVikO]
どうせ軽いフレームワークは自作するんだろ?
そのついでにC#らしからぬ所を隠してしまえばいい。

675 名前:名前は開発中のものです。 mailto:sage [2012/05/12(土) 23:07:24.89 ID:zvVDUBCv]
>>652
再配置ってvectorなんかで起こるメモリの再割り当て?
↑ならmapでは特に気にしなくていんじゃないかな

676 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 00:34:39.15 ID:a5SCC/ey]
ゲームプログラミング作り難しすぎ。
O型のやつは大雑把だから細かいプログラミングは絶対不向きだな。

677 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 00:59:03.31 ID:2yoWSG9U]
言い訳乙



678 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 01:59:31.47 ID:SIc+R5jE]
>>675
そうなん?
例えば10個の、敵その他オブジェクトへのポインタをmapにinsert/eraseをしてて、
場面によってオブジェクトが1000個に増えるようなときって、
mapが持ってるメモリ上の領域って10個分から1000個分に拡張されるんじゃないかなとか思う
でそのときに再配置というか、追加割り当てが発生するんじゃないかなとか
まぁその規模の処理で1/60秒食われるわけもないから、気にする必要もないのか…

679 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 02:18:54.50 ID:oOXluPnN]
プログラミングが難しいとか正気か?

680 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 02:30:01.68 ID:ClwAHpRU]
こういう場で血液型占い持ち出すやつは文系でも最下層の人間だろうから難しくても無理はない

681 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 05:10:58.13 ID:lpryfgyO]
>>678
最初にリザーブしとけばいいんじゃね?

682 名前:591 mailto:sage [2012/05/13(日) 08:53:27.43 ID:8OrJeLU+]
>>591
DXライブラリをビルドして試してみました。
>>399 さんの推測で当たりのようです。

DxGraphics2.cppの4134〜4168行をコメントアウトして
GRH.FrameTime=16;
にしたら動きました。(16という値は1000(ms)/60(fps)=16.666...ですよね多分)
上の行番号はDXライブラリ3.05での値で3.07だと変わっていると思うので、
// 1フレームの時間を取得しておく
のコメントの部分を探して、そこを同様に変更すればとりあえず回避できると思います。

ログ出力を埋め込んで見たところ、当該処理の中で呼び出している
GetRasterStatus()×4のうち、2番目のfor(;;)ループ
(// VBlank が終わるのを待つ)が無限ループしてるようです。

回避策は分かったけど、正しい修正方法までは分かりませんでした。
当該処理の中で呼び出しているGetRasterStatus()がおかしな値を返して
来ている?ようですが、原因まで調べるだけの知識・スキルは有りませんでした。

公式サイトの掲示板の方にも報告しようと思いますが、VirtualBox固有の問題
だと思うので、作者さんのところに環境が無いと調べて対策するのは難しいでしょうね...


683 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:01:44.64 ID:9MSRAsYc]
>>679
じゃあジャンケンのプログラムを余計なとこは省いてレス行以内で書けるか?

684 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:21:17.97 ID:NHkyJdx+]
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void shoubu(int a, int b) {
  char* hand[] = {"グー", "チョキ", "パー"};
  printf("あなた:%s vs 相手:%s\n", hand[a], hand[b]);
  if (a == b)
    printf("あいこだった\n");
  else if ((a+1)%3 == b)
    printf("あなたの勝ち!\n");
  else
    printf("相手の勝ち!\n");
}
void main() {
  unsigned int a;
  srand(time(0));
  printf("あなたの手は?(0=グー, 1=チョキ, 2=パー):");
  scanf("%d", &a);
  shoubu(a%3, rand()%3);
}


685 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:29:20.51 ID:EZnOWHsv]
なにこれうごかない

686 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:30:56.65 ID:oOXluPnN]
ちょ、俺書いてたのにw

687 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:52:50.74 ID:w1fS3w9l]
w



688 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 09:58:44.99 ID:AAmzPGEo]
>>671
ありがとう
公式に機械的にc#用に変換したとあったね

おとなしくxna使うわ

689 名前:679 mailto:sage [2012/05/13(日) 10:02:11.55 ID:oOXluPnN]
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){
if( DxLib_Init() < 0 ) return -1;
int game=0,zibun=-1,aite=0,hantei=0,temp=0;//ゲームの状態・自分・相手・判定・勝敗チェック用の
char* hand[] = {"グー", "チョキ", "パー"};//パクった グー=0 チョキ=1 パー=2
char* win[] = {"勝ちました", "負けました", "あいこでした"};
SRand(GetNowCount()); SetDrawScreen( DX_SCREEN_BACK ) ;
while( ProcessMessage() == 0 && CheckHitKey(KEY_INPUT_ESCAPE) == 0 ){
switch(game){
case 0://初期化
aite=GetRand(2); game=1;
break;
case 1://入力待ち
DrawString(0,0,"グー=Z チョキ=X パー=C 選んでからスペースキーでバトル",GetColor(255,255,255)) ;
if(zibun!=-1)DrawFormatString(0,32,GetColor(255,255,255),"現在の選択は「%s」",hand[zibun]) ;
if(CheckHitKey(KEY_INPUT_Z))zibun=0;
if(CheckHitKey(KEY_INPUT_X))zibun=1;
if(CheckHitKey(KEY_INPUT_C))zibun=2;
if(zibun!=-1 && CheckHitKey(KEY_INPUT_SPACE))game=2;
break;
case 2://判定
DrawFormatString(0,0,GetColor(255,255,255),"自分の手は「%s」、相手の手は「%s」",hand[zibun],hand[aite]) ;
if(zibun==aite)hantei=2; else{
temp=zibun;if(temp==2)temp=-1;if((temp+1)==aite)hantei=0;else hantei=1;}
if(zibun!=-1)DrawFormatString(0,32,GetColor(255,255,255),"%s。エンターキーで再戦、ESCで終了",win[hantei]) ;
if(CheckHitKey(KEY_INPUT_RETURN))game=0;
break;
};
ScreenFlip(); ClearDrawScreen();
}
DxLib_End(); return 0;
}

690 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 10:06:18.59 ID:oOXluPnN]
コード汚すぎるけどDXライブラリで動く的な

691 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 10:07:06.00 ID:W1RKjCLb]
DXライブラリ関係ない話が多いなw

>>685
全角スペース消せ

692 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 10:09:01.24 ID:Ls9MBT4q]
ksに付き合うなよ…w

693 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 10:18:47.38 ID:oOXluPnN]
問題を出されると組みたくなるのはプログラマの性

694 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 10:27:17.86 ID:pjQ/YiEQ]
>>689
いいね

695 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 11:18:22.18 ID:SIc+R5jE]
>>681
reserveはvector系にはあるけど、map系にはないみたい
>>652のやりかた(最初にたくさん確保してからclear)をすればいいのかもしれない

696 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 12:16:43.99 ID:8C9TJ7oh]
mapって配列で保持してるとでも思っているか…

697 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 12:17:22.35 ID:2jBPxDkl]
>>678
再配置ってのが
push_backしまくってvectorが確保したメモリ超えたときに起こる
メモリの再確保&要素全コピー&古い領域解放のことだと思って
mapじゃ起こらないから気にしなくていんじゃねって思ってレスした
vectorは>>681に同意でreserveとセットだと思ってる



698 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 12:38:55.03 ID:SIc+R5jE]
>>696,697
たしかに、その話ではないね。

言いたかったのは、
・mapの実装が、要素間をポインタでリンクしてるものだとする。
・mapに要素を追加した場合は、
 既存の要素が持っているポインタ値が、新要素へのリンクを示す値になる
だから…
あっごめん再配置の問題ないわー

699 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 17:18:26.44 ID:JYF+zVYV]
途中で何度も挿入と削除繰り返す場合は
要素でアクセスする必要ないならlistのが良いし
ソート不要ならunordered_maptも考慮してもいい

700 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 18:37:46.05 ID:SIc+R5jE]
>>699
ありがとう

例えば敵オブジェクトを1000要素の配列に入れて、存在フラグtrue/falseで管理し、
存在フラグtrueのものだけ処理を行う、という用途で、
要素検索によるランダムアクセスしないなら、
listが向いてるって感じか

用途に応じて選ぶ際の参考になるわ

701 名前:名前は開発中のものです。 [2012/05/13(日) 18:38:44.99 ID:pSj6hJ1W]
map, vector, listでクラス使う際は
ポインタ <T*> を使うのがいいんだな
javaやってて気付いた

702 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 22:06:28.55 ID:4FieMYmt]
vectorでどうやって動的にクラス配列確保するんだよ( ;´Д`)

703 名前:名前は開発中のものです。 [2012/05/13(日) 22:18:11.78 ID:pSj6hJ1W]
だからポインタ使えって。コピーコンストラクタ書かずに済むし速い。
プリミティブなら逆にポインタ使わないほうがいいけど。

704 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 23:02:43.31 ID:SIc+R5jE]
>>701の<T*>をぐぐったけどよくわからんかった
ので>>702もよくわからんし>>703もわからん

もちろんプリミティブならそのままsecondに代入しちゃってのはわかる

705 名前:名前は開発中のものです。 mailto:sage [2012/05/13(日) 23:22:05.25 ID:SToQPpoQ]
普通にvector使えばいいんじゃないの?

706 名前:名前は開発中のものです。 [2012/05/13(日) 23:22:50.12 ID:pSj6hJ1W]
>>704
Hogeなら vector<Hoge*>ってこと。
するとSTLが管理するのはポインタの配列だけで
ポインタが指すインスタンスは結局自分でnew(), delete()する必要があるね。
vector::push_back()とかにあわせて
参照先new(), delete()するラップクラス作っちゃったり。

707 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 00:20:26.40 ID:nfhDOHHW]
ああ、T*というところがわからなかったけど、
要はmapならsecondにはポインタを入れておけばいいってことで、
>>644と同じことをいってるってことね



708 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 12:57:31.44 ID:BTxAOBmy]
mapならというかコンテナ全般、プリミティブじゃないなら
ほとんどの場合ポインタかスマートポインタになると思う
インスタインス生成する場合でも生成してからポインタをコンテナに入れる

709 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 20:31:57.64 ID:wi3mQ0Av]
敵がドアを破って追いかけてくるゲーム作りたいけど何時間くらいで
作れますか?

マップは平面です。
100時間くらいで作れますかね?

710 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 20:55:24.27 ID:nluLiaGY]
>>709
どんなゲームかよくわからないけど、一般に絵描くのに時間がかかると思う

711 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 20:57:44.59 ID:wi3mQ0Av]
ドンキーコングみたいなゲーム作るには何時間くらいかかりますかね?

ディクシーのポニーテールジャンプみたいなアクションとか難しいですか?

712 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 20:59:03.55 ID:nfhDOHHW]
DXライブラリスレで質問したということは、
ツクールなどでなく、プログラムを0から作るということだよね
プログラムの経験がないなら、プログラムのやり方をつかむまでにも、時間がかかると思う

713 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 21:00:26.92 ID:ARfdhxrz]
使う言語が分からん。
使うツールが分からん。
どんな設計するか分からん。
そもそもどんなゲームか分からん。
>>709の技量が分からん。

本当に>>709だけだったら1時間もかからないんじゃない?
__人≡_扉_敵≡_扉___
↑を適当に表示すれば?

714 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 21:13:16.20 ID:fXKpuvEK]
手を動かさない限りは100万年あってもできないからw

715 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 21:48:26.61 ID:nluLiaGY]
>>711
難しくはないけど、何時間で作れるかはわからない。開発時間なんて測ったことないから。昨年作った自分のゲーム(STG)見たらデバッグでのプレイ時間は今調べたら12時間くらい。だから製作時間は100時間は超えてると思う。
俺は1年で1作品作ってるけど1年の内この期間は言語の勉強して、この期間はライブラリ作って、みたいな感じ。ゲーム作ってる期間は3ヶ月くらい。
参考になりましたでしょうか?

716 名前:名前は開発中のものです。 [2012/05/14(月) 21:51:45.72 ID:FOic/R1y]
話変わるけど、>>715さん。
シンプル500って知ってるかい?

あぁいう感じのゲーム好きなんだわ。
500の脱出ってしってる?

あんな感じのインターフェースが良いな。
初心者です^ω^
言語はCです。(C++は無理)
ライブラリはDxlibraryとvisualC++

717 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 21:58:12.39 ID:nHTiVln5]
(C++は無理)

visualC++



718 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 22:28:40.41 ID:Fjz7pfxe]
>>716
ああいうのはフラッシュのほうがいい

719 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 22:37:14.19 ID:M7E7ECcT]
>>716
ClassはまだしもStringとか使ってないの?

720 名前:名前は開発中のものです。 [2012/05/14(月) 22:39:41.11 ID:FdCjrB5P]
「free game classic(フリーゲームクラシック)」とは?
3ヶ月ごとに開催される個人運営のコンテストでみんなの投票で
順位を決めます。
「プレイ時間は90分内」「先行公開が可能」など、ルールがあるので要注意。
3位までにギフト券3000〜1万円が贈られるます。
ゲームを作ってコンテストに参加するもよし、ただ遊ぶでもよしです。


721 名前:名前は開発中のものです。 [2012/05/14(月) 22:54:07.17 ID:FOic/R1y]
>>718
フラッシュだとツール臭するからな。

CやBASICで10年以上前の簡単なPCゲームみたいなん作るのが楽しいんだよ。

あーコン部思い出すわ。

722 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 23:07:35.73 ID:Y0QiG0Ej]
10年程度じゃまだレベルたけーぞ。

723 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 23:13:10.08 ID:ZvZF0l1B]
>>720
ぐぐった。そしてなんだこの残念感。

724 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 23:16:49.28 ID:FOic/R1y]
>>722
違うって。
12年前くらいのPCゲーム。
Shock Priceの500円の脱出ってゲームしってるか?

あぁいう簡素だけど、コミカルでわくわくする雰囲気の
レトロゲー作りたいんだよ。

昔に戻れる。
パソコン部思い出せる。あーあのころに帰りたい。


725 名前:名前は開発中のものです。 mailto:sage [2012/05/14(月) 23:21:21.72 ID:FOic/R1y]
>>722
お前コン部の楽しさしらないだろ?

公立なのに夏にクーラー利いた部屋に出入りしたら
勉強できないのにコンピュータだけは得意なメガネ君がカタカタやってる。
で俺は話ついていけないから、今度のコンクルール何出そうか?みたいな
話題提供したら乗ってくれる、色々教えてくれる。楽しいぜ?和気藹藹。
女子はパソコン苦手だから、固まってお喋りしてる。可愛い子もいた。
土曜日なら先生少ないから、サッカー部の生徒が可愛い女子目当てに
乱入しちゃったりしてさ。
あのころに戻りたい。





726 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 00:21:21.90 ID:I2SNujz0]
コンピュータ部ってX6800、PC98、FMタウンズの勢力争い三国志みたいなとこだった



727 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 01:02:26.15 ID:3TH09wJu]
>>725
俺の知ってる部活と違う。クーラーしか共通点がない。
全員でエロゲのセーブデータ解析&先公から頼まれた市販ソフトのコピー遂行。
解析データは投稿。>>725はどこの世界に生きてたんだよ・・・



728 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 01:09:35.50 ID:G9xvbrPp]
>>725
俺もdoubtだわw
「パソコン」が通称だった時代は、まだ全く身近じゃなかったんじゃないか?
サッカー部に女子がまとわりついてるってんなら分かるが。

あと、
>Shock Priceの500円の脱出ってゲーム
アマゾンのユーザレビューでボロクソ言われてんなww

729 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 02:01:02.79 ID:G9xvbrPp]
「パソコン」はまだ言うなw
スマソ

730 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 02:28:36.70 ID:I26iNYfr]
マイコン

731 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 04:55:54.75 ID:l3PfYtxB]
コンピュータの話をするとそんなもん何の役に立つんだと
老害教師に鼻で笑われたなー

732 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 06:22:59.75 ID:WoSDo/nx]
実際役に立たないから困る

733 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 08:27:06.44 ID:n+C8wzG1]
実際ゲームのメイン部分ってwhileじゃないと駄目なの?
GPの館に書いてあったんだが

734 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 08:46:09.63 ID:P26WoJ+E]
他の制御構文は
for:初期化式と再初期化式が省略可能だが余分
do〜while:初回無条件に実行が必要じゃない
goto:基本的に使用は避ける

無駄が無いからwhileを使う

735 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 10:45:28.39 ID:/AN6bfUC]
while以外に何を使いたいんだ?w

736 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 11:24:27.70 ID:7q5MiGtI]
do〜whileを使うプログラマ、使わせるSEはクズ

737 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 13:32:48.02 ID:DvZhu9E1]
統一させないといけない仕事ならともかく、
趣味でやる分には好きにすればいいと思うよ



738 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 15:26:41.12 ID:WoSDo/nx]
while(true)よりfor(;;)の方が速いらしい

739 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 15:36:07.96 ID:7MbmXZQt]
そもそもそれぞれ機能が違うんだから「ループ処理」みたいにバカな一括りにしてないで使い分けろよw

740 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 17:48:29.94 ID:K4tOkwgR]
そんな微妙な差をきにするほどのゲームなのかと聞きたい

741 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 18:39:55.59 ID:WoSDo/nx]
for, foreach, while, doはforに統一してもいいよな。

for(int i=0; i<5; i++){}
for(Type object : array){}
for(true){}
{}for(true)

742 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 20:11:20.70 ID:jK/Ti//s]
>>740
宗教寄りな個々の拘りの問題で、出来上がる物にそこまで影響してこないでしょ
>>736 がそう思う理由を聞きたい。普段から殆ど使わないけど、なにかか不味かったけ?

743 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 20:18:12.31 ID:FJN+ySbI]
do〜whileの存在なんて忘れかけてたわw

744 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 20:30:17.74 ID:Q/+zfBD6]
do〜whileは一生使わないと思う

745 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 21:38:56.48 ID:NycYNCvV]
僕この前使ったことあるよ!!
二次元上の点をランダムな点(ただしPCの半径n以外)を得るコードの時に人生で初めて

746 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 21:42:25.47 ID:I2CLfunR]
do whileはstd::next_permutationで使うくらい

747 名前:名前は開発中のものです。 [2012/05/15(火) 22:14:03.49 ID:AbQ+Urgd]
do{
処理;
if(エラーチェック1) break;
処理;
if(エラーチェック2) break;
処理;
return;//正常終了
}while(false);
エラー処理
return;

これでgoto要らず・・・



748 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 22:15:08.62 ID:SjeSUqBD]
構文がもし do while(条件) { ... } だったら、もうちょっと使ってたかもしれない

749 名前:名前は開発中のものです。 mailto:sage [2012/05/15(火) 22:34:26.99 ID:AbQ+Urgd]
あと有名なのははDuff's Device
send(to, from, count)
register short *to, *from;
register count;
{
register n=(count+7)/8;
switch(count%8){
case 0: do{ *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
} while(--n>0);
}
}

750 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 01:14:43.27 ID:E/82p3zm]
>>749
なんだこれは

751 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 01:33:14.92 ID:E/82p3zm]
>>659だけど
他で作った好きな要素数の配列をnewしてアドレス変数をポンポン交換してって
使い終わったやつはdeleteで開放
で擬似的に動的配列になるかね

日本語意味不明だけど解読してくれると嬉しい

752 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 01:53:38.37 ID:uCI89rGL]
配列は定数しか無理だよ
動的配列のvectorじゃだめなん?

753 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 03:41:31.70 ID:veKNCjZ1]
vectorが内部でやってることだろ。
基本を抑えずvector使っても結局詰まるよ。

754 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 04:11:42.74 ID:xN96LXhW]
vectorとか適当にぶん回しても要素1000くらいまでならマジ優等生
何も考えずにvector使えばいいよ

755 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 20:28:31.12 ID:veKNCjZ1]
おまじないプログラマーの甘言を真に受けないように

756 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 21:05:20.10 ID:Zs3i0kMO]
プログラマーとして一流になる必要などなくて、ゲームが作れればいいんだから、
さっさとvector使えばええやん
C++ STL vectorとかでぐぐれば資料もたくさんあるから、必要な情報も得やすい

757 名前:名前は開発中のものです。 [2012/05/16(水) 21:17:43.67 ID:xcEAC60x]
名前空間とかわけわからんdせう



758 名前:名前は開発中のものです。 [2012/05/16(水) 21:22:50.79 ID:xcEAC60x]
クラスをインスタンス化する時コンストラクタやiniメソッドでメンバを初期化するとする
この時わざわざ
class Constructor{
private:
 int x,y,z;
public:
 Constructor(tmpx,tmpy,tmpz){
  x=tmpx;
  y=tmpy;
  z=tmpz;
 }
}
って名前変えて一個ずつ代入していくのが面倒なんだけど、この方法しかないの?

 Constructor(x,y,z){}
が出来るならいいんだけど

759 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 21:52:32.82 ID:Ii6Gjoka]
Constructor(int tmpx, int tmpy, int tmpz) : x(tmpx), y(tmpy), z(tmpz) {}
とかどうよ

760 名前:名前は開発中のものです。 [2012/05/16(水) 22:06:52.36 ID:xcEAC60x]
やっぱなんかダサイねん(´・ω・`)
tmpとか無くしたい
x→tmpx→x

 ↓

x→x

761 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 22:10:09.69 ID:DWTPf8LX]
テンプレートで初期化を自動化するstatic関数作ればいいじゃん
こういうのってC++でもできるよね?

762 名前:名前は開発中のものです。 [2012/05/16(水) 22:13:40.69 ID:xcEAC60x]
なんかこう、パラメータヒントの変数名がtmpでダサい(´・ω・`)

763 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 22:22:46.08 ID:GI6piSjh]
大文字・小文字で区別ができるんじゃ?

764 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 22:23:30.21 ID:aRUZ3+na]
同じ名前でもいいぞ、混乱しないようにメンバ変数にthis付けたほうが安全だけど

765 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 22:30:48.24 ID:uOBgzP4U]
class point {
private:
 int x,y;
public:
 point()
 {
  *this = point(x,y);
 }
 point(int x,int y) : x(x),y(y)
 {
 }
};
ってダメかね

766 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 22:54:49.23 ID:vXiMaXO2]
>>758
内部変数とアクセッサ・引数用の変数ネーミングのルールを作る。
内部変数は省略形で書き易く、アクセッサ・引数用は分かりやすく。
それ以上気にすると先に進まん。
なんかいい方法があれば後で直せば良いや、くらいで。

767 名前:名前は開発中のものです。 mailto:sage [2012/05/16(水) 23:53:20.10 ID:O28tHfhr]
>>764
安全っつーか、thisつけないとアクセスできないでしょ



768 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 00:12:52.18 ID:lbGUPy7y]
俺ならこうだな
変数は構造体の中にまとめる
変数が増えても構造体をいじるだけでいい

typedef struct xyz
{
int x;
int y;
int z;
}stXYZ;

class Constructor
{
private:
stXYZ xyz;
public:
Constructor(stXYZ *pstTmp)
{
memcpy(&xyz,pstTmp,sizeof xyz);
}
};

//呼び出し側
stXYZ stTmp = {1,2,3};
Constructor constructor(&stTmp);


769 名前:名前は開発中のものです。 [2012/05/17(木) 00:24:19.25 ID:Jj8o5dc4]
>>768
(・δ・`)

770 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 04:59:40.80 ID:4FnschNb]
>>767
初期化子リストじゃだめなの?

class foo
{
public:
foo (int x, int y) : x(x), y(x) {}
private:
int x,y;
};


771 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 08:20:02.90 ID:XdhnKfWC]
できればコンストラクタに引数渡したくないな

772 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 09:51:33.09 ID:Jj8o5dc4]
よくわからんけど引数から直接メンバにデータを渡す事は変数介さないと無理でok?

773 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 10:48:59.52 ID:72LABUA9]
そこは見た目だけの問題だからintとか組み込み型だと最適化で消える場合もある

774 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 12:18:20.00 ID:kt0acN7f]
レベル高すぎてついていけない

775 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 12:51:45.63 ID:XdhnKfWC]
別にsetter, getterない publicなメンバ変数を持ってもいいし、
visual studio c++ 専用だけどpropertyという機能もある

776 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 16:09:41.33 ID:jk5kVr/j]
>>774
安心しろ、俺もだ

777 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 16:36:03.67 ID:LEC6LKtf]
C++の構造体ってデフォがpublicなクラスみたいなもんだし
メンバ関数作って使い方の感覚得るとかいんじゃね



778 名前:名前は開発中のものです。 [2012/05/17(木) 17:43:23.17 ID:ucuijB6C]
厨房だけど、何からすればいいか分からん
C言語は入門書一冊熟読した
知識はそれだけです

779 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 17:53:24.70 ID:A/eH0jcf]
何すれば良いか分からんやつは大抵できないから好き勝手ゲーム作ったりしてれば良いと思う

780 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 18:19:27.36 ID:Le624jWk]
ファミコンのマリオみたいなの作るといいよ
あの滑らかなジャンプの曲線の動きとか作るのすげー勉強になるし、実際に動いてるの見ると楽しい

781 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 18:25:10.94 ID:sA5HBbyr]
>>778
作りたいもの作ればいいよ。
作りたいものがなければ違うことやればいいと思うよ

782 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 18:42:01.27 ID:Lq82mTDs]
ちょっと待て、熟読したとは言ったが、実際にコードを入力して試したのか?
ともかく、DxLibとC言語で簡単なゲーム作る本があるから探して買うか図書館で借りるかして試してみればいいよ。

783 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 18:44:31.06 ID:CIWlPPKp]
昔はベーマガを見て覚えたもんだが

784 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 19:04:17.83 ID:1miPR200]
俺は見た(読む)だけじゃ絶対身につかなかったな。
実際に動かして見てやっと理解できる。

785 名前:名前は開発中のものです。 mailto:sage [2012/05/17(木) 21:17:20.29 ID:MVax3Amg]
俺はサンプルプログラムを1個改造して、
次のサンプルプログラムを1個改造して、
気に入ったのがあったら沢山改造して、というのを繰り返して身に着けたな

786 名前:名前は開発中のものです。 mailto:age [2012/05/18(金) 00:14:29.29 ID:4zRGqSRr]
rpg.nengu.jp/game/dl/

このサイトのソース読みながら覚えたいのですが
RPG.vcprojをドラッグアンドドロップして
vc++2008に変換しようとすると
「ゲームファイルの初期化に失敗しました」と何度試しても出ます。
VC++2010は低スペなので使えないのですがどうすれば変換できるのでしょうか

もしダメならこれ以外でVC++2008で公開されているrpgのサンプルがあれば教えてください

お願いします


787 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 00:56:44.66 ID:Kw1eEMY1]
staticで保持して置いた配列を使い終わったら開放したいんだけどどうしたらいいでしょうか?



788 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 00:58:13.40 ID:gx1xQNnD]
staticの固定長配列はプログラムが終了すると自動的に解放されます
それ以外に開放手段はありません

789 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 00:59:03.38 ID:Kw1eEMY1]
関数func1,func2でそれぞれstatic変数を宣言した時、中身は共通になりますか?


790 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 00:59:42.96 ID:mamO/m7+]
C++なら終了するまでスコープから外れないので解放されない。

解放する必要があるなら、
配列へのポインタで変数を確保してnewでヒープを確保、
必要になったらdeleteすればok

791 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 00:59:50.88 ID:Kw1eEMY1]
>>788
ありがとうございます

792 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 01:00:56.05 ID:mamO/m7+]
>>789
関数内で宣言されるstatic変数はスコープは関数の内部のみ。
従って別物。

793 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 01:04:36.26 ID:Kw1eEMY1]
>>790
なんかよくわからないので具体的にコード書いてくれると嬉しいです。
・配列arrの引数m分だけ要素数を持つint型配列を引数&pに作成する関数
とかだとわかりやすくて自分が喜びます。
図々しくてすみません。

794 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 01:05:51.71 ID:Kw1eEMY1]
やはり某製作支援サイトのようにメインループの前に変数宣言した方が良いのかな・・・

795 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 01:20:06.21 ID:mamO/m7+]
>>793
//えーと、

// 適当な配列
int[] arr = {0,1,2,3,4,5,6,7,8,9,}

void dynamic_array(int*& p, int length)
{
  //lengthnこのintを確保
  p = new int[length];

  // arrからコピー
  for(int i = 0; i < length; ++i)
  {
    p[i] = arr[i];
  }
}

// pを解放するときは、
// delete[] p;

796 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 02:44:50.20 ID:g6CQrJUG]
>>793
>>795 のSTL版
#include <vector>
void dynamic_array(int*& p, int length)
{
 auto v = std::vector<int>(length);
 p = v.data();
}

797 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 12:33:49.02 ID:AXglkRe5]
なんでここC++スレになってるんだ



798 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 12:39:42.25 ID:aBuN5zeL]
DXライブラリで詰まる人はcなのかライブラリなのか区別が付かないからではないでしょうか

799 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 12:52:20.63 ID:tTxAGc55]
俺みたいにDXライブラリに頼らなくてはゲームも作れないレベルの人間だと
C++についてもよくわかってなかったりするからつい、だろうね。

他のスレだと”DXライブラリに頼らなくていい人”ばかりに思えて気後れする。


800 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 14:58:56.44 ID:AqX5CuAi]
>>796
dynamic_array終了時に開放されね?
>>787が単にヒープに置きたいということでなければ>>795の方法しかないと思う

もしくはvector自体new/deleteするか

801 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 21:35:11.00 ID:0qQFV47b]
今時ダウンロードしてまでゲームやる人いるのかね

802 名前:名前は開発中のものです。 mailto:sage [2012/05/18(金) 22:52:22.12 ID:Avt8/Znc]
>>800
>vector自体new/delete
スマポをnewするとか意味ないだろ。
>>796はドヤ顔でSTL勧める本人がSTLを理解してなかった良い例。

803 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 00:27:03.52 ID:VD4oJ3BE]
STLのmapに(キー重複しない)insertを繰り返していくと、
メモリはわずかながら消費されていくと思うんだけど、
それってnewが繰り返されてるってことだよね。

アクション性の高いゲームでメインループ内でnewとか使っていいのかな。
普段は軽い処理でも、メモリ確保と開放が絡むと、どこかでカクついたりしないか心配。
気にせずやってるけどカクつきなんて発生したことないよ、ということなら安心なんだけど。

804 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 00:28:28.08 ID:r1qEY4jZ]
冷静に考えて、今時って携帯ゲームやネトゲが主体だろ?
DXライブラリでパソコンで動くゲームって当たり前だが
そういうのが逆に新鮮じゃね?


805 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 00:49:21.53 ID:TBtSNI4j]
>>803
もしも、メインループで毎フレームほど行なうっていうのなら、
そういう処理を行なう事自体を、見直す必要があると思うけど。

806 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 01:02:15.71 ID:a+urZXjQ]
GCが起動するわけでもないならnew/deleteにあまり神経質になる必要はないと思うけど・・

807 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 01:10:30.26 ID:ZOsD1vO4]
>>803
new deleteが重いというけど、なにをnew deleteするかでまた違うのよ。
new int とか new char[32] みたいに1回で終われば気にするほどでもない。

new Hoge で Hogeのコンストラクタの中でまたたくさん new() よばれているような
階層深く大きいクラスのnew, deleteが重いから、
その場合だけオブジェクトプールを検討すればいい。



808 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 01:27:35.13 ID:QmsbQiPL]
一応ラウンド(ステージ)管理クラス生成時に
設定されたキャラクターの数だけ配列を宣言する形なんだけど
配列用ポインタを持たせたら、参照先が使い捨てになる。
で、動的に配列の要素数を操作すればポインタで使い捨てじゃなくてもいいんじゃないかと


809 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 02:35:24.88 ID:ZOsD1vO4]
それは最大数がステージの開始時にわかってて、
最大数分のメモリを確保しっぱなしにするって話だろ?

それができる(普通な)規模のステージならそれがいい。
ステージだとかシーンと呼ばれる単位で一括確保・解放できればそれがベスト。

810 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 09:17:44.64 ID:9Hyd3HTN]
最近のPCの場合、個人制作のゲームなら
全部メモリ確保してもいいともうけどな

811 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 10:43:57.82 ID:lxOdfsYj]
new/delete遅い遅いっつーけどwinの実装はくそ速いぞ。
一定サイズ以下ならただのプールからの切り出しだし。


812 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 10:46:39.32 ID:VD4oJ3BE]
>>807
オブジェクトはゲーム起動時に最大数をメモリ確保してある前提だったりする。

そこで、mapにinsertするpairが仮にintとポインタだったとして、
insertのときにそのintとポインタ分の小さいnewが起動するし、
eraseのときにはそれがdeleteされると思う。

で、その回数が膨大になったとき、GCみたいな時間くう処理が起動して
カクついたら困るなーと。特にアクション性の高いゲームだと。
たとえばメモリを新たに大量確保する処理が起動して時間くうとか。
そんなものは発生しない、なら、安心してコンテナ使ってゲーム作れるんだけど。

アクション性の高いゲームでも普通にコンテナ使うのが定番だよ、ということなら安心なんだけど、
そのあたりよくわからなくて。

813 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 11:09:09.97 ID:ArUyj87Z]
>>809
具体的なコードがわからないんだよ

class RoundAdmin{
Character character[];
RoundAdmin(int i){
for(int t=0;t<i;t++){
character[i] = new Character;
}
}
}

814 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 11:09:37.11 ID:ArUyj87Z]
iPhoneスペース無視されてワロタ

815 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 11:24:53.82 ID:8/80f/4q]
>>812
メモリを確保する時間よりも、メモリが確保できるかどうかが問題だな
コンテナが定番かどうかはこういうのが詳しい
ttp://d.hatena.ne.jp/i-saint/20101012/1286822888
個人・小規模でPCゲー製作ならSTLで充分かと

816 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 11:38:54.28 ID:ArUyj87Z]
>>813続き
イメージとしてはこれができたら楽なんだ
winmain(~~~~~){
 int state;
 while(error()){
  switch(state){
   case 0:
   RoundAdmin RAdmin=new RoundAdmin();
   break;

   case 1:
   state=RAdmin.Func();
   break;

   case 99:
   delete RAdmin;
   break;
  }
 }
}


817 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 11:52:46.30 ID:aIMhivPJ]
try,catch,throwじゃ駄目なのか?



818 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 12:00:09.24 ID:gXEjt6C9]
goto使えば良いんでね?

819 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 12:22:43.39 ID:VD4oJ3BE]
>>815
ありがとう。参考になる
自分はまさに個人・小規模でPCゲー製作だから、
out of memoryの心配だけはないんだよな

820 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 12:24:45.52 ID:HSIQMcFD]
オーバーライドして作ったクラスのオブジェクトをコンテナに突っ込んでイテレータで回しながら共通関数を実行するんだろ

821 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 12:49:35.26 ID:JpqeYW60]
>>820
ポリモーフィズムと言え。ややこしい

822 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 12:58:30.97 ID:zRojJiyg]
>>816
OGRE3DのAdvancedOgreFrameworkがシーンの使い分けを解りやすく実装してるよ
仕組みだけなので2Dでも十分使える、ただ3DゲームならOGRE3D使ったほうがDXライブラリより楽だけど

823 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 13:12:00.32 ID:dlfQry7w]
メモリ確保かー。
そういえばこの間、少し大きめの構造体の配列を用意しようとしたんだけど

 STRUCT_HOGE hoge[1024];

だと実行時エラーで、

 STRUCT_HOGE *hoge = new STRUCT_HOGE[1024];

だと問題なく動くってことがあった。
頭では理解してたけど、実際遭遇したのは初めてだった。

824 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 13:46:07.27 ID:PlH7X2T2]
>>823
初心者が良くやるミスだね

825 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 14:26:49.52 ID:1CGbweqQ]
ちなみにそれ原因は何ですか?

826 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 14:51:44.70 ID:VD4oJ3BE]
stackとheapでぐぐれ

827 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 14:53:36.27 ID:ZHekMysl]
ただのスタックオーバーフローってこと?



828 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 14:57:27.20 ID:VD4oJ3BE]
yes

829 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 15:14:52.35 ID:GOROOjbN]
>>823
大文字で書かれると分かりにくいのは俺が初心者だからかな
普通小文字じゃない?

830 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 15:18:21.89 ID:ArUyj87Z]
>>817-818
それしか方法ないのかなー
最悪、最大数宣言して存在フラグなんだけど

831 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 16:51:36.07 ID:dlfQry7w]
>>824
それなりにプログラムやってるけど、遭遇したの初めてでなー。

>>829
こういう例示だと、結構使い分けることも多い気がする

832 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 17:03:35.58 ID:ZOsD1vO4]
>>812
>mapにinsertするpairが仮にintとポインタだったとして、
>insertのときにそのintとポインタ分の小さいnewが起動するし、
>eraseのときにはそれがdeleteされると思う。
ツリーマップは木構造のノードに必要なデータ、キー、バリューを
一つの構造体として1回のnew(), delete()で済ませる。
だからstd::listの追加・削除・挿入は比較的速いアルゴリズムと言われてるが、
これとnew(), delete()の回数自体は変わらない。(木構造を辿る負荷は別計算)

でも毎フレームstd::mapに大量の追加・削除されるのって
そもそも連装配列に向いてないペアなんじゃないか?(キーがHPとか?)

例えば >>816 なら関数ポインタ or クラス継承して
ストラテジーパターンのポインタを使うべきだ。

833 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 17:09:43.18 ID:ZOsD1vO4]
>>825
VC++の初期値では、スタックサイズの最大値、ヒープサイズの最大値に
低めの値10MBが設定してあるから、これを超えると例外が発生して終了。


834 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 17:12:49.37 ID:VD4oJ3BE]
>>832
>一つの構造体として1回のnew(), delete()で済ませる。
>これとnew(), delete()の回数自体は変わらない。(木構造を辿る負荷は別計算)
同意。

小さい負荷が積もり積もって、トータルでみれば大きな負荷となること、
その負荷軽減のためのチューニングや根本的な設計の方針については、
いろいろ情報も得やすいし、なんとかなる気がしている。

他言語のGCのような突発的大負荷の心配をしてたけど、
このケースでは、その心配はあまりなさそうという気がしてきた。

835 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 17:46:09.07 ID:pWSSP6VZ]
DXライブラリ 雑談スレッド その12
toro.2ch.net/test/read.cgi/gamedev/1330000532/

836 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 18:29:25.01 ID:FNz7dsVi]
そういえば、ゲーム製作に関わるC, C++全般のスレって無いのか。

837 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 18:50:09.12 ID:aIMhivPJ]
>>833
これでエラー回避出来なくなった人って少なくないんだろうな(合掌)
>>834
GCが動き出すぐらいにメモリーをいじってれば、
いずれはフラグメンテーションの餌食になるだろうな。
そうなったら、メモリー管理の方法を根本から見直した方が良いな。




838 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 18:56:35.62 ID:aIMhivPJ]
>>836
立てるか?それとも俺が立てる?

839 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 19:20:40.08 ID:+n/uAHmA]
>>833
10MBじゃなくて1MB

840 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 19:59:32.27 ID:oQPWMkDd]
>>838
あったほうがいいかも。
軽く雑談できるくらいのスレは確かに欲しい。
ム板はstlやら何やらで分かれまくっててメンドイ。

841 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 21:40:01.48 ID:aIMhivPJ]
こんな所か?っつーか立てられ無かった。

題名:C/C++総合スレッド Part1
ゲーム製作におけるC/C++全般に関するスレです。

元スレ
DXライブラリ 総合スレッド その12
toro.2ch.net/test/read.cgi/gamedev/1330000532/


842 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 21:51:45.49 ID:VD4oJ3BE]
C/C++でDXライブラリ以外のメジャーどころのライブラリも
知ってる人がいたらテンプレに入れてみては?
俺は不勉強ゆえDXライブラリしか知らないけど…

843 名前:名前は開発中のものです。 mailto:sage [2012/05/19(土) 22:19:17.33 ID:oQPWMkDd]
考え出したら色々あるな。
boostとかsdlとかwtlとか

844 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 02:25:40.47 ID:b4J8kKZD]
switch分岐でnew-deleteできないのかぁ!!
誰かメインループ中でラウンド管理クラス(キャラクター数、オブジェクト数などのゲーム本体を管理するクラス)
を作りたいんだけど!

全然わからん。綺麗にできない。
ラウンド管理クラスを、例えばゲームのロード画面時にパッとnewして
キャラクターをその分だけパッとメンバの配列を動的に宣言して
リザルト画面に戻ったらパッとdeleteしたい



845 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 02:28:54.36 ID:rvG7rk61]
キリがないからやめろ

846 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 02:43:46.36 ID:m1rxCUFY]
その前に、自分のできる方法でゲーム完成させて経験値増やしたほうがよいように見える

847 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 03:09:05.33 ID:b4J8kKZD]
>>846
キャラクターのクラスをラウンドクラスで配列で持って管理するっていう方法を想定して作ったんだよ

ラウンドクラスをコンストラクタの引数で指定されたファイルでマップやキャラクターや武器を初期化して
このラウンドクラスはその名の通りラウンド中は保持してラウンドが切り替われば新しく作る。
というのがしたいんだ。
だから
switch(hoge){
case 0:
 hoge=func();
case 1:
 Round round=new Round();
 hoge=2;
 break;
case 2:
 hoge=round.main();
 break;
case 3:
 delete round;
 hoge=0;
 break;
}
これがしたい
case0がメニューで1で初期化(つまりロード画面?)2がメインゲーム、3がリザルト画面
みたいな



848 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 03:12:36.92 ID:b4J8kKZD]
でもswitchスコープ抜けると開放されちゃうんよ( ;´Д`)
staticにすれば、ひょっとしたら言語特性でできるかもしれないし
でもそうするとdeleteしても消えないかもしれないし


849 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 03:26:03.65 ID:m1rxCUFY]
そういう概念をどこかで齧ったのなら、
そのソースごと真似すればいいんじゃないかな

スコープはC/C++では割と基礎的なところなんで、そこの理解がまだ足りないうちに
そこまで高度・大規模なことを「そらで」やろうとしても挫折してしまうと思う
手本があるなら手本を理解するまでやったほうがいい、その意味で、手本の真似が足りない

850 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 04:19:36.26 ID:rvG7rk61]
>例えば >>816 なら関数ポインタ or クラス継承して
>ストラテジーパターンのポインタを使うべきだ。

switchをやめろ。

851 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 04:32:17.32 ID:ETYUDOJj]
LILO and switch

852 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 05:20:07.65 ID:J67XAZ6b]
なんでローカルにnew

853 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 06:11:28.75 ID:rvG7rk61]
まず、メモリリークチェックしたほうがいいな。
>>847 のプログラミングからは駄々漏れ臭いがぷんぷんする。
_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );

ゴリ押しおまじないプログラミングは危険だぜ。

854 名前:名前は開発中のものです。 [2012/05/20(日) 08:54:21.16 ID:jxpb7tAX]
>>847
無理すんな。普通にやれw

855 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:17:03.32 ID:GdVgJDsL]
綺麗に書く素人が「綺麗に」とか考えて作っても読みやすくはならんと思うぞ

856 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:24:37.57 ID:rvG7rk61]
DXライブラリのC++ラッパー作ってます。よろしく。
mint.ninja-web.net/dpp/index.html

857 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:33:19.40 ID:QwDamEGA]
>>847
メンバ変数にでも保持しておかないと、
スコープ抜けたらローカル変数は保持できないので、結果的にメモリリークする

まあ、>>849がFAだと思うが



858 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:47:55.18 ID:b4J8kKZD]
>>849
確かにswitchはオススメしないって言われた

お手本のコードは無いです。
メインループのこの部分(タイトル画面やメインゲームやオプション画面の変異)って
どのようにした方がいいですか?
他の方法がわからない


今思いついたのは

NowState=&Start();
while(~~~){
NowState=NowState();//次に実行するべき関数のアドレスを返す
}

859 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:49:23.86 ID:b4J8kKZD]
タスクシステム?というのは聞いたけど昔のものだとかする必要が無いとか言われた

860 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 09:50:46.90 ID:GdVgJDsL]
グローバルにenumでモード切り替え用の変数作ってswitchが一番簡単

861 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 10:17:37.19 ID:K5FhX9FA]
シーン管理でggr

862 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 10:21:43.19 ID:b4J8kKZD]
c#やjavaでいいんじゃないかってくらい全部クラス化してる。
クラスは自分が管理クラス(今回の場合はラウンドクラス)から渡されたデータを使って処理を行う。


例えば一連の流れをいうと
キャラクターが攻撃を行ったら判定クラスのメソッドが呼ばれ
判定クラスのメンバ変数ポインタからキャラクターの情報を貰って
判定結果がtrueならダメージ処理クラスに攻撃方法と対象と攻撃者が渡されるメソッドが呼ばれ
ダメージ処理クラスが持っているキャラクターの情報を貰って
HPが0ならキャラクターに死亡フラグを立て、UIクラスのメソッドに攻撃者と対象を渡す。

つまりキャラクタークラス→判定クラス→ダメージ処理クラス→UIクラス
とバトンリレーになってる。
この時、キャラクタークラスや判定クラスやダメージ処理クラスは、キャラクターの情報を持ってないと仕事にならないのでラウンド管理クラスが保持している。
イメージとしてはクラゲと、クラゲの触手

class RoundAdmin{
 Character character[];
 Judge judge;
 Damage damage;
public:
 void SetCharaNum(int);
 void SetJudgeClassChara(Character* hoge){damage.SetChara(hoge);};
 void SetDamageClassChara(Character*);
}


以上のことを踏まえて誰か中央部の設計お願いします。もう設計の最初からやり直しするのは嫌ですヽ(;▽;)ノ

863 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 10:39:42.64 ID:b4J8kKZD]
>>861
d.hatena.ne.jp/selvaggio/touch/20060821/1156148509
関数ポインタ?をスタックしまくるんですか
でもタイトルシーン→ゲームシーン→リザルトシーン
という流れがあった場合リザルトシーンを予めタイトルシーン時にリザルトをpushしなきゃならないってことですよね

864 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 10:48:07.65 ID:rvG7rk61]
昨日はアクションでstd::mapが速い遅いの話だったが、今日はRPGの戦闘か?

C++だと相互参照するのに嫌な制限あるから難しいよね。
>>856のサンプルに入ってるソースではデータと振る舞いを分けちゃってますが、
クラスを名前だけ前方宣言してダブルディスパッチするほうが一般的なのかなぁ。

865 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 11:49:53.71 ID:rvG7rk61]
>>862
こうか?

class Charactor
{
__int HP;
__bool isDead;
__void Attack(Charactor* target, How* how)
__{
____Judge judge;
____bool is = judge.IsHit(target);
____if( is )
____{
______Damage damage;
______damage.Set(this, target, how);
______if( HP == 0 )
______{
________isDead = true;
________UI ui;
________ui.Set(this, how);
______}
____}
__}
};

866 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 11:56:57.34 ID:rvG7rk61]
だめだ、エスパーよろ。

867 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 14:50:25.73 ID:b4J8kKZD]
>>865
それぞれの返り値がないから
例えばjudge.ishit()っていうメソッドの中でdamageを定義してメソッドを呼んでる
こう・・・

class Charactor
{
 int HP;
 int x,y;
 double Angle;
 bool isDead;
 RoundAdmin* Admin;
 void Attack(int Kind){
  Admin->judge.IsHit(this,x,y,Angle,Kind);
 }
};

class Judge{
 RoundAdmin* Admin;
 void Judge(RoundAdmon tmpAdmin){
  Admin=tmpAdmin;
 }
 void IsHit(Attacker,x,y,Angle,Kind){
  for(int i=0;i<Admin->CharaNum;i++){
   if(~~~){
    Admin->damage.func(Attacker,i,Kind);
   }
  }
 }
}



868 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 14:50:56.96 ID:b4J8kKZD]
説明が下手でスパゲティで死にたい

869 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 14:54:58.64 ID:d1pNr8pV]
enum
{
  TITLE,
  MAIN,
  ENDING,
};

int state = TITLE;

int main(void)
{
  while()
  {
    func[state]();
  }
}

870 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 15:33:37.24 ID:GdVgJDsL]
>>863
ゲームオーバー処理の時にゲームシーンをpopして、そのままゲームオーバーをpushすればいいんじゃないの?

871 名前:名前は開発中のものです。 [2012/05/20(日) 16:09:24.24 ID:b4J8kKZD]
>>870
逆だと思ってました(popしたものが実行されると思ってた)
そういうことですか

>>869
func[MAIN]関数内で保持したい変数ってどうすればいいんですか?
func[MAIN]以外が呼び出されたら消えて欲しいです。

あと今更ですが質問厨でウザいですし基本設計の質問はDxlibスレでスレチだった・・・

872 名前:名前は開発中のものです。 mailto:age [2012/05/20(日) 18:03:42.86 ID:B+9uILOG]
Charactor*のようにポインターのマークが後ろにつくのはどういう意味だっけ?

873 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 18:16:08.20 ID:eBiE/F9z]
Character* x; // Characterのポインタ型を表す型名
Character*30 // Characterという変数と30の乗算(演算子オーバーロードがされていない場合)
Character*=10 // Characterという変数に30を乗算し代入(演算子オーバーロードがされていない場合)
/*Character*/ // コメントの終端

どれでもお好きな物をどうぞ

C++のスレがないってのは
ここで質問して良いって言う理由にはならないからな?

874 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 18:30:54.34 ID:rvG7rk61]
中高生の黒歴史

875 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 18:44:31.78 ID:iNm25OoA]
いい加減、スレ立てるか。>>841でいい?

876 名前:名前は開発中のものです。 mailto:age [2012/05/20(日) 18:44:39.45 ID:B+9uILOG]
ありがd
Character* x; // Characterのポインタ型を表す型名 ですよね

しかし↓このように書くのはどうなんだろう?
Charactor *target

877 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 18:56:48.04 ID:m1rxCUFY]
>>876
個人でゲーム作ってるなら、どっちか好きなほうを選べばいい
ttp://www.henshi.net/k/hiki.cgi?GoogleCppStyleGuide#l99
ttp://ockeysprogramming.blog42.fc2.com/blog-entry-607.html



878 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 19:16:26.37 ID:/AOQLV8Q]
>>875
スレタイに「ゲーム製作」入れて、

C/C++ゲーム製作総合スレッド Part1
でいいんじゃない?

879 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 19:19:04.91 ID:B+9uILOG]
これは参考になりますね。どうもありがとうございます〜
C++の本には載ってない文法なので疑問でしたが
人それぞれの考え方なんですね

880 名前:名前は開発中のものです。 [2012/05/20(日) 21:23:14.14 ID:iNm25OoA]
立てた

C/C++ゲーム製作総合スレッド Part1
toro.2ch.net/test/read.cgi/gamedev/1337516528/l50

881 名前:名前は開発中のものです。 mailto:sage [2012/05/20(日) 21:29:41.56 ID:m1rxCUFY]
>>880

882 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 01:56:01.80 ID:ZnI/WkSf]
>>880
おつ

883 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 16:15:45.24 ID:L5xx/kw7]
>>879
手元の入門書(2種類)だと載ってるけどな

884 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 18:26:14.29 ID:ffV6Y48y]
キャラクターを一瞬真っ白にして描画する方法ってわかる? 例えばダメージを受けたときなんかに使うアレ

885 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 18:30:28.40 ID:I9dpNaEz]
>>884
明るさを0にして色反転ってできなかったっけ?

886 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 18:51:02.98 ID:ffV6Y48y]
>>885
フィルタか、サンキュー

887 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 18:58:22.65 ID:ffV6Y48y]
違った、ブレンドモードか。危ない危ない…



888 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 22:19:42.57 ID:47wV3n9Q]
SetDrawBright()とSetDrawBlendMode()使って、
一時的に他の色っぽく表示っていうのがこのスレか前のスレかにあったね
参考にさせてもらったわ

889 名前:名前は開発中のものです。 mailto:sage [2012/05/21(月) 23:13:34.24 ID:yadbYRsO]
別の画像を表示

890 名前:名前は開発中のものです。 mailto:sage [2012/05/22(火) 00:28:56.82 ID:fGZyqonm]
画像を指定した角度座標でマスクできる関数教えてください!
四角く作ったミニマップがダサいです!

891 名前:名前は開発中のものです。 mailto:sage [2012/05/22(火) 15:12:29.46 ID:mXIdZtP1]
上からマスク画像を表示

892 名前:名前は開発中のものです。 mailto:sage [2012/05/22(火) 20:41:55.22 ID:KEARhB46]
>>890
すまんが、その質問からだとどういうふうに描きたいのか分からない。
「○○っていうゲームの△△みたいに」っていう例えでも良いんで
もう少し詳しくやりたいことを説明してはくれまいか。

893 名前:名前は開発中のものです。 mailto:sage [2012/05/22(火) 23:11:59.34 ID:fGZyqonm]
AVAのミニマップ表示と
EXVSの画面右上のミニマップの両方お願いします。

894 名前:名前は開発中のものです。 mailto:sage [2012/05/22(火) 23:33:05.27 ID:GwTouD/j]
EXVSってただの丸だろ。マスクする必要なしw

895 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 10:34:59.14 ID:b4o10B2o]
構造体のポインタを引数にする関数がうまく使えない。
クラスのメンバ構造体のポインタを渡そうとしても「CClass::TStructからTStructへ変換できません」と言われる。
わけわからん。お助けくだせえ

896 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 10:36:23.94 ID:b4o10B2o]
おっと、それ用のスレがあったんか。スレ汚しすまん

897 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 12:41:41.58 ID:0bw1KTX7]
>>889
以前他のライブラリで試そうとしたんだけどどうやっても白いくり抜いたような画像は得られませんでした。
やっぱり出来ないんですよね?
たとえば赤い色の敵がいるとすると青と緑の要素がないからキレイに白くならなかったような

そのときの結論は、手作業で白い敵の絵も作ってダメージのとき
そちらを表示するしかないということでした



898 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 13:39:40.92 ID:fw4B82cQ]
シェーダを使うw

899 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 13:59:04.47 ID:EJDtoHbk]
>>897
DXライブラリのメモリイメージAPIから作り出すことができる。

ただしDirect3Dは、同じテクスチャを同じ描画モードで
連続して描画すると効率が良いので、

一枚の敵画像の中に白く塗り潰した敵の絵も一緒に入れてしまったほうが
描画するときの効率はいい。

900 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 14:07:34.09 ID:EJDtoHbk]
Direct3D9の固定パイプラインがもっている、
あるいはHLSL書いてピクセルシェーダ使うのも描画モードが切り替わるので、
Direct3Dの一括描画を止めてしまう。

手作業で白い敵の絵も作って、アルファブレンドで二枚塗りして
フェードさせるのが最も望ましいんじゃないかな。


901 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 17:25:41.49 ID:0bw1KTX7]
>>898
わかりません・・・Directx7レベルPGなのでw

>>899 >>900
よくわかりました。ありがとうございます。
おかげでこないだ詰まってた問題も原因がわかりました。
スプライト処理クラスを作って一枚表示ごとに描画モードを
SetRenderStateで変えていたのですが、去年買ったi5パソコンで数百程度の
小さい画像表示で処理落ちし始めてビビリました。
このスレで「描画モードを変えると処理が重くならないか?」という話題があったのを
うっすら記憶していて、SetRenderStateをまとめてやるようにしたら改善されました。
いま「SetRenderState 重い」で検索したらたしかに重たいと警告を発してる開発者さんがいました。

902 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 21:39:28.35 ID:oEFLuczz]
スプライトの色を一時的に白っぽくするとかはここを参考にした覚えがある
ttp://dixq.net/forum/viewtopic.php?t=9714&p=78319

903 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 21:52:32.24 ID:fw4B82cQ]
画像ロードする関数を少しラップしてソフトイメージ経由で白マスク画像を作成、連結したもの作らせると結構良さそうかな

904 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 22:29:47.19 ID:hXbSVptG]
ファミコンだったらパレットチェンジでデータ量少なくかつ高速に処理できるのに最新PCって駄目だな

905 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 22:42:46.64 ID:kOpBPT9L]
全くだw
いちいち色違いのキャラを用意しないといけないとか、面倒だわ。

俺もこの白点滅のやり方について公式とかで質問した人間だから、同類。

906 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 22:49:16.12 ID:EJDtoHbk]
>>903
いくつかポイントがあって、合成する元の画像がそれを意識して作られる必要あり。

テクスチャは2の累乗であるwidth, height の正方形である。
だから長方形とかだと裏で大きめの正方形を確保してしまうから、
合成後の画像が正方形のスペースを有意義に使うこと。

カラーパレットが空いている必要がある。
つまり256色を白以外で使いつくされてるとだめ。

907 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 22:50:09.77 ID:pwt5T56h]
今だってピクセルシェーダー使えば同じこと出来るだろ



908 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 23:13:59.87 ID:hXbSVptG]
そんな高度なテクニックは使いこなせねえよ

909 名前:名前は開発中のものです。 mailto:sage [2012/05/23(水) 23:18:06.90 ID:0ldDGJ6S]
白抜きしたいキャラクタをまずブレンドモードInvで反転で描くだろ?
その上にもっぺん同じキャラクタをこんどはAddで加算描画するだろ?
そうすると抜き色以外255で埋まるって寸法よ

910 名前:名前は開発中のものです。 mailto:sage [2012/05/24(木) 00:14:49.78 ID:OTDx3X8F]
別に白画像作ればいいじゃん

911 名前:名前は開発中のものです。 mailto:sage [2012/05/24(木) 00:37:40.90 ID:YnP/Ncq+]
アルファブレンドのON,OFFの切り替えが頻繁に起きるぐらいなら
全部アルファブレンドONで描画したほうがいいんだな。
マップタイルだけOFFとか。

912 名前:名前は開発中のものです。 mailto:sage [2012/05/25(金) 00:25:55.82 ID:rg8OJbTJ]
>>909
頭やわらかいねきみ

913 名前:名前は開発中のものです。 mailto:sage [2012/05/25(金) 20:12:45.46 ID:9VSOgWxy]
Allegroには、グラフィックの背景色以外の部分を指定の色一色にして描画する関数があって、
ビットマップでフォントを用意してそれを指定の色で描いたり、
そのシューティングゲームでダメージを受けて一瞬#fffだか#f00だかのシルエットになるときとか使い道があった

914 名前:名前は開発中のものです。 mailto:sage [2012/05/27(日) 08:25:16.10 ID:/36TiFsh]
でも白画像でいいよね

915 名前:名前は開発中のものです。 mailto:sage [2012/05/27(日) 11:50:59.78 ID:6LUkVEJp]
作るの面倒くさい。少なくとも自動生成じゃないと。

916 名前:名前は開発中のものです。 mailto:sage [2012/05/27(日) 16:01:26.83 ID:jTp1UMkC]
俺はゲーム内で自動派だけど、
ゲーム外でツールで生成する派とかもいるかもしれんな
要はゲームで実現できればいいし

917 名前:名前は開発中のものです。 [2012/05/28(月) 03:51:16.27 ID:xvuBoj/+]
ゲームではかなりよくある表現だから関数があってもいいかもな



918 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 05:01:17.17 ID:fvu7wQ0B]
関数作ったよー><
// r, g, bの色を透過色とみなした白マスクを下に繋げて作成。alphacheckを1にするアルファ値0も透過する。
// AllNum以降はLoadDivGraph系と同じ(ただし複製後の画像を想定して指定すべし)。
int LoadDivGraphWhiteMaskDup(const wchar *infile, int r, int g, int b, int alphacheck,
int AllNum, int XNum, int YNum, int SizeX, int SizeY, int *HandleBuf) {
int inhandle = LoadSoftImage(infile);
int w, h;
GetSoftImageSize(inhandle, &w, &h);
int outhandle = MakeARGB8ColorSoftImage(w, h*2);
BltSoftImage(0, 0, w, h, inhandle, 0, 0, outhandle);

for (int y = 0; y < h; y++) {
for (int x = 0; x < w; x++) {
int tr, tg, tb, ta;
GetPixelSoftImage(inhandle, x, y, &tr, &tg, &tb, &ta);
if ((tr == r && tg == g && tb == b) || (alphacheck && ta == 0))
DrawPixelSoftImage(outhandle, x, y+h, 0, 0, 0, 0);
else
DrawPixelSoftImage(outhandle, x, y+h, 255, 255, 255, 255);
}
}

int outgraph = CreateDivGraphFromSoftImage(outhandle, AllNum, XNum, YNum, SizeX, SizeY, HandleBuf);
DeleteSoftImage(inhandle);
DeleteSoftImage(outhandle);
return outgraph;
}

919 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 06:51:35.69 ID:mvM7MJU+]
マリオみたいな感じのゲームを作ろうと思ったけどジャンプができない。

色々サイトとか回ってみたけど中々分からない。
誰か教えてくれると幸いです。

920 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 08:13:51.39 ID:fvu7wQ0B]
重力と地面に立つことを作ればあとは飛ぶだけ

921 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 08:21:05.78 ID:IVkwT0S2]
>>919
v=gt
速度の上限を定める
落下しすぎたら戻す

ジャンプで難しいのは着地だけ

どうしてもダメなら最初は加速させずに等速ジャンプでいいと思うよ
押してる間だけ上昇、離したら下降とかね


922 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 08:40:00.71 ID:c9K0Nu9s]
アクションゲームの最初の壁はジャンプ
次の壁は坂道

923 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 08:52:55.29 ID:6YRysOIW]
最初の壁は床だろう……。

924 名前:名前は開発中のものです。 [2012/05/28(月) 10:20:42.61 ID:rvNFgryv]
どこから作りかで変るだろ
マップチップ並べた床作らなくても地面にする座標決めればキャラの動きは作れる

>>919
てかDXライブラリの公式ページにサンプルあるじゃん
homepage2.nifty.com/natupaji/DxLib/dxprogram.html
2.ジャンプ処理


925 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 10:21:04.96 ID:90lU+KxT]
床てY軸の位置こていしとくだけじゃないか

926 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 10:32:44.25 ID:6YRysOIW]
それを言うなら、ジャンプだって下方向へ加速させるだけだ。
さらに言うなら、昔のゲームみたいに(等加速度でなくて)等速直線運動だとしてもジャンプはジャンプだ。

927 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 11:25:52.97 ID:uXHACx8T]
yが毎フレーム5マイナスされる時
厚さ1の床をどうやって判定するんだ



928 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 11:28:20.73 ID:9WGXBrjP]
5以内に地面があれば5-距離だけ移動してジャンプ終了、でよくね?

929 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 11:53:09.06 ID:aojI3MeF]
for(i=0; i<5; i++)
{
  y++;
  if(isAtari())
  {
    y--;
  }
}

930 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 11:59:48.69 ID:b7wzF1nG]
ちょっと横から失礼

>>902
これで真っ白な画像を得られました。ありがとうございます。
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int) {
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen(DX_SCREEN_BACK);
int x = 0;
int Handle = LoadGraph("char.png");
while (ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0) {
SetDrawBright(255, 255, 255);
SetDrawBlendMode(DX_BLENDMODE_INVSRC, 255);
DrawGraph( x, 100, Handle, TRUE );
SetDrawBlendMode(DX_BLENDMODE_ADD, 255);
DrawGraph( x, 100, Handle, TRUE );
SetDrawBlendMode( DX_BLENDMODE_NOBLEND , 0 ) ;
x = x + 1;
}
DxLib_End();
return 0;
}
ブレンドモード切替の負荷の重さにはびっくりしたので
ゲームの最初にこれで白い画像を作って表示することにしました。

931 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 13:04:49.57 ID:b7wzF1nG]
>>918
ちょっとだけ直して動きました。
ttp://www1.axfc.net/uploader/Sc/so/349786
使えそうです。ありがとうございます。

932 名前:名前は開発中のものです。 [2012/05/28(月) 14:53:28.29 ID:WnycGPJc]
DXについて勉強するのにオススメの書籍とかありますか?

横スクロールのアクションゲームを作ってみたいんですが

933 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 15:02:03.10 ID:jUTN7lVO]
14才からはじめるわくわく〜
みたいなやつ

934 名前:名前は開発中のものです。 [2012/05/28(月) 20:02:07.96 ID:GTiho4az]
>>932
俺の結論として本は要らない
Dxライブラリは覚えること余りないから必要なのはサンプルでしょ
ネットで他言語でもなんでも見たらいいと思う

935 名前:名前は開発中のものです。 mailto:sage [2012/05/28(月) 21:06:10.30 ID:51O+Wupn]
公式にあるサンプル全部やって、全部ちょこっとずつ改造してみれば、
次に何を勉強すればいいか道が見えてくるかもね

936 名前:名前は開発中のものです。 mailto:sage [2012/05/29(火) 01:46:18.53 ID:L7O/xZHN]
>>927
そんな半端な場所に床を設置すんな

937 名前:名前は開発中のものです。 mailto:sage [2012/05/29(火) 01:50:59.85 ID:BLevQqxO]
うお、仮とはいえPMXに対応してきたのか
すげーな



938 名前:名前は開発中のものです。 mailto:sage [2012/05/29(火) 02:00:46.52 ID:ajD2ZMcH]
>>933
あれ買うなら東方もどきのサイトの方が1000倍マシ

939 名前:名前は開発中のものです。 mailto:sage [2012/05/29(火) 16:38:49.14 ID:0ZCTZE5+]
>>932
DXってのはDXライブラリのことを指してるのかな?

DXライブラリ自体は画像の描画や音楽の再生、キー操作の取得なんかを簡単にできるものだと思えばいい。
リファレンスを読めばわかるから、書籍など全く必要ない。

問題は各ゲーム(シューティング、横スクロールアクション、落ち物、パズル、etc...)の構造なんだけど、
この辺は当然ながら言語もDXライブラリも全く関係ないから、ひたすらググればいいと思う。

もちろんシューティングに特化した書籍なんかも売ってるとは思うから、
どうしても本がいいならそういうのを買えばいいと思うよ。

940 名前:名前は開発中のものです。 mailto:sage [2012/05/30(水) 23:01:39.68 ID:sRt+VGOO]
【ゲームバグ集】私達の知ってるゲームとは違う【吹いたら負け】
www.youtube.com/watch?v=kN29n-Gnv6A&feature=related

これ見るとゲームのバグのほとんどが地形かキャラ同士の変な判定でめり込むことによって起きてるんだね
横アクションを作るとき注意ですね

941 名前:名前は開発中のものです。 mailto:sage [2012/05/30(水) 23:29:00.29 ID:RKMJ5hGw]
勢い良くぶつかったら吹っ飛んだとか、
しゃがみジャンプで天井ぶつかったら吹っ飛んだとか、
ブロックとブロックの間に挟まって吹っ飛んだとか、

よくある光景ですよね

942 名前:名前は開発中のものです。 mailto:sage [2012/05/30(水) 23:38:12.13 ID:0DxYP3XJ]
敵とブロックに挟まれたと思ったらキャラが消えたとか

943 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 00:16:28.28 ID:X2kmab9H]
それは大統領

944 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 05:19:34.98 ID:LR2h9MNT]
いつのまにか3.08aが出ていたのね

945 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 07:52:32.75 ID:AnVA06dY]
前回からの違いは主に3D関係か

946 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 08:24:03.27 ID:xNmKjSKJ]
SetBlendGraphParamが便利そう

947 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 12:26:15.74 ID:vux5Qb/R]
まだリファレンスに反映してない?



948 名前:名前は開発中のものです。 [2012/05/31(木) 14:24:38.29 ID:LR2h9MNT]
3.08a で x64 のプログラムをビルド出来た
Release だと駄目みたいだけど

949 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 14:59:29.76 ID:AjXSR+Ss]
x64のメリットはなに?
スピードは同じでメモリがいっぱいとれるとかかな?

950 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 15:35:46.17 ID:WauJ0XKH]
X

951 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 18:52:53.60 ID:M5YppKNB]
VirtualAllocでも使わないとメモリーはいっぱい取れないな

952 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 20:19:50.42 ID:qSE9w4FD]
プレイヤーの最低動作環境がメモリ4GBを超える場合だろ。
超広大なシムシティでも作るのか?

953 名前:名前は開発中のものです。 mailto:sage [2012/05/31(木) 23:26:55.30 ID:aJXCPyxU]
x64の環境なら、x64で動かしたいと考えるのは自然かもしれない

954 名前:名前は開発中のものです。 mailto:sage [2012/06/01(金) 00:54:10.39 ID:2QrPWAJY]
周辺機器とかソフトとか全部x64対応してないとダメなんだっけ

955 名前:名前は開発中のものです。 mailto:sage [2012/06/01(金) 12:25:56.05 ID:MdBdhEQE]
>>952
マインクラフトみたいなマップで
1ブロック4byte 256*256*256*4で65M
1Gで16マップ分4Gで64マップ分

使おうと思ったらすぐじゃね?

956 名前:名前は開発中のものです。 mailto:sage [2012/06/01(金) 13:02:28.40 ID:xFvEu29T]
マイクラならプレイヤーの周辺だけマップが読み込めてれば良いんだし、
その64マップ分をメモリに展開しておく理由がないだろう

957 名前:名前は開発中のものです。 mailto:sage [2012/06/01(金) 14:29:24.03 ID:t4LYu1LP]
多くのSLGは遅延ロードで済むようにゲーム側の仕様を工夫しているな。
リアルタイムに全タイルを更新するとしたらCPUもハイスペック、
マルチスレッドで効率を落とさないゲーム仕様に工夫する必要がある。



958 名前:名前は開発中のものです。 mailto:sage [2012/06/03(日) 19:27:01.91 ID:ErglFbvU]
64bitOS使ってるとデバッグ実行の起動時と終了時がx64の方がスムーズ
俺はそれだけの為にx64lib使ってる
んで配布するときはx86libでビルド

959 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 08:00:34.11 ID:5hghPcJi]
DXライブラリはいいけど本体のC++の方で詰んでワロタ

960 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 08:03:10.54 ID:pHV+t2m+]
C++なんて関数の途中で変数宣言できるCとして使ってりゃいいんだよ

961 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 12:59:37.44 ID:s+a7RtxR]
いわゆるbetter Cか。
C99未対応でも、//のコメントアウトやら関数途中での変数宣言が出来るコンパイラは多いけどね・

962 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 17:33:28.60 ID:NAR8NRh/]
DrawStringって変数使えないんだね
使えるのはFormatの方だけか

963 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 21:43:16.29 ID:rfga7AAZ]
えっと思ってソース検索してみたが、変数使えてるお
std::stringの変数に代入して、c_str()メソッドで使ってる

964 名前:名前は開発中のものです。 mailto:sage [2012/06/05(火) 22:32:10.63 ID:rQvv9pU4]
マジかー
でも分かりやすいし俺はFormatだけでいいや…

965 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 06:57:25.54 ID:/OyZ/OLF]
文字を3Dモデルにして表示してくれる関数があれば絵が描けないのをごまかせるのに

966 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 07:51:26.78 ID:Jv6ss4Bc]
要望送ればいいんじゃね?

967 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 10:48:51.49 ID:BJcvBZeM]
Direct3Dにあるやつなら簡単に追加できそうだけどな。



968 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 21:30:58.85 ID:Kz7+CKZO]
そういう外部ツール作って画像にしちゃうほうが加工とかもできていい気がする

969 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 21:34:42.53 ID:Krec27v1]
DXライブラリで攻撃する時の剣のエフェクト作りたいんだけど、
三日月作って表示するだけでいいのかな?外側にいくほど透明度を高くしたい
事前加工とか必要だろうか

970 名前:名前は開発中のものです。 mailto:sage [2012/06/07(木) 21:47:47.85 ID:+N/ekzeb]
DXライブラリ使うならDirectXのSDKは入れなくていいんですか?

971 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 03:14:22.43 ID:9m0hwklY]
>>970
DirectX SDKはいらない。


972 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 07:58:58.18 ID:q3HoT9+Z]
>>969
透明にするのは内側じゃね?

973 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 12:17:16.75 ID:DZv8KWRM]
内側だと東方の穴あき弾みたいになるだろ

974 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 13:04:25.61 ID:c9EZhUJi]
どうでもええがなw 本人の好きにさせれば。

975 名前:972 mailto:sage [2012/06/08(金) 14:04:03.64 ID:q3HoT9+Z]
東方は分からんのだ、申し訳ない。
どういうエフェクトを想定しているかで、三日月の内側と外側のどちらを透明にするか決まるのかもしれない。
gmdev.xrea.jp/st/up/775.jpg

そういえばそろそろ次スレか。

976 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 14:48:43.82 ID:j/2x2bX+]
アルファチャンネル付きの画像を用意するか、諦めて手抜き

977 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 16:39:50.77 ID:SmPCWrti]
俺ならエフェクトを何重かに重ねるかな。



978 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 17:13:50.81 ID:T8O66D4g]
透明度50%の画像を10%ずつ小さくして5枚重ねるとそれっぽいよね
あとはレベル補正でなんとかなるかな?

979 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 17:28:02.08 ID:vKWIOWMy]
フォトショ

980 名前:名前は開発中のものです。 mailto:sage [2012/06/08(金) 21:34:17.48 ID:zMZgxXcw]
>>975
そういう内側なのか
ドーナツ状にする方かと思ってた

981 名前:名前は開発中のものです。 [2012/06/09(土) 02:23:31.12 ID:PDT8+LE/]
DXライブラリって物理エンジンも積んでないんでしょ。
しょっぼー。しょぼしょぼりんwwww


982 名前:名前は開発中のものです。 mailto:sage [2012/06/09(土) 08:23:21.97 ID:vgner5vs]
でっけー釣り針だなおいwwww

983 名前:名前は開発中のものです。 mailto:sage [2012/06/09(土) 12:51:13.15 ID:dFKH+tB5]
物理エンジンを使わないゲームすら作れないので問題ない

984 名前:名前は開発中のものです。 mailto:sage [2012/06/09(土) 12:53:12.28 ID:0k6AwNTO]
むしろDxLib側のBulletは使わず自前ビルドしたもの使ってる

985 名前:名前は開発中のものです。 mailto:sage [2012/06/09(土) 14:41:45.94 ID:x2dTOO+E]
自分はBox2D積んでるなー。C++用じゃないけど日本語資料多くて助かる。

986 名前:名前は開発中のものです。 mailto:sage [2012/06/09(土) 17:08:19.76 ID:6h//v8O2]
マルチメディアとそれ以外(圧縮ファイルとか物理エンジン)は
別ライブラリで分けても良さそうだけどね。

987 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 12:46:20.13 ID:ER7Sq7YO]
マップエディターを作ってたんですけどできたマップが1280*480で
SaveDrawScreenを使って640*480の2枚の画像にしてるのですが
この画像を1枚にあわせて保存するにはどうすればいいでしょうか

毎回ペイント開いて合わせるのもなんか気持ちよくないので



988 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 12:50:20.86 ID:2yVVzMFu]
できたマップが1280*480ならいいじゃん

989 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 13:18:42.73 ID:lZ191AJm]
そのマップエディタが、マップチップ並べる方法のものなら、
二次元配列にそれぞれのマップチップの情報を記録すれば済みそうな物だけど
(1マップチップのサイズが40*40なら、640*480が[16][12]の、1280*480が[32][24]の配列になる)、
画像ファイルで保存する方がやりやすい方法にしてるの?

990 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 13:52:35.29 ID:ER7Sq7YO]
>>989
マップチップを並べる方法です
チームで製作しているのですがお互いまだ慣れておらず絵の担当さんから頂いた画像が細かい座標調整が必要でした
そのためマップエディターで良い感じの位置に調整してスクリーンショットを取る方法にしようと思い至りました

991 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 15:10:48.73 ID:ER7Sq7YO]
探し回っていたら同じような質問を発見して無事解決できました
ありがとうございました
ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=471

992 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 21:09:31.17 ID:2yVVzMFu]
パッドでキー入力を一回だけ判定させる方法ってみんなどうやってる?
1F前のキーをとっておいて判定する方法にしようかと思ってるんだが

993 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 21:18:35.76 ID:SZ2/XFTS]
それでいいと思う。
ついでに押してる長さとかも一緒に数回分の入力履歴をとっておくようにしたら
今は役に立たなくても、今後使えるようになるかもしれない。
(格闘ゲームのコマンド入力みたいに)

994 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 22:08:56.34 ID:/6oGWGHY]
俺はパッドデータ保存・判定クラスを作った。

まず、用途をはっきりさせて、次に、それに合うデータ保存形式を決めた。
あとは、毎フレームで、保存メソッドを呼び出し、データを保存。
判定したい場所で、判定メソッドを呼び出し、保存データを元に判定。

俺の場合はキーリピート的なものが欲しかったので、
ボタンごとに、押しっぱなしになってから何フレ経過しているかをデータで保存するようにした。
保存メソッドでそれを保存。
判定メソッドでは保存したデータを元に、リピート発生の有無などを算出。

流用とか変更がしやすいから楽だったな。

995 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 22:12:04.25 ID:1lLcj/tG]
elのキー入力を参考にしてる
getkeystate?をDxLibのものに変えて
ttp://ponk.jp/cpp/el/

996 名前:名前は開発中のものです。 mailto:sage [2012/06/10(日) 23:59:50.33 ID:lj7hTC+Q]
自分も>994に似た感じだなー。むしろ俺いつの間に書きこんだんだ?くらい。
ところで次スレ立てないとやばい。が、俺は弾かれたので、テンプレだけ貼っとく。誰か頼む。

----
Cを習得した程度のスキルでも、ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

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

【前スレ】
DXライブラリ 総合スレッド その12
toro.2ch.net/test/read.cgi/gamedev/1330000532/

【過去スレ】
01 pc11.2ch.net/test/read.cgi/gamedev/1197468399/
02 pc11.2ch.net/test/read.cgi/gamedev/1224923873/
03 pc11.2ch.net/test/read.cgi/gamedev/1238429676/
04 pc11.2ch.net/test/read.cgi/gamedev/1249822550/
05 pc11.2ch.net/test/read.cgi/gamedev/1259912953/
06 hibari.2ch.net/test/read.cgi/gamedev/1267108154/
07 hibari.2ch.net/test/read.cgi/gamedev/1286180687/
08 hibari.2ch.net/test/read.cgi/gamedev/1301818631/
09 hibari.2ch.net/test/read.cgi/gamedev/1310904069/
10 hibari.2ch.net/test/read.cgi/gamedev/1313655495/
11 toro.2ch.net/test/read.cgi/gamedev/1322844235/

【関連スレ】
C/C++ゲーム製作総合スレッド Part1
toro.2ch.net/test/read.cgi/gamedev/1337516528/

997 名前:名前は開発中のものです。 mailto:sage [2012/06/11(月) 00:13:05.05 ID:vfjk5rjT]
押したキーと押したフレーム数だと
同時押しとか対応できなくない?
AとBを押して2秒、とか



998 名前:名前は開発中のものです。 mailto:sage [2012/06/11(月) 01:25:16.17 ID:t2KXIcta]
そんな特殊な入力判定必要になったことないからわかんない。

999 名前:名前は開発中のものです。 mailto:sage [2012/06/11(月) 01:36:44.56 ID:KU83wIZ2]
ソース書いてみなよ。ここに

1000 名前:名前は開発中のものです。 [2012/06/11(月) 02:09:46.59 ID:t30FF6fH]
   、ゞヾ'""''ソ;μ,
  ヾ (●) (●)彡
  ミ   " □ "  ミ  クワッ!
  彡        ミ
  /ソ,, , ,; ,;;:、ヾ`
     "'"'"


1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<240KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef