[過去ログ]
1人でゲームが作れるように修行します。 (984レス)
1人でゲームが作れるように修行します。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
823: SGGK ◆6pZCoAtaxk [sage] 2009/08/20(木) 23:54:22 ID:P8XU97EC >>822 DXライブラリの関数リファレンスページで探していたにも関わらずこの関数に気付いてませんでした・・・。 これなら>818で考えてた画像を1枚に詰め込んでおいて、その1枚の四辺を2の乗数にし、 このDerivationGraph関数を4回使えば出来そうな気がしてきました。 これでちょっとやってみます。ありがとうございました〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/823
824: 名前は開発中のものです。 [sage] 2009/08/21(金) 01:25:53 ID:7KwnoiNd 俺もはっきりと解ってるわけじゃないけど、今まで俺が得た情報では 「元の画像」が2の乗数のサイズなら 切り出した画像のサイズはどうでもいいみたいだよ。 俺が誤解してるのかも知れんけど、俺はそう認識してる。 もっとも、切り出した方の画像も2の乗数サイズにしてしまえば 誤解か誤解でないかは気にする必要もなくなるけどね。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/824
825: SGGK ◆6pZCoAtaxk [sage] 2009/08/22(土) 00:03:58 ID:RiVKwg/q >「元の画像」が2の乗数のサイズなら >「切り出した画像のサイズはどうでもいいみたいだよ。 自分もその認識で明日、画像データを作って、プログラムを直してみようと思います〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/825
826: ひややっこ [sage] 2009/08/27(木) 22:19:44 ID:GmqjVtRm 規制明け。 ごめん飽きた。 プレイヤーを動かす前提のところまでは作って、 さてこれから敵AI、盤面評価に取り掛かろうかという土台作りのところまで。 ここまででもクソース晒してるんだから、穴が開くまで視姦して必要なもの盗んでくれ。 レーダーの実装は、レーダー用に別座標を用意するんじゃなく、座標一元管理して 割り算とかで描画ごとに計算して求めるのがスジ。 1日かからない仕事なんで作って見せてもよかったんだけど。レーダー作るつもりではあった。 あと、よくわからんけど固定数の配列じゃなくstd::list持ち込んで人数可変にするとか。 画像の2乗サイズは、3Dポリゴンに貼り付けるテクスチャの縮小表示関連の、ハード寄りの話。 まあDXライブラリもDirectXに依存してるんで無関係では無いんだけど 2乗サイズに合わせれば無駄なく効率的にメモリを使えるというだけで、それを守らなければ 目に見えて遅くなるような事態になるようなものではない。・・・はず。 ミップマップとかでぐぐってみると何かわかるかも。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/826
827: SGGK ◆6pZCoAtaxk [sage] 2009/08/28(金) 23:27:35 ID:sBvEqBOX >>826 お・・・お疲れ様です〜。でも再開の時には何時でもまた戻って来てください〜。 色々頂いたヒントもいつか活用できるようになれるよう修行は細々と続けていこうと思ってます(超ゆっくりですが)。 >782や>825で自分で言った事がまだ出来ずの状態・・・orz 一応822氏の関数で画像データ読み込みの関数は書き直し、座標の初期化関数はいらないかもしれないので保留。 レーダーのクラス内にviewという名前のメンバ関数でも用意して表示しようかなと思ってるけど、物凄く作業が遅いので完成予想言えずな状態・・・orz。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/827
828: SGGK ◆6pZCoAtaxk [sage] 2009/09/05(土) 00:16:44 ID:mpLRq1Zr レーダー画像読込、表示位置初期化、描画の関数を書いてコンパイル。 ヘッダファイルの書き忘れ、関数の定義と宣言での変数の個数不一致、メンバ変数のアクセス範囲間違い、 グラフィックハンドル4個欲しかったのにgh[3]と定義してgh[0]〜[3]あるような思い込み間違い。(gh[4]で定義したら直った。) その他色々直してコンパイルは通ったものの、 1.選手を動かすとレーダーのフィールドが微妙に動く。 2.レーダーの点が1個しか出なくて、しかもボールが表示されない。 という現象が残ってるので、ゆっくりと考える・・・予定デス。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/828
829: 名前は開発中のものです。 [sage] 2009/09/05(土) 01:22:10 ID:em7bUaop あてずっぽな勘 >1.選手を動かすとレーダーのフィールドが微妙に動く。 動き方によるが、除算した時に端数が出て余計な事をしてるのかも。 >2.レーダーの点が1個しか出なくて、しかもボールが表示されない。 全部表示させるつもりが一個しか表示してなかった、とか 全ての点が計算間違いによって一箇所に重なってしまってるか、 一個を除いて画面外に出てしまってるのか、で原因を絞り込むのがいいかも。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/829
830: SGGK ◆6pZCoAtaxk [sage] 2009/09/06(日) 00:42:28 ID:PMabGNkj >>829 レーダー付きました〜。 原因は、描画する時に指定するレーダーのグラフィックハンドルと選手やボールのグラフィックハンドルの指定が入れ替わっていた事。 レーダーは、自分がコントロールできる選手の動きにあわせて動こうとしてしまい、選手やボールはレーダーの座標左上に全部重なって表示されていた・・・orz >全ての点が計算間違いによって一箇所に重なってしまってるか、 ← が原因。ありがとうございました〜♪ 次は、>>760で言っていた所を直す予定。3ヶ月以上過ぎて忘れかけてますが、 原因は分かってるのでどのようにプログラムを書くかを考えていく予定〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/830
831: SGGK ◆6pZCoAtaxk [sage] 2009/09/17(木) 22:24:07 ID:ujPBRvzy >>760の問題は3日程で解決したけど、今度はボールが動かない問題発生。良く見ると、ボールが微妙に振動している。 とりあえず、>>760については、 選手の移動関数が、1.静止、2.マウス位置に向かう、3.ボール位置に向かう、4(x、y)に向かう、の4種類切り替えるようにしてあるのに対し、 呼び出された関数側でDXライブラリのGetMousePoint関数でマウス位置を得るようにしているため、移動関数側で「2.マウス位置に向かう」関数だけがカメラの座標を得られるようにして、cx+mx、cy+my の変換をする必要があるけど、それだと関数1〜4を共通に呼び出して、呼び出された側で1〜4を切り替えるしくみが崩れるので今の自分では出来そうにない。 結局、選手の移動関数を呼び出す側でカメラの座標を読み出せるようにして、GetMousePoint関数も選手の移動関数を呼び出す側で使い、(cx+mx、cy+my)を「(x、y)に向かう」関数に渡して解決。 ボールが動かない問題については、昨日やっと原因に気が付いたけど、正解かどうかは未確認なので、後日の予定。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/831
832: SGGK ◆6pZCoAtaxk [sage] 2009/09/19(土) 00:22:04 ID:TwF/0L0P うpに備えてフォルダをコピーしてそのフォルダと主要なファイルの番号を1つ上げる。 >>831のボールが動かず微妙に振動してる問題が解決。 ボールが画面端に来た時に反射するためのif文の範囲が(0,0)〜(640、480)になっていた。 ボールの初期位置はフィールドの範囲(0,0)〜(1696,1088)での座標(848,544)にしていたので このif文だと常に条件に引っ掛かりループ毎に向きが反転して、1ループでの微小な移動しかしてない状態で向きが反転するので 振動しているように見えたのが原因。 ボール反転のif文の範囲を(0,0)〜(1696,1088)にして解決! しかし、今度はボールをどの向きから蹴っても、ボールが右斜め下にしか移動しない問題が発生。 これも運良く解決。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/832
833: SGGK ◆6pZCoAtaxk [sage] 2009/09/19(土) 00:40:07 ID:5Ck1thZ0 原因は、ボールの移動関数の中で、選手が蹴る瞬間のx、y方向を計算する為の毎ループ更新されてる数値を 呼び出してるのだけど、その数値は選手の移動位置を計算する時にループ毎に更新され、選手のメンバ変数に入力しておかなければ ならないけど、その計算式が入ってなかった為、x方向、y方向ともに初期値の1が使われ続けていたから。 が、それを直しても何故か動かない。・・・orz 相当悩んだが、ふと「コンパイルされてないのでは?」と思い、フォルダ内のobjファイルを見ると日付が古い!更新されてない? 良く見ると、選手の移動関数は、ヘッダファイルに宣言、定義、オブジェクト(インスタンス?)の生成処理がまとめて記述してあり、 これを修正したのに何も反映されてない事に気付く。(printfDX入れても変化無いのでおかしいと思った。) 結局、このヘッダファイルを取り込んでいるcppファイルをコンパイラ画面で右クリックすると「コンパイル」のメニューが出たので、 これでコンパイルしてからいつもの全体でのコンパイルをしたら動いた! http://peace.5ch.net/test/read.cgi/gamedev/1006284805/833
834: SGGK ◆6pZCoAtaxk [sage] 2009/09/19(土) 01:06:21 ID:5Ck1thZ0 ここで区切りを付けてうp ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0053zip.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/834
835: STG ◆Fp.xSEIREI [sage] 2009/09/21(月) 09:21:18 ID:EUcZHdoo こちらのスレには久々の出没。エターナったわけではない PC移行した直後に新PCのマザー死んだり規制巻き込まれたり散々だぜー クラスの使い方というか便利さがやっと理解できたのでソースを1から書き直す。スパゲティを解消するためでもありより良い処理を実装するためであり クラス便利すぎワロタ >>834 問題なく動いたー ボールか操作キャラを追いかけるように自動でカメラ動かすとサッカーゲームっぽくなりそう 画面外にボール蹴り出そうとしたら跳ね返ってきたww http://peace.5ch.net/test/read.cgi/gamedev/1006284805/835
836: SGGK ◆6pZCoAtaxk [sage] 2009/09/22(火) 00:48:03 ID:we6NkNm8 >>835 PC移行、規制解除おめです〜! >ボールか操作キャラを追いかけるように自動でカメラ動かす な・・・なるほど!難しそうだけど次はこれ(↑)を目標にしてみます〜!。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/836
837: SGGK ◆6pZCoAtaxk [sage] 2009/10/02(金) 00:25:01 ID:qUjxUVKo 改めて見ると自分の書き込み口調が2ちゃん的になりつつあるような気が・・・orz それにしても時間の流れのなんと早いこと・・・、作り始めて約2年と1ヶ月半程でこの進み具合では 諦めるのが普通なのかもしれないし、続けるべきか悩むところ。 >836の課題はまだ出来ず・・・orz カメラ(画面)の中心がボールを追いかける方法でやろうとしたのに対し、カメラ(画面)はボールのある方向とは異なる方向に向かってしまう。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/837
838: 名前は開発中のものです。 [sage] 2009/10/02(金) 01:19:38 ID:LvKXbccb >カメラ(画面)の中心がボールを追いかける方法でやろうとしたのに対し、 >カメラ(画面)はボールのある方向とは異なる方向に向かってしまう。 カメラの位置ってのはカメラの位置として独立したものでしょう? そのカメラの座標に、プレイヤーが操作したキャラクターを中心とした座標を入れるか、 ボールを中心とした座標を入れるか、の違いでしかないでしょう? もしそこが正しくできているのに違う方向に動いてるのだとしたら それは入れる座標そのものが間違ってるとしか考えられません。 ありがちなのがプラスマイナスを間違えたとかそんなのだと思いますが……。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/838
839: SGGK ◆6pZCoAtaxk [sage] 2009/10/03(土) 00:20:18 ID:tUVDaRpM >>834でうpした時のデータで作業していて上書きしてしまった事に気付く・・・orz >>838 助言ありがとうございます〜。 1日おいて目を皿にしてソースを見たところ、間違い発見。 >それは入れる座標そのものが間違ってるとしか考えられません。 ↑どうやらこれが原因のようです。 ボールの座標とカメラ中央座標の距離を出す式の中でカメラ中央座標はフィールド全体で見た座標にしなければいけなかったのに、 フィールドでのカメラ左上座標(cx、cy)+(フィールド横幅/2、フィールド縦幅/2)になっていた。 正解は、 フィールドでのカメラ左上座標(cx、cy)+(カメラ画面横幅/2、カメラ画面縦幅/2) 実は、この修正だけでは何故か画面がぶるぶる振動するという不具合が出たけど、 ボール座標とカメラ中心座標の距離(絶対値でみる)が0.001(←適当に決めた数値)より小さくなったら、 ボール座標 = カメラ中心座標 ということにしてみたら直るという謎。 ここで区切りのうp ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0054zip.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/839
840: STG ◆Fp.xSEIREI [sage] 2009/10/05(月) 22:58:14 ID:avu8M6ED http://www.dotup.org/uploda/www.dotup.org224579.jpg 左の壁にボール押し込んで遊んでたらボール増えたw 当たり判定は無い模様 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/840
841: STG ◆Fp.xSEIREI [sage] 2009/10/06(火) 06:13:01 ID:l/SEN5NP テンプレートを覚えた! SUGEEEEEEEEEEEEEEEEEEEEEEE 型自由って何てチート 多態勢によって適切なオーバーロード関数が呼び出される! http://peace.5ch.net/test/read.cgi/gamedev/1006284805/841
842: 名前は開発中のものです。 [sage] 2009/10/06(火) 11:48:54 ID:LS2z0sEa その分余計にメモり食うけどねー http://peace.5ch.net/test/read.cgi/gamedev/1006284805/842
843: 名前は開発中のものです。 [sage] 2009/10/06(火) 21:10:26 ID:YLRyQOlh >>834の時点でボール分裂するよ って言おうとしたら、>>SGGK氏じゃなく>>せいれい氏だった(笑) テンプレートやオーバーロード・オーバーライドは意味不明バグの温床になるからなあ。 理解はしててもイマイチ使う気になれない。 テンプレ推奨のSTLとかは使うけど。 ゲームプログラムならば、ソースがキレイになるならメモリや実行速度程度は許容範囲。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/843
844: STG ◆Fp.xSEIREI [sage] 2009/10/06(火) 21:36:27 ID:l/SEN5NP >>842 なるほどー、やっぱりデメリットもあるのね >>843 SGGK氏は気づいてるのかな 強力で便利な機能だけど危険だよなぁ STLはやりたいことが微妙にできそうに無かったから似たようなのを自作 一年前のCを始めたころのソースはひどくてとても手直しできそうに無いから 1から作り直す羽目になってるwww整理は大事だww http://peace.5ch.net/test/read.cgi/gamedev/1006284805/844
845: SGGK ◆6pZCoAtaxk [sage] 2009/10/07(水) 00:02:52 ID:6L6MNmu7 >>840 ありがとうございます〜。これは気付いてませんでした。(汗;) >左の壁にボール押し込んで ↑このコメントがヒントになってるような気がするので調べてみます。 画面に出るオブジェクトの移動計算と描画を別々の関数にしたときに何か見落としがあったのかもしれません。 原因がわかるまで日数かかりそうな予感・・・orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/845
846: SGGK ◆6pZCoAtaxk [sage] 2009/10/18(日) 21:33:06 ID:MJjq88tM 2、3日しか経っていないような気がするのに、実際は10日以上過ぎてた。orz ボールの表示は1個になった感じ。 自分のプログラムのメインループは順序がおかしいかもしれないけど次のようになっていて、、 (1)カメラ画面の座標計算 (2)カメラの見ている範囲にあるもの全ての描画 (3)選手の座標計算 (4)ボールの座標計算 (5)ゴールの座標計算 (6)レーダーの描画 原因は、(4)のボール座標計算の中に残っていたボールの描画関数を消し忘れていたから。 (4)の中で描画されたボールの座標はフィールド全体の座標でしめす位置に描画されてるので、 (2)のカメラで見ている範囲(640x480)の外の位置を示しており、実は2個のボールを描画していたにも関わらず、 (4)の描画は見えなかった。 でも、カメラが左に動き、左の壁に近付くとカメラで見た時の座標値とフィールド全体で見たときの座標値が同じ値に近付いてきて (4)で描画していたボールもゲームの画面に収まってしまうので描画されるのでボールが2個表示になっていた様です〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/846
847: SGGK ◆6pZCoAtaxk [sage] 2009/10/19(月) 23:02:23 ID:HC3YJnG/ 今日は画面の切り替え(スタート画面、ゲーム画面と終了画面)が出来る様にしようと思ったものの、 やり方をすっかり忘れてしまってる(忘れるのはものすごく早い)ので、 14歳からはじめるC++の該当部分を読むつもり。(今日はあと30分くらいしかないorz) 画面の切り替えは元々参考にしていたソースに残っていたのに当時は画面遷移処理があるとソースが理解しにくいので削除してしまっていた・・・orz 結局それをまた元に戻そうというのは時間の無駄だったかも・・・。 本当はこのスレで一時期いろんなHPで調べてた「状態遷移の考え」を使いたかったけど、 14歳ソース復活の方がたぶん作業が早く進むと思うのでこちらを選択。 もちろん「状態遷移」についてもちょこちょこ時間つくって復習するつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/847
848: STG ◆Fp.xSEIREI [sage] 2009/10/25(日) 06:58:01 ID:0L4tr0A8 キーコンフィグ関係をざくっと組んだー ここに来て初めてビット演算を勉強 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/848
849: SGGK [sage] 2009/10/29(木) 00:23:49 ID:WOQZyTTw パソコンが不調でコテハンの番号が見つからず、復帰に時間がかかりそうなので生存報告〜。 「ビット演算 ゲームプログラム」で検索! 難しそうなページがいろいろヒットしましたが、ひとつの変数でいろいろな 状態をチェックするテクニックみたいなものかも・・・。 いまやろうとしている「状態遷移」での判定にも応用できそうな感じ。 ・・・と言ってる状況なので実はまだ画面の遷移はできてませんorz 時間の過ぎるのはアッという間だけど、今はまだあきらめないつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/849
850: 名前は開発中のものです。 [sage] 2010/01/16(土) 13:32:30 ID:h9+5xWTR すっかり書き込みなくなったけど、やってるかな〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/850
851: 名前は開発中のものです。 [sage] 2010/01/16(土) 21:05:10 ID:1E+5//pv >>850 久々に来たかと思ったら違ったw もう辞めちゃったかもね。。。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/851
852: STG ◆Fp.xSEIREI [sage] 2010/01/17(日) 00:17:41 ID:SItBpq9Q 俺は生きてるぞー 他の人は知らんww http://peace.5ch.net/test/read.cgi/gamedev/1006284805/852
853: 436 [sage] 2010/01/17(日) 02:33:13 ID:n4iFgyhw すいません、すっかり怠けとります・・・俺は駄目な人間です ストーリーや設定のアイディアだけが溜まっていく駄目進行・・・ http://peace.5ch.net/test/read.cgi/gamedev/1006284805/853
854: SGGK ◆6pZCoAtaxk [sage] 2010/01/19(火) 00:15:03 ID:fX0Gghpg パソコンの不具合はなんとかなり、コテハン番号も無事見つかった。 書き込み規制が昨年末から続いていたけどやっと解除されたので久々に書き込み〜。 >>850 かなり休んでしまいましたが、まだ諦めてはいないです〜。 >>851 諦めてはいないけど、これ以上先にいけるか微妙に思ってます・・・。 >>852 お久しぶりです〜。今年もお互いに完成を目指していきましょ〜!! >>853 お!?・・・お久しぶりです〜!!。こちらも同じような感じです〜。 一応まだ1月だし、自分としては不可能でもいいから大きな目標を立ててなんとか細々と続けてみよ〜と思ってます。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/854
855: 名前は開発中のものです。 [sage] 2010/01/19(火) 01:18:31 ID:KBTIDtQy プログラムなんて小さな目標の積み重ねだと思うけどなぁ。 「画像表示させてみよう……できた」 「動かしてみよう……できた」 「操作してみよう……できた」 「動ける範囲制限してみよう……できた」 「背景つけてみよう……できた」 (中略) 「ぎゃーいつのまにか膨大に〜! 最初の頃に作った部分どうなってるか覚えてねぇ!!」 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/855
856: 名前は開発中のものです。 [sage] 2010/01/19(火) 01:49:22 ID:c3+27muf おお、意外にも(ごめんw)みんな生きてる 久々に自分も何か作ろうかしら http://peace.5ch.net/test/read.cgi/gamedev/1006284805/856
857: SGGK ◆6pZCoAtaxk [sage] 2010/01/20(水) 23:55:08 ID:rGiwGeCw >>855 書いた直後に自分も(大きな)は(小さな)だよな〜と思いましたw まずは小目標として、昨年止まっていた画面の状態遷移の実装を今月中に出来るよう急ごうと思ってます。 >>856 自分は昨年末頃から制作継続が微妙な感じでしたが、なんとか戻ってきましたw たぶん制作カモ〜ン!だと思いますよ〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/857
858: 名前は開発中のものです。 [sage] 2010/01/27(水) 22:19:57 ID:Dt03y0tk なんとなくぼちぼちやってる。 タワーディフェンス系って、勝利の快感が薄いんだよなあ。 ボロボロになるまで攻められて虫の息でも守りきったという事実への達成感がどうにも実感できない。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/858
859: SGGK ◆6pZCoAtaxk [sage] 2010/01/31(日) 21:37:59 ID:i2sNFclZ タワーディフェンス系といえば過去にコマンド&コンカーみたいなゲームをプレイしたことがあって、 資源採掘、武器生産、建築、防衛、侵攻、その他などのバランスを取るのが難しくてなかなか勝てなかった記憶があります。 こちらは昨年のパソコン不具合でソフト全部入れ直したのがうまくいってないようで、 問題無かったはずのプログラムがなぜかコンパイルエラー・・・orz 本(14歳シリーズ)の設定見直してコンパイラがDXライブラリを認識してくれるようにはなったみたいだけど、 ある変数が初期化されてないというエラーが残ってて、これをどう初期化すればよいのかわからずSTOP。 適当な数字入れると画面がものすごくちらついたり、画面が上下に2分割して画像が入れ替わったりする。 この変数については、いままでは初期値入れてなくてもエラーにならなかったのに・・・orz とりあえずソースを全部プリントアウトして布団に入る時に少しずつソースを読んでなんとかするつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/859
860: SGGK ◆6pZCoAtaxk [sage] 2010/02/01(月) 23:01:11 ID:sCeHScUP コンパイラは通るようになったけど、画面の振動は直らず・・・orz この症状は直っていたと思ってたけど、そうではなかったらしい。 原因としてはカメラがその中央にボールを見るように移動するところでカメラの中心座標とボールの座標を元に次のフレームでの座標を計算するための sin、cosを算出する時に使うカメラ中心〜ボールの距離(←ちなみにこれが昨日言ってた初期化してなかった変数値)が 0に近くなるときに四捨五入でもされて座標が1ドット分振動してるではと考えてた。 なので距離が一致してもおかしくないほどに「カメラ中心〜ボールの距離」が小さくなった時には 座標の更新をしないようにしたにも関わらず振動する。 まぁ、そのうちわかるかもしれないということにして、今度こそ画面の遷移に移ろう〜!!。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/860
861: STG ◆Fp.xSEIREI [sage] 2010/02/14(日) 05:17:21 ID:P68kmKyJ マルチスレッドについて勉強中 これは面白そう http://peace.5ch.net/test/read.cgi/gamedev/1006284805/861
862: SGGK ◆6pZCoAtaxk [sage] 2010/02/18(木) 00:00:05 ID:i6/kfDhg こ…こちらの方はあまり進んでなくて昨年から遷移のやり方を時々色々調べてたけど理解できそうにないので、 結局if〜thenでやりそうな予感デス…orz エクセルで遷移図もどきを一枚だけ書いてみたところ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/862
863: 名前は開発中のものです。 [sage] 2010/02/18(木) 01:48:42 ID:ncTcoxx+ 解らない事にいつまでもこだわってたら前へは進めないよ。 もちろん困難を乗り越えていく事で成長するわけだから、そういう姿勢は大事だが、 今はそんなレベルの話じゃないでしょう。 赤ん坊が歩こうとするのに、先に右足を出すか左足を出すか悩んでるみたいなもんだ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/863
864: SGGK ◆6pZCoAtaxk [sage] 2010/02/18(木) 23:59:50 ID:hae32g78 た…確かにそのような気がします。 とりあえず現状で出来るやり方でトライしてみます。 今日は遷移に使う画像を2枚作成。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/864
865: 名前は開発中のものです。 [sage] 2010/02/23(火) 02:57:15 ID:WaulUepv 私も修行させてもらいますね http://peace.5ch.net/test/read.cgi/gamedev/1006284805/865
866: STG ◆Fp.xSEIREI [sage] 2010/02/23(火) 03:22:46 ID:FpMmFhwO どうぞどうぞ マルチスレッドおもしろい 調子に乗ってバックでBGMデータ1000個読み込ませたらメモリ死んだ http://peace.5ch.net/test/read.cgi/gamedev/1006284805/866
867: SGGK ◆6pZCoAtaxk [sage] 2010/02/23(火) 23:27:41 ID:oeK0muLS どうぞです〜! こちらは、以下にUPしてる図中の「5秒後にGAMEOVER画面からタイトル画面に移動」が うまくいかなくて停滞中・・・orz ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0081jpg.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/867
868: SGGK ◆6pZCoAtaxk [sage] 2010/02/25(木) 23:58:05 ID:l4qfFF3S 原因らしきところはわかってきた感じだけど、まだバグは取れず。 画面の状態が切り替わった時に必ず一度だけ(例えばゲーム画面からゲームオーバー画面に切り替わる時) starttime = GetNowCount(); を実行し、その後はループを繰り返すたびに例えばゲームオーバー画面中のプログラム内では、 if((GetNowCount()-starttime )> 5000){ setGameState(GAME_TITLE); } を行いifを満たせばタイトル画面に移るはずなのに上記2つのstarttimeの中身が 全く異なっていて2番目の方のstarttimeにはものすごく大きなマイナスの数値が入っていたため、 ifがすぐに満たされてしまいゲームオーバー画面が瞬間的にタイトル画面に切り替わってた・・・orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/868
869: STG ◆Fp.xSEIREI [sage] 2010/02/26(金) 02:59:53 ID:Hug2MG2J 人によってぜんぜん違う方法で実装してて新鮮だ 俺の場合はメインループを60fpsで回してそこから各画面にとんでるから5秒カウントするなら毎フレームごとにカウンタを++して300以上なら画面遷移呼び出しとかになるかな http://peace.5ch.net/test/read.cgi/gamedev/1006284805/869
870: SGGK ◆6pZCoAtaxk [sage] 2010/02/27(土) 07:28:58 ID:AOAbO/fF なるほど!そういう方法もありますね。 ループ時間を精密な同一時間で制御する技をまだ自分が持ってないので、現状での導入は難しいですが、 どうしても今のバグが取れなかったら、大体5秒みたいな感じでもいいのでカウンタ式でやってみます。 バグの方はまだちょっと…な感じ。 変数のスコープ(有効範囲)をどこかで勘違いしてるんだろうけど、それらしき記述が見当たらず…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/870
871: 名前は開発中のものです。 [sage] 2010/02/27(土) 12:10:03 ID:6SrDyvbd デバッグ作業に「思い込み」は厳禁ですぜw http://peace.5ch.net/test/read.cgi/gamedev/1006284805/871
872: SGGK ◆6pZCoAtaxk [sage] 2010/02/28(日) 02:16:01 ID:o0dFT4m9 久々にこんな時間まで粘ってしまったけど、なんとかバグが取れました。 >>871 まさに「思い込み」でした…orz 原因は、変数のスコープというよりは、基底クラスと継承クラスの両方で同じ名前の変数starttimeを宣言していた事。 自分のプログラムは基底クラスにメインループ関数やsetGameState()が定義してあって、 それを継承したクラスからもそれらの関数がそのまま使えるんだけど、 メインループ関数の中で動く関数、つまりタイトル、ゲーム、コンティニューの処理に関する関数は、 継承クラスで定義されていて、それらの関数の中からもsetGameState()を呼び出す使い方をしてる。 たぶん、基底クラスにあるメインループ内で呼び出した時のsetGameState()は基底クラスのstarttimeを見ていて、 継承クラスで定義した関数内から呼び出すsetGameState()は継承クラスのstarttimeを見ていたのではと考えてみた。 とりあえず、継承クラスで宣言していたstarttimeを消したら動いた。 という事でようやくUP。 なぜか画面振動が直っていて、画面が上からスクロールしてくる現象が出てます…orz ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0083zip.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/872
873: 名前は開発中のものです。 [sage] 2010/02/28(日) 17:41:10 ID:JBjJTmz9 プログラミングもできない 超初心者でも参加していいんですか? http://peace.5ch.net/test/read.cgi/gamedev/1006284805/873
874: 名前は開発中のものです。 [sage] 2010/02/28(日) 18:02:21 ID:mlqUZ1eF 参加するのはいいけど、ここは別に住人が親切に教えてくれるスレじゃないよ? あくまで自分が自分の力で修行するだけ。 俺みたいな部外者はその経過を見て、ただ茶々入れるだけ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/874
875: 名前は開発中のものです。 [sage] 2010/02/28(日) 19:38:59 ID:JBjJTmz9 修行するぞ修行するぞ修行するぞ とりあえずC言語やってみます http://peace.5ch.net/test/read.cgi/gamedev/1006284805/875
876: SGGK ◆6pZCoAtaxk [sage] 2010/02/28(日) 23:18:48 ID:u1gAibe+ こんばんは! 自分は過去に何度か挫折してて、今回だってどこまでやれるのかは自分でも見えてないです…orz なので、お互い気楽にいきましょ〜! (次の目標) ゲームの最低限の流れの部分作成に挑戦の予定。 とりあえず簡単なイメージ図を書いてから始めるつもり。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/876
877: SGGK ◆6pZCoAtaxk [sage] 2010/03/02(火) 22:56:41 ID:wihORnjW やっと掲示板につながるようになったみたい。 >>874 どうもです〜!(スルーっぽい形になってしまったかのように思えて気になり戻ってきました…) 自分はいつ躓いてもおかしくない状況ですけど、やれるだけ頑張ってみます〜! 次の図は出来た。理由が言葉に出来ないけど実装が出来そうにない予感。 もう少し考えてみて、たとえ出来なくても図はUPするつもりです〜。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/877
878: 436 [sage] 2010/03/03(水) 03:06:40 ID:onEVT9cS どさくさに紛れて規制解除されてた >>872 バグ取り乙です。上からスクロールはそういう演出かと思ったら偶然だったのかw >>875 自分も去年始めて、今C言語の復習やってる様な亀初心者ですが お互い頑張りましょう http://peace.5ch.net/test/read.cgi/gamedev/1006284805/878
879: STG ◆Fp.xSEIREI [sage] 2010/03/03(水) 18:57:03 ID:+JZHI3ef >>875 がんば(・∀・) ずいぶん前に作っていた双方向リストを実際に動かしてみたらバグだらけでワロタ とりあえず見つかったバグはとれたけどまだ何か潜んでいそうで恐ろしい http://peace.5ch.net/test/read.cgi/gamedev/1006284805/879
880: SGGK ◆6pZCoAtaxk [sage] 2010/03/03(水) 23:00:59 ID:JLhMluy2 >>878 どうもです〜♪。そう!偶然なのです…。 とりあえず動いているならいいという事にして今は放置して先に進む作戦にしました。 >>879 バグ直したと思ったら、他の部分の動きがおかしくなったり…といった事を自分はよくやってマス。 次にやろうとしている内容の図。かなり難しそうな感じ。 ttp://gamdev4.hp.infoseek.co.jp/cgi-bin/up/No_0084jpg.html http://peace.5ch.net/test/read.cgi/gamedev/1006284805/880
881: SGGK ◆6pZCoAtaxk [sage] 2010/03/06(土) 01:21:28 ID:lGhx1E2m 今日は試合時間表示処理の修正に挑戦。 今までメインループ関数の最後の方に命令文をズラリと並べてたのを一つの関数にまとめてみた。 今回の定義にはvirtualを付けなくても良かったのに間違えて付けてコンパイルしたら、 画面が完全にフリーズしてしまい、パソコン再起動…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/881
882: 名前は開発中のものです。 [sage] 2010/03/07(日) 00:34:18 ID:1FEgywit 皆さんは作ったゲームとかをどこかに掲載してるんですか? http://peace.5ch.net/test/read.cgi/gamedev/1006284805/882
883: STG ◆Fp.xSEIREI [sage] 2010/03/07(日) 01:34:49 ID:u718oayl >>881 こっちはブルースクリーン あんまり関係ないかもしれんがデバッグ始まった瞬間になったから怖い >>882 まだ掲載とかできるレベルじゃないなぁ http://peace.5ch.net/test/read.cgi/gamedev/1006284805/883
884: 名前は開発中のものです。 [sage] 2010/03/07(日) 02:08:04 ID:UI08O01q >>882 自分のサイトとブログだけ。宣伝無し。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/884
885: SGGK ◆6pZCoAtaxk [sage] 2010/03/07(日) 23:10:10 ID:dT9xMVU/ >>882 自分はこのスレでUPに使ってる掲示板で全部です〜。 >>883 OSの動作にまで影響していそうなバグが出た時は冷や汗ものです〜。 >>884 サッカーゲーム完成→サイトオープン!!に向けて道は険しいけど、これからも頑張ります〜! 今日は選手のデータ初期化を修正。 今までは、縦に x=1; y=5; みたいに250行位書いてたけど、これでは今後の改造(選手の攻守座標初期値の入れ替えとか)が大変やりにくそうなので、 色々考えてみた。配列なんかだと={(1,2),(5,7),…,(1.5)}みたいに一括代入が出来てた記憶があったけど、 C++では見当たらない…orz 結局、縦に並ぶ代入命令を全部ひとつの関数にして、選手22人分を並べて 22行程度に収めてみた。 fieldplayerlist.clear();//←FieldPlayer型オブジェクトが入るコンテナクラス?fieldplayerlistを空?にする処理。 FieldPlayer *fp = new FieldPlayer();//一時的に変数のセットを代入するための仮のFieldPlayer型オブジェクトを生成する。 fp->dataSet(32,32,30,30, ALLY,FW,636,408,1,1,&fieldplayeranim,0,&goxymover); fieldplayerlist.push_back(*fp); //↑仮のFieldPlayer型オブジェクトに関数dataSetで変数を1セット分代入し、直後にそのオブジェクトをfieldplayerlistの要素の末尾にpush_backで代入する。 …20人分略 fp->dataSet(32,32,30,30,ENEMY,GK,1696- 50,544,1,1,&fieldplayeranim,0,&goxymover); fieldplayerlist.push_back(*fp); delete fp; のような感じ。 こ…これでネタがほぼ無くなってしまった…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/885
886: SGGK ◆6pZCoAtaxk [sage] 2010/03/08(月) 22:10:17 ID:967VSo8v 昨日のデータセット関数はすぐには動かなくて、最初に動いた時には選手の数が半分くらいだった。 この方法を諦めかけてた頃にデータセット関数の中の記述が以下の様に間違ってる事に気付いた。 pos_x=pos_x0;//pos_x0は関数の引数 pos_y=pos_x0;//pos_x0は関数の引数 正解は、 pos_x=pos_x0;//pos_x0は関数の引数 pos_y=pos_y0;//pos_y0は関数の引数 原因は=pos_x0;をコピペしてxをyにした方が早く書けると思い、コピペした後にyに直すのを忘れていたから…orz 次にやろうとしている事は、ボールの移動関数の書き直し。これもややこしくなりそう。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/886
887: 名前は開発中のものです。 [sage] 2010/03/16(火) 10:46:37 ID:/X6k6iTE 俺も参加していいかな? 簡単な3DのRPGを作ってみたい。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/887
888: STG ◆Fp.xSEIREI [sage] 2010/03/16(火) 12:50:54 ID:RVuFBq2b どうぞどうぞ 3Dの時点で簡単じゃない気もしてくるけど ゲーム内ウィンドウとか文字列云々の制作。 もうちょっと作れば一番楽しいゲーム本体部分の制作にとりかかれそう http://peace.5ch.net/test/read.cgi/gamedev/1006284805/888
889: 887 [sage] 2010/03/16(火) 17:01:23 ID:PauBuwXO >>888 絵が描けなくて、3Dならモデルを作ってしまえば後が楽なのかなぁと思いまして… とりあえずVC++EEでSDL+OpenGLで修行してみようと思います。 無料だったので github でソースコード管理してみようと思います。 ttp://github.com/happana/srpg http://peace.5ch.net/test/read.cgi/gamedev/1006284805/889
890: 887 [sage] 2010/03/17(水) 09:26:15 ID:4WiRN6jG とりあえずビューワモードみたいなところまでできた。 ttp://github.com/happana/srpg/downloads そろそろモデルの表示をやろうかな。 その前にフレームレート制御か。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/890
891: SGGK ◆6pZCoAtaxk [sage] 2010/03/18(木) 00:01:18 ID:lJDNUzV1 どうぞです〜! 自分もいつかは3Dに挑戦したいと思ってるので期待してます〜! ボールの移動関数書き直しはバグが40個近く出てしまい、まだまだ取れそうにない状態。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/891
892: 887 [sage] 2010/03/18(木) 00:46:51 ID:0fv2BQKl モデル表示は ttp://cedec.cesa.or.jp/2009/ssn_archive/index.htm のゲームグラフィックス・プログラミング入門(後半)に習って blender ==エクスポート==> 独自形式 ==コンバート==> バイナリ にしてゲームではバイナリを読み込むようにしようと思う。 とりあえずBlenderのスクリプトを勉強中。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/892
893: SGGK ◆6pZCoAtaxk [sage] 2010/03/18(木) 23:36:05 ID:3ndk63Yx HP、色々参考にしてみます〜。 ボールのオブジェクトが持っているデータ、例えばxにアクセスするときに getx()という関数作っていたけど、変数の個数分の関数を作るのが 結構大変な作業なので、xを外部から自由にアクセスできるようにしてデータアクセス用の関数を なくそうとしてみた。例えば、 if(ball.getx()<0) ball.dx=-1*(ball.dx); を if(ball.x()<0) ball.dx=-1*(ball.dx); にすればいいかなと思ったら以下のメッセージ付のバグが発生。 error C2064: 0 引数を取り込む関数には評価されません。 このメッセージの意味がわからなくてネット検索しても理解できなかった。 しかし改めて良く見ると if(ball.x<0) ball.dx=-1*(ball.dx); であったと気づき、コンパイラも通った。 単なる()の消し忘れだったとは…orz http://peace.5ch.net/test/read.cgi/gamedev/1006284805/893
894: 887 [sage] 2010/03/20(土) 14:51:43 ID:FMPMmQsj モデル表示でテクスチャ表示もできるようにしようとすると メッシュデータとかテクスチャデータとかのリソースの管理が煩雑になるなぁ。 リソース管理周りからしっかり作らないと厳しそうだ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/894
895: 887 [sage] 2010/03/20(土) 20:16:13 ID:FMPMmQsj ttp://github.com/happana/srpg/downloads テクスチャ付モデル表示ができるようになった。 次はボーン入れてアニメーション。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/895
896: 887 [sage] 2010/03/21(日) 01:30:40 ID:fya3TTIM 実は終了時に永久ループになってた!! 直して上げ直した。落とした人ごめんよ… http://peace.5ch.net/test/read.cgi/gamedev/1006284805/896
897: SGGK ◆6pZCoAtaxk [sage] 2010/03/21(日) 11:29:38 ID:NgIHJZXt こちらはボール関係で色々作業中〜! 今までのボール移動処理はボールクラスのmove関数の中で選手とボールのあたり判定が「真」であり、かつxキーが押されている場合に ボールのx、y座標の更新が開始され、30ループの間、微小な移動量dx、dyをx、yに加えていくやりかた。 でもボールのクラスの中で選手22人とボールのあたり判定をしたり、選手のキー入力をチェックするのは なんとなく不自然でわかりにくい感じがするように思ってきたので、それらの処理を選手関係のクラスにカット&ペーストしてみた。 しかし、そうすると今度は選手のクラスを作る側がボールクラスの移動アルゴリズムまで把握していなければ、プログラムを書けないような書き方になってしまうので、 30ループ座標更新するところは、kicked(dx、dy)という名前の関数にして、これをボールクラスのメンバ関数にして、 選手クラスでxキー押してボールとのあたり判定が「真」なら、ball.kicked(dx、dy)を実行するような感じに改造中。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/897
898: STG ◆Fp.xSEIREI [sage] 2010/03/22(月) 04:53:29 ID:+2vRg2cR ゲーム内のメッセージウィンドウとかその他オブジェクトまわりの処理をうんたら 自機も敵も弾もエフェクトも背景、ウィンドウも全部同じ型のクラスを継承しているから面白い実装ができたりややこしくなったり 描画関数や移動関数が一つで済むのがうれしい メッセージを表示するウィンドウをなめらかに表示させようとして発生したリスト関連のバグの修正に二日費やした。双方向リスト怖い http://peace.5ch.net/test/read.cgi/gamedev/1006284805/898
899: 887 [sage] 2010/03/22(月) 21:48:33 ID:A/K5vhYE なんとなくスキンメッシュの概念が分かった。 スキンメッシュは自前とシェーダーどっちでやるのがいいんだろうか。 シェーダーが動かないPCのことも考えて自前にしようかな。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/899
900: SGGK ◆6pZCoAtaxk [sage] 2010/03/22(月) 23:56:38 ID:JKvlGYeF こちらも少しだけどやってマス〜! 多少変更があったけど、kick関数実装終了。 選手データを管理するクラスから直接ボールデータにアクセスできないのが後になって分かり、 ボールデータクラスのオブジェクトをメンバに持つボールコントロールクラスのメンバ関数にkick関数を定義した。 という具合に自分でもソースをあまり良く理解出来ていないため作業効率がよくない感じ…orz 次はゴールのあたり判定をやる予定。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/900
901: 887 [sage] 2010/03/23(火) 22:09:14 ID:qWz/PVJb ttp://github.com/happana/srpg/downloads スキンメッシュを実装。 処理負荷が気になったので負荷メーターを入れてみた。 今の開発環境(100円PC aspire one aoa150)だと20体位で限界が… ほとんど描画に食われてるんだけど、これからマップとかも描くと厳しそうだなぁ。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/901
902: SGGK ◆6pZCoAtaxk [sage] 2010/03/24(水) 00:44:07 ID:e6avgSmm 3D動いてるの確認できました〜!(呼吸してるみたいな感じ) こちらの作業は進まず…orz 今日の進捗は、いままで線を引く命令で書いてたゴールの絵をやめて グラフィックにしようかなと思ったところまで。 http://peace.5ch.net/test/read.cgi/gamedev/1006284805/902
903: 887 [sage] 2010/03/25(木) 10:56:44 ID:SnoPjuNE モデルとかのリソース作りが面倒だ… 今週はblenderの使い方の勉強と リソースの作り方を考えることで終わりそう… http://peace.5ch.net/test/read.cgi/gamedev/1006284805/903
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 81 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.017s