[過去ログ]
1人でゲームが作れるように修行します。 (984レス)
1人でゲームが作れるように修行します。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
917: 名前は開発中のものです。 [sage] 2010/03/30(火) 00:30:16 ID:XJOj9lyY >>916 アサート(=assert,assertion)は、「プログラムがここを通る時には、この条件を満たしているはず。そうじゃなきゃおかしいですよ」っていうトラップコードみたいなもの。 つまりそれに引っ掛かっているということは、何かプログラムに問題があるという事。 ちなみにリリースビルドではこの処理は負荷にしかならないため、普通はスルーする設定になっている。 が、問題は依然として残っているので、ちゃんとデバッグビルドでアサートが出ないようにデバッグしないと、 異常なままプログラムが走って、最悪の場合どえらい事になる。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/917
918: 名前は開発中のものです。 [sage] 2010/03/30(火) 00:45:13 ID:XJOj9lyY 追記。 上でサラッと「トラップコード」って書いたけど、 これは単純に「罠」という意味で使っただけで、そういう言葉がある訳ではないです。 ググって混乱してもらっても困るので念のため。 紛らわしい説明で申し訳ない。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/918
919: 887 [sage] 2010/03/30(火) 02:48:09 ID:n0Y7jW06 とりあえずマップを歩かせようと妄想。 マップとの当たり判定は難しそうなんで、今回のプログラムに合わせて簡略化する。 ジャンプできない仕様なんで、歩けるところだけポリゴン張って、 ポリゴンとキャラの真下に伸びる線分との当たり判定だけとる事にしてみる。 マップ毎にモデルは描画用と当たり判定用の2つを作る予定。 後、キャラ操作を妄想中。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/919
920: SGGK ◆6pZCoAtaxk [sage] 2010/03/30(火) 23:37:43 ID:tbFKlrx+ >>917,918 アドバイスどうもです〜!アサートについてはその後もググって調べてみましたけど、やっぱり自分にはあまりにも難解過ぎたようです。 でも、そういうのがあるんだな〜という雰囲気のようなものはおかげさまで伝わりました。 もう一度コンパイルするとやっぱりすぐに止まって、vectorと書かれたタブ画面に意味不明なソースのリストがずらりと現れ、その中の何行目で ストップしたというような記述が出るけど、そのリストは自分が書いたものではないし、正直これは降参だ〜という感じ…。 が!?ひょんな事から、昨日のバグメッセージが出なくなった模様。 >>919 自分も実は今、当たり判定で悩んでて、バグまで出してしまってます〜! コンパイラの上に「ソリューションのリビルド」があったのに気が付き、なんか以前にも困った時にこれを実行した事があったような記憶があり、試してみたら昨日のバグメッセージが出なくなった!? それで早速、バグのあったソースの修正箇所を今回のバージョンのソースに少しずつコピペしては、コンパイルを繰り返していき、バグが出ないか確認しながら作業していたところ、ゴールの表示をさせるところで躓いてしまう…orz 自分のプログラムはカメラの枠(640x480)や選手、ボール、ゴールオブジェクトがワールド座標的なサッカーフィールドの中を動いていて、 カメラの枠(640x480)とのあたり判定を行い、当たっているオブジェクトだけを描画処理(フィールドは見えてる部分だけを切り取る感じ)するアルゴリズムなんだけど、 ボールを蹴りつつ画面をスクロールさせていき、「そろそろゴールが見えるぞ!」というところまで来たら、強制終了してしまう…という状況。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/920
921: 名前は開発中のものです。 [sage] 2010/03/30(火) 23:41:25 ID://xSor7+ くどいけど、配列の添え字がオーバーしてる気がするけどなぁ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/921
922: 名前は開発中のものです。 [sage] 2010/03/30(火) 23:59:47 ID:XJOj9lyY >>921 ちなみに自分もそうだと思う。 アサートした時にバックトレースとか見てないのかな? http://peace.5ch.net/test/read.cgi/gamedev/1006284805/922
923: 名前は開発中のものです。 [sage] 2010/03/31(水) 04:44:02 ID:wx6I9MQf VCだよね?デバッガ使えないとか? http://peace.5ch.net/test/read.cgi/gamedev/1006284805/923
924: 887 [sage] 2010/03/31(水) 09:31:07 ID:7cJ29iPq >>920 VC++EEなら止まった時に、 呼び出し履歴のタブで知ってる関数なりメソッドに移動、 変数とかにマウスカーソルを当てて変数のチェック。とかできるよ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/924
925: 887 [sage] 2010/04/02(金) 09:32:56 ID:hzdsXNXW 規制で書き込めなかった… ttp://github.com/happana/srpg/downloads SRPG version 0.0.6 当たり判定用マップ上を移動できるようになった。 ちょこちょこ上げるより、もっと進捗があってから上げたほうがいいんだろうか。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/925
926: 名前は開発中のものです。 [sage] 2010/04/02(金) 10:12:30 ID:we5PFrOk めんどくさいなら「ここまで作った!」って書き込みだけで十分だと思う しかし凄いな、もう3DRPGの原型が出来てるw http://peace.5ch.net/test/read.cgi/gamedev/1006284805/926
927: STG ◆Fp.xSEIREI [sage] 2010/04/02(金) 10:19:22 ID:moDOVNLM これはプロの犯行 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/927
928: 887 [sage] 2010/04/04(日) 12:56:13 ID:lPdlCBa6 マップの切り替えを実装。 ttp://github.com/happana/srpg/downloads SRPG version 0.0.7 ちょこちょこ上げるのは面倒じゃないんだけど、 変わり映えしないと見てくれている人が飽きるかなと思って。 後は github の容量が気になることくらい。 ちょっとでも反応あると励みになるんで、上げていきます。 マップ切り替えは難しい。 マップ切り替えポイントとの当たり判定。 複数マップ管理(リソース読み込み・捨て等)、 もしかしてイベント処理もまとめれるんじゃないかという妄想による 無駄なクラスの肥大化等。 次は戦闘画面でも作ろうかなぁ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/928
929: 名前は開発中のものです。 [sage] 2010/04/04(日) 18:47:18 ID:pcvJe3XH 俺が世界樹で遊んでる間にどんどん進んでいくなw 世界樹オモシロイ http://peace.5ch.net/test/read.cgi/gamedev/1006284805/929
930: 887 [sage] 2010/04/06(火) 01:24:08 ID:IqRudg/u 画面切り替えの効果を作った。 フェードイン・アウトとワイプイン・アウト(上下左右の方向) 色々と処理の流れを考えないといけなくて難しい。 ゲームってこういう処理の間の表現が重要なんだと思った。 A を押したら1から2に変わる。みたいな処理も 普通のプログラムなら即、1から2に変えればいいと思うんだけど ゲームだと1から2に変わる様子を見せないといけないというか。 右押したらカーソルを右に移動させるってのにも プログラム的には移動先の座標をそのままつっこみたいんだけど ゲームだとわざと移動途中の処理も書かないといけないとか。 この処理の間の表現ってのが ゲームプログラミングの難しいところなんじゃないだろうか。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/930
931: 887 [sage] 2010/04/08(木) 02:36:53 ID:OGaBCtim 戦闘画面を作りたいけど、フィールドマップとバトルマップの管理など 色々と悩ましいのでちょっと寄り道。 TTFな文字列を描画するために作業中。 色々と面倒な感じなので事前に使用する文字をテクスチャに描きこんで そのテクスチャを使用して文字を描画するようにしてみようと思う。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/931
932: 名前は開発中のものです。 [] 2010/04/08(木) 16:34:34 ID:Zu3iQc3M 期待 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/932
933: 名前は開発中のものです。 [sage] 2010/04/08(木) 21:10:33 ID:GKOA/Vbb 漢字とかも画像にするの? 文字描画に関してはまだ調べてないからどんな風にやるのか気になる http://peace.5ch.net/test/read.cgi/gamedev/1006284805/933
934: 887 [sage] 2010/04/08(木) 22:22:40 ID:OGaBCtim 今回やろうとしているのは 1)使用する文字を列挙して順番を振る。 2)順番に従ってテクスチャに文字を描く。座標データも一緒に出力。 例えば、ゲーム中で ID:1「こんにちわ」 ID:2「こんばんわ」 ってテキストを使用する場合なら 1)で['こ','ん','に','ち','わ','ば]って配列になって 2)で['こ','ん','に','ち','わ','ば]をテクスチャに描く。 0番は(0,0)の座標,1番は(20,0)の座標みたいなテクスチャの座標も出力。 テキストは ID:1 -> [0,1,2,3,4] (上の配列の添え字です) ID:2 -> [0,1,5,1,4] みたいに変換してゲーム中は2)の座標データと番号を使ってテクスチャを 描画って感じにしようと思ってます。 30秒勇者の人の三十人勇者ってゲームのデータもそんな感じになってたんで 参考にさせてもらいました。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/934
935: SGGK ◆6pZCoAtaxk [sage] 2010/04/08(木) 23:54:00 ID:jl6c6FoM アクセス規制、やっと解除〜! >>921 ゴール画像表示直前で強制終了する事からその可能性が高そうなのでもう少し粘って探してみます〜。 >>922 実は今までバックトレースの存在に気付かずにプログラムやっていたような感じ。コンパイラの画面には出ていたのかも…。 >>923 使用しているのはVC++2008で、デバッガはあまり活用できてないです…orz >>924 どうもです〜。これで今までに比べ、バグ発見度が上がりそうです〜! バグメッセージの一部「ハンドルされていない例外が発生しました: microsoft c++ の例外: std::out_of_range」でググってみたら、 ttp://www.play21.jp/board/formz.cgi?action=quote&resno=39962&id=dixq&lognum=122 にも参考になるページを発見。 >>925,928,930 画面切り替えの確認出来ました〜! 状態の管理?のような処理には自分も悩んでいて、本も調べたりしたけど、 なかなか理解できないので(…orz)今は、テクニック不在のif文で処理を分けてみる方法でいこうとしてるところです。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/935
936: 887 [sage] 2010/04/09(金) 01:24:09 ID:ecdSoKKW ttp://github.com/happana/srpg/downloads SRPG version 0.0.8 マップ切り替え時のワイプアウト・フェードインと日本語表示ができた。 そろそろ敵を出したいけど、リソース作りが面倒… http://peace.5ch.net/test/read.cgi/gamedev/1006284805/936
937: SGGK ◆6pZCoAtaxk [sage] 2010/04/10(土) 01:18:58 ID:KXMQdNBi もう日本語表示、す…凄い進捗速度な感じ。 こちらは例のバグがどこで出てるのか判明。 グラフィック表示の処理関数のところで止まっている。 しかし、そこを見る限り問題はなさそうだが、何度か眺めている内に画像表示のループ回数を設定する数値が 10にしたはずが1になっているのに気付き、よくよく調べると、 メインループで各オブジェクトの画像データをロードする関数を一括して呼び出す処理の部分で ゴール画像のロード関数だけが呼び出されていなかった…orz それでアサーションとかがひっかかっていたのかもしれない…。 そんな間違いしてると思わなかったから発見に異常に時間がかかってしまった…。 コンパイラに関するアドバイスが効いてどうもです〜みたいな感じ。 次はゴールのあたり判定について検討の予定。 コの字型のゴールにボールが入ればゴールの判定、それ以外はボールが跳ね返るようにしようと思うものの かなり難しそうな予感。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/937
938: STG ◆Fp.xSEIREI [sage] 2010/04/11(日) 03:14:36 ID:8mA2cYgn 規制解除(・∀・) キーコンフィグをぼちぼちつくる ついでに文字を管理するクラスを改良 もうちょっとでモチベが上がるSTGゲーム本体の部分にとりかかれそう http://peace.5ch.net/test/read.cgi/gamedev/1006284805/938
939: SGGK ◆6pZCoAtaxk [sage] 2010/04/11(日) 22:20:03 ID:ctrWwoIe 規制解除オメ!(←2ちゃん風に)です。 こちらは進捗0でゴールは早くても来週になりそう。 ゴールとボールのあたり判定とゴール(得点)の判定を同時に考えるとこんがらがりそうなので、とりあえず前者の判定の実装だけを考えてみる予定。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/939
940: 887 [sage] 2010/04/13(火) 02:01:27 ID:9mjTs9U0 ジョイスティック対応、リファクタリングと見た目には進捗なし。 ここまで適当にコーディングしてきたツケが回ってきた感じ。 そろそろ戦闘画面を作る。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/940
941: SGGK ◆6pZCoAtaxk [sage] 2010/04/14(水) 00:01:11 ID:KKTCG4L+ こちらは当たり判定に「線と線のあたり判定」が使えそうだ(ゴールは3本の線で出来てるともいえるから)と思い、検索してみたけど内容がよく理解できず。 どうやら数学の素養が必要なのかもという気がしてきたけど、今からそれをなんとかするにはかなりの時間を要するのではと悩んで終了。 判定できる理由が理解できなくてもプログラムに書けそうならブラックボックス的にやってみるしかないかもしれない…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/941
942: 887 [sage] 2010/04/14(水) 02:04:03 ID:g5ssTNuB >>941 ゴールを矩形、ボールを点と考えるのはどうですか? ボールの速度が速すぎると突き抜けたり 横からねじ込めたりしてしまうけど。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/942
943: SGGK ◆6pZCoAtaxk [sage] 2010/04/15(木) 00:10:01 ID:h1YQHLSp >>942 どうもです〜! そうですね。改めて考えてみるとゲームの処理の流れを作る事の方が優先事項だと思うし、ボールがゴールに入ったかどうかの判定の実装は今は諦めて、 ゴールはコの字でなく矩形と考えて、ゴールにボールが当たったら得点したという事にしてやってみようと思います。 また色々バグが出ると思うのでプログラムをコピーして、プログラムファイル名の数字をひとつ増やすところまでで今日の作業終了。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/943
944: 887 [sage] 2010/04/15(木) 01:33:00 ID:4v9noV6V ttp://github.com/happana/srpg/downloads SRPG version 0.0.9 とりあえずのやっつけで戦闘画面、エンカウントを追加。 後、適当にジョイスティックに対応。 右奥から行ける2つ目のマップでエンカウントできます。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/944
945: SGGK ◆6pZCoAtaxk [sage] 2010/04/16(金) 00:39:27 ID:3+9Bg+45 画面の動き、確認できました〜! こちらも頑張ろうと思い、コンパイラでソースを開いてみたものの、 ちょっとでも見てないとすぐ中身を忘れてしまう自分。 土日があっても何ともいえない状況だけど、まだ諦めないつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/945
946: 887 [sage] 2010/04/16(金) 00:42:02 ID:VnlBj8j6 半月も経っていないのにマップデータの作り方を忘れていてびびった。 ソースコードにコメントを、ってのはよく聞くけど データの作り方とかもドキュメント化しておかないとやばそう。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/946
947: SGGK ◆6pZCoAtaxk [sage] 2010/04/17(土) 00:53:38 ID:BoqGZZ0D 自分はソースを1日見なかっただけでも中身を結構忘れてしまう方なのでいつも苦労してます。 以前にプログラムの構造を図にしてみたけど、中身もだいぶ変わってしまったので、 また区切りが付いたら図にしてみようかな〜と思ってます。 こちらの進捗についてはやっぱり1日単位ではなかなか進まないのが現状な感じ。 ゴールの得点処理の実装の前に時間の経過に合わせて前半、ハーフタイム、後半の状態遷移的な 処理をするためにif文でそれを書こうとして途中までの段階。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/947
948: 887 [sage] 2010/04/17(土) 02:26:08 ID:cElL6nxn 戦闘時の攻撃を作ろうと思って長考。 武器ごとにモーションって変えたいですよね。剣と槍じゃ全然違うモーションになりそう。 全武器種ごとのモーションをキャラクタデータに入れちゃうと キャラクタデータが大きくなりすぎるので困りそう。 後、モーションの呼び出しも大変になりそう。 if(剣装備中) { chara->start_motion(剣攻撃モーションID); } else if(槍装備中) { chara->start_motion(槍攻撃モーションID); } みたいな。できれば chara->start_motion(攻撃モーションID); にしたい。で、武器側にモーションデータをくっつけて 武器を装備した時にその武器用の攻撃モーションを読み込むようにしたらいいじゃないかと妄想。 *キャラモデル *汎用モーション(待機、歩き等) *剣攻撃モーション(モーションID:10) *槍攻撃モーション(モーションID:20) *...攻撃モーション(モーションID:30...) + *武器モデル ↓ *キャラモデル *汎用モーション + *武器モデル *攻撃モーション(モーションID:10) みたいな。武器変更しても常にモーションID10を流せばOKみたいにできそう。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/948
949: 887 [sage] 2010/04/17(土) 02:28:00 ID:cElL6nxn 問題はキャラごとに攻撃モーションも変えるかどうか。 男/女用で変えることはありそう。 *武器モデル *攻撃モーション(モーションID:10) が *武器モデル *男用攻撃モーション(モーションID:10?) *女用攻撃モーション(モーションID:10?) とかになって、もうちょっと考えないといけない。 でもモンスターハンターとかって男も女も一緒のモーションだったっけか? とりあえずシンプルなRPGなんだから全キャラ攻撃モーションは統一でいいような気がしてきた。 なんかがんばって長文書いたら改行が多すぎとか言われて色々説明削った。 こんなことはチラシの裏にでも書いていた方が良かったかも… スレ汚しごめん。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/949
950: 名前は開発中のものです。 [sage] 2010/04/17(土) 06:58:51 ID:tyqoOtFT 通常攻撃のこと考えてるみたいけど ワザとか使うことを考えると、モーションなんて行動毎に毎回違うものになるんじゃないかと って個人製作じゃそこまでモーション作るのが無理かw http://peace.5ch.net/test/read.cgi/gamedev/1006284805/950
951: 887 [sage] 2010/04/17(土) 18:15:32 ID:cElL6nxn 確かに通常攻撃も一種の技(MP消費なしの物理ダメージを与える技)として管理すれば こんなことしなくても良いかも… そう考えるとまず、戦闘システムを考えた方が良さそうだな。 つかまだステータスも考えてなかった… 王道でいくと HP,MP,攻撃力,防御力,魔力,すばやさ とかか。 適当に RPG ツクールとかを参考にすればいいのかな。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/951
952: 887 [sage] 2010/04/17(土) 19:00:10 ID:cElL6nxn RPGツクール2000,VXの体験版を落としてみた。 初めて見たけど、こういう感じなんですね。 まだまだ色々と作らないといけないことが分かった。 先は長いな。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/952
953: SGGK ◆6pZCoAtaxk [sage] 2010/04/18(日) 00:48:22 ID:NCcYhG6t 自分の方は選手の移動パターン1つだけなので将来増やす時に悩みそうな予感です。 進捗はまだゴール得点処理と状態遷移関係実装を書いたり考えたりしてる状態。 前半から後半に切り替わる時に選手のデータの座標だけ左右入れ替えるような初期化したいのに 他のデータも全部一緒に初期化してるのが我ながら変な感じだな〜と思いつつ、他にいい方法も浮かばないのでそのままプログラミング中。 コンパイル開始出来るのは早くても明日…だといいんだけど自信なし。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/953
954: SGGK ◆6pZCoAtaxk [sage] 2010/04/18(日) 23:53:11 ID:XsD0B/Fd なんとか一通り書いてコンパイルしてみたけど失敗。エラーは80個程。 if文で条件分岐させる為に色々と定義した変数がソースの各所にちらばってしまい、 それがうまく認識されていないのが原因のひとつになっている様子…。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/954
955: 887 [sage] 2010/04/19(月) 08:42:20 ID:9OCZeS1T ttp://github.com/happana/srpg/downloads SRPG version 0.0.10 仮ステータス,装備変更実装、まだ戦えない。 装備変更画面はまだで、装備をタイトルから選べるようにした。 HP,STR(力),VIT(体力),AGI(素早さ)などを実装。 体格(Physique)という値を用意した。 体格は大きいと HP,STR,VIT は大きくなり、AGI は下がる補正値。 今は敵の体格値50-150で変動。 のちのちはマップごととかに体格範囲を決めれるようにしようかと思ってる。 体格値がやたらとでかいのばかり出る、巨人のダンジョンとか 逆の小人のダンジョンとか作れたらいいなあ。 体格はモンスターハンターとかペルソナ4あたりの 時々大きさが違うのがいたのを参考にした。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/955
956: SGGK ◆6pZCoAtaxk [sage] 2010/04/19(月) 23:26:18 ID:q2YeOLiX 動き、確認できました。場所によって2体の敵キャラの距離感が変わるのも確認出来ました!。 これが体格値変動の効果かも。 こちらの方は、昨日のバグはなんとか取れました。バグの大半は、 「 '0x3000': この文字を識別子で使用することはできません 」というメッセージで、 これは全角を使ってるのがいけないという事を言ってるらしく。 最初気付かなかったけど、空白部分に空白の全角文字が使われていたのが原因。 (以前にも似た事あったからか今回は早く気付いた。) では何故全角になってたのかというと、switch文を書くのが面倒だったので、 どこかのホームページからコピペしてcase:以降の中身だけ書き変えてすまそうとしたら、 そのコピペした部分に含まれている空白が全角だったから。 ということで現在は得点が0対0で右上に表示されるところまで進んだところ。 バグとれたのになんで画面の遷移がないのかというと、if文の条件を満たした時の中身はまだ何も書いてないから。 コンパイルが通ったという事は、今回新しく用意したいくつかの状態遷移に使うための変数がとりあえず認識されてる様だな〜というレベル。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/956
957: SGGK ◆6pZCoAtaxk [sage] 2010/04/20(火) 23:29:21 ID:Qp+P7yyi 今日はあまり進まず。 15秒後に状態が前半からハーフタイムに切り替わり、その切り替わった時の時間カウント表示が、 再び0から開始するようにしたかったのにうまくいかず。その後、運よく気付き、解決〜! if(matchstate == FIRST_HALF){ 略 } のenum型変数matchstateをゲーム開始時にif文に処理が来る前にFIRST_HALFに初期化しておく必要があり、 そのように初期化してたと思ってたところが間違っていた。 自作の初期化関数initStage()の中で、 matchstate==FIRST_HALF;と書いていたのが間違い。 正解は、 matchstate=FIRST_HALF; これで動いたのでたぶん今のところは大丈夫かも。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/957
958: 887 [sage] 2010/04/21(水) 00:27:35 ID:WN11nJQN デバッグも兼ねてステータス表示画面とかを作ろうと思ったが 画面レイアウトが面倒くさい。 ハードコーディングはしたくないんだけど 2Dレイアウト用ツールとかあるのかなぁ。 Inkscapeでsvgを吐き出してどうにかならんかなと調査中。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/958
959: SGGK ◆6pZCoAtaxk [sage] 2010/04/21(水) 23:54:15 ID:b1dfX0v4 何かいいツールが見つかるといいですね〜。 自分のサッカーゲームは、ソースとデータが混在しててかなり分かりにくくなってマス…orz 今日は、前半でゴールした時に「RED TEAM GOAL!」と表示されるように出来た(まだ赤チームの方しかゴールできない)けど、 その表示がいつまでも消えない…。今日はここまで〜! http://peace.5ch.net/test/read.cgi/gamedev/1006284805/959
960: 887 [sage] 2010/04/23(金) 01:38:14 ID:GvbKseDL 2Dのレイアウトの前に単なる画像表示をしていなかったことに気づいた。 一枚の画像にいくつかの絵を敷き詰めて x,y=0,0から32x32の領域を表示。みたいにしようと思った。 一枚の画像に絵を描くのはいいんだけど、座標と幅、高さの指定が面倒だった。 Inkscapeの勉強がてら矩形のIDと左上の座標、幅、高さを 出力するExtensionを書いてみた。 Inkscapeに画像をドラッグアンドドロップして 矩形で切り出す領域を囲っいつつIDを振っていく。 そして下記のようなJSONを出力できるようにした。 [ {'id': 'title', 'x': 0, 'y': 0, 'width': 128, 'height': 64}, {'id': 'menu', 'x': 0, 'y': 64, 'width': 128, 'height': 64}, ] 後はパースしてゲームで表示するときは Sprite.draw(ID); みたいな感じで表示できるようにした。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/960
961: SGGK ◆6pZCoAtaxk [sage] 2010/04/24(土) 00:41:27 ID:4vW5IApK Inkscape、Extension、JSON、ググってみたけど、後者2つは難しすぎて解りませんでした〜orz こ…こちらは、バグの話しか出来ない状態…。 error C2440: '=' : 'bool' から 'GOALSTATE' に変換できません。 (誤)if(goalstate1 =! goalstate){略} (正)if(goalstate1 != goalstate){略} error C2143: 構文エラー : ';' が '}' の前にありません。 (誤) switch (goalstate) { ( 略 ) default: } (正) switch (goalstate) { case RED_GOAL: ( 略 ) default: break; } これの解決だけで昨日はかなり時間を消耗…orz そして最後にもうひとつ、 、 error C2653: 'SoccerGame' : 識別子がクラス名でも名前空間名でもありません。 というキツいのが出て、昨日の夜には解決できなかった。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/961
962: 887 [sage] 2010/04/24(土) 01:11:18 ID:WvIyGjkM >>961 ExtensionはInkscapeの機能を拡張するための仕組みです。 Inkscapeの保存形式とかを自分の好きなように拡張できる仕組みがあるんです。 情報が少なくて苦労しました… JSONは単なるテキストのフォーマットです。XMLとかCSVみたいなもんです。 今帰宅で明日も嫁の来客の対応などで日曜まで何も手をつけれない予感。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/962
963: SGGK ◆6pZCoAtaxk [sage] 2010/04/25(日) 00:25:08 ID:eov3+MTk なるほど!どうもです〜!(たしかにExtensionは検索してもあまり出てこなかった感じ) こちらはほとんど進まずだけど、一応バグは取れた感じ。 やろうとしていた処理は、GOAL!という文字表示の経過時間を覚えさせておくための変数を宣言、定義して、 5秒後に消えるようにする内容だけど、この変数のところで昨日のバグメッセージが出てた。 大雑把に書くと、 soccergameクラスのヘッダファイル、soccergame.hの中で static unsigned int timer; static unsigned int s1; static unsigned int e1; と書いて、soccergame.hに書いてあるsoccergameクラスの宣言の外側で、 unsigned int timer=0; unsigned int s1=0; unsigned int e1=0; と書いてた。これは静的変数なんで外部で値を定義しなければいけないみたいな事が書いてあって、 実際、目的は同じで名前の違う変数もソースに含まれててそれはバグになってなかった。 だから、それとの違いを見つければバグも取れるだろうと思い、よく見てみると、 private:かpublic:の違い←これは関係なかった。 変数の定義をするときに変数名の前にその変数がメンバになっているクラスの名前が付いていたのでとりあえず同じように書きなおす、 unsigned int SoccerGame::timer=0; unsigned int SoccerGame::s1=0; unsigned int SoccerGame::e1=0; しかし、これでもバグが消えない。 そして、よ〜く見てみるとうまくいってる方の変数は、ヘッダファイルではなく 定義を書いているファイルの方に書いてあることに気が付く。 soccergame.hではなく、soccergame.cppの方に書くと動いた〜! 原因を理解した上での解決ではないので今後の不安が残るもののこのまま作業を進めることにするつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/963
964: 名前は開発中のものです。 [sage] 2010/04/25(日) 01:03:58 ID:Ou20NnNj 言語レベルのことで引っかかりすぎだろw http://peace.5ch.net/test/read.cgi/gamedev/1006284805/964
965: SGGK ◆6pZCoAtaxk [sage] 2010/04/25(日) 22:48:09 ID:FEKcXmS9 た…確かに! プログラマじゃないので要領がつかめず、なかなか前に進まないのがつらいところです。(汗;) 今日も少しだけ作業…。 ゴール得点後にボールがまだゴールに接したままなのでさらに得点がカウントされてしまう問題を直す。 ゴール判定直後から5秒間までは、ゴールの状態を表している変数をNO_GOALにしておいて、五秒後に 選手とボールの座標を初期位置に戻すようにプログラム! ここまでを前半戦の処理については一応実装出来た感じ。 あとはハーフタイムと後半戦にも同じようにするだけ。 書くとわずかな内容に見えるけど、頭こんがらがった。(苦笑) http://peace.5ch.net/test/read.cgi/gamedev/1006284805/965
966: SGGK ◆6pZCoAtaxk [sage] 2010/04/26(月) 23:24:15 ID:tiNRcB1d 試合開始から結果表示までの処理の流れの実装がなんとか完了。 テキストっぽい文字が表示されるだけなので見栄えは今までと変わらないように見える…orz とりあえずこれで休める〜! http://peace.5ch.net/test/read.cgi/gamedev/1006284805/966
967: SGGK ◆6pZCoAtaxk [sage] 2010/04/27(火) 23:03:19 ID:puWvjObW 次の小目標は、 今まですべての選手が一斉にボールを追いかけていたのをやめて、 FWは前1/3、MFは中1/3、DFは後ろ1/3の範囲にボールがある時だけ ボールを追いかけるようにプログラムを直す。 …にしてみる予定。 それとプログラムソースの方は作業ペースを少し落としてもやむを得ないので、 ネット、3D、APIの勉強にも少しずつ並行作業で挑戦してみよ〜かな〜という気もしてマス。 ちなみに3DとAPIについては、ゲームプログラムの勉強を始めたばかりの頃に 一度挑戦してすぐに挫折した経験あり…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/967
968: 名前は開発中のものです。 [sage] 2010/04/27(火) 23:42:18 ID:0svey8m3 かじってみて挫折したものは必要に迫られてからやり直せばいい。 必要でもないのに再挑戦したってまた挫折するだけ。 わき道にそれすぎ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/968
969: 887 [sage] 2010/04/28(水) 00:06:08 ID:Bz3TRBQw 2D描画とツール探しでプログラミングが停滞中。 3Dはモデリング、オブジェクト配置、アニメーション、全てblenderで作れるが 2Dでオブジェクト配置、アニメーションができるツールが見当たらない。 ファイルフォーマットでいえばSVGが限りなく答えに近い気がしてて InkscapeがSVG Animationに対応すれば完璧なのに! ツールでいえばFlashが一番近いと思うんだけど有料ソフトは一切使いたくない。 とりあえず wysiwyg できないけどテキストでアニメーションデータ書くか… http://peace.5ch.net/test/read.cgi/gamedev/1006284805/969
970: SGGK ◆6pZCoAtaxk [sage] 2010/04/28(水) 23:33:30 ID:0ikVrkTs >>968 そ…そう言われたらなんとなくそんな気もしてきました。 2Dで作れなければ結局その先の事を考えても意味が無いかもしれないと考えてみれば、 まずは2Dをどこまでやれるか試す方が先かな〜とも思うので、やっぱり2Dを優先する方針でいきます。 >>969 自分も何か知ってれば書きこみたいのですが、実はそのジャンルのツールを使用した経験が無くて…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/970
971: 887 [sage] 2010/04/29(木) 00:34:08 ID:ahTxsaJx 適当に2Dの配置+アニメーション用データを定義してみた。 タイトル(ID:title)のy座標が0〜10フレームの間で-50.0から10.0に変化し、 項目0(ID:item0)のx座標が30〜40フレームの間で340.0から230.0に変化する場合だと [ {"id": "title", "animation": [ { "name": "y", "type": "ease_out", "begin": 0, "end": 10, "from": -50.0, "to": 10.0 } ] }, {"id": "item0", "animation": [ { "name": "x", "type": "ease_out", "begin": 30, "end": 40, "from": 340.0, "to": 230.0 } ] } ] みたいに書く。 まだ色々機能が足りないけど、とりあえず動くところまでできた。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/971
972: 887 [sage] 2010/04/29(木) 13:24:26 ID:ahTxsaJx GWはしっかり休めるのでゲーム作りに励めそう。 さっそくVS2010EEが出てたけど、 今回のゲームが落ち着くまでは2008で行こうかと思う。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/972
973: SGGK ◆6pZCoAtaxk [sage] 2010/04/29(木) 23:38:00 ID:LPVTG3EU >>971 自分も何かテクニックを使ってみたいけど、まだ自分には無理そうな感じです〜。 中身を見てそう言えば自分の選手データにはIDに相当するものが無かったと気付き、 後々不便が起きるかもしれないので、今すぐ使わなくてもとりあえず選手データ初期化するときに IDも入れておこうかな〜と思ってみたり…。 一応>>967で言っていた選手の動きを実装する前に選手の動きの種類を切り替えるしくみとして使っていた ストラテジーパターンというやつを無くすことができないか考えているところ。 これもテクニックなのかもしれないけど、もともと14歳シリーズの本がこのやり方を使っていたので やむを得ず良く分からないまま使っていたのが現実なので、このまま続けると後々苦労する予感。 何故かというとどうもこのやり方だと動きを切り替える事ができるといっても 入力と出力の形は同じでなければならないという制約があるようだから…。 ちょっとだけ考えてみていい方法が思いつかないなら、このまま進めてその制約で出来る範囲の動きで我慢するか、 またifとか使って対応するかのどちらかでいくつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/973
974: 887 [sage] 2010/04/30(金) 01:01:47 ID:AR5Zrq/a >>973 デザインパターンにこだわらずに作ったほうがいいと思います。 switchを全部strategy patternにする必要なんてないんだし。 自分が作りやすいように作ったほうがいいんじゃないかな。 メニュー操作周りを作ってます。ドラクエみたいな コマンド一覧->使用者一覧->まほう一覧->対象一覧(まほうを使うとき) のように選択対象が切り替わっていったり、キャンセルで戻ったりの仕組みを考えていた。 なんとなくスタックでいけそうな気がする。 開いたメニューをスタックにpushしていって、topの奴が操作対象になる。 キャンセルでpopして前のやつに戻る。みたいな感じで。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/974
975: 名前は開発中のものです。 [sage] 2010/04/30(金) 02:47:43 ID:QJ0EVrLS 僕も修行していいですか? Cのポインタでつまるレベルなんですけど テトリスとかオセロとかのミニゲームをなんとか作ったけれど、基礎を固めていくのは性に合わないのかいよいよ限界です。 タクティクスオウガを初めてやったとき目ん玉飛び出るくらい楽しかったので クォータービューのマップを使ってなんかやれたらいいなと http://peace.5ch.net/test/read.cgi/gamedev/1006284805/975
976: 887 [sage] 2010/04/30(金) 10:47:13 ID:AR5Zrq/a >>975 どぞどぞ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/976
977: 名前は開発中のものです。 [sage] 2010/04/30(金) 13:42:21 ID:QJ0EVrLS >>976 がんばりやす。 初心者らしくVC++2005とDXライブラリで作ります。 簡単に変数を表示できる簡易デバッグ用のクラスや、FPSを取得する関数がミニゲームつくりの段階で作ったのがあるんで これを使ってしばらくは負荷テストに終始する予定です。 何も考えずに作ってみたらどうやらクォータービューはマップの描画だけでかなり負荷がかかるみたいなので。 今日までのテストでわかったことは マップチップを長い逆三角形のように並べてマップを動かして負荷の推移を調べた ・マップチップが画面に多く表示されている部分は高負荷で、チップが少ない部分は低負荷だった →画面からはみ出た部分に関しては描画処理を行わない仕様っぽい。 同じマップでマップチップのサイズを大きくしてみた (はみ出た部分は処理を行わない事がわかったのでチップを大きくし、面積当りの処理の回数を減らした) ・負荷が軽減した →描画面積より処理の回数の方が負荷に与える影響は大きい。 クォータービューの醍醐味である高さ方向へチップを重ねてみた とりあえず単純に全てのチップを2段3段と重ねて厚くした ・負荷が一気に大きくなった →描画に関しては、画像が上書きされて見えなくなった部分も描画が行われていると考えられるため単純に2倍3倍の描画の負荷がかかっていると推測 次のテスト予定 3次元配列と構造体配列マップデータとしてどっちが適してるか 僕の環境で1画面にいくつまでチップを表示させても良いのか 馬鹿でかい画像と、ウィンドウと同じサイズの画像とで、ウィンドウいっぱいに表示したときの負荷は同じなのかどうか こんな作業がしばらく続く予定です。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/977
978: SGGK ◆6pZCoAtaxk [sage] 2010/05/01(土) 00:27:48 ID:OKqHyNID >>974 なんとなくそのような気がしてきた感じ…。 ストラテジーパターンで書かれているところを普通にifとswitchに書き直してみようかな〜と思います。 >>975 ど〜ぞヨロシクです〜!。自分はいつも言語段階で躓いてます!! http://peace.5ch.net/test/read.cgi/gamedev/1006284805/978
979: 887 [sage] 2010/05/01(土) 20:09:26 ID:c0JfoAQI ttp://github.com/happana/srpg/downloads SRPG version 0.0.11 キャンプメニュー追加。簡単な装備切り替えを実装。 今回は2D周りのアニメーション実装でかなり時間がかかった。 結局2Dのアニメーションは手書き… 1.テキストで座標とか書く 2.バイナリ化 3.ゲームで確認 を繰り返すことに…面倒臭い! メニューはかなり面倒臭いことが分かった。 画面遷移からレイアウトやら表示すべき情報やら 考えないといけないことがいっぱいある。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/979
980: 975 [sage] 2010/05/01(土) 22:48:24 ID:5bFAyxjg >>978 どうもよろしくお願いします。僕も言語レベルで躓きます 分岐なんてifとswitchとあとなんか関数ポインタとか言うのがあるというのを聞いたことがある程度で ストラテジーパターンなんてはじめて聞きました。そんなレベルです。 クォータービューを軽く描画するための残りの負荷テストが大体終了 まだあるけどキリがないんで ふわっふわと実装へ向かってます 複数の画像を組み合わせた画像を新たな単一画像としてメモリにロードできるような方法があれば 画像をたくさん用意しないでも済むんですけど、色々さがしてみまーす http://peace.5ch.net/test/read.cgi/gamedev/1006284805/980
981: SGGK ◆6pZCoAtaxk [sage] 2010/05/02(日) 00:42:40 ID:yO5MYKxx >>979 キャンプメニュー、見れました〜。 自分は、状態の遷移でifやswitchのスパゲティになってます。 >>980 もしかしてこのスレで紹介されてた>>822の事だとか…。 前半後半の遷移実装版をアップしようとして、 VC++でreleaseモードでコンパイル(デバッグ実行)したらなぜかバグ。 debugモードなら問題無くコンパイル出来るのにという謎に遭遇。 場所は画像を表示する部分で登録してる数よりもはるかに大きな数の 配列が用意されてしまってるところまではわかったけど、原因わからず…orz もう1年ぐらいかけてもいいからCで書きなおすのが良いかもと思いかけた時、 なんとなく「リビルド」してから、コンパイルしたら出来た! でもこの調子だといつの日かCで全部やり直し!なんてことになるかもと少し心配な感じ。 とりあえず、うpしてみます〜! ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0100zip.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/981
982: 887 [sage] 2010/05/02(日) 01:26:58 ID:sxxH9fJ2 >>981 ソースコードも上げてれば困ったときに誰かが教えてくれるかもしれない! とか言ってみる。 そんな希望を持ちつつ僕の場合はソースコードも上げてます。 みんなでソースコードとかも見せ合って バグとか技術とか教え合ったりできたらいいなぁとか思ってます。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/982
983: 名前は開発中のものです。 [sage] 2010/05/02(日) 01:51:14 ID:J6RVu3x/ 外野だけど887にアドバイスできるレベルの人はたぶんほとんど居ないと思うの http://peace.5ch.net/test/read.cgi/gamedev/1006284805/983
984: 名前は開発中のものです。 [sage] 2010/05/02(日) 03:38:20 ID:GvOmVzhJ >>981 おおっと日向君強引なドリブルからのぉ・・・ゴォオオオオオオオルッ!!面白かったです。 サッカーゲームはAIも難しそうですね。サッカーやってましたけど人間の僕もよくわかんないで動いてましたし。 DerivationGraph は近いんですけどやりたいことはこれとまったく逆の処理で DXライブラリでいえばGetDrawScreenGraphが該当するんですけど透過情報が消えてしまうのが困り物です。 透過情報でなく、透過色指定をDXライブラリで出来た気がするんでその線で行ってみます プログラムだけではアレなんでドット絵も晒して行こうかと思います。 憧れのタクティクスオウガ風のキャラ雛形です。 本音では解像度的にもう少し大きいサイズがいいんですけど大きすぎると一人で作るには作業が大変なんでとりあえず小さめに ttp://www.gazo.cc/up/10455.png http://peace.5ch.net/test/read.cgi/gamedev/1006284805/984
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.014s