1人でゲームが作れるように修行します。2 (487レス)
1人でゲームが作れるように修行します。2 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
359: SGGK ◆6pZCoAtaxk [sage] 2012/06/19(火) 23:44:58.47 ID:M4sPlsXK SoccerGameクラスのソースが長すぎるので、GameTitleクラス、GamePlayクラス、GameOverクラスを作り、 SoccerGameクラスのソースをこの3つのクラスに振り分けてみた。 この3つのクラスをSoccerGameクラスの中でオブジェクト化すればなんとか出来るかもしれないので、試すつもり。 失敗してもこの直前まではバックアップあるので戻れるから大丈夫w http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/359
360: 名前は開発中のものです。 [sage] 2012/06/20(水) 21:56:07.67 ID:trY5wmki 最初から作り直した方が早いかもね http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/360
361: SGGK ◆6pZCoAtaxk [sage] 2012/06/20(水) 23:15:46.22 ID:/B/K6MdL >>360 >>356では2段階でやるような気持ちでいたけど、いざやってみると、 クラスのつながりの一番根っこを分解したので結局全部書き直し同然の状態です。(汗) とりあえず、スタート画面を出す為に、関係ないヘッダファイルやcppファイルはコンパイラから外して作業中…orz http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/361
362: SGGK ◆6pZCoAtaxk [sage] 2012/06/21(木) 23:49:12.39 ID:ArXkgTjY デザインパターン使わないと言ったけど、ちょっとだけ試してみたかった。 本に書いてたステートパターンの中で最初の1番簡単な例を使ってスタート画面を出せた。 でも実はバグの行を//付けて注釈行化して強引に表示させただけなのでまだなんとも言えない。 残りのゲームプレイとゲーム終了画面表示の遷移が出来なければswitch文使った方法に戻る。 あまり時間が無いのでゆっくり作業…。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/362
363: SGGK ◆6pZCoAtaxk [sage] 2012/06/26(火) 23:26:56.00 ID:qwjvXfmc スタート画面とゲームオーバー画面をキー押しで表示切り替えできた。 ステートパターンの1番簡単な例と言いながらも苦戦した。 以前苦しんだ相互参照、前方宣言が関係してくるパターンだった。 本はその部分は知ってる前提で書いてあるので説明が無かった…orz ネットも調べて知識を得てから考えた実装が動かず、結局試行錯誤で インクルードと前方宣言を入れたり消したりして奇跡的に運よく動いた感じ。 せっかく書いたので、もし問題なく動くならこの部分だけはそのままにしておいて、 またバグ出たら、ifかswitchでやるしかない…orz これ以降、遷移をさせたい処理が出てきたら、それはもちろんifかswitchでやるつもり(苦笑) 数年続けてきて自分には無理だという事がやっとわかった感じ。 やらないで諦めるよりは、やってみて気付いたんだから、よしとしよう! とりあえずはファミコンサッカーを目標にしよう!(これすら出来るか怪しいかもしれない…) 空き時間ができたら作業を少しでも続ける気はあるので、がんばろう〜!…orz http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/363
364: SGGK ◆6pZCoAtaxk [sage] 2012/06/27(水) 22:59:33.76 ID:1q/ptGIo 昨日のプログラムを少し変えた。 1つの状態について1ヘッダーファイル、1cppファイルというのはファイル数が多すぎて分かりずらいのでやめて、 複数の状態を1ヘッダーファイル、1cppファイルにまとめた。 ステートパターンの参考にした本、オライリーのゲームAIプログラミングもそうなっていたし…。 一応、インクルードファイルや前方宣言も本に合わせてみた。 しかし、1か所だけSoccerGameクラスのヘッダーファイルのコンストラクタの行でエラーが出た。 コンストラクタだけ実装(というか定義?)がヘッダーに書いてあったので、 この定義部分だけをcppファイルに移したらコンパイル出来た。 とりあえず、この書き方で進めよう。 タイトル、ゲームオーバー画面が出せたので、次はメインのゲーム部分を書く予定。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/364
365: 名前は開発中のものです。 [sage] 2012/06/28(木) 21:49:03.02 ID:ckB52e4z SGGK氏には「まとめサイト」を作ることを提案します。 これまでに考えて行ってきたことと、それに対するコメントを対応付けると、 現在のご自身のポテンシャルが見えてくると思います。 また、まとめサイトを持っていたほうが、建設的なコメントが得られるように なると思いますよ。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/365
366: SGGK ◆6pZCoAtaxk [sage] 2012/06/29(金) 00:19:39.71 ID:0PUJkiiN >>365 な…なるほど!、ありがとうございます。 ゲームが完成するか自信がないため、まとめサイトについては考えてませんでした。 去年9月頃に受けたアドバイスの後半から追いつけなくなってしまってたので、 そういうのもまとめられたらと思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/366
367: SGGK ◆6pZCoAtaxk [sage] 2012/06/29(金) 00:20:46.65 ID:0PUJkiiN ホームページは初めてだけど、頑張ってみます。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/367
368: SGGK ◆6pZCoAtaxk [sage] 2012/07/09(月) 00:12:38.91 ID:wFKWfjV1 できるだけ簡略化した状態で作ろうと思い、 今まで使っていたフリー素材はやめて(ラインの座標が正確にわかっていたわけでは無かったから)、 フィールドは緑の板一枚にして、ゴールの絵は無し、ラインを毎ループプログラムで書き、 そのラインも外枠だけにすることを考えた。 緑色のポリゴンの板をとりあえず作成したが、メタセコイアの使い方をすっかり忘れてて苦労した。 今度はこれを画面に表示しようとしたら画面が真っ黒。 フィールドを原点(0,0,0)において、カメラは(0,100、0)で(0,0,0)注視にしたから見えるはずなのに…。 ふと、カメラ座標を(100、100、0)にしてみたら一部が見えた。一応データは読めてるようだ。 メタセコイアで作った時の座標系やDXライブラリの座標系についていろいろ忘れてしまってるようだ…orz ホームページは作業始めるまでにはかなり時間かかりそうだけど、あきらめずにやるつもり。 FC2で練習する計画。一応グーグルにホームページの登録はしてみた。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/368
369: SGGK ◆6pZCoAtaxk [sage] 2012/07/09(月) 23:59:59.89 ID:1ssCdaiG 3Dで真上から見れば2Dになるかなという考えがあったから昨日のような事をしてたんだけど、 いろいろ悩んだ結果、2Dに戻ってやり直してみようと思った。 3Dについては、今までいろいろアドバイスもらっているのに止めるのはなんだか申し訳ない気持ちもあるけど、 今年の8月末で5年経つはずだし、まずは形に出来る可能性が少しでも高い方法を選ぼうと思う。 3Dでいろいろ学んだり考えたりした経験もきっと役立つだろうし…。 当時作った2Dスクロールはがくがく振動してたけど、それでも良しとするつもり。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/369
370: SGGK ◆6pZCoAtaxk [sage] 2012/07/15(日) 22:56:50.87 ID:UGezkUv1 フィールドの画像データ作成に時間がかかってしまった。 最初はファミコンサッカーのフィールドを意識して奥行を考慮したフィールドにしようと思ったが、これはやめた。 真上から見たフィールドにしたが、ドット絵なので、例えばある点と点を結ぶ直線の太さを4ドットにした時、 どのように書けば良いのかといった事にまで悩んでしまい、一度書きあげたが、なんとなく1〜2ドットずれてるような気がした。 そこで思いついたのが、真上からの絵なのだから1/4だけ書いて、これを3枚コピーして上下左右反転してから結合するというやり方。 幸いそのような機能がついていたので、ようやくフィールドの絵が完成した。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/370
371: SGGK ◆6pZCoAtaxk [sage] 2012/07/22(日) 23:13:51.85 ID:NkhxMf+5 選手の絵を書き直した。 1チーム分の4コマx8方向分、キックの絵を1コマx8枚方向分まで完了。 これがもう1チーム分(色変えるだけでも結構手間な感じ)と ゴールキーパー2人の移動も今日書いた絵を色変えるだけにして、ボールに飛びつく絵を1コマx8方向分欲しいとして…。 (32+8)x3+8x2=136枚書かなければならない…orz 絵の経験は全く無いので今まで使っていた影絵レベルに色を付けた程度のものになった。 ちなみに使用ツールはフリーソフトのEDGE。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/371
372: SGGK ◆6pZCoAtaxk [sage] 2012/07/29(日) 23:26:09.03 ID:YNDBJ1FS 自分に負けて今週末は残りの絵を用意出来なかった。 それでも何かしようと考え、この前書いたフィールド(今回のは、1280x420ドット)を座標(-320,60)に書いてみたら一応表示できた。 もしかすると(-319,59)かもしれないが、追及はしない…orz グラフィックデータをロードするときのエラー関係の処理で書いてたC++の文法、throwやcatchの文も思い切ってカットした。 今度は思いつく限りの状態遷移をノートにでも書いてみようかと思う。 例えば、得点表示、時間表示、ボールがラインアウトしたとき、得点時、前半・後半・ハーフタイムの切り替わりの時どうなるかなどの遷移を整理して、それらをどうやってプログラムにまとめるかといった事を考える予定。 ゲームの設計図というものを知らないので、結局我流。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/372
373: SGGK ◆6pZCoAtaxk [sage] 2012/07/31(火) 22:11:31.45 ID:Cy8rBdoX ゲームが1ループする毎に1ずつ増える変数を宣言・定義した。 この変数は、選手のアニメパターンの何コマ目を表示するかを判断するのに使われる。 「14歳から(略)C++(略)」に書いてあった手法なので特に新しいことはしてない。 つまり、自分はこの方法しか知らない…orz http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/373
374: SGGK ◆6pZCoAtaxk [sage] 2012/08/19(日) 21:40:11.74 ID:vVyCK6D6 まだクラスを増やさないでテスト的にプログラム中。(作業時間をなかなか確保出来ないので…) 選手の画像データを読み込むところまで書き、バグも出なくなった。 次は、選手をキーボードで8方向移動出来るようにする予定。 今までのマウスカーソルに選手が向かう仕様はやめることにした。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/374
375: 名前は開発中のものです。 [sage] 2012/08/23(木) 21:40:24.24 ID:1+Zgsvnu 完全0の状態から小規模の3DMMORPGを作ろうとしてるんだが、勉強とトライアンドエラー続けて10年で稼働まで持っていけるだろうか。 とりあえずC言語の基礎本買ってきた。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/375
376: 名前は開発中のものです。 [sage] 2012/08/24(金) 05:31:27.52 ID:ZnGzYILD 努力の仕方次第で10年かからずとも勿論可能だろうけれど、 そのゲームシステムやデザインが10年後通用するものかどうかは解らない。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/376
377: 名前は開発中のものです。 [sage] 2012/08/24(金) 06:38:37.94 ID:RwA1Lyd+ >>376 レスありがとう。 たしかに。進歩するの早いからな…。 最新情報つねに仕入れつつ、とにかく始めてみる。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/377
378: SGGK ◆6pZCoAtaxk [sage] 2012/08/24(金) 22:58:53.06 ID:YHdN9J8K >>375 自分は今年の8月末で5年経過。まだ1本も作ったことが無いのであと5年で出来るかわかりません。 今思えば、平均して1日どの程度の時間やっていたのか、集中力、やり方とかの管理や工夫が足りてなかったかもしれない。 5年やって実際何時間作業したかとか記録してなかったし…orz(今後は時間だけでもメモ!) 平均的にある程度時間を確保して継続して10年やれればなんとかなりそうに思います。 ゲーム用ライブラリは、既存のものが使えれば時間の節約になってさらに良いと思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/378
379: 名前は開発中のものです。 [sage] 2012/08/25(土) 07:20:40.77 ID:uvPogsDK >>378 アドバイスありがとうございます。 作業工程管理って大事なのですね。 基礎を勉強しつつ、完成までに何が必要かを調べて、いつまでにこれができるようにするみたいな逆算は必要かもですね。 ライブラリもちと調べてみます! http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/379
380: SGGK ◆6pZCoAtaxk [sage] 2012/09/20(木) 22:13:17.22 ID:qj08WVBT 確認し忘れてしまいましたが、 もしも学生で、しかも受験生だったりする場合は、勉強に100%専念した方がいいです。 約1ヶ月経ってしまってるけど、ちょっと気になったので…(汗;) http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/380
381: SGGK ◆6pZCoAtaxk [sage] 2012/09/20(木) 22:29:34.23 ID:qj08WVBT >>374から進まず…orz 選手の8方向移動を通常ならifかswitch文で条件分岐して、 押したキーに応じて選手の座標に数値を足し引きするだけなんだけど、 そこを関数にして、その関数を関数ポインタとかいうのを使ってうまくまとめられないかと思ってしまった。 しかし、ネットで書き方を調べてるとC言語でいう関数とC++のメンバ関数でのやり方に違いがあるようで、 なんとか空のメンバ関数を定義して関数ポインタを用意するところまでコンパイラが通るようにはなったけど、 結局、ifやswitch文が無くなるような書き方には出来なかったので、ここまでやって断念してしまった。 この作業にかなりタイムロスした。(汗;) http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/381
382: SGGK ◆6pZCoAtaxk [sage] 2012/09/20(木) 22:47:31.90 ID:qj08WVBT そして今度は選手のクラス、FieldPlayerクラスを作ってから作業した方がやりやすそうだと思い、以下のエラーが発生。 (略) #include "fieldplayer.h" class SoccerGame; (略)で、 error C2236: 予期しない 'class' 'SoccerGame' です。';' が入力されていることを確認してください。 これは、fieldplayer.hの中に書いてあるFieldPlayerクラスの宣言の最後の}の次に;を付け忘れたのが原因だと分かった。。 しかし、修正しても同じエラーメッセージが出続けて先に進まなくなった。 数日悩み、VC++の画面での修正内容が実際のfieldplayer.h内部には書き込まれていなかったのが原因だとわかった。 fieldplayer.hをメモ帳で開いてみて気がついた。 何故そうなったかは分からないが、VC++で書いたプログラムが保存されるsourceフォルダがあり、 自分はfieldplayer.hをVC++画面メニューから作ってソリューションエクスプローラに登録した後、 fieldplayer.hが何故かsourceフォルダの外に作られていた事に後で気づき、fieldplayer.hをドラッグ&ドロップして sourceフォルダにいれようとしたら、偶然前のプログラムの同じ名前のfieldplayer.hが残っていたので上書きした事を思い出した。 この作業が何らかの影響を与えていたのかもしれない。 ソリューションエクスプローラからfieldplayer.hを外して、追加→既存の項目で再度sourceフォルダ内のfieldplayer.hを登録したら プログラムのエラーが出なくなり動くようになった。 これだけで約一カ月経過…orz http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/382
383: 名前は開発中のものです。 [sage] 2012/10/08(月) 22:33:19.85 ID:t0Dt0rCo 頑張れ〜 おれもほぼ一人でRPGっぽいの作ってる。 いまマップエディタってくらい初歩的なとこ。 SGGK氏のレス全部読んでないしどんな感じかわからないけど、 サッカーだったかAIのサンプルで実例で学ぶAI入門みたいな本がある。既出だったらごめん サンプルが↓のurlの一番下にあるファイルの4章にサッカーのボール追いかけるのがあるよ。 http://www.jblearning.com/Catalog/9781556220784/student/ http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/383
384: SGGK ◆6pZCoAtaxk [sage] 2012/10/09(火) 21:25:42.44 ID:H1xyTP7b >>383 リンク紹介ありがとうございます。お互い頑張りましょ〜! 実はこれの2章だけを以前に読んでみたことがあり、その時は1/3〜1/2位しか分からなかったので、 現在停止中ですが、今のプログラムが出来たら、また頑張って読んでみようと思っています。 リンクの方もダウンロードしてみました。 早く4章のサンプルのように画面を動かせるところまで行きたいです。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/384
385: SGGK ◆6pZCoAtaxk [sage] 2012/11/18(日) 21:07:31.77 ID:7vKXgmFZ 訳あって作業中断してるけど、時間が出来たらまた戻ってきます…。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/385
386: 名前は開発中のものです。 [sage] 2014/02/26(水) 16:03:18.21 ID:RJ/hanrh 乗っ取り http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/386
387: 名前は開発中のものです。 [sage] 2014/03/02(日) 20:07:34.97 ID:OCTlKWu3 ドキュ読む気力はあるがコード書く気力なし http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/387
388: SGGK ◆6pZCoAtaxk [sage] 2014/04/12(土) 10:02:19.06 ID:vC4zhho5 >>386-387 将来コードを自分で書きたくなった時に読んだ経験を活かせると思うし、 共にがんばりましょ〜!(^^ 約1年5カ月経過。いろいろあって結局何も進められなかったけど、 1.>>365「まとめサイト」を作る 2.やってきたことを忘れてるので復習する が出来たら、次をどうするか決めようと思ってます。 http://mevius.5ch.net/test/read.cgi/gamedev/1272901469/388
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 99 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.018s