トップページgamedev
991コメント366KB

【初心者】スレを立てる前にココで質問を【Part26】

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。2013/11/25(月) 21:50:34.58ID:6u/BeNgC
疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。
http://pc11.2ch.net/gamedev/

>>980 を踏んだ人は次スレ立てをお願いします。
【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
http://wiki.game-develop.com/

ゲーム製作技術板公式アップローダ
http://gmdev.xrea.jp/

gamdev.orgが落ちるたびにあげてみるスレ
http://hibari.2ch.net/test/read.cgi/gamedev/1107022166
0983名前は開発中のものです。2014/12/29(月) 13:04:14.17ID:jEPDdAvV
(続き)

アドバイス

・テスト版用のデバッグ用情報を画面に表示させよう
  どのボタンが押されているか、何をどう判定しているか が画面に表示されているとテストしている人が色々気付きます
  今回であれば「オプション攻撃が上に出てしまった」時に関連する変数の値があれば、ノウハウ持ってる人であればやらかしがちなバグを推測できます
・ログ出力しよう
  記録されるサイズが数百MBになろうと、メモリ上に記録し、エラー時に全出力して意図しない挙動がないか調査するとよい
  エラーが起きた場合、強制終了でないなら、ファイルに書き出すことができるはずです
  ログデータを読み込みながら1フレームずつ再現できるプログラム(リプレイですね)を作ってみるのもよいかもしれません
・デバッガを使いましょう
  効率的なプログラマほどデバッガとのにらめっこしてる時間の割合が大きいです
  今回聞こうとしている質問のほとんどは、デバッガがあればプログラマがすぐに原因を切り分けして修正できると思います
・質問はどこにするのが良い?
  現状ではこのスレでよいと思います

引き続き頑張ってください。
0984名前は開発中のものです。2014/12/29(月) 13:39:09.05ID:AVeVeWqk
スタンドアロンなゲームで途中でいきなりエラー終了するのは大抵ぬるぽだから、
IDEのコンソールか何かにログを出力し続けるようにして原因を追ってみたほうがいいかも
void func(){
LogOutput("func start");
//処理
LogOutput("func end");
}
こんな風に作ってゲームが強制終了したらコンソールログをみて、endが書かれていなければそのスコープに何かあるってことで、
ブレークポイント知らない頃とか、ブレークポイント効かない時とか、ステップ実行がだるい時だけ知りたい時とかでやってたから誰でも出来ると思う

というか初心者でいいの?「そんなの言われなくてもわかっとるわ!」とか言われそう
0985名前は開発中のものです。2014/12/29(月) 22:08:03.92ID:kfN2JDbZ
>>974
ビット情報が保存される演算(可逆な演算)ならXORとかローテートがラクかと

XORはC/C++に演算子あるけどローテートはないからPCの場合だとインライン
アセンブリでROR/ROLがラク

細かい話はバーナム暗号とかで検索すればいいかと
0986名前は開発中のものです。2014/12/30(火) 19:30:03.22ID:u6Vvtr+3
いや聞きたいのは既知の不具合についてじゃなくて
ゲーム内容とかバランスについての感想じゃね〜の
0987名前は開発中のものです。2014/12/30(火) 19:34:52.72ID:e9PdA2Bu
次スレ立ててくる
0988名前は開発中のものです。2014/12/30(火) 19:39:38.44ID:e9PdA2Bu
立ててきたけど、カキコ即立てって連投扱いなんやね
クッキー消したよ……ったく

【初心者】スレを立てる前にココで質問を【Part27】 [転載禁止]2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1419935788/
0989名前は開発中のものです。2014/12/30(火) 20:39:56.43ID:u6Vvtr+3
ゲ製板スレ立て事件 〜消されたクッキー〜
09909782014/12/31(水) 18:56:32.45ID:apd2LiSb
 お返事遅れました。有明の方に出向いていたら疲れてしまいました(もう歳だ)。

>>982
 返答有難うございます。
・ノウハウが少ないのがバレたのは、データの与え方でしょうか。
 DxLibを使っているので、自分としてはそうなってしまうと言うか・・・もっと効率上げる方法が
あるのでしょうか?
・これは、VisualStudio2013のCで書いています。C++、理解出来ていないんです(涙)。
 何か問題が起きたら、場所を類推してブレークポイント立ててステップ実行で変数確認
しつつ・・・と言う感じです。
 必要とあれば、調査用に関数も書きますが。

 エラー終了以外の既知の問題は、最初期に書いた自機周りの関数だと思っていて、それに
依存する形でオプション挙動も決まっているので、整理して書き直すつもりでいます。
 ちなみにスコア表示の下にライフやショットモード、進行カウンタを表示していますが、勿論
仮表示です。その延長で内部情報をもう少し表示させても良いのですが、リアルタイムで
更新されると読みきれないのですよね(^^;自分でやっといて。
 リプレイは搭載予定していなかったのですが、言われてみればデバッグに有用ですね。
 真面目に検討させて頂きます。
 ご助言ありがとうございました。

>>984
 返答有難うございます。
 最近、呼出履歴を確認する事を身に付けたので、怪しい部分への履歴を追いやすくなったり
したのですが、初心者扱いで十分だと思います。8ビットの頃から親しんでいるので、十分
オッサンですけれどね。

>>986
 お心遣い有り難うございます。
 そこが目立って他に見るべき点がなかったのは、まだまだ道半ばだなあ、と反省する次第
です。
0991名前は開発中のものです。2014/12/31(水) 20:42:08.70ID:JO0lY9np
>>990
> その延長で内部情報をもう少し表示させても良いのですが、リアルタイムで更新されると読みきれないのですよね

Windowsのアプリ動作動画キャプチャソフト(アマレコなど)などを使うと・・・

良いお年を!
レス数が950を超えています。1000を超えると書き込みができなくなります。