- 1 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 21:01:09.54 ID:J1CqPxml]
- Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、 「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/
- 21 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:28:08.96 ID:ACTzKk1i]
- OOPが標準になると職業プログラマで死ぬ人間は出そう
- 22 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:28:09.87 ID:1bcAU/0H]
- 何だよ、また「まあ」さんなのかよ
- 23 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:32:14.00 ID:HXYS042z]
- そもそもC++プログラミングなんて
初心者→分かりません! 中級者→分かりません! 上級者→分かりません! だからなw 分かろうとする時点で無謀。使えるものを使うってのが正解
- 24 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:35:11.64 ID:ACTzKk1i]
- だなw
- 25 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:38:49.90 ID:zMFg0NUJ]
- アホ前提だと何をどうやってもダメという可能性もあるよね
- 26 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:40:50.29 ID:zjwzvFO+]
- 「C++バッチリです!」なんて言う奴がいたら思いっきり胡散臭い目で見てしまうわなw
- 27 名前:名前は開発中のものです。 [2011/07/17(日) 23:49:54.48 ID:9R7sKILt]
- C++とCどっちから始めるべきかとかオブジェクト指向とか以前に、
本当の初心者は関数の中身の制御構文とか、ポインタとか基本的なC言語に対する理解がないんだぞ C++のサイトみると基本的にクラスとか継承とかの説明しかかいてないわけだな そこでCのサイトにいって制御構文とかの使い方を学んで、その成り行きで実際にゲームを作り始めてしまう 至極自然なながれなんだが、この段階でC++に切り替えられる奴とかいるの?
- 28 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:58:25.90 ID:zjwzvFO+]
- そもそもC++に切り替えるって考え方自体がおかしいだろ
なんでC++で使えるものだけ適当につまみ食いするって発想が出ないんだ? 使う内容をCに「限定する」って意図が意味不明すぎるよ >C++のサイトみると基本的にクラスとか継承とかの説明しかかいてないわけだな そんなものはサイトによる、としか
- 29 名前:名前は開発中のものです。 mailto:sage [2011/07/17(日) 23:59:39.02 ID:1HW50H0y]
- スレチ過ぎてマ板かム板でやってほしい
- 30 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:03:00.98 ID:XgTAaYpo]
- >>23
C++のプログラミングなんて興味はないけど ゲームプログラミングとしては 初心者→1面作った 中級者→FCレベルの作品をちゃんと完成させた 上級者→SFCレベルの作品をちゃんと完成させた 俺の中ではこのぐらいハードルが低い(内心では高い) いつも『完成』という壁に押し潰される 1面(最初大陸)ができればプログラミングの枠組みは大方終わり、残りの作業計画は立てやすいけど そこからのゲームデータの用意、バランス調整、拡張、細々としたアレンジetc これができるゲームプログラマーがどれ程いるのやら
- 31 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:18:33.34 ID:VmQ+cgrh]
- ゲームなんて大量にあるし、できる人はできてるはず
- 32 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:26:44.34 ID:egolyZ4T]
- FCレベルとSFCレベルてプログラミング的に大して違いはないと思うが
- 33 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:30:58.74 ID:VkeD7Kyf]
- みんなゲームデータファイルどうやってる?
XercesでXMLとか、ライブラリ使ってる人、 自分でバイナリファイル作ってる人、 自作CSV読み書きクラスとか作ってる人、 どういう人が多い?
- 34 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:35:27.54 ID:NFeJOLHu]
- >>33
俺は自分でバイナリ作ってる
- 35 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:36:10.50 ID:egolyZ4T]
- ソース直書き
- 36 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:39:53.51 ID:B1N19NmL]
- >>33
バイナリをzlibつかって圧縮
- 37 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:40:36.22 ID:RLTZQeGE]
- 直書きで十分対応できるレベルなんでねえ
それで追い付けないようになったらその時に考えるだろうが そのレベルにまで達することもなさそうだしなあw
- 38 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:43:02.35 ID:nBS3kOQH]
- ゲーム作成に話を絞ると
初級者 とりあえす動くサンプル作れた 中級者 ゲームの体裁保った作品が出来た 上級者 オレの作りたいゲームが作れた って感じじゃないかな? 初級者と中級者の間に富士山よりも高い壁があって 中級者と上級者の間にはマリアナ海溝より深い堀があるけどな
- 39 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:44:31.32 ID:NFeJOLHu]
- >>38
コンコルドでひとっ飛びすれば解決
- 40 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 00:49:15.31 ID:VmQ+cgrh]
- >>33
一度に読み込めばいいときはXML、それ以外はSqliteを使ってる パーサーを自作するのは避けたいw
- 41 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 01:33:04.91 ID:xl5hgX2G]
- ここまでDXライブラリの話題無し。
- 42 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 02:09:52.90 ID:VkeD7Kyf]
- キーボードのEscキーが効くのに他のキーがみんな効かなくて困った。
最近のPCでwindows7使ってるのが問題なんだろうか。 公式のフォーラムでもDirectInput切るといいとかログあったけど 自分でDirectInput書いてるときはなんも問題ないし。 ttp://www.rupan.net/uploader/download/1310922313.zip pass : sage
- 43 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 03:33:05.84 ID:qrq567VO]
- >// キーボード
>char keybuf[256]; >int flag = GetHitKeyStateAll( keybuf ) ; > >// キーボードのEnterキーが押されたらシーンが遷移する例 >int keyEnter = keybuf[KEY_INPUT_RETURN]; >int statEnter = CheckHitKey( keyEnter ) ; >if( statEnter == 1 ) >{ キー入力判定の部分が色々とおかしい。 if( CheckHitKey(KEY_INPUT_RETURN) ) とか if( keybuf[KEY_INPUT_RETURN] ) とするべき ECSしか効かないのは、KEY_INPUT_ESCAPEの値がたまたま1だから。
- 44 名前:名前は開発中のものです。 [2011/07/18(月) 03:38:56.78 ID:B35aRr/g]
- >>33
基本、ソースに直書き。たまにCSV。 セーブデータとかは、データをそのまんま吐き出し。
- 45 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 06:23:47.92 ID:+q3Ivu8t]
- >>33
リソース以外はsqliteにぶち込み。 >>43 ここもう一度読もうぜ。 dixq.net/g/41.html
- 46 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 07:20:43.72 ID:S7B56R2Y]
- >>42 見れないんだが
- 47 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 07:39:11.76 ID:sgB+gdY/]
- そのロダjpg以外は消されるっぽいな
- 48 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:02:09.86 ID:+q3Ivu8t]
- ところでDXライブラリが昨日更新された件
homepage2.nifty.com/natupaji/DxLib/dxlog.html 関数がまた幾つか追加されてるね。 つーか > フルスクリーンアンチエイリアスを使うための関数 > SetFullSceneAntiAliasingMode を追加。 フルシーン アンチエイリアシング (Direct3D 9) msdn.microsoft.com/ja-jp/library/bb173422%28v=vs.85%29.aspx ↑ こっちの間違いじゃないかな?
- 49 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:06:26.68 ID:+q3Ivu8t]
- しかもダウソできねー
404 Not Found@nifty
- 50 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:07:57.77 ID:+q3Ivu8t]
- 連投スマソ
dxlib.o.oo7.jp/DxLib/DxLib_VC3_05e.exe にしたらできた。 リンクが修正されてないだけだった。
- 51 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:43:54.24 ID:+q3Ivu8t]
- またまたスマソ。どうやら最新版はバグってるようだね。3.05に戻したわ。
- 52 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:51:17.86 ID:QhWO/sGe]
- Sceneの読み方知らんでスクリーンと書いたなんていう落ちなんじゃ
ところでDXlibでサッカーゲーム方面てどうなの? 女子優勝を見てふと気になったんだが
- 53 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 08:52:21.21 ID:+q3Ivu8t]
- またまたまたスマソ。
DxLib_VC3_05d.exe も落とせたので試してみたがバグってたわ。 で、DxLib_VC3_05.exe(俺としては安定版) が落とせない模様。 ローカルに保存してるから問題ないけどね。 現象はウィンドウを非アクティブにしただけで落ちる。 ちゃんと原因追ってないし俺の環境だけかもしれんからとりあえず放置するw
- 54 名前:名前は開発中のものです。 [2011/07/18(月) 09:19:35.15 ID:B35aRr/g]
- >>53
>現象はウィンドウを非アクティブにしただけで落ちる。 とりあえず今俺が作ってるプログラムでもやってみたけど、別に落ちなかったよ。 ただ、昨日も(前スレに)書き込んだように、 今まで出来てた事ができなくなってるせいで落ちた可能性はあるんじゃないかな。
- 55 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 10:26:57.13 ID:+q3Ivu8t]
- >>54
dクス。 printfDx関数が悪いみたい。 とりあえず再現コードと環境書いて良しとしますわww ↓ codepad.org/pwhkNEDT
- 56 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 13:22:59.68 ID:YqLXuDXm]
- このスレでDXライブラリの話題が流れてる・・・だと!?
- 57 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 13:37:56.70 ID:Ze+SWbq9]
- winXP,VC++2008,3.05e軽量版の組み合わせだが今のところ問題なし
>>55のも落ちないよ
- 58 名前:名前は開発中のものです。 [2011/07/18(月) 15:34:52.58 ID:8Mxjg/u/]
- 俺も55の試してみたけど別に落ちないね。
XPで、BCC。
- 59 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 16:02:31.68 ID:N3hWgd0m]
- >>33
boostのシリアライズ使ってる xmlで入出力やってるけど最終的にはバイナリかな
- 60 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 16:27:00.25 ID:yhK/I0ji]
- >>33
お手製バイナリ入出力のみ。
- 61 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 17:44:02.33 ID:rWgZZvtf]
- tset
- 62 名前:名前は開発中のものです。 mailto:sage [2011/07/18(月) 20:01:12.02 ID:+Rj03r8W]
- >>52
別のスレで何年かサッカーゲーム作ってる人はいるよ 俺がもっとも尊敬する個人製作ゲームプログラマの一人
- 63 名前:名前は開発中のものです。 [2011/07/19(火) 02:01:03.43 ID:GHPcOYFF]
- やっぱ何年も続けることはすごいことなのか
今作ってるの諦めてしまいそうだな
- 64 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 02:02:31.46 ID:7gtAkdk2]
- 何年かかっても完成してない、とも言えるけど、本当に趣味でやってるんだろうなぁ
仕事帰りにちまちま進めてたり 楽しそう
- 65 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 02:05:07.46 ID:cCNbrd8E]
- SQLiteか、それいいな
データ作る方のコードも楽そうだし このスレ見る利点の一つはこういう知らない部分の世界の一部がチラチラ見えることだな
- 66 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 02:07:56.39 ID:jELmaont]
- 3年目に突入した俺が通りますよっと
早々に挫折するか長期戦になるかはほんの微妙な匙加減なんだと思った
- 67 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 05:42:45.81 ID:8jeveRjH]
- 構想3年、中抜け2年10ヶ月! とかは普通にある
- 68 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 06:41:26.36 ID:OqV36zim]
- >>63
浪人を誉めているようなもんだぞww
- 69 名前:名前は開発中のものです。 [2011/07/19(火) 07:20:12.70 ID:BGzT95YL]
- 諦めるのでも続けるのでもなく、さっさと完成させてしまえばいい。
俺もDXライブラリ使い始めて最初のゲームは2年かかったけど、 実際はもっと作りこみたかったのを、切りのいいところで完成とした。 そして次のゲームに取り掛かったら今度は10ヶ月で完成した。 今製作中のは8ヶ月で完成が目標。 ドット絵の作成とか、どうしても時間を短縮できない部分はあるけど、 プログラム部分に関しては蓄積されていくから、完成させればさせるほど楽になってくる。
- 70 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 07:45:08.94 ID:b6EN4oAS]
- つパイロットプログラム
- 71 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 07:54:27.33 ID:kDyIkFAT]
- >>69
そういう所まですら行ってないで飽きちゃう人が多いと思う ・RPGならDQ3基準でアリアハンとレーベとアリアハン大陸まで作った。ダンジョンは未実装 ・ACTならスーパーマリオを作った。1−1は出来た。完成。 ・シューティングゲームを作った。道中で敵がちょろちょろでる。ボスが出る。1面で完成 ・某ソースを丸コピして弾幕シューティングを作った。一部アレンジした。ゲームを完成させた マップ作りやら敵の出現配置の段階で投げる人が爆増しそう 行動パターンを決めたりするプログラミングまでは頑張るが その後のデータ入力とバランス調整で飽きるという 正直ここでプログラミングを語っている人なら、絵とBGMの工数は度外視という前提条件(ネットで入手可能な素材で済ませる)なら 2〜3ヶ月で作れるだろ。本当に語っている通りの技術力や経験があるのなら・・・ PS2やPS3クラスの市販品レベルを目指しているのなら話は別だけど
- 72 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 08:03:58.03 ID:OqV36zim]
- RPGやSLGは中盤からUIやレイアウトと言った道筋ははっきりして
バグも出にくいがひたすら作業な部分で萎える ACTはステージ作成 プログラマーがSTGを好むのがよく分かるw
- 73 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 11:57:35.77 ID:8jeveRjH]
- システムとツール用意するから誰かゲーム作ってよ!って症状は割と見かけるなw
- 74 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 12:38:05.54 ID:wD6kHH4M]
- 既製素材を使うなら、STGだったら半月で1面くらいは作れるね
けど、面白いSTGを作ろうと思ったら・・・お察しw 誤魔化しきかないだけに製作センスが非常に問われるジャンルだと思う >>73 ゲーム部分作るからシステムとツールと素材作ってよ!って方が多いと思うw
- 75 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 12:42:54.32 ID:FU3SnXXK]
- 某STGを作った時の話だが、スプライト管理とかの基礎から作り始めて、タイトル、1面、ボスという基本的な流れまで作るのに1日、
そこから完成させるまで5年かかった かなり中抜けはあるけどそれでも実質2年以上は確実にかかってる 最初の一行をゲーム作りだと思ってるプログラマが多いのが完成まで持っていけない原因じゃないかな ゲームの内容にもよるけど、敵配置や調整はその数倍〜数百倍手間が掛かる あと機能を実装しているときは周りからスゲースゲー言ってもらえるけど、 調整段階になると今度は不満ばかりを聞くことになるのでモチベーションが落ちがちになりやすい
- 76 名前:名前は開発中のものです。 [2011/07/19(火) 13:36:07.23 ID:GHPcOYFF]
- デバッグ中にいきなり透明度30%くらいのひびの入ったブルースクリーンが出るんだが
これはいったい何なんだ ある時間になると発生し、ある敵を倒すと直る
- 77 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 13:38:03.53 ID:JRPTQBTk]
- せめてSS位だせよ
- 78 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 14:04:04.25 ID:asO+sKKz]
- 俺ならその「ある敵」とやらの描画コード周りを確認する。
- 79 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 14:43:22.10 ID:d+X1uW+C]
- BSODってわけじゃないよね?
なんで画面が青みがかることをわざわざブルースクリーンなんて表現するの?
- 80 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 15:09:15.81 ID:8jeveRjH]
- >>74
俺、内部用ツールとかだけずっと作ってたいw 顧客に出るような処理は正直やりたくない
- 81 名前: 忍法帖【Lv=1,xxxP】 mailto:sage [2011/07/19(火) 18:48:43.17 ID:KNy7X+y1]
- ひびの入ったブルースクリーンってどんなのだ
- 82 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 20:30:24.26 ID:utrGvKTj]
- STGの敵や弾ごとの挙動の管理がゴチャゴチャしてめんどくさすぎて、
C++のソースを書きだすGUIツールを開発してしまっている
- 83 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 20:35:39.86 ID:mEYpvFPj]
- >>82
そして次にGUIツールを自動で操作するためのソフトを作るんですね 分かります
- 84 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:02:29.69 ID:kDyIkFAT]
- >GUIツールを開発してしまっている
その画面をうp ソースでもないし、開発ツールなんだから作りが質素でも恥ずかしく無いと思うの 本当に存在するならだけどwww
- 85 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:08:27.59 ID:SLNwahkb]
- うpさせてどうするのさ。
当人には何のメリットもないと思うんだが。
- 86 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:09:00.38 ID:utrGvKTj]
- >>84
なぜ疑われてるんだw ただテキストを書きだすだけのツールじゃないかw ちなみに開発したんじゃなくて開発中って意味だよ
- 87 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:15:34.98 ID:6h4jmI30]
- >>83
それに近いことは一回やったことあるな 手順が決まってるGUI操作を特定座標の色の変化で分岐してマウス移動とクリックをするだけの単純なやつだけど ある程度パターンが決まってるから、変えたいとこだけ事前に数値入れとけば開始ボタン1クリックで終わるからかなり楽になった
- 88 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:19:16.42 ID:OqV36zim]
- >>87はわかりやすいなマクロ操作プログラムみたいなもんか
>>86はどういうツールか俺も見てみたい テキストを書き出すというがどういう処理をさせるツールなのか
- 89 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:23:22.35 ID:mEYpvFPj]
- >>86じゃないけど、スクリプトだと自由度低いから直接コードを吐かせるってだけなんじゃないかなと想像
考えてみたら俺もエクセルのVBAで似たようなことやってたわw
- 90 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 21:48:32.19 ID:OqV36zim]
- >>89
イマイチわからん 敵の名前 絵 弾絵 弾幕パターン HP みたいなRPGのモンスター設定をGUIで設定 CSV等のリストに追加みたいなツールってのは想像しやすいが ソースで吐き出すとなるとデータじゃない別のなにかって事だよな
- 91 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:00:43.95 ID:mEYpvFPj]
- >>90
例えばGUIで「弾速4.0pixel/frame、自機狙い、角度間隔20度の3way」って指定すると Speed = 4.0; BaseAngle = AimPlayer; for( int i = -20 ; i <= 20 ; i += 20 ) { Angle = BaseAngle + i; CreateBullet( Speed, Angle ); } みたいなコードを吐いてくれるってことじゃない?
- 92 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:00:59.04 ID:YPhNnB7U]
- 俺もエクセルVBAで列挙体とか出力できるようにしてあるわ
RPGとか作ってるとこういうのはシャレにならないくらい面倒だからなw
- 93 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:01:45.86 ID:mEYpvFPj]
- おっと、2行目は
BaseAngle = AimPlayer(); かな 実際にはもっと色々と引数が必要だろうけど
- 94 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:04:30.96 ID:utrGvKTj]
- >>90
書きだす先がCSVじゃなくてCPPってだけ プログラム自体が、弾や敵の挙動はそれぞれ関数ポインタで、配列になった関数を呼んでるだけなんで、 その中身を記述するだけ だいたい>>91であってる 数値の設定やコマンドだけじゃなく、ソースの直書きも間に挟めるようにする予定 で、整理しやすいようにグループ分けとかできるようになってる
- 95 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:32:50.62 ID:kDyIkFAT]
- >>91
実際にそういうのを1キャラずつソースとして出力&個別設定するの? STGはあまり興味ないから勝手がわからないけど パラメーター 弾パラメーター 敵A 123456789 0(自機狙い等の種別),40,20,,3 って処理しているもんだと思っていた
- 96 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:51:03.42 ID:xPJ+GTxa]
- SetWindowSizeChangeEnableFlag に true を渡して画面サイズを途中で変更したり
SetWindowSizeExtendRate に 1 以外の値を渡して画面サイズを変更すると アンチエイリアスが利かなくなってしまいます。 何とかきかせる方法はないでしょうか? 環境はwin7です。XPの時は大丈夫だったと思うのですが…
- 97 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 22:52:33.20 ID:OqV36zim]
- 汎用性ばかり高めるとソースコードは減るが処理は重くなる
自機狙いなの? 弾速は? 角度は? 発射数は? の値で弾パターンを生成するのではなく 計算後の物を弾幕1として登録 そして弾幕1で呼び出すという処理が必要になってくると理解してみた だからソースとして吐き出すと
- 98 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 23:00:22.91 ID:mEYpvFPj]
- >>95
>>97も言ってるんだけど、スクリプト処理って上手くやらないと結構処理が重くなる STGはジャンルの特性上「低性能なPCでもいかにフレームレートをキープするか」ってのが重要になるから、 処理速度に関しては結構カツカツに組まなきゃならなかったりするw そして汎用性を高めると柔軟性(特殊性)に乏しくなるってのもあるしね スクリプトを併用するにしても、コード直書きできるようにはしたいところ
- 99 名前:名前は開発中のものです。 mailto:sage [2011/07/19(火) 23:40:45.06 ID:xPJ+GTxa]
- ドライバ依存のようでした。流れ読まずにサーセン
- 100 名前:名前は開発中のものです。 [2011/07/20(水) 00:01:27.30 ID:zx/NMNX+]
- でもシューティングでも弾によって色々な動きが欲しいし(火炎放射気、ミサイル、レーザーとか)
単純に一つの関数で済まそうとすることはなかなかできないんじゃないか? 俺は基本的な要素のデータベースみたいなのは作っておいて あとは一つずつ関数を作っちゃうな
- 101 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:12:51.56 ID:LJdX4cyX]
- 俺の場合、関数化するのは「よく使うパターン」くらいかなあ
nWAYとか反射弾とか 基本的には敵の動きから攻撃パターンまで全部コード直接書いてるw 行数で言ったら数万だけど、手間的には案外大したこと無かったりするし 書くよりも、あとで手直しするときに解読する方が大変w
- 102 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:17:18.22 ID:w+LKMFg6]
- >>100
火炎放射、ミサイル、レーザー、単発 まずはその種別毎に分岐 同時に何発撃つか、またその角度。弾即。 全て1つの関数で処理するか 末端の攻撃方法を1として攻撃方法1〜1000で関数として扱うのか 前者は1つの関数で何種類のも微妙な違いの弾を用意可能 後者は弾毎に関数を用意しないと駄目 どこまで処理に汎用性を持たせるかだな 弾という時点で分岐をさせるのか 火炎放射から分岐させるのか 火炎放射の発射数から分岐させるのか 角度弾速まで固定化された末端で関数として扱うのか
- 103 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:19:41.02 ID:Uv/sL0og]
- 割と真面目な話をすると、ここら辺はコーディングじゃなくてSTGの腕前の影響をまともに受けると思う
STGの腕があればどこを共通化してどこを差別化するかってのが容易に見当つくから
- 104 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:31:13.59 ID:vUGfpdFc]
- 理想は種類で細分化された関数用意して最上位で関数ポインタで同一インターフェースに纏めるのかな
C++活かすなら関数ポインタ部分を継承やテンプレート関数になるんだろうけど。 外部入力でコード自動生成はテンプレート処理と同等。
- 105 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:32:20.16 ID:UXx1Rwux]
- 素直にクラスで継承使おうぜ、というと前スレ後半みたいに荒れるのかなぁ
- 106 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:35:33.60 ID:LJdX4cyX]
- 継承でいいんじゃなかろうか。まぁ継承使わなくてもちょっとコードが汚くなるだけで組めるは組めると思うけど
MoveとAttackをそれぞれ関数ポインタとして持たせて、クラス毎にオーバーライドしてる
- 107 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:38:30.14 ID:w+LKMFg6]
- >>105
そうはならないと思う そうやって作っている>問題ない>そのうち問題があるから今すぐ改善しろ! で荒れたが 理想論で〜しようぜ!いや〜のが良い!は 机上の空論の議論だから好き勝手にどうぞってなる
- 108 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:41:26.80 ID:LJdX4cyX]
- >>107
荒れたのは、そんな小利口なやり方必要ねーだろ→いや必要だろ→ループ、って感じに見えたが それにOOPは難しいよ派と誰でも分かる派とC++はC前提派が混ざって大混乱に陥った
- 109 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:45:29.82 ID:phwAyEUP]
- 俺はこうやってるぜ自慢ならいいと思う
人それぞれなのに人の方法にケチつけるから荒れる
- 110 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 00:55:44.26 ID:DqIwh6Bu]
- 机上の空論と言う事で・・・
振る舞いを機能で細分化してオブジェクトとしておく で、弾を実装するときにそれらのオブジェクトをお好みで利用する こんな感じにすると楽 C#ならActionだけでできちゃうからC#使いにお勧め
- 111 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 01:02:06.42 ID:cozewM6U]
- >>108
おお、わかりやすい
- 112 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 01:06:04.99 ID:b6vAzTXb]
- >>109が全てだな。
そもそも「ゲームが作りたくて(半ば仕方なく)プログラムをしてる」人に対して、 「プログラムの題材としてゲームを選んでる」人が作法()とか言ってたからなw
- 113 名前:名前は開発中のものです。 [2011/07/20(水) 02:07:15.20 ID:zx/NMNX+]
- ショットに四角とか三角の判定を持ったショットも作りたいけど
こうなると、完全に別物を作らないといけなくなるよな 敵や味方との判定の関数も新たに作らないといけなくなるしな
- 114 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 02:10:31.57 ID:phwAyEUP]
- >>113
当たり判定クラスor構造体を作っておいて、判定はひとつの関数でやるのおすすめ
- 115 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 02:48:40.84 ID:vUGfpdFc]
- 敵味方判定はビットマスクだろ。
当たり判定はビットマップでやれば同じ扱いで 数ピクセル分の並列判定も可能。
- 116 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 04:35:42.15 ID:gL7wAfPg]
- >>115 何言ってるか全然わかんないけど興味あるので詳しく教えてくださいませんか?
- 117 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 06:07:09.62 ID:VQBl28Yo]
- 無名クラスがnewできないからjava C#みたいに関数ポインタの代わりが
できないんだよな
- 118 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 21:43:52.57 ID:hYnYJ2X9]
- ラムダ式でええやん
- 119 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 21:50:57.98 ID:DqIwh6Bu]
- 関数ポインタでええやん
- 120 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 22:44:43.47 ID:g6rdsdP4]
- >>116
ビットマスクは種類ごとに1ビットだけ立てたのを用意するよくある手法。 すべての攻撃が敵だけに当たる等で完全に分離できるならオブジェクトリストを増やしたほうがいい。 ビットマップは当たり判定用の2値画像を用意して読み込み時に バウンディングボックスの設定と水平線のスキャンライン毎に横の最小最大値を記録。 バウンディングボックスでの大まかな判定の後に重なるラインだけで当たり判定。 でも高速で移動してる物体や弾だと間の補完も必要だし 出来るなら円や矩形だけに固定したほうが速いわな。
- 121 名前:名前は開発中のものです。 mailto:sage [2011/07/20(水) 22:57:58.35 ID:g6rdsdP4]
- >>117
ファンクタとしてなら関数内で名前適当でクラス宣言すりゃ十分だろ
|

|