貴様ら!ブロック崩し作るので見てください
レス数が1000を超えています。これ以上書き込みはできません。
0001ヒッキー@プログラミング
NGNG作りたくなりました。
Bitbltなど使う予定ですが、細かい技術がないので、
小出しにプログラムしようと思います。
(タマが動くだけとか、キーボードで自機を動かすだけとか)
オナーニスレだけどよろしくね。
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG0005ヒッキー@プログラミング
NGNGタマが45度以外の方向に進むのがどうやればいいのか考え中です。
三角関数使って、傾き計算するだけでいいですかね?
とりあえず今からやってみます。
0006デフォルトの名無しさん
NGNGただ、その前に物理の勉強が必要だな。(藁
0007ヒッキー@プログラミング
NGNG高校の数学もろくにできてないんで、難しいです。
0008デフォルトの名無しさん
NGNG壁の反射のヒントは「ビリヤード」かな?
0009デフォルトの名無しさん
NGNGあたった瞬間だけ。
0010デフォルトの名無しさん
NGNG00118
NGNG0012ヒッキー@プログラミング
NGNGビリヤードですか…苦手です。反射がイメージできない…。
>>9
角度の変化は動いている物体にあたった瞬間だけですか。
ほおほお。
>>10
ゴルァ!よろしくお願いします。
00138
NGNGX軸軌道であれば、Y軸を中心に反転だな。
誤りゴメソ
00148
NGNGこんな漢字?>1氏
0015ヒッキー@プログラミング
NGNGおお、すばらしい手書きの画像をありがとうございます!
そういえばそういうの習いました…。
www.geocities.co.jp/SiliconValley/2530/block01.zip
↑ちょっと埋まってしまっておかしいですが、
評価よろしくお願いします。ソース付き。
いまんとこ45度です…
0016デフォルトの名無しさん
NGNG崩しならいらないかな。
なので、>>13に加えて動いてる自機にあたったときに、どういう処理を
するかだね。
0017デフォルトの名無しさん
NGNGど、どうって。もっとおっきくしよーよ。
くらいしか・・・(汗
00188
NGNGしかし、頑張ってプログラム作っている1氏に漏れはカンドーした!
Cが少しでもわかるなら、直線描画のソースやるけどいるか?
始点と終点入れるとライン描画する関数なんだけどさ、
ブロック崩し作るなら、この知識は絶対必要にナルヨ!
Cわからんっていうなら、文章形式で説明スルヨ
0019ヒッキー@プログラミング
NGNG跳ね返り係数ですか。あとでビリヤード系のページ探して
見てみますね。ありがとう。
>>17
たしかに小さすぎた。でかくしてみます。
>>18
おー、ありがとうございます。
実は、Cはちょこっとやってるのですが、なにぶん、DOS窓で
動くのしか作れないもので…VESAのライブラリ拾って16bit色
出してみたいと思いましたが、英語の文書が読めなくて挫折しました。
ソースいただけるならかなり嬉しいです!
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNG00228
NGNGttp://www2.makani.to/akutoku/upload/dat/1004860590.txt
これね。10分後には削除するのでお早めに。
0023ヒッキー@プログラミング
NGNGいただきました。どもども。
じっくり読ませていただきます。
>>21
今がんばって製作しております。
0024ヒッキー@プログラミング
NGNG一応キーボードで動くようになりました。
しかしZキーとXキーです。
当たったときの跳ね返り処理はまだないです。
00258
NGNG当たり判定は、最初は難しく考えずに、ボール画像の底辺の座標とバー画像の上辺が
交わっている時に、ボール軌道を壁と同じ処理にぶち込めばいいだけだ。
ガンバレ
0026デフォルトの名無しさん
NGNG考え方の詳細は物理の教科書で力学部分を参照。
跳ね返り係数はまず跳ね返り出来たときでいいんじゃない?
0027デフォルトの名無しさん
NGNG振動しまくって壁から抜けられなくなるときがあるので注意。
0028デフォルトの名無しさん
NGNGここの、タキオンブロックっていうのを参考にしてみてください。面白いですよ。
0029デフォルトの名無しさん
NGNGttp://takuomix.homeip.net/
0030ヒッキー@プログラミング
NGNG次、うぷしました。なんとかバーから跳ね返ることに成功。
しかしたまに失敗します…
>>25
参考にさせていただきました。
>>26
ほおほお。了解しました。
物理の教科書…あるかな。
>>27
うい〜。次に実行ファイル作るとに考えてみます。
>>28
DLしてみますね。
>>29
まじですか?ありがとう。
ちょっと飯食ってきます
0031仕様書無しさん
NGNG> この前、軽くやってみたんですが、
> タマが45度以外の方向に進むのがどうやればいいのか考え中です。
http://www.cs.unc.edu/~mcmillan/comp136/Lecture6/Lines.html
を参考にせよ。(digital-devide line drawingとか呼ばれたalgorithm)
それから、90度(縦にまっすぐ)と45度の二つで、同じ速度で玉動かす事考えろや。
45度の時、1.414倍の速度になったら駄目だぞ。
時間軸と玉の移動も、線を書く時のx軸y軸と同じような間引きを考えないというこった。
0032デフォルトの名無しさん
NGNGとりあえず、「ブレセンハム」って言葉を検索してみろ。
0033デフォルトの名無しさん
NGNG0035デフォルトの名無しさん
NGNGそれは、ただ貴方が知らなかっただけだと思われ(w
0036
NGNGそれ、全然参考にならんって。(ワラ
玉の動きは角度とスピードから計算するのがヨロシ。
x = x + speed * cos(angle)
y = y + speed * sin(angle)
floatで保存しておいて、画面に描く時にintに変換せよ。
0037デフォルトの名無しさん
NGNGテメェ!早く拝見させてください
0038デフォルトの名無しさん
NGNG角度とか。
ごめん。言ってみたかった。
0039デフォルトの名無しさん
NGNGなんだかプログラム始めたばかりの自分を思い出すぜー!
アップしてあるアプリとか見ても、なんだか初々しくて感動するぜ!
俺にもこんな時代があったなぁ。
1さん頑張れよぉ。
0040デフォルトの名無しさん
NGNGキー入力について(既に知ってたらごめんね)
Private Sub Form_keydown(KeyCode As Integer, Shift As Integer)
Ebd Sub
でキー入力イベントつかってるよね?
ここで引数の KeyCode に入力されたキーが入ってて、
上下左右のキーを押した場合、
vbKeyUp
vbKeyDown
vbKeyLeft
vbKeyRight
っていう値がそれぞれ入ることになってる。
だから、
If KeyCode = vbKeyUp Then 何他羅漢多良
っていう判別式をかけば、上下左右のキーで移動処理が可能になるよ。
ほかの動作キーにもそういう値があるからヘルプで確認してみて。
ついでに俺も初心者だ。
0041ヒッキー@プログラミング
NGNGほお、そうですよね。XとYを同時に足したら1.414倍になりますね…。
リンク先のページ、参考にさせていただきます…が、読めるかな。
あ、ソースはCか(藁
>>32
検索してみました。
割り算使わない&整数のみで可能ですか。ゲームに向いてそうですね〜。
できたら実装したいです。それにしても意外とブロック崩しって難解なんですね…。
ゲームってそういうもんでしょうか。
>>36
おお、めちゃくちゃ分かりやすいです。
ひとまず、36さんの方向で…
>>37
漏れも早く次うぷしたいんだモルァ!
>>38
計算してます。角度とか。
0042デフォルトの名無しさん
NGNG横方向の速度は一定でよかったんじゃなかったっけか
0043デフォルトの名無しさん
NGNGキーボードのオートリピートの対策も絶対必要だな。
0044デフォルトの名無しさん
NGNGメッセージキューにキー入力が残る事?
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG0047デフォルトの名無しさん
NGNG一回、DirectXのライブラリ組んでしまえば、アルゴリズムは全く同じなんだから。
VBの見えないフォームにビットマップ読み込んでデバコンを指定して・・・なんてかっこ悪いからな。
0048 デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNG点でやるなよ
線でやれ
0050デフォルトの名無しさん
NGNGVBでDirectX使えば良いのでは?
0051デフォルトの名無しさん
NGNG破片にも当たり判定つけてください。
0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNG自力で描画したりして、基礎を覚えるのも良いよ。
VBやDirectXのインターフェース覚えるのを頑張ってもいいが、
こっちは一生使える知識だし。
時代錯誤か?
0054デフォルトの名無しさん
NGNG俺が昔VBで作ったブロック崩しが変な動作だったのは点で判定したせいだったのか。
0055デフォルトの名無しさん
NGNG画面を正方形にして、上下左右の各辺にプレイヤーを配置する形で。
005640=44=50
NGNG連続書き込みで悪いけど、やり方教えて。
特に、自前でバッファを用意するってとこ。
VBだけで可能なの?
0057デフォルトの名無しさん
NGNGVBでやる利点無いよね?
中々面白そうなので、俺が作る事にした(w
剛体力学ブロック崩し。
005940=44=50=56
NGNG初心者がプログラミングを勉強しやすいのが利点。
なんてったって、インタプリタだし。
0060デフォルトの名無しさん
NGNG線でもダメなら
面でやれ
0061デフォルトの名無しさん
NGNG1は?
0062ヒッキー@プログラミング
NGNGありがとうございます。がんばります。
>>40
うい〜。vbKeyLeftとかで矢印つかえるようになりました!
>>47
C++ですか…MFCというのがどうもよく分からなくて放置してました。
>>49
線で衝突というのはどうしましょう?四角く範囲区切るということですか?
>>51
難しいです…
>>52
完成したあかつきにはどっかから画像探して貼り付けます。
>>53
はーい。がんばりたいと思います。
>>55
Winsockコントロール使ったことがあるので、何とかなるかも。
最後に考えます
>>61
帰ってきました。
0063デフォルトの名無しさん
NGNG0064ヒッキー@プログラミング
NGNG↑次のファイルうぷしました。
とりあえず、Y軸方向へ進むときに角度を計算しました。
>>36氏に感謝。
>>63
なるだけがんばります。
006540
NGNGあと、タイマーコントロールを使わないで、
代わりにループさせると処理が安定して早くなる。
VBのタイマーコントロールは優先度が一番低いらしいから。
で、ループ処理のなかに DoEvents と sleep をいれると、
うまくOSにも制御が戻るから。
sleep はAPIで、使い方は sleep(100)とか。
括弧の中の数字が、アプリの実行の停止時間で、1=0.001秒だったはず。
0066デフォルトの名無しさん
NGNG0067デフォルトの名無しさん
NGNG似たスレどこかで見ました。
006840
NGNG右に移動中、右からきた玉が自機を透ける。
0069ヒッキー@プログラミング
NGNGほおほお。sleep入れてみました。
VBのタイマーコントロールは怪しいらしいですね。
APIのGetTickCount使うようにしました。
>>66
脱がしたいです。
>>67
おもしろかったので真似しましたゴルァ!
0070ヒッキー@プログラミング
NGNGありがとうございます。
なんか、あまり考えずに書いたので、右側が跳ね返るときも
左側が跳ね返るときも同じ処理を書いていたようです…鬱
04を再アップしました
007140
NGNG了解!
俺は初心者だし、お互いがんばろう。
ついでに言うと、GetTickCountの使い方がわからん(ー_ー;
0072デフォルトの名無しさん
NGNGスレタイトルの最初が>貴様ら<で、最後が>ください<になってるので
思わずみてしまった。
伽藍とバザール的良スレ。最後までやりとげてほしい。
このスレと結果報告を兼ねるHPで有意義な情報を公開にょ
0073デフォルトの名無しさん
NGNG毎回SIN/COSを計算させずに 変数VX,VYを使う事
ball_x = ball_x + VX;
ball_y = ball_y + VY
そして、壁にあたれば VX,VYを
左右壁なら VX = -1*VX 上の壁がラケットなら VY=-1*VY と符号を変更する
その場合-1ではなく -1.0001 のようにするとだんだん速度が大きくなって面白い
2、あたり判定は ball_x/y と VX/Y を足した後の線分との距離を使う事
ラケットとなら線分の交差と点との距離を使え
交差なら 交差判定で検索しろ
点と線分の距離は
http://pc.2ch.net/test/read.cgi/tech/1003559977/3
0074
NGNG>>36
角度でやると、衝突後の反射ベクトル求めるのが大変だから、
素直にxyのベクトルでやった方がいいのでは?
応用(たとえば重力とか)やろうとしたときも、角度と長さでやると
後々困難になるしー。
>>62
線での衝突判定というのは、ボールのすり抜け防止の策です。
現在の位置と次ステップの位置の二点を結ぶ直線として、目的の線分との
交差判定を行います。
こうすると、どんなに速いボールでもブロックすり抜けなどの検出エラーは
出ませんぜ。
まあ今は壁だけの段階だからまだ関係ないけどね。
頑張ってね。
0075
NGNGあらら、かぶった。ごめん
0076ヒッキー@プログラミング
NGNGGetTickCountは、Windowsが起動してからの時間をミリ秒単位で
返す関数のようです。引数は無しです。
で、10ms経った時間を計ろうと思ったら、現在時間から前に計った時間を
引いて、10を超えたら…みたいに書いたらいいみたいです。
>>72
はい、なんとかHPにまとめてみたいと思います。
有意義な意見をくださる方がイパーイいらっしゃるので、
僕の為にだけではもったいないです。
>>73
そうですよね。Sinとか毎回計算してたら遅くなりそうですしね。
んで、線分の交差を検索したところ、外積やら知らない単語が
出てきたので、それを調べようとして泥沼状態です…
>その場合-1ではなく -1.0001 のようにするとだんだん…
ほおほお、たしかに(藁 取り入れてみたいです。
>>74
そういうことでしたか。ようやく納得できました。
ありがとうございます!
0077デフォルトの名無しさん
NGNGhttp://piza2.2ch.net/tech/kako/996/996157997.html
0078デフォルトの名無しさん
NGNGバーの端っこにぶつかったら急角度で跳ね返る、
要するに物理法則を無視した動きをするけどその辺はどのように解決する?
その辺をどうにかしないと、
バーやブロックや壁の垂直面・水平面が全て水平だったらボールの動く角度は
常に一定になるけど……。
0079デフォルトの名無しさん
NGNGアナログなコントローラでないと無理だけど。
008040
NGNG俺としては、物理学的なものは無視して、まずは形にすることをお勧めする。
0081デフォルトの名無しさん
NGNG単純に端に8ピクセルより近ければ 端からの距離を Dとして
VY:=-VT : VX=VX*D/8 とかでもそれなり
0082デフォルトの名無しさん
NGNGそれじゃボールのスピードが変わっちゃうYO!
0083デフォルトの名無しさん
NGNGリアルタイムゲームでキー押下イベントを使うVBアプリは糞と呼ばれます
描画はバックバッファを使うこと
非表示のPictureコントロール(AutoRedraw=True)に全部描いてから
FromにPictureコントロールの内容をコピーしよう
0084デフォルトの名無しさん
NGNG0085デフォルトの名無しさん
NGNG>>83
キーコード
カーソルキー左 37 、カーソルキー上 38、シフトキー 16
だっけ?左右逆かも。
0087デフォルトの名無しさん
NGNGvbKeyLeftとかってやつな
0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG0090ヒッキー@プログラミング
NGNG↑次のファイルうぷしました。なんか、めり込みます…
線で跳ね返る処理をコピペしたら、おかしくなりました。
タマに、斜め方向に線をいれてます。(X状に)
>>77
リンク先、参考にさせてもらいます。どもです。
>>78
そうですね〜。完成が見えてきたら考えてみます。
>>79
アルカノイドのコンパネみたいなやつあったら嬉しいんですけどね(藁
>>80
うい〜。形を作ることを考えます。
>>81
そうですね〜。まずは好きにやってみます。
>>83
う…今回うぷした分でキー入力は修正しました。さんくす。
>>85
うい。してみました。
>>87
APIでキー入力の処理をしたので、VK_LEFTに変わってしまいました。
>>88
う〜ん、どのくらいでしょう。
趣味でたまにちょくちょくするくらいで、
期間的にはだいぶ長いことやってます…。
最初はファミリーベーシックで挫折(小学生時代)
ポケコンのベーシックにはまる(中学3年〜高校生)
CとVB勉強(高校〜)みたいな。
0091デフォルトの名無しさん
NGNGバグが酷いんだが、なんとかならんか?
激しく酷いぞ。
0092デフォルトの名無しさん
NGNG擬似スプライト処理をしたほうがいいね。ボールのフチが見えて萎える。
それからバックバッファを使わないと後々困ると思うよ。
いまのままだと、ボールやバーの移動量をふやすと軌跡がのこっちゃうでしょ。
0093デフォルトの名無しさん
NGNGこれは今すぐ直しなさい。
Form1_Unloadイベントに一行End書くだけでしょ。
タスクマネージャ見て驚いたよ。
0094ヒッキー@プログラミング
NGNGすいません、徐々に直していきます。
>>92
うい。了解。
前にフチを消す処理を書いたような覚えが…探してみます。
バックバッファですか。そこに書いてから実際の画面に転送ですよね。
やってみます。
>>93
ごめんなさい…ウチでもタスクマネージャ見たら溜まってたんで
焦りました。05を再アップしました。
今まで試してくださった方、大変申し訳ないです。
0095ヒッキー@プログラミング
NGNG↑次うぷしました。
背景になじませてみました
0096
NGNG覚えるの早いねー。
ブロックの管理あたりで一騒動ありそう・・・。
何か考えてる?
0097デフォルトの名無しさん
NGNG消化できてても吸収できてないと後々にひびく。
1が無理してなきゃいいが・・・
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG消化はできてるだろ。
問題は、覚えたかどうかだ。
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNGこのスレをヴァカ学生どものテキストに使いたいくらいじゃよ。
結局GDI描画にしたのねん。
メモリ上に仮想VRAMおったてて、スクリーンにBitBltかけるライブラリとか
なら探せばいくらでもありそう。
でも、プログラム的にはGDIのBitBltと同じような処理になっちまうだがな。
まあ、ともかく1よ、テキトーにがんばってくれや。
燃え尽きんようにな。
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNGそうなの?
0104デフォルトの名無しさん
NGNGソースは全然見てねーけどな。
0105デフォルトの名無しさん
NGNGいや、その線はないだろう。ソースを見てみれ。
ある程度経験を積んだ奴はどんなに素人らしいコードを
書こうとしても、必ずその「痕跡」がコードに現れてくるものだ。
ただ>>1は、スレの育て方のコツを知っているみたいなので
もしかしたら「プロの2チャンネラー」かもしれん・・・
0106デフォルトの名無しさん
NGNG010773
NGNG衝突判定の為にはBallMove()の先頭で
next_x = ball_x + vx
next_y = ball_y + vy
として ball_x/y next_x/y の線分との距離判定を使いなさいと言った筈だ
1、まず、線分と線分の距離を求めるルーチンを作りなさい。
そして、 枠とラケットへの線分との距離を順に求めなさい
その距離がボールの大きさより小さければその回に衝突する
0108ヒッキー@プログラミング
NGNGだんだん難しくなってきたので昨日ほどの進捗は無いかもしれませんが…。
>>96
おー、ありがとうございます。嬉しいです。
ブロックの管理ですか…配列の中に入れようと思いますが、
まだぼんやりとしか思い浮かばないので、ちょっと紙に書いて考えます。
>>97
ちょっと無理目です。でも努力をしないと技術がつかないと思うので
がんばりたいと思います。
>>101
どもです。
スクリーンにBitbltですか。ウインドウから位置を計算してその上に
乗せればいいわけですね。
学校の先生ですか?がんばってください。
先生から受ける影響(ソースの書き方とか)大きいです。
>>105
2chねらー歴は数ヶ月です(藁
何度かスレ立てて、どうやったら面白いか考えてました。
おっしゃる通り、素人でございます。
強制するのはよくないよ。
自分で考えて作るのがプログラムの楽しさだ。
0110デフォルトの名無しさん
NGNGいまのままだと処理内容が増えるにつれて
リニアに遅くなるよね
0111デフォルトの名無しさん
NGNGゲームってそうゆうもんだよ。
0112デフォルトの名無しさん
NGNG>動くのしか作れないもので…VESAのライブラリ拾って16bit色
漢発見!
0113デフォルトの名無しさん
NGNGんなこたーない
1フレームの処理Pにかかる時間をn(msec)とし、
フレーム更新間隔をm(msec)としたら、
本来1フレームはPを処理したあとに(m-n)msecを
sleepすべきである。(これを画面走査線の動作に
あわせるのが、vsyncである)
したがって、n<=mである限り1フレームの更新間隔は
nによらず一定で、その値はmである。
0114デフォルトの名無しさん
NGNG1フレームの更新間隔m=(10+n)msecとなることは自明。
プログラムの組み方によるが、たとえばブロック1つにつき
処理時間lを要するとすれば、ブロック数kに対しn=a+l*kである
つまり、m=(a'+l*k)となり、変数kによってmが線形的に変化する
こととなる。
これは、「ブロックが大量にあるスタート時とブロック残り数が
少ない最後のほうでフレーム更新間隔が異なる」ことを意味する。
フレーム更新間隔の変化は、パドルの動作、ボールや演出の動作にも
影響を与え、ゲームとしての品質を低下させる。
0115ヒッキー@プログラミング
NGNGsleepの処理を改善してみました。>>113氏に感謝。
>>107
線分と線分の距離を求めるアルゴリズムを検索してみます。
ちょっと考えがついていってないので、しばしお待ちを…
>>110 - >>113 - >>114
ご指摘ありがとうございます。
たぶん、おっしゃる通りに改善できたと思います。
0116デフォルトの名無しさん
NGNGブロックとの衝突判定をどうするのかまだ決まっていない状態で
議論しても始まらんだろ。
とりあえずぱっと思い付いた(つーか、ありがちな)方法だが、
普通ブロックって奴を画面に配置する時は縦横きれいに整列されているので、
その構造を利用するだけでも
線1本との交差判定にかかる処理時間
縦方向に配置するブロックの最大数を r
横方向に配置するブロックの最大数を c
とした場合、その衝突判定にかかる処理時間は(生存しているブロックの
数に関わらず)
l * r * c
で済むんではないの?
(ついでに線との衝突判定を律義に1本ずつ計算せずに
「どの線とぶつかる可能性があるか」を計算で拾い出せば
もっと速いけどな)
0117116
NGNG>線1本との交差判定にかかる処理時間
を
>線1本との交差判定にかかる処理時間を l
に読み替えてくれ。
0118ヒッキー@プログラミング
NGNG0119ヒッキー@プログラミング
NGNG0120デフォルトの名無しさん
NGNG0121デフォルトの名無しさん
NGNG別に今回のブロック崩しでどういう処理をするかは論じてない
あくまでゲームループ一般の話題であり、ブロック衝突に
かかる計算量は、あくまで一例としたまでで
気に食わないなら「ボールが複数に分裂した場合」でも
「敵が複数出現する場合」でもかまわない
それよりあれだけの情報で新しいリリースではちゃんと修正している
>>1はかなり理解力が高いと思う
ソース見たけど、いわゆる「処理落ち」まできちんと考慮してるみたいだ
初心者は初心者なんだろうけど、頭はかなりよさそうだね
0122デフォルトの名無しさん
NGNG0123デフォルトの名無しさん
NGNG反射の処理が冗長な割に正確じゃないのよね。思い切って書き直したほうがいいと思う
if パドルの上端(上半分)に接触 then vy=-abs(vy)
if パドルの下端(下半分)に接触 then vy=abs(vy)
ってなふうにad hocに書いたほうが妙なバグに悩まされずに済むよ
0124速報
NGNGhttp://game.2ch.net/gamedev/
0125デフォルトの名無しさん
NGNGおお、待ち望んでいたものが。ワショーイ
0126デフォルトの名無しさん
NGNGってことは、これは板違いにつき終了ってことね。
0128デフォルトの名無しさん
NGNGまだインフラ整備されてないようだから、それまではいいんじゃない?
0129デフォルトの名無しさん
NGNG0130デフォルトの名無しさん
NGNG0131ヒッキー@プログラミング
NGNG↑次あぷしました。
1.タマがめり込む現象の改善
2.線分の交差で跳ね返っていたのを消して、もっと単純に
>>123
思い切って書き直しました。
めり込みがなくなったかと思います。
>>124
昨日、記念カキコしてきました(藁
これが終ったら、向こうに逝きたいと思います。
>>127
あああああああああああああああああああああ、ちょっと待って(w
久々age
0132デフォルトの名無しさん
NGNGこういうのがゲ術板でも出てくるといいのだが。
0133デフォルトの名無しさん
NGNG0134
NGNG厨房減ればいいけど。
0135ヒッキー@プログラミング
NGNG↑次あぷしました。
ブロックとぶつかるようにしました。
>>120
本当にヒッキーです。かれこれ数ヶ月になります。
>>133
ワラタ
>>134
おぉ、ほんとだ。良い板になるといいですね。
0136デフォルトの名無しさん
NGNGもっとスピード早くして。
0137ヒッキー@プログラミング
NGNG早くしてみました。
0138デフォルトの名無しさん
NGNGいまんとこ定数ごっちゃになってないけど、
大丈夫か?きちんと見た目わかりやすく定義した方がよくないか?
そんなこという俺もいっつも適当だけど、鬱
0139ヒッキー@プログラミング
NGNG↑ついにゲームっぽくなりました。
>>138
定数ですか。
AND演算に使ってないので、大丈夫だと思います。
ただ、マジックナンバーをなくそうかと。
定義、見やすくしてみたいと思います。
0140デフォルトの名無しさん
NGNGなどと言ってみるテスト。
0141デフォルトの名無しさん
NGNG210点でクリアー.
1はいい調子だね.
0142デフォルトの名無しさん
NGNGいいね、いいね。シンプルだけど遊べるよ。
ただ、「この角度でボールに当たったら、こうは動かんだろ〜」という
ストレスが多少ありますね〜。
0143デフォルトの名無しさん
NGNG実は、リリース版まで上がってて小出しにしてるのかとか
一瞬疑ってしまったよ
モチベーションって大切だよな、うんうん
0144デフォルトの名無しさん
NGNG01462
NGNG0147ヒッキー@プログラミング
NGNG↑計算してみました。角度とか。
あと、ステージ2を追加しました。
>>140
間違えそうになりましたよ(藁
>>141
おお、どうもありがとうございます。21個、ブロックがあるので
210点になります。
>>142
たしかにちょっと変ですね…。
自機の横にあたったときは上に行くようにしてます。
>>143
このスレ立てたときに1から作りました。
みなさんのおかげで、なんとかゲームらしくなりました。ありがと〜。
>>144
まだまだがんばります!
>>145
うい〜。APIは僕も最初、ちんぷんかんぷんでした。
ある日、突然目覚めました。
>>146
お〜、どもです。スレ維持する為にがんばります。
昨日、アルゴリズムの本を買ってきました。
もうちょっと勉強します…
0148デフォルトの名無しさん
NGNG昔のブロック崩しは、ブロックの横からの判定がなくて当たり前で、
衝突判定はかなり単純なものだったなあ。
ボールの角度も、エポック社の取説では、ラケットに当たった位置に
よって、4方向(!)ぐらいだけだったような。
そのレベルはとっくに超えてて、いいぞゴルァ!
0149デフォルトの名無しさん
NGNG「貴様ら!○○作るので見てください」をシリーズ化キボン。
0150デフォルトの名無しさん
NGNG0151ヒッキー@プログラミング
NGNG↑3面追加&グラフィック変更しました。
>>148
おぉ、MSXですか。
当時はプログラムを打つと言えばファミリーベーシックしか知りませんでした。
MSXを知ったのはプレステ出てからです(藁
お褒めいただき、ありがとうございますゴルァ!
>>149
これ終ったら、また新たなスレ立てようと思っております。
みんなでシリーズ化したら面白そうですね。
0152デフォルトの名無しさん
NGNGそれちょっと考えてみた。
しかし、現時点でかなり1に遅れをとっている状態であり、
怖くて立てる勇気がない。
0154ヒッキー@プログラミング
NGNGさっきなんて書いたっけ…
http://www.geocities.co.jp/SiliconValley/2530/block14.zip
↑次あぷしました。
2周目以降の追加&ブロックから確実に跳ね返るようにしました。
>>152
厳しい意見をもらっても、凹まない精神があれば大丈夫と思います。
一緒にがんばりましょう。
>>153
テストプレイ、さんくすです。
ちょっと玉の加速度を上げました。
0155デフォルト
NGNG効果音とかあると気持ちいいかも。
0156デフォルトの名無しさん
NGNGでも乱立されるとちょっと。
0157デフォルトの名無しさん
NGNGゲ製作技術板でやるべき
0158デフォルトの名無しさん
NGNGゲームとは限らないの方向で一つ。
「貴様ら!コンパイラ作るので見て下さい」とか
0159デフォルトの名無しさん
NGNG「貴様ら!ゲームライブラリ作るので見てください」だったら萎え
0160デフォルトの名無しさん
NGNG0161ヒッキー@プログラミング
NGNG↑音が鳴るようになりました。
>>155
ステージデータ、ファイルから読めるようにしてみたいですねー。
Txtで作れるようにしようかな…。
>>160
それ、見てみたいです。
あ、行為だけならビデオで見てるか…
0162デフォルトの名無しさん
NGNG0163デフォルトの名無しさん
NGNG0164デフォルトの名無しさん
NGNG真面目に嫌。
0165デフォルトの名無しさん
NGNG>>1は何か他の言語の経験者?
0166ニセイチ
NGNGCOBOLとForthとアセンブラやったことあります。
0167デフォルトの名無しさん
NGNGで?そのレスのどこで笑え・・・・・と?
0168デフォルトの名無しさん
NGNG細々とやってたらしいよ。
基礎は身に付けてるみたい。
0169デフォルトの名無しさん
NGNG作ってくる1は、正直すごい。
さて、ステージデータのファイル形式、どんなのを作ってくるかな?
ステージエディタなんかも作ってみては?
0170デフォルトの名無しさん
NGNGそうなんだ。誰かコメントつけなさいってアドバイスしたのかと思った。
(すまんスレ全部読んでない)プログラマとしての素養は備えているね。
俺はだめだ。もうやーめたっと。
0171デフォルトの名無しさん
NGNGうるへーばか('Д´)お前はそこでかわいてゆけ
0173デフォルトの名無しさん
NGNG「うしおととら」の偽なまはげ編だな。
0174デフォルトの名無しさん
NGNGえへへ・・・お前・・・優しいなぁ・・・
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGまた違った展開になっていたと思われ。
0178171
NGNG0179デフォルトの名無しさん
NGNG漏れも応援してるよ! ガンバレ!
0180141=153
NGNG動かしてみたよ.いいじゃん.音.
動きも速くなってていいね.
あとは,玉とラケットが接触するとき,
ラケットと玉との相対スピードで飛ぶ方向変えれると,
もっとはまるね.
0181デフォルトの名無しさん
NGNG貴様ら! プログラマークエスト作るので見ていて下さい。ってのやろう。
プログラマークエストII-悪霊のクライアント
http://pc.2ch.net/test/read.cgi/prog/1000130870/
0183デフォルトの名無しさん
NGNGVBを卒業してLinuxでもいれてCを勉強したほうが1の為に良いだろう。
1は素質があるようなのでオープンソースの場で活躍が期待できそう。
そんなわけで期待age
0184デフォルトの名無しさん
NGNG0185デフォルトの名無しさん
NGNG0186デフォルトの名無しさん
NGNGVCでやったほうがいい
VBは所詮厨が使うもの
0187デフォルトの名無しさん
NGNG1をM$依存症にする気か?
1の明るい未来のためにCのほうがいいと思われ。
つーか、あなたは既にM$依存章のようですが?(藁
0188デフォルトの名無しさん
NGNGWindows 使っている限り MS の掌の上なんだから諦めも肝心。
それはそれとして opensource 活動もするのが大人のやり方。
0189187
NGNG0190ヒッキー@プログラミング
NGNG↑16個目UPしました。
ステージエディットできるようにしました。
あと、毎秒100フレームは計算しすぎかと思って、50フレームにしました。
>>180
一応、ラケットの進む向きで角度を変えられるようにはしてあります。
でも、物理法則に反してるかもしれません(藁
コマンドラインオプションで、/dをつけて起動してみてください。
>>181
リンク先、見てみます。
>>182
シューティングつくりたいです。怒首領蜂みたいなやつ。
>>183
Linuxですか…ちょっと敷居が高いです。
インストールしたことはあるんですけどね…
>>186
VC、いじってみようかと思います。
>>187
僕もすでにVBいじってる時点でM$依存症かも…
ちょっと疲れ気味です。
>>4さんから送られてくる予定の薬師丸ひろこでなごみたいと思います。
0191デフォルトの名無しさん
NGNG( ´,_ゝ`) VC・・・ p
0193デフォルトの名無しさん
NGNGグラフィックスやサウンド絡んだら、いずれにせよ Generic な C/C++ の範囲外だから、環境依存に
なるのは仕方ないと思われ。
まぁ SDL あたりのライブラリを使うって手もあるけどさ。
0194デフォルトの名無しさん
NGNGで、結局のところ何を言いたいの?
ゲームなんか作ってないで、C 勉強して Linux の開発やれって意見なら大きなお世話だし、Win32
ではなく Linux にターゲットを移そうという提案にしても、ゲーム開発に限れば Win32 + GDI と比較
して Linux + svgalib, Linux + X11 で特にメリットがあるとは思えないけど。
Win32 は
- マルチメディア関連の API が標準化されている
- 情報も豊富
- 開発環境も整っている
- 利用者が多い
という点で、趣味のゲーム開発者にとっては、これを選択する十分な理由があるよ。
>>1
とりあえず VB + GDI でしばらくやってみて、限界を感じたら VB + DirectX なり VC に移れば良い
と思う。趣味でやってることなんだし、プラットホームや言語はなんでも良くて、ゲーム作って本人も
周囲も楽しむのが最優先でしょ :D
0195ヒッキー@プログラミング
NGNG↑17番UPしました。
サウンドを、毎回ファイルから読むのではなくて、
実行ファイルのリソースの中に入れてみました。
>>192
夜は早めに寝ています。
あんまり全力でやらないように、適度に努力してみます。
>>193
SDL、検索してみましたが面白そうですね〜。
使ってみたくなりました。
>>194
うい〜。DirectXはかなり興味があります。
VBで使うのはめんどくさそうなので、VCから使いたいです。
もっと勉強しないと…
0196デフォルトの名無しさん
NGNG( ´ゝ`) < MacOSXの世界に来ないかい?
0197デフォルトの名無しさん
NGNGどうでもいいが。
>>196
なんのメリットが?
0198デフォルトの名無しさん
NGNGできるYO!
0199デフォルトの名無しさん
NGNG( ´ゝ`) < 偏見パレードかもしれないけどね
・ProjectBuilderだと、VB並てかそれ以上の操作性+各オブジェクトの
関係の理解がし易くなる
・Appleだけあって、メディアが作り易い
・C言語の拡張であるObjectiveCとJavaが使える
・http://www.big.or.jp/~crane/cocoa/ ←ここでほとんど理解できる。
( ´ゝ`) < いじょーだよ。
( ´ゝ`) < あくまでも偏見だからね。
( ´ゝ`) < でもProjectBuilderはマヂに生産効率アップできるよ。
0200199
NGNG0201デフォルトの名無しさん
NGNGここはVBだったはず。
昔はVBって書いてあったけど今は見つけられなかった
0202ROM
NGNGそれぞれの信念理念を元にした野外での議論は必要無いのではとおもわれ
>>1
いろんな意見があるが最終的には1自身できめてください。
少し休憩して、ロールプレイング的な感覚を楽しませてください。
応援してますぞ
0204ヒッキー@プログラミング
NGNG↑ここのページ見てちょっと凹みました。
中学生でもこんなにすごい人がいるとは。
ちなみに僕はコンピュータ系専門学校に逝っていましたが
あまりに酷いので逝かなくなりました。親に悪いことをした…
>>199
Macでプログラムってあんまり考えなかったです。
いろいろソフトがあるんですね。ほおほお。検索してみようと思います。
>>201
電車のゲームですか?
Direct3D使ってるんですねー。すごい。
>>202
うい〜。応援どうもです。
今日は休憩しました。またがんばろうと思います。
>>203
ケコーンしましょう。
一覧から消えたのであげ
0206デフォルトの名無しさん
NGNG本にいくらでも書いてあるんだから、そんなHPでへこむな。
やってないだけで、やればできるだろ。
0207リア厨 ◆3JQchEFY
NGNG前に見たときはスゴイって思ってたけど、
「プログラムは何故動くのか」とかいう本みたら
「たいしたことないじゃん。」って思えたよ。
つまり、206に激しく同意
0208デフォルトの名無しさん
NGNG維持しつづけられる若さと情熱にあふれた>>1が
何よりも眩しく、羨ましい。
0209141=153=180
NGNG1360点でクリア.
1,ほんとえらいよ.言語とかどうでもいいから,とにかく
このゲームををひとつしあげてほしい.
思ったこと.
玉が加速して面白いね.そのせいか,
そろそろShift2倍速もつらくなってきたね.
アナログコントローラじゃない壁をどうやっておもしろく取っ払おう?
圧縮ファイルの作り方は,16個目のより17個目のほうが好き.
いちおうこわいからソース調べてからVBでコンパイルして遊んでるので,
別フォルダになってないほうが手間がすくなくてうれしい.
あとさ,こまかいことだけどさ,ボールの影の形四角っての
そろそろやめない?
とにかく1,楽しみにしてるからがんばれ.
0210デフォルトの名無しさん
NGNG関数変えるだけだと思うので1行書き換えておK
0211ヒッキー@プログラミング
NGNGスイマセン、男です(藁
>>206 >>207
そうですねー。そういう分野の本も読めばいいんですね。
ちょっと救われました。
>>208
ありがとうございます。
ヒッキーなので、日々の生活で精神が乱されることがないので
継続できているんだと思います。学校に通ってた時は苦悩の日々
でした。
>>209
毎度、ありがとうございます。
ボールの影、ウチの環境(Win2000)では出ていなくて、
今までわかりませんでした…。
ちょっとBitbltの引数を考えたいと思います。
それから、これからは17個目のような形式であぷします。
0212ヒッキー@プログラミング
NGNG↑処理を簡素化&ボールの後ろの四角が見えないようにしました。
だいぶ軽くなったと思います。
あと下に落ちたときに、はじめからやるボタンを追加しました。
http://www.geocities.co.jp/SiliconValley/2530/block_ed.zip
↑それから、どなたかステージエディタを試して頂けないでしょうか。
0213デフォルトの名無しさん
NGNG0214デフォルト
NGNG消えますが、当たってない方が欠けてしまいます。
0216ヒッキー@プログラミング
NGNG↑ブロックの跳ね返りの処理を見直しました。
ちょっとストレスが減ったかな…。
それから、重なったブロックが欠けないようにしました。
処理をだいぶ減らしたので、おかしくなってる部分があるかも。
基本的な動きができるようになってきたので、そろそろ
壊せないブロックや、点数の違うブロック、2回当てないと壊れないブロック
など追加したいと思います。あと、空中にいる間に壊したブロックを
格ゲーのコンボ(?)みたいにカウントしようかとも思っています。
0217デフォルト
NGNG0218デフォルトの名無しさん
NGNG連続してブロックを壊した場合、コンボ点を導入するってのはどうですか?
1個 - 10点
2個 - 20点
3個 - 40点
4個 - 80点
5個 - 160点・・・
0219デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNGwarata
0223デフォルトの名無しさん
NGNG機体にボールが吸い付いて振動してしまうのですが、
僕だけでしょうか?
0224デフォルトの名無しさん
NGNG彼の成長と君の成長は直接に関係があるわけじゃないよ。
君がもっと成長したあと、そのページを見直してみたとき、
「なんだ、大げさにいうほどのことじゃなかったな」
と思える日が来るかも知れないんだし。
0225141=153=180=209
NGNGやってみたよ.
>>223が言うように,ボールが機体にくっつくね.
特にボールのスピードがおそいときに,そうなるね.
おいらもWin2Kだけど,影は消えました.
ブロックを打ち返す,ってとこさ,このゲームの要だから,
ちゃらいところに凝るのもいいけど基本的なところで「味がある」
操作系にできないかなぁと思うんだけど.
ってことで1がんばれ.
0226デフォルトの名無しさん
NGNG自分がヘタレだと改めて感じました・・・
>>1さん、頑張ってください
0227ヒッキー@プログラミング
NGNG↑次うぷしました。
・自機にめり込まないように修正
・画面変更
などしてみました。
>>217 >>223
スイマセン、変なソース書いてました…修正しました。
(直ってないかも…)
>>218
ほお。面白そうですねー。
次の更新時に考えてみます。
>>219-221
ダウンタウンのネタっぽくてワラタ
>>224
そうですねー。もうちょっと勉強して、たいしたことなかったと
思えるようにしたいです。
>>225
影が出るのはOSの問題じゃなかったんですねー。
あまり考えずに言ってしまってスイマセンでした。
確かに基本的なことができてなかったら、画面等にこだわっても
面白くないものになってしまいますね…。書き直します。
>>226
おぉ、ありがとうございます!
応援していただけるとやる気が出てきます。
0228デフォルトの名無しさん
NGNGわずか10日でこの成長っぷり
>>4から35,000薬師丸ひろ子がもらえる日は近いね
0229RE: block20.zip
NGNG0230デフォルトの名無しさん
NGNG>'タイマー使用
show
doevents
のコンボをform1_loadに書いておけば
その時点でwindowが表示されるよ
0231デフォルトの名無しさん
NGNGもっともな指摘だがさすがに1もこれを放置する気はないだろう
それよりファイルナンバーの直指定はやめるべき
使用可能なファイルナンバーはFreeFileで取得しよう
0232ヒッキー@プログラミング
NGNG↑次うぷしました。
・ブロックとボールの判定回数の減少
とかしてみました。
>>228
>>4さん、そろそろ2万薬師丸ひろ子程度、用意しておいてください。(藁
>>229
Stage_Data.bas、書き直しました…
さすがに前のはかっこ悪かったと思います。反省。
>>230
う〜ん、やってみたんですけど、なぜかうまく逝きませんでした…
で、MainLoopをTimer内に書かずにサブルーチンにしてみました。
>>231
今回、FreeFile使うように修正しました。
ご指摘、ありがとうございます。
0233デフォルトの名無しさん
NGNG0234デフォルトの名無しさん
NGNG実装無茶苦茶簡単で、熱中度異常にアップします。
コストパフォーマンス最高です。
重要な部分?のブロックは、頑丈だとよいです。
0235デフォルトの名無しさん
NGNGやっぱ同じ作るにしても
他人に見られることを意識して作ると違うね〜
0236デフォルトの名無しさん
NGNGというわけで、漏れもスレに参加。
sin,cosを毎回計算するなって言ってる人いるけど、そんなの今の段階で言うべき
事じゃないと思うよ。だいたい今時のマシンで1フレームに1回程度のsin,cosの
計算なんか全く負担にならないし。むしろ、意味の無い最適化でソースが複雑に
なることの弊害の方が大きいかと。あ、VBって知らないんで、VBのsin,cosが死ぬ
ほど重かったらゴメソ。
パドルとボールの当たり判定だけど、ボールが画面下に動いているときだけ処理
するといいよ。そうすればめり込んだり、打ち返すまでに2回跳ねかえるような
事が無くなって良い感じ。
あと、壊れないブロックを作ると球が永遠に落ちてこなくなる事があるので注意。
■■■■■
■□ ■
■ ■
■ ■
■■■ ■
こんな地形で(■は壊れないブロック。□は壊れるブロック)□の右側に45度で
当たるように打ち込むと無限ループ突入。
単純なブロック崩しなら、たまーにランダムで反射する方向が微妙にズレるように
して回避するのが吉。名作アルカノイドでは敵キャラが無限ループ防止の役になっ
てた(ランダムでズレる手法も使われてた気がするが)。
0237236
NGNG操作系に関しては色々あるが、最近2chで流行りのワンキーにしちゃうってどお?
ボタン押してると右に移動して、離してると左に移動。
少し慣性を加えておくのがミソ。
0238236
NGNG0239デフォルトの名無しさん
NGNGたとえば、
1) y方向の速度vyを常に非常に小さな量加算する
-->まるで重力があるかのように
2) vx = vx-vx*vx*vx/10000 みたいにすると空気抵抗に
3)特定のブロックに引力や反力を導入する
とかね
0240デフォルトの名無しさん
NGNGPrivate Sub gravitation(x0, y0, g)
Dim L2 As Double
Dim dx, dy As Long
dy = ball_y - y0
dx = ball_x - x0
L2 = g / (dx * dx + dy * dy)
vx = vx - dx * L2
vy = vy - dy * L2
End Sub
呼び出しは BallMove 手続き内で
gravitation 100, 70, 0.3
みたいに
0241デフォルトの名無しさん
NGNG書き込むコード、あれも綺麗に書き直そう
連番ファイル名以外にも対応したいならば、リソースに
ストリングテーブルとして書いておき、それを読み出す形にすべきだろう
それにしてもこのへん、丁寧な設計思想で好感が持てる
0242ヒッキー@プログラミング
NGNG↑次うぷしました。変更点は、
・画面効果の追加
です。
>>233
うおー。がんばります。
>>234
僕も考えているんですが、ネットに落ちてる画像勝手に使ったりしたら
まずくないかなーと思って考え中です。→ >>52(藁
>>235
ありがとうございます。
やっぱ、一人で作ってるとあんまり見た目考えないですねー。
プログラム板のかたに見て頂けてうれしいです。
>>236
おぉ、ご意見ありがとうございます。
Sin・Cos関数を使う部分は1つにしてみてます。なんかVBの標準機能って
どうも遅い気がするので…。
2回跳ね返るとどうも動きに違和感がありますね。画面内の方向に
跳ね返るようにしました。
壊れないブロックって、そういう事も考えられるんですね。
そういえばアルカノイドって敵いてましたね。敵キャラがそんな役目も
果たしているとは…。ちゃんと考えられてるんですね。
ワンキーにしたら、熱中しそうですね(藁
考えてみます。
タイトルを「貴様ら!ブロックを崩してください」にしてみました。
>>239
おお、実用的な例をありがとうございます。
ボールに動きが出て面白そうですねー。
(ところでDDAとは何でしょうか…検索してみます。)
>>240
具体的なソースまで挙げて頂いて、ありがとうございます。
頭でイメージするのが難しいので、一回実験してみたいと思います。
>>241
そうですねー。あのままだと何かあるたびにiniファイルに書くコードを
考え直さないといけない気がします。
そういえばストリングテーブルってありましたね。調べてみます。
0243233-242だけ読んだ
NGNG連続してブロック壊したらポイントが2倍とか
ブロック壊せなかったら5ポイント減らすとか
ずっと同じポイントだったら、意欲がうせる?
0244デフォルトの名無しさん
NGNG0245ヒッキー@プログラミング
NGNG↑次うぷしました。変更点は、
・コンボボーナスの追加
です。
>>243
ういー。最近のシューティングゲーム的に点が増えるようにしました。
>>244
出てきましたー。どもです。
でも言葉の意味はいまだ良くわからず…
0246ヒッキー@プログラミング
NGNG直します…
0247ヒッキー@プログラミング
NGNGゲームをストップさせてもコンボのカウントが動いてました。
0248おすぎ
NGNG私はこのスレを応援します。
0249デフォルトの名無しさん
NGNG> ball_y = ball_y + vy * Angle
Angle という変数は何?
このAngleさえなければ このball移動はDDAなのに惜しいね
進行方向の角度だけを変えたい場合は、
s= sin(PI()*Angle/180)
c= cos(PI()*Angle/180)
として
wk=vx*c-vy*s
vy=vy*c+vx*s
vx=wk
のようにするんだよ。
DDAなら色々とボールの動きに面白い加工が可能だから
ぜひ修正してみるといいよ
0250デフォルトの名無しさん
NGNGそれってDDAって言うの?
ただのベクトル演算にしか見えないが。
0251デフォルトの名無しさん
NGNGDDA使うと1単位の直線移動距離が傾きによって変わるので
素人にはお勧めできない、てゆかフレーム単位に描画する
リアルタイムゲームではお勧めできない。
この程度のプログラムで小数点演算を忌避する理由も特にないことだし
存分にベクトル演算してくれ。
それに>>249の書き方だと移動量は変わっても角度変数angleは変わらない。
2回目以降の反射のときはどうするんだろうか。
0252デフォルトの名無しさん
NGNG----------------------------------
そんな事より4よ、ちょいと聞いてくれよ。スレとあんま関係ないけどさ。
昨日、近所の2ちゃん見に言ったんです。2ちゃん。
そしたらなんか人がめちゃくちゃいっぱいで座れないんです。
で、よく見たらなんか垂れ幕下がってて、「完成しない」に3万5000薬師丸ひろ子、とか書いてあるんです。
もうね、アホかと。馬鹿かと。
お前らな、「完成しない」如きで普段来てない2ちゃんに来てんじゃねーよ、ボケが。
「完成しない」だよ、「完成しない」。
なんか親子連れとかもいるし。一家4人で2ちゃんか。おめでてーな。
よーしパパ,完成しない>>1を煽っちゃうぞ〜、とか言ってるの。もう見てらんない。
お前らな、うまいぼうやるから3万5000薬師丸ひろ子、調達しろと。
2ちゃんってのはな、もっと殺伐としてるべきなんだよ。
3万5000薬師丸ひろ子 をほしそうに見つめている奴といつ喧嘩が始まってもおかしくない、
刺すか刺されるか、そんな雰囲気がいいんじゃねーか。
女子どもは(除:3万5000薬師丸ひろ子)すっこんでろ。
で、やっと3万5000薬師丸ひろ子もらえたかと思ったら、隣の奴が、金玉なめて、とか言ってるんです。
そこでまたぶち切れですよ。
あのな、「金玉なめて」なんてきょうび流行んねーんだよ。ボケが。
得意げな顔して何が、金玉なめて、だ。
お前は本当に金玉なめてもらいたいのかと問いたい。問い詰めたい。小1時間問い詰めたい。
お前、金玉なめてって言いたいだけちゃうんかと。
2ちゃん通の俺から言わせてもらえば今、2ちゃん通の間での最新流行はやっぱり、
チンコはみらせる、これだね。
横ちんはみって勃起中。これが通の頼み方。
チンコはみらせるってのはパンツのよこからからチンコがもろに出ている。
そん代わり ウェイトレスが最高裁に訴えてくる(ニュー速に前スレたってた)。これ。
で、それに横ちん勃起中。これ最強。
しかしこれを頼むと次から3万5000薬師丸ひろ子にマークされるという危険も伴う、諸刃の剣。
素人にはお薦め出来ない。
まあお前らド素人は、自分のちんこをなめてなさいってこった。
(http://8931.com/yosinoya.php3 で作成)
0253249
NGNG前半とは別の発言のつもり・・・
>>249 Angleを小さくして毎サンプルかければカーブを描けるけど
それならDDAかな
>>251 直線発生だけじゃなくても、浮動小数点演算でも
差分方程式ならDDAって言うと思うけどなあ・・・
0254デフォルトの名無しさん
NGNG面白かった。リンク先でいろいろやってみたり(藁
ニュー速たってたのはしってるけど、スレ倉庫にもないって。
9月ごろのスレだし、、、
1のレスが面白そう。
0255デフォルトの名無しさん
NGNG作るなこんなもん〜(爆笑)
なんだかもう。
0256ヒッキー@プログラミング
NGNG昨日、近所の漏れのスレ覗いたんです。漏れのスレ。
そしたらなんか人がめちゃくちゃいっぱいで座れないんです。
で、よく見たらなんか吉野家コピペとか張ってあるんです。
もうね、アホかと。馬鹿かと。
お前らな、吉野家コピペ如きで普段来てない漏れのスレに来てんじゃねーよ、ボケが。
吉野家コピペだよ、吉野家コピペ。
なんか親子連れとかもいるし。一家4人で漏れのスレか。おめでてーな。
よーしパパもコピペ作っちゃうぞー、とか言ってるの。もう見てらんない。
お前らな、ブロック崩しのソースやるからコピペやめろと。
漏れのスレってのはな、もっと殺伐としてるべきなんだよ。
熟練プログラマな奴といつ喧嘩が始まってもおかしくない、
刺すか刺されるか、そんな雰囲気がいいんじゃねーか。女子供は、すっこんでろ。
で、やっと落ち着いたかと思ったら、隣の奴が、薬師丸ひろ子もらった、とか言ってるんです。
そこでまたぶち切れですよ。
あのな、薬師丸ひろ子もらったなんてきょうび流行んねーんだよ。ボケが。
得意げな顔して何が、薬師丸ひろ子もらった、だ。
お前は本当に薬師丸ひろ子もらいたかったのかと問いたい。問い詰めたい。小1時間問い詰めたい。
お前、薬師丸ひろ子もらったって言いたいだけちゃうんかと。
漏れのスレ通の俺から言わせてもらえば今、漏れのスレ通の間での最新流行はやっぱり、
Win32API、これだね。
VB、Win32API。これが通の頼み方。
Win32APIってのはWindows依存。そん代わり使いこなすとGUIバリバリ。これ。
で、それにVB、。これ最強。
しかしこれを頼むと次から熟練プログラマにマークされるという危険も伴う、諸刃の剣。
素人にはお薦め出来ない。
まあお前らド素人は、HTMLでも書いてなさいってこった。
0257デフォルトの名無しさん
NGNG普段からこのスレには来てたり<252
まぁ、行数が多いから面倒なんだよな。読むのも。
なんか俺って荒らしみたいだな。何行も貼りつけて。
なんとなく「ちゆ」見に行ったんです。
そしたら、>吉野家コピペジェネレータ
があったんですね。実験に使ってみたり(藁
1さん、頑張れ!俺もなんか作ってみるよ、最近疲れ気味だが
ひまだ氏。
0258デフォルトの名無しさん
NGNGあと今 HTML と CSS , JavaScript かいてた。
どうせド素人だから……ブツブツ
#ギコぺダウソしたてでちょっとウキウキ(藁
0259デフォルトの名無しさん
NGNGで、薬師丸ヒロミが・・・なにか?
0260ヒッキー@プログラミング
NGNGごめんなさい、煽るつもりはなかったんです。
吉野家コピペジェネレータが面白かったので…。
何か作られたらUPしてみせてください。
0261デフォルトの名無しさん
NGNG読んで得したスレだ。いや、筆舌っぽいんでドーモ
0262249
NGNG>2回目以降の反射のときはどうするんだろうか。
angleはソースを見た所、単にラケットの動きのバリエーションをつける為だから
反射した後に微調整したいだけだけじゃない?
VBにはAtnしかなくて C/Delphiにあるatan2が無いのでvx/vyから進行方向角度
に変換するのがメンドクサイんだけど
反射は既にやってるように vx,vyの符号を反転するだけでいいんだし
なお、angleを使わなくても ラケットの移動でコスレル雰囲気を出すなら
1)vxをラケットの進行方向に一定値加える
2) ラケットにぶつかったらw=±0.1 程度にして
if abs(w)>0.01 then
ax=vy*w
ay=vx*w
vx=vx-ax
vy=vy+ay
w=w*0.99
endif
みたいにするともっと簡単
0263デフォルトの名無しさん
NGNG角度を10度変えたいなら、直接vx,vyを10度回転させる。
0264デフォルトの名無しさん
NGNG一次変換を忘れてるに 3 ガノッサ。
0265デフォルトの名無しさん
NGNG0266デフォルトの名無しさん
NGNGじゃー漏れは薬師丸ひろ子2人分
0267(・ε・)
NGNG交換できるようにして欲しいに、4ガノッサ。
0268デフォルトの名無しさん
NGNG>直線発生だけじゃなくても、浮動小数点演算でも
>差分方程式ならDDAって言うと思うけどなあ・・・
DDAの最初のDが何を意味するか?
DDAがどういう要求から生まれたものか?
を考えれば、DDAは「実数演算を用いない」ことが
定義に含まれていると考えるのが自然
でなきゃ単なる微分解析じゃん
0269デフォルトの名無しさん
NGNG正直言うと、いまどきそんな考え方は必要無い。
(ラスタライザとか書くなら別だが)
0270ヒッキー@プログラミング
NGNG↑次うぷしました。変更点は
・他の色のブロックの追加
・ステージエディタの修正
です。
>>249
毎回除算してた部分を書き直してみました。
次うぷするときは重力とか入れてみたいです。
>>251
ういー。なんかDDAというのは難しそうなので、
また今度調べてみようと思います。
>>262
アークタンジェントってどうやって使ったらいいのでしょうか…。
ラケットにこすれる時、vxを直接変えたほうが簡単かもしれないですねー。
>>263
ほおほお。そういうことも考えられるんですね。参考になります。
>>267
してみました。
4ガノッサください。
0271ヒッキー@プログラミング
NGNG0272デフォルトの名無しさん
NGNG考え方としての応用範囲は広いよ。 差分解析だよね。
整数演算だけで実現出来るけど、無理に整数に拘る必要はないと思うよ
でもデジタル微分とか差分とか難しく考える必要はないよ
説明は x=f(t) を x=∫f'(t)t として f('t) を積分するだけ
tの多項式なら何度かこの変換をすれば定数になる
また2変数の多くは相互に参照すればt項が消せる
・・・・というのが理屈だけど、ゲームなんかだと理屈関係
なく自然に使ってるよね。
というか px,pyにvx,vyを毎回足すという処理が既にDDAだから
難しいというより 既に使ってるよ >>270
0273249
NGNG反射 は 回転(カーブ)に似てるけど壁の角度をAngle
水平 Angle=0度
垂直 Angle=90度
とすると vx,vyに対して
Private Sub reflect(Angle)
Dim s, c
s = Sin(PI * 2 * Angle)
c = Cos(PI * 2 * Angle)
x = vx: y = vy
vx = c * x + s * y
vy = -c * y + s * x
End Sub
となる 0度の時は c=1,s=0 になるから yだけ符号が反転
90度なら c=-1,s=0で xだけ符号反転
というのは既に使ってるよね。
これを一般化したのが上の式
だからラケット位置や動きの効果を反射で表現したいなら
水平との反射=0度でなく±45度の範囲で反射させればいい
ラケットの左右のスミの場合は、スミ座標とボール中央と90度
の方向に反射させればいい
0274249
NGNGでもPIは3.1415にして PiDegみたいな変数名の方がいいと思うな
0275249
NGNGスミ座標と玉の中心座標の差 dx,dyを使って直接s,cを求めてもいい
1、正規化 c=dx/sqr(dx*dx+dy*dy) : s=dy/sqr(dx*dx+dy*dy)
2、90度反転 これは s,cを入れ替えて片方の符号を反対に
3、2倍角 c'=c*c-s*s s'=2s*c
と3つの手順で求まる
でも、幸い ボールは上からしか来ないから dyは0にならないはずとして
atn(dx/dy)*180/3.14 で角度求めた方が判り易くいていいと思うけどね
0276デフォルトの名無しさん
NGNG三角関数が判らないと というより行列がわからないとゲームも作れない雰囲気だな
0277デフォルトの名無しさん
NGNGhttp://members.tripod.co.jp/snishi/text/index.html
みんなそんな難しい手法使ってないから安心しろよ>>1
0278吾輩は名無しさんである
NGNG0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG0281249
NGNGと俺も思うよ。
でも、1はソースを公開してるし、習得も早いからさ、
つい、スタンダードというか普通はこうするってのを教えたくなったのさ
基本的なアイテムの動かし方を身に付けた方がいいだろって余計なお世話かもしれんけどな
0282sage
NGNG0283デフォルトの名無しさん
NGNG壁に当たったら少しずつ速度がUPみたいなほうが
おもしろいとおもう。
実際、テトリヌなんか、ブロックの落ちる速度が速くなったりするしね。
# あんまりテストプレイさせてもらっていないから分からないけど…
0284デフォルトの名無しさん
NGNGのブロック崩しみたいに、ボールの角度変え + 敵きぼんぬ>>1
0285デフォルトの名無しさん
NGNGカコイイ!
0286吾輩は名無しさんである
NGNG0287デフォルトの名無しさん
NGNGパクリだ!なんて騒がれたら、1がかわいそう。
1さん、オリジナル な要素を含めてね(♥
0288デフォルトの名無しさん
NGNG0289(・ε・)
NGNGhttp://shinkiro.tripod.co.jp/valkyrie/cd_gano.html
す、すいません。1ガノッサしかないんです。
0290デフォルトの名無しさん
NGNG>>260
煽るつもりはって言われても、
こっちもわざと書いてみたりしただけだし(藁 カメレススマソ
完成したらどっかにうぷしておきます。ただしURIは公開しません(藁
# なんとなく今暇だからアプリ作りつつ例の吉野家コピペ
# 作成ScriptをJavaScriptでかいてたり。
重力もいいね。なにかボールと反発するようなブロックとかも追加きぼん!
ボールが風か何かで吹き飛ばされるみたいなのとか。
みんながアイデア出すから、結構ゲームの発想の手間が省けてたり
してるんじゃないかと。
厨房のとき発想力の無さからあきらめたんだよね。折れ。
だからこそ応援しているぞ1!
ここまでコメント */
0291デフォルトの名無しさん
NGNGアルカノイドのつもりで敵にパドルぶつけたら、パドルが破壊された(笑
同ジャンルのゲームを見た方がいいかは微妙だね。
パクり以前にモチベーション下がるか上がるか・・・それは本人次第だけど。
俺なんかは、自分のアイディアが既出だったりすると萎えるタイプ。
最初このスレ見たとき俺もブロック崩し作ろうかと思ったけど、1が萎えそう
だからやめたよ。
0292デフォルトの名無しさん
NGNGおれは7314点が最高。三面がクリアできない。。。
0293292
NGNG0295デフォルトの名無しさん
NGNG0296(・ε・)
NGNG作って公開しようと思ったんだけど。
0297デフォルトの名無しさん
NGNG0298あきまさ
NGNG0299デフォルトの名無しさん
NGNG0300
NGNGソースまで載せて手ほどきするのはどうかと思うよ。
最初の頃のようにキーワードや概要だけを載せてあげたほうが、
1も試行錯誤するだろうし結果的に身に付けるスピードも速くなると思う。
まあ1が鵜呑みにせず自分なりに解釈して作り出すタイプ(根っからのプログラマ気質?)
なら全然構わないんだけどさ。
頑張って欲しいね。
0301デフォルトの名無しさん
NGNGステージクリアまで待てないよ・・・
ステージの背景に描いて頂戴!
0302デフォルトの名無しさん
NGNG0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGもっとましなの作れよ。
0305吾輩は名無しさんである
NGNGお主が作ればよかろう。
0306ヒッキー@プログラミング
NGNG↑つぎうぷしました。変更点は
・マウスモードの追加
・残機を3に変更
・難易度の調整
です。
>>272
ほお、そうなんですか?既に使っていたとは(藁
理屈的にはムズカシそうですねー。ちゃんと理解できるようにします…。
>>273
ちょ、ちょっとまってください…理解するのに紙に書いてみないと
難しいです…正規化とはなんでしょう?ヘイホウコン使うんでしょうか。
もうちょっと頭使います。
>>277
お、ちょっと安心しました(w
ラケットがあたる位置で判定してたりするんですねー。
>>279
了解。頭に刻んでおきます。
>>280
ビブンセキですか。できるかな…。
>>281
おー、ありがとうございます。そういう意図があったんですね。感謝します。
>>283
一応、書いてはいたんですが、上がり方がしょぼかったようです。
難易度調整しました。
>>284
やってみました。ShockWaveって結構すごいですねー。
まだまだ負けてる…。敵っておもしろいので考えてみたいです。
>>289
ありがとうございます。1ガノッサ頂きます…ってガノッサって
おっさんだったんですね。
>>290
ご意見ありがとうございます。風とか吹いてもおもしろそうですね。
結局重力は今回、いれれませんでした…
更新age
0307ヒッキー@プログラミング
NGNG自分のアイデアが既出だったらちょっと悲しいと思います。
ブロック崩し、2chの人も結構作ってるみたいで、ヒッキー崩しというのを
発見したんですが、(鬱打のページ)それもコンボ点とかありました…
VBでDirectXつかってるし。鬱氏
>>292
おぉ、感謝感謝。やってくださる人がいてると嬉しいです。
>>294
完成したらインターネットランキング作ってみたいと思います。
>>295
う…
>>296
一応テキスト化したんですが、拡張子がSTGになっています。
>>297
そうですねー。壊れないブロックにあたるとぶるぶるします。
今回は修正できませんでした…
>>299
エロ画像描いてくれる人キボンヌ
>>300
がんばりますー。
ソースは参考にさせていただいてます。…が、ちょっと難しいです(藁
>>303
僕は最高15000点くらいです。26000点…すごい。
>>304
ちゃんとゲームとして認識されるようになっただけでも嬉しいです。
最初はゲームどころではなかったので(w
0308デフォルトの名無しさん
NGNG本物のヒッキ-なら
高専の数学1,2 これの問題集とセットで勉強するといい
http://www.morikita.co.jp/mokuji/0481.html
http://www.morikita.co.jp/mokuji/0482.html
0309249
NGNGといっても、
ベクトルは単に複数の数をまとめて扱うというだけ
行例は、数式の係数をまとめて扱うというだけという理解でとりあえずスタート
たとえば、玉の動きは
x = x + speed * cos(angle)
y = y + speed * sin(angle)
これは正しい でも
ball_x = ball_x + vx * (90 - Angle)
ball_y = ball_y + vy * Angle
こではダメっての説明してみるね。
前者は回転だけど、後者は、伸張になってしまう。
○回転というのは
vx*cos(w) - vy*sin(w)
vx*sin(w) + vy*cos(w)
という形になっている。これはひとつのスタイルだから覚える。
そして、掛算してるのは vx,vyと4つの係数だからそれぞれ
|vx| |cos ,-sin|
|vy| | sin , cos| と分離して考える。
左がベクトルで右側が行列だ
で、元の格好に直す規則は・・・判るよね?
ここまでいい? とにかく2つの数がこういう格好に並んでいれば回転だって事で
○反射は既にやってるように
vx=vx
vy=-vy
という格好になっている これも分離すると
|vx| | 1 , 0|
|vy| | 0 ,-1| となる。
上の回転では角度がどうであれこの格好にならないの判るよね?
任意の角度で反射させるには回転を組み合わせればいい。
ただ、反射する時は反射面に対して倍角で反射するというのに注意
で、組み合わせる時は この反射を掛算した結果のベクトルは
| vx|
|-vy| となるなら、上の回転の vyを単に-vyにするだけでいい
○伸張 y軸が斜面で、斜めにあるのを上から見る場合は
| 1 , 0|
| 0 , a | というようになるよね? これが伸張さらに裏から見たら 上にある反射になる
○拡大/縮小 これは簡単で全体に
| a , 0|
| 0 , a | とaを掛算すればいい
0310デフォルトの名無しさん
NGNG気持ちはうれしいけど、その説明は
ちゃんと数学の本を手にして読まないと
わけわからんかと。
0311デフォルトの名無しさん
NGNG遅延演算子も導入してさ
一挙に微積分飛び越してフーリエ・ラプラス変換の世界にご招待ってのは?
0312249
NGNGWeb上の教科書は 特にベクトル 行列は少ない。基礎だからね
だから高校の教科書でも手に入れて勉強するしかないね。
ちょっと調べてみつけたのは
高校:
ttp://www.kwansei.ac.jp/hs/z90010/hyousi/2106.htm
応用数学なら見つかるんだけどね
ttp://next1.cc.it-hiroshima.ac.jp/MULTIMEDIA/diffpub/diffpub.html
0313249
NGNG数学玉手箱
http://www.nikonet.or.jp/spring/sanae/MathTopic/MathTopic.htm
ベクトルとは
http://www.nikonet.or.jp/spring/what_v/what_v.htm
0314デフォルトの名無しさん
NGNGエロ画像ソース!
★☆★いやんエッチ!見ないでよ!★☆★
http://piza2.2ch.net/test/read.cgi/kao/1000818283/
0315デフォルトの名無しさん
NGNG組み合わせたものと教えるのが一番分かりやすくていいんじゃないか?
もっとも、ブロック崩しごときで行列を持ち出す必要ないと思うけど。
方向変えるなら、vxを適当にいじったあとに、√(vx*vx+vy*vy)がvxをいじる
前と同じになるようにするだけでも十分だよ。
例えばC言語で書くと
v = sqrt(vx*vx+vy*vy);
vx1 = vx / v;
vy1 = vy / v;
vx1 += (適当な値。例えばパドルのX座標-ボールのX座標など);
v1 = sqrt(vx1*vx1+vy1*vy1);
vx = (vx1 / v1) * v;
vy = (vy1 / v1) * v;
この程度で十分かと。
0317デフォルトの名無しさん
NGNG|vx| |cos ,-sin|
|vy| | sin , cos|
じゃなく
|cos ,-sin| . |vx|
| sin , cos| |vy|
てかいてよ
0318(・ε・)
NGNG0319(・ε・)
NGNGBlock04,9,200,016#Block05,9,184,000#Block06,9,024,008#Block07,9,008,024
Block08,9,192,008#Block09,9,208,024#Block10,9,048,080#Block11,9,056,088
Block12,9,064,096#Block13,9,072,104#Block14,9,168,080#Block15,9,160,088
Block16,9,152,096#Block17,9,144,104#Block18,3,088,040#Block19,3,128,040
Block20,3,128,056#Block21,3,088,056#Block22,3,088,072#Block23,3,128,072
Block24,3,088,024#Block25,3,128,024#Block26,9,096,136#Block27,9,120,136
Block28,3,192,128#Block29,3,024,128
-----
>>1 これでプレイしてみて。"#"は改行に置き換えて。
ブロックにくっつくバグが置きやすいよ。
0320(・ε・)
NGNGステージファイルをパラメータに与えて起動するとそのステージだけ
プレイできるとステージのテストプレイがやりやすいなぁと。
0321>318
NGNG0322デフォルトの名無しさん
NGNGなんかいいね。
0323デフォルトの名無しさん
NGNGなんだそりゃ
マッピーで盗品全部集めた後に
開けたドアを全部閉めたらクリア
って言ってるのと同じだぞそれ
0324(・ε・)
NGNGBlock04,9,024,152#Block05,2,080,096#Block06,2,080,120#Block07,2,128,120
Block08,2,128,096#Block09,2,184,096#Block10,2,184,120#Block11,1,128,072
Block12,1,128,048#Block13,1,080,072#Block14,1,080,048#Block15,1,184,072
Block16,1,184,048#Block17,1,024,072#Block18,1,024,048#Block19,3,080,024
Block20,3,080,000#Block21,3,128,024#Block22,3,128,000#Block23,3,184,024
Block24,3,184,000#Block25,3,024,024#Block26,3,024,000#Block27,1,024,184
Block28,1,184,184#Block29,1,104,152
------
かなりバグります。球の速度に制限を設けた方がいいかもしれませんね。
>>321 なんとなく。ゲーム性があがらないかな?
>>323 マッピー知らんです。ゲームはあまりやらないもんでして。
0326デフォルトの名無しさん
NGNG基本は、難しいことをしたら見返りがあって、簡単なことをしたらペナルティ。
見返りってのはボーナス点が貰えるとか、ブロック崩しなら速度が遅くなるとか。
ペナルティはその逆。
とは言っても、必ずしもこれに従う必要は無いよ。
例えば同等の難易度の2種類の行為について、片方だけ点を高くしておくと
点を稼ぐにはそれだけを狙う必要があって、結果的に難易度の向上に繋がる。
クリアだけなら簡単、稼ごうとすると難しくなるようにようにするのが俺流。
0327デフォルトの名無しさん
NGNGiniファイルのステージファイル名を書き換えるのがいいと思われ
0328初心者さん
NGNGがんばってね。>>1
0329コーダーさん
NGNG>>1
俺は始めて作ったゲームっぽい作品はBio100%の戦艦シューティングもどき
だった。なつかしい。
最後までがむばれYO!
0330ななし
NGNG水平に近い弾道でブロック壊したら、
2Hitsって出たけど、ポイントが0から増えなかった。
うまく再現できないんで、もう少し試してみる。
0331デフォルトの名無しさん
NGNG壊すみたいのがいいなぁ。
要望ばっかだが、>>330の 問題をぼくも確認してみます。
0332デフォルトの名無しさん
NGNGhttp://www.google.co.jp/search?q=%83u%83%8D%83b%83N%95%F6%82%B5+%95%9E&hl=ja&lr=
ブロック崩し + 服 で検索。
さすがにエロ系が多かった。
0333デフォルトの名無しさん
NGNGコメントかい。(誰かのレスにそんなかんじのが…パクリ?)
しかもコメントとじれてないし。
それより>>1のヒッキー@(略)
やってみたけど、結構おもしろかった。
ず〜っと前のヴァより断然面白くなってるよ。
コンボ点&角度変化&玉の速度アップで。
vectorにでも、こういうゲームはうようよあるから、
頑張れ!
0334デフォルトの名無しさん
NGNG0335ヒッキー@プログラミング
NGNGほお、高専の教科書ですかー。穴場的ですね。
普通の本屋で注文できるのかな…
>>309
おー、とてもよくわかりました。
回転の式はCGの本に載ってたので、1回画像の回転のプログラムを作るときに
使ったことがあります。そのときは行列の意味がよくわからなかったんですが(藁
反射は単に符号を反転させるだけで良いというのは分かるのですが、
ボールが早すぎる時に、反転しても画面に戻ってこなくなる事があったので、
ifをいれて、画面内の方向のみを向くようにしました。
伸張は…(y軸が斜面で、斜めにあるのを上から見る場合は)というのが
よく分かりません…。
>>312
高校の方のページ、なんか読めそうです。
分からないところ、全部読んでみようと思います。
>>313
わざわざいくつも探して頂いて申し訳ないです…
あとで、ウチのページでまとめて紹介したいと思います。
>>314
あの…エロ画像ならHDDにも入っています(w
でも、やっぱ使ったらまずいかなぁと
>>318
はは。そうですねー。おもしろいかも。
今の段階では、受け止めてクリアの表示を出してる間、
ボールが自機に埋まる or 変な位置にあるような気が
するので、ちょっと考えてみます。
>>319
やってみました。
うまりますね…。残像残ってるし。埋まらないように考えたいと思います。
わざわざ上げていただいて、サンクスです。
>>320
あー、たしかに。
いじってみようと思います。
>>324
今、実験的に速度の制限つけてみました。
直るかどうかはもうちょっと試験運転しないとわからないですが。
>>326
あー、そういうのおもしろいですねー。
ゲーセンでシューティングゲームやってると、そういう設定のが
結構ありますね。名作ほど微調整が細かかったり。
>>328
ういー。がんばりますよー。もうちょっと完成度あげたいです。
0336ヒッキー@プログラミング
NGNGこの前、Bio100%のページいきました。
戦艦のゲーム、以前にどっかでやった事あるような…(藁
>>330
実は水平に近いほど点が入らないようにしてあります。
テストしてると、10度くらいの角度にしたら、簡単にクリアできるし、
点もかなり入ってしまったので。
>>331
おぉ、そういう設定の仕方もあるんですねー。参考になります。
>>332
服がだんだん欠けていくゲームがイパーイありますね。
全部同じ様に見えるのは気のせいでしょうか。
>>333
どもども。ありがとうございます。
vectorですかー。一回、ゲームのところ覗いてみます。
>>334
今回のUPしたやつは前より難しいです。
僕もそんなに点が取れなくなりました…
0337ヒッキー@プログラミング
NGNGhttp://pc.2ch.net/test/read.cgi/tech/990219336/
を読みました。
作ってみないと気付かないような所にワナがいっぱい潜んでるんですねー。
(3Dシューティングで、リプレイのデータが浮動小数点で
管理してるとずれてくるなど)
あと、雷電のレーザーはどうやって実現してるのか気になりました…。
それから、ひとつ疑問なんですが、ローカル変数とグローバル変数は
どういうときに使い分けたらいいんでしょう。全てグローバルでも
よさそうに感じるのですが…。
ローカルだと関数呼び出すたびにメモリを確保しないといけないと思うし、
関数に引数を使うときも、スタックに積んだりしてたら余計に遅くなったり
しないかなぁと、ふと疑問に思いました。
0338ヒッキー@プログラミング
NGNG0339デフォルトの名無しさん
NGNGグローバル変数はなるべく使わない方がいいよ。
理由は色々あるけど、一番恐いのはどこで変数の内容が破壊されるか分からない事。
以前、全てグローバル変数で組んでて原因不明のバグで悩んでる人の相談にのった
ときは、ループ用のカウンタをグローバル変数にしていて、ループの中で別の関数
を呼んでいるんだけど、その呼ばれた先でも同じ変数を使ってループしていた。
その関数呼ぶとループ用の変数が書き換えられるから、それが原因で無限ループに。
まぁ、この辺はグローバル変数でトラブってみないとピンとこないかもしれないが。
昔のBASICはグローバル変数しか無かったから苦労した。
ちなみに速度で言えば、ローカル変数の方が速いよ。
ローカル変数が使うメモリ領域ってのはスタックメモリって呼ばれていて、あら
かじめ決められたサイズで最初に確保してあるの。だから、メモリ確保に関する
コストはほとんど0に等しい。
(ちなみに通常のメモリはヒープと呼ばれていて、グローバル変数はヒープに
確保される)
ローカル変数の方が速い根拠だけど、1つはコンパイラの最適化がかかりやすいこと。
ローカル変数ってのはその関数を抜けたら消えてなくなるものだからメモリに値を
保存しておく必要が無いので、実際にはメモリを確保せずにCPUのレジスタを割り
当てる場合がある。レジスタはPCの中で最も高速にアクセスできるメモリ。
もう1つは、ローカル変数は関数に入った時点で順番に確保されるから、関数内で
使う変数がメモリの中で近い位置に確保されること。CPUのキャッシュは32バイト
単位でキャッシュしてるから、1つの変数にアクセスした際に他の変数もキャッシュ
に入る可能性が高くなる。
ローカル変数とグローバル変数に関しては、構造化プログラミングを勉強してみると
いいかも。いまどき構造化プログラミングなんて参考書無さそうだけど。
ちなみに、スタックメモリはコンパイル時にサイズが決まっていて、通常はあまり
大きくないのでローカル変数で巨大な配列とか使うとエラーが出るので注意。
グローバル変数ならヒープに確保されるので、20MBくらい使っても平気。
0340339
NGNG(大事なのは聞いてみることより、むしろ疑問に思うこと)
0341デフォルトの名無しさん
NGNGball_xとか vx とかを一つの構造体にまとめたら 関数呼び出しが楽だし
ボールを2つにするのも簡単になる
0342デフォルトの名無しさん
NGNG>グローバル変数ならヒープに確保される
…ん?
0343デフォルトの名無しさん
NGNG間違っていないと思うけど。グローバル変数はプログラムの
開始から終了までずっと残っているものなので、ヒープ領域
に確保されると習った。
あと、ローカル変数でも static 宣言した変数はその関数が
終了しても値が残っていて、これもヒープに確保されると
習った。
間違っている?
0344デフォルトの名無しさん
NGNG間違ってる。BSS で検索。
0345デフォルトの名無しさん
NGNG0346デフォルトの名無しさん
NGNGBSSとかって環境依存な気がする。
0347デフォルトの名無しさん
NGNGいずれにせよ、ヒープに確保されるのは間違いって話では?
C の規格ではメモリの分類に関しては何も言ってないが、一般には
text プログラムのコード (サイズ固定)
bss 初期化されない変数 (サイズ固定)
data 初期化された変数 (サイズ固定)
stack 自動変数 (サイズ可変)
heap 動的に確保/解放されるメモリ (サイズ可変)
ぐらいに分けて管理してることが多いと思われ。Win32 だとヒープもプロセスヒープ以外に、プライベート
ヒープとか複数持てたり、スレッドが絡むとスタックも並行して複数存在することになるから、いろいろと
話がややこしいけど。
0348デフォルトの名無しさん
NGNG習ったって話なので一般論を習っただけでわ?
bss やら data ってのは環境依存というより実装依存だと思われ
0349デフォルトの名無しさん
NGNGとりあえずこういう用語は一般的に使われるし
覚えておいて損は無いでしょ。
得も無いかもしれんけどな。
0350デフォルトの名無しさん
NGNG漏れがC覚えたのZ80だったから、スタックとヒープしか無いような状態だったよ。
0351デフォルトの名無しさん
NGNGヒープはヒープ! alloc系の操作で確保する領域
普通の変数はそれとは別のセクションに取られる
領域は大まかにコード用の領域、グローバル/staticデータの領域、ヒープ用、スタック用と
4つに分割される。 一般的にはスタック用とヒープ用の領域は重なっていて、
スタックは下から ヒープは上から確保される
基本はZ80用でも構成は殆ど同じ 違いはROM用に定数用の領域があったりする程度
0352デフォルトの名無しさん
NGNG> スタックは下から ヒープは上から確保される
他は知らんが x86 は逆だな。
0353ヒプ子
NGNG0354デフォルトの名無しさん
NGNG0355(・ε・) ◆LbaGYMio
NGNGhttp://www.interq.or.jp/tohoku/kenta/
0356デフォルトの名無しさん
NGNG番地nからn+1,n+2と向かっていくのか
番地nからn−1、n−2と向かっていくのか分かりづらいですな。
上位って一般的に番地0のこと?
0357デフォルトの名無しさん
NGNG地面のあるほうが下。
0358デフォルトの名無しさん
NGNGlittle endianでは0番地が下
0359デフォルトの名無しさん
NGNG当たり判定してる?>>1
0360ヒッキー@プログラミング
NGNGヒープやBSSという単語を知らなかったので、勉強になりました。
メモリについて検索していたら、とても興味深い内容のページをハケーンしました↓
http://www-6.ibm.com/jp/developerworks/security/000721/j_smash.html
メモリとはどういうものかというイメージが以前よりつかみやすくなりました。
>>339
グローバル変数は他のところで書き換えられる可能性があるんですねー。
そこまで頭が回りませんでした。ありがとうございます。
そういえばコンパイラが最適化してくれるような事がどこかに書いてありました。
registerってキーワードいれたら自分で調整する事もできるんですね。
(といってもどれをレジスタに入れたら早くなるのか検討がつきませんが…)
こういうのVBではどうなっているんだろう…
>>341
してみました。
でも、関数の割り振り方の問題からか、ボールを2個にするのが難しいです…
>>347
text、stackは想像がつくんですが、dataやbssの違いがよくわかりません。
>>354
検索してたら頭が割れそうになりました。
>>359
うーん、どういうことなのでしょうか。
2回目の判定ということですか?
0361ヒッキー@プログラミング
NGNG↑次うぷしました。変更点は
・毎秒60フレームに変更・ソースの見直し
です。
ソースが読みにくくなってきたので、Form1のイベントに関係ない部分は
別ファイルにしました。
あと、今までGetTickCountを使って毎秒のフレームの調整をしていたのですが、
なぜか10ms単位でしか時間を調整できないので、timeGettimeを使うように
変更しました。
0362デフォルトの名無しさん
NGNGプログラムは初心者レベルなので初心者本買って
勉強してみたいと思いました。
頑張ってください>>1さん
0363343
NGNG全部ひっくるめてヒープと捉えていたようです。
>>360
>http://www-6.ibm.com/jp/developerworks/security/000721/j_smash.html
かなり参考になりますね。この話題に限らず、www-6.ibm.com には
有益な情報が多いと思います。
0364デフォルトの名無しさん
NGNGやはり>>1はプロかセミプロで、このスレは壮大なネタなのではとか…思ってみたり…
ソースのコメントのつけ方とか………
0365(・ε・) ◆LbaGYMio
NGNGネタでも実際ゲームが出来てるので、それを楽しんでます。
仕事の合間にちょうどいい。
最新版いい感じになったね。まだたまにすり抜けるけど。
前よりとても良くなった感じ。個人的には球が速すぎるけど。
0366デフォルトの名無しさん
NGNGVBが初めてであって、C++とか結構やってるんでしょう。
>ヒッキー
パドル?にあたる場所で反射角度を変えてほしい。
端にあたると鋭角に反射で、もう一回あたると鈍角に戻るとか。
0367デフォルトの名無しさん
NGNG0368ヒッキー@プログラミング
NGNG↑なんか、ライフゲームなるものをハケーンしたので、VBで作ってみました。
なんだかよく分からないけど、セルオートマトンらしいです。
>>362
おー、がんばってください。
なんか、嬉しいです。僕もがんばります。
>>363
ほおほお。他のファイルも見てみようと思います。
>>364
素人ですよ。
プロならもっと保守に便利なソースを組まれるんではないかと
妄想してみたり。僕のは設計も何もしてないのでぐちゃぐちゃです(藁
>>365
どもども。
自分でも球速すぎるんでは…と思います。でもクリアできない
くらいがいいかなぁと。
>>366
う〜ん、それなんですけど、なんとなく取り入れてません。
球が当たる瞬間に、パドルが動いてる方向によってちょっとずつ
変える方式にしてます。
>>367
まん丸いあたり判定…どうしましょう。
シューティングのスレでは8角形で近似するとかいう意見が
書いてありましたねー。…といってもそれすらどうしたらいいのやら。
0369デフォルトの名無しさん
NGNGほとんどのゲームは「コレ」じゃないから、
プログラム組むのは難しいけど、
おもしろいかと。
0370デフォルトの名無しさん
NGNG0371デフォルトの名無しさん
NGNGそれぞれの中心座標と半径から (x0-x1)^2+(y0-y1)^2 < r0^2+r1^2
だけで衝突が判定出来るし
反発は >>273 を atn( (x0-x1)/(y0-y1)) *180/3.1415 と角度を求めて呼び出せばいい
0372デフォルトの名無しさん
NGNG○ (x0-x1)^2+(y0-y1)^2 < (r0+r1)^2
○ sqr((x0-x1)^2+(y0-y1)^2) < (r0+r1)
0373359
NGNG左上に進んでいるとして
■■
■
このちょうど角の部分にボールが当たったときに、左か上のどちらかで反射の
処理をするよね?左のブロックで処理をしたとすると進路は右上になる。
この右上に進路が変わったときにもう一度判定をしないと、既に上のブロック
にも当たっているのに反射の処理をしないから、1回分だけ判定が遅れてブロッ
クの中にめり込む。もし上のブロックが壊れないブロックだった場合は、球が
ブロックの中に入ってしまうよ。
>>371
atnは使わない方がいいと思うよ。
反射後の速度はV'=V-2N(N・V)。
(Vは反射前の速度ベクトル、Nは正規化された球の法線ベクトル)
0374デフォルトの名無しさん
NGNGプレフィックスというのは変数の命名規約みたいなもので、
例えば、コマンドボタンなら必ず変数名の先頭にcmdをつけるとかそんな感じです
MSDNのキーワードに "プレフィックス, コントロールの名前" と
入力すればM$が推奨しているプレフィックス名の一覧が出てくるはず。
1さんのソースで言えば、check1にはchkMouseModeとか、
timer1にはtmrCallMainLoopっていう感じかな。
check1とかcommand1とかは極力さけて、意味のある名前をつけた方がいいよ。
0375374
NGNG激しく鬱駄。
内容も偉そうだし。すんまそん。
0376デフォルトの名無しさん
NGNG0377デフォルトの名無しさん
NGNG| |
| |
| |
| |
| \
| ∧_∧
// ( ´Д`)\ 1さん、もらった!
/ / | |
/ / / /
| | / /
\\((( )))/ / ガシッ
U( ;´Д`)U Σ
⊂ ._つ
人 Y
し'(_)
0378ヒッキー@プログラミング
NGNG/ ヽ
. |:: |
. |:: |
. |:: |
. |:: |
. |:: |
. |:: |
. |:: |
. |:: |
∧ ∧ |:::: |
/ ヽ ./ .ヽ |:: | / | / | |
/ `、 / ヽ |:: | / ̄ ̄| ̄ ̄ ./ ̄ ̄| ̄ ̄ |
/:::  ̄ ̄ ̄ \ ノ: | . __|__ __|__ |
l::::::::: .l / 丿 / | | |
|:::::::::: -=・=- -=・=- | / / / .| |
.|:::::::::::::: | ̄ ̄| | / / _/ ゝ─'  ̄ ̄ ̄ ̄ ̄ ・
ヽ:::::::::::: /__ヽ ノ / /
丶:::::::: ノ/ /
/:::::::: / 捕まりました。
/::::::::: /
/:::::::::: /
/:::::::::: 丿
/::::::::::: |
/:::::::: / |
|:::: ‖ |
|:: ‖ |
| | | |
| | | |
._ | | | |
0379デフォルトの名無しさん
NGNG|| >>1を 。 Λ_Λ いいですね。
|| 捕まえなさい\ (゚ー゚*)
||________⊂⊂ |
∧ ∧ ∧ ∧ ∧ ∧ | ̄ ̄ ̄ ̄|
( ∧ ∧ ( ∧ ∧ ( ∧ ∧ | |
〜(_( ∧ ∧ __( ∧ ∧__( ∧ ∧ ̄ ̄ ̄
〜(_( ∧ ∧_( ∧ ∧_( ∧ ∧ は〜い、先生。
〜(_( ,,)〜(_( ,,)〜(_( ,,)
〜(___ノ 〜(___ノ 〜(___ノ
0380デフォルトの名無しさん
NGNG| VB使いの1はダメ人間よ! |
| 人のCを見てC言語信者になるの! |
\______ _________/
∨ ____
___,――――一´ ̄ ̄ ̄ 7 |
| ̄ ̄ 月 |
| C言語以外は全て敵 31 |
| 皆はお前のソースを笑ってる 日 |
| ∧∧ 。 (月) |
| (゚ー゚* )/ 日直 |
|__ し∀つ ギ し|
 ̄ ̄ ̄|ψ|――、____ コ ぃ|
/____|  ̄ ̄ ̄ ̄
∪∪
0381デフォルトの名無しさん
NGNG______
|||| |||| ||||
||||/| |∧|||| / ̄ ̄ ̄ ̄ ̄ ̄
||Φ|(゚|-|゚;)|Φ|| < ぐすん。。。
|||| |||| |||| \______
 ̄ ̄ ̄ ̄ ̄ ̄
__________
∧⊂ヽ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
(゚Д゚;)ノ < >>1さん、しぃを監禁しましたっ!
(| | \_______
〜| |
∪∪
0382デフォルトの名無しさん
NGNG>>377=>>379-381=>>382
ごめん。>>378=>>1さん。
その代わり、いろいろバグなど見つけてきます〜。
0383デフォルトの名無しさん
NGNGおれあんまりVBは強くないけど、がんばってくる。>>1
しーってどんなキャラかわからんかったから、
適当に編集しちゃった。しぃファンの方、スマソ。
0384デフォルトの名無しさん
NGNG0385
NGNG0386デフォルトの名無しさん
NGNGまさかWINDOWSのアイコンじゃないだろうな?
0388
NGNGそうだけど、開発はBCC32だから、
作成のしかたでも教えておくれ。
おそらく、どっからどこまでをアイコンデータとして登録してるのか
しらないから。
0389デフォルトの名無しさん
NGNG?
もっと分かりやすく、頼みます。
0391デフォルトの名無しさん
NGNG0392デフォルトの名無しさん
NGNGでた、ゴミ出す曜日以外の日に、ゴミ出し監視おばちゃん!
0393デフォルトの名無しさん
NGNGでた、朝起きれねえで部屋ゴミだらけなやつ!
0394デフォルトの名無しさん
NGNG>>1に迷惑かけるな。
0395デフォルトの名無しさん
NGNGうっせー、あたってるYO!
0396デフォルトの名無しさん
NGNGスピンがかかっているとカーブだ!ブロックに当たって
反射するときも変化するぞ!
・・・・・・・・・・とか
パドルを高速に移動させると
∧∧ ) (´⌒(´
⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
ズザーーーーーッ
のアニメーションに変化だ!
・・・・・・・・・・とか
ごめん、逝ってきます
0397デフォルトの名無しさん
NGNGスピンはいいアイデアだと思う。
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNG逝って良し難易度だな。
0400デフォルトの名無しさん
NGNGサーカスのリメイクはタイトーのプランプポップが良かったな。
MS-DOS(98)の名作。
ぶろっくでぽん♪も忘れないでほしい。
0402ヒッキー@プログラミング
NGNGティムの右上辺りが腫れているので脱腸かもしれません(w
しばらくしたらレスします…。
0403デフォルトの名無しさん
NGNG0404デフォルトの名無しさん
NGNG───────────[二]─────── ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ / ̄/
| | _ / /
___/三三)____ \\ / ./
__/ _ヽ. \\ /
/′ === ((_) 丶─┬───────" \\ /
/ ̄// ̄ ̄| | ̄ ̄ ̄ ̄|________| モナー救急 ○<
イ // ||[ ̄ ̄] | | γ──────ヽ \\
/ 人_/|ヽ──| .|  ̄ ̄ | __ _|./ \ \\
( - | / |____| (__\ ./ ̄ ̄  ̄ ̄ \\
ゝ_  ̄ ̄ ___/  ̄
 ̄ ̄ヽ ̄ ̄ ̄ ̄|| ̄ ̄ ̄ ̄||
ヽ二二二二二二二二二二二二二
Λ_Λ
( ;´∀`) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( つ < >>1さん、病院へ……
| | | \___________
(__)_)
>>377=>>379-381=>>382=>>404
0405デフォルトの名無しさん
NGNGミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡
ミ彡 (⊃))))
ミ彡 \\
ミ彡 ヽヽ
ミ彡 ∧∧ | | < 1さん待ってて〜!
ミ彡 (´Д`)丿丿 今うまい棒買ってくるから〜
ミ彡 /⌒ (
_ミ彡_∠/⌒ヽ �@ ヽ
/ ミ彡 \ \ 命 )
/ ミ彡 /\_) ) /\ \/つ < 全財産ダスヨ〜 ¥940
///// // \ ノ
し'し'し'し’ ( (
し 3 3 3
0406デフォルトの名無しさん
NGNG|| ∧ ∧ <
|| 〜′ ̄ ̄( ゚Д゚) > / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|| UU ̄ ̄ U U < >・) < >>405のお金にぶつかってヘリ落ちたモナー
|| > ( 彡 \__________________
|| < √ ゞ((○
|厂 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
|| | >>1を救助するモナー |
|| |____ ___|
|| \/
|| Λ_Λ
|| ( ´∀`)
〜〜〜〜〜〜 || 〜〜〜〜〜〜〜〜〜〜〜( つ〜〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜 || 〜〜〜〜〜〜〜〜〜〜〜| | | 〜〜〜〜〜〜〜〜〜〜〜〜
〜______□____________(__)_)___〜〜〜〜〜〜〜〜〜〜
〜〇 | \ )〜〜〜〜〜〜〜〜〜〜
〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜( ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄〜〜〜〜〜
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
`〜〜〜〜〜〜〜〜
>>377=>>379-381=>>382=>>404=>>406
0407モナー板から移住者ひとり。。。
NGNG0408デフォルトの名無しさん
NGNG1よ元気になれ。俺はおまえは有望だとみこんだ(藁
寄付金だ↓
┏━━━━━━━━━━━┓
┃100モナ / ̄\ Λ冂Λ .┃
┃ | |( ´∀` )o ┃
┃ \_/ (∪ φ) ┃
┗━━━━━━━━━━━┛
0410デフォルトの名無しさん
NGNGギコぺを使っていると見られる。
だってギコぺデータ使いすぎ。>>377
0411デフォルトの名無しさん
NGNG( ゚∀`) < 看病に来ました〜。
┌∪┐ )つ \________
└─┘ ヽ
〃(__人__ノ
0412デフォルトの名無しさん
NGNG0413デフォルトの名無しさん
NGNG1はPCのやりすぎだったりしてな。
0414デフォルトの名無しさん
NGNG昨日は体調悪くて死んでおりました。
ティムの右上辺りが腫れているので脱腸かもしれません(w
ティムの ティムの ティムの ティムの ティムの ティムの ティムの!!!!
0415デフォルトの名無しさん
NGNG■■■■■
■ □ ■
■ ■
■ ■
■■■■■
0416デフォルトの名無しさん
NGNGつーか発展ないな…
0417デフォルトの名無しさん
NGNG0418ヒッキー@プログラミング
NGNG↑更新しました。
・ボールの動きと自機からの反射を見直し
・無限ループの解消
などしてみました。
ボールの動きは変な計算をしていたので、ちゃんと
毎回、Sin・Cosを計算するようにしました。前のは
なぜちゃんと動いていたかわかりません…。
相変わらず体がおかしいです。
0419デフォルトの名無しさん
NGNGさっそく、ソース覗いてみるは(藁
0420ヒッキー@プログラミング
NGNGう〜ん…ムズカシイです…。
atnって、タンジェントの逆の計算なんですね。
ってまだ難しくて理解できません…。なぜそうなるんだろう。
>>373
角、ちゃんと上も横も判定するようにしました。
elseifでかいていたので、どちらかになっていたみたいです。
正規化と法線ベクトルとは…?調べてみます。
>>374
そうですねー。
VBの本見てみたら書いてありました。ちゃんと名前付けたほうがいいですよね。
>>382
AA、なごませていただきました(藁
実はリアルモナーも八頭身も好きです。美の追求とか。
バグハッケソ、よろしくお願いしますー。
>>385
既存のファイルのアイコンを変更できるツールでしょうか。
うーん、リソースってどうやって入れ替えるんだろう…。
>>396
う…難しい…(w
でも、おもしろそうです。斬新なアイデアですねー。
>>398
直してみました…。
>>399
たしかに。ゲームとして難しくなるかも。
>>400
サーカスですかー。どんなゲームでしょうか。
サーカスチャーリーとかいうやつとは別物?
0421ヒッキー@プログラミング
NGNG98ですかー。数年前にエロゲーをよくやりました。
>>377=>>379-381=>>382=>>404=>>406
はは。AA(・∀・)イイ
>>408
どもです。
100モナって…円じゃないのかー。
>>411
どもども。すんまそん
>>412
,――、 ,――、
/ ヽ |
| _.ム ノ
\/ ̄  ̄ ̄\
/ ,-―――-ヽ
/ / / \ |
| / ,(・) (・) |
| | __ ● __ |
| | =__= | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ヽ /__// < んなわけねーだろ
/| \ /\ \______________
0422ヒッキー@プログラミング
NGNGやりすぎかも…。
肩がこってしまいました。
>>417
ぐはぁ
>>419
おー、ありがとうございます。
だんだん読みにくくなってきました…。
ちゃんと設計しないとダメですね。
0423デフォルトの名無しさん
NGNG…あっ!レポート提出期限明日だったっ、
0424デフォルトの名無しさん
NGNGいや、プログラミングもなんだけど、
このレスがなんとも・・・
0425デフォルトの名無しさん
NGNG結構初気の頃からここいるけど、1センスいいよなぁ。
0426249
NGNGというかVBだとこの規模になってくると 見るのが限界になるんだよね。
ノートパットで編集出来る付近がさ
そろそろオブジェクト指向な言語に移ってみたらどう?
手近な所でDelphiとかさ
0428デフォルトの名無しさん
NGNG> Delphiやるくらいなら、Javaのほうがいいかと。
Java って使ったことないけど、ゲーム中に GC かかっても大丈夫 ?
0429デフォルトの名無しさん
NGNGそもそも Win32 みたいなマルチタスク OS 使ってる時点で、
- メモリ管理(スワッピング/ページング)
- タスク管理(他のタスクとの CPU 時間共有)
などを行ってるわけだし。Java に移行したからといって、大差ないよ。
ただ Java だと描画が遅いから、ゲームには向かんと思う。>>1 は Win32 API 使い始めたところ
に見えるから、ここで C か C++ に行っても良いんじゃないの。Win32 API プログラミングは本気
でやると面倒だけど、ゲームなら
- バックバッファに全部書いて、WM_PAINT を投げる
- WM_PAINT を受け取ったら、バックバッファをウィンドウにコピー
程度のフレームワークで十分だから、それほど覚えることは多くない。
0430
NGNG俺が知ってる中ではこれが最強。
画面
http://www.reflexive.net/Ricochet/Screens.htm
ダウンロード
http://www.reflexive.net/Ricochet/Game%20Demo.htm
是非参考にして欲しい。
0431デフォルトの名無しさん
NGNG丸いね・・・下の、なんていうだ、あれが。
0432デフォルトの名無しさん
NGNG頑張ってるねぇ >>1
とりあえず、僕もC++でブロック崩し 作ってみようかな。
とか思っちゃったよ。
低レベルなのでも作ったら 欲しい?
0433433
NGNG作り掛けぽいけどとにかくエミュででもやってみれ。
ttp://www.student.oulu.fi/~aeeben/images/berlin.png
ttp://www.student.oulu.fi/~aeeben/download/berlin.zip
0434Javaでゲーム作ってたヒト
NGNG挙動が予測可能な通常のマルチタスクOSのメモリ管理やタスク管理とは
まったく訳がちがいます。
Java 1.2から1.3、1.3から1.4に入れ替えただけで
今までに作ったほとんどのゲームのGC引っかかりポイントが変わったのには
もうぶち切れ。
0435デフォルトの名無しさん
NGNG0436デフォルトの名無しさん
NGNG今くらいのレベルまで行ったら次の言語に移るの繰り返せば
本人の勉強にもなるし 見てる方も面白いからさ
0437デフォルトの名無しさん
NGNGまだまだ全然VBの限界って訳じゃないし、現時点で重いわけでもないし。
0438デフォルトの名無しさん
NGNGVB を「限界」まで使うのは、個人的にはお奨めしないけど。(ねぇ)
コードを読んでみたけど、まだ VB でも行ける範囲だとは思う。ただ、そろそろ行き当たりばったりでソースを
拡張するのは辛くなってきてるのは確かだな。
0439249
NGNGギャラリー側からは気軽に見るのがツライサイズって事ね
作者側からはまだ頑張れるサイズだと思うよ。
それに、目標は本人のスキルアップにあると思うから
他の言語も触ってみるのも大事かと
VBonlyでこれ以上慣れると弊害もあるだろうし
個人的には VBからならDelphiを経由してJava そしてC/C++
というふうなステップがいい感じじゃないかと思うんだけど、どう?
0440デフォルトの名無しさん
NGNGCでプログラムの低レベルな部分を学んだほうがいいと思う。
DelphiとJavaはその後でいいんでないの?
低レベルな部分を知らないで、DelphiやったってVBを続けるの
とほぼ一緒だろうし。Javaは別の利点があるけどね。
0441デフォルトの名無しさん
NGNGDelphi 少し厳し目の文法でVBでユルユルになった感覚を正す
またオブジェクト指向的スタイルへの誘いにふれ
ボールやアイテムをコンポーネント化してみよう
Java Freeしなくていい気楽さと Cスタイルの気楽さを楽しみながら
ポトペタじゃないスタイルへの入門
C/C++ Windowsのメッセージ駆動な仕掛けに苦しみながらも
ローレベル処理をシコシコ書く楽しみに触れる
0442437
NGNG思うが、1はまだそこまで行ってないかと。
だから他の言語を覚えるのはそこまで達してからの方がいいかと。
新しい言語を覚えるにはまず文法を覚えなきゃいかんが、文法ってのはいくら
覚えてもプログラミング技術は全く進歩しないから、文法を覚えるまでの期間は
プログラマとしての進歩は無いよ。
大学や専門学校での初等教育では文法を覚える事=上達のような教え方だが、
正直言って文法を覚えた時点でやっとスタートラインに立てたという程度。
プログラミングの本質はアルゴリズムとデータ構造で、プログラミング言語って
のはそれを具現化する道具でしかない。
もちろん文法の制限によって学ぶことが不可能または著しく困難な概念もあるが、
新しい概念を学ぶよりも制限された機能の中で目的を達成する考え方を学ぶ方が
重要だと思うよ。
とりあえず1はそろそろ、ボールを2つ以上動かすことを考えてみては?
あと、どうしたらソースが見やすくなるかを考えてみるといいかと。
他の人のソースがあれば、それを見てみるのもいいかも。
0443デフォルトの名無しさん
NGNG>>1がVBに限界を感じたら移れば良いだけ。
限界を感じなければ>>1はその程度の器ってこと。
まぁ、仕事なら適材適所で言語を選ぶんだけど、趣味だからあま
り外野がアドバイス以上の口出しをしてはいけないな・・・。
>>1
参考程度にな。
0444デフォルトの名無しさん
NGNGいったんお茶を濁してくれ。
0445デフォルトの名無しさん
NGNG./ / | >>1さん
/ / \ / ̄ ̄ ̄
/ /  ̄|/ ̄ ̄ ̄ ̄| ご自愛を
./ /_Λ , -つ \
/ / ´Д`) ./__ノ  ̄∨ ̄ ̄ ̄ ̄
/ \ / / ⊂_ヽ、
.| へ/ / .\\ Λ_Λ
| レ' /、二つ \ ( ´Д`)
| /. . > ⌒ヽ
/ / / へ \
/ / / / \\
/ / レ ノ ヽ_つ
/ ノ / /
_/ / / /|
ノ / ( ( 、
⊂ -' | |、 \
. | / \ ⌒l
| | ) /
ノ ) し'
(_/
0446コーダーさん
NGNGブロック崩し、イイ感じになってきたねぇ。
ちなみにおいらの言語歴、参考になればシアワセ。
QBasic
PC-DOS6.2に付属のやつでシコシコ入門編。ワイヤーフレームの3D迷路
を作る。インベーダーゲームとか。
VisualBasic1.0
Windows3.1でプログラミング開始。ラウンチャーを作る。サンプルに
付属のBitBltのスプライトに夢中になる。
Delphi3.0
BASIC系に無い言語仕様にビックリする。とりあえずAPIとか勉強する。
Bio100%の戦艦ゲームもどきを作る。ちなみにグラフィックはドット打ち
したプリンスオブペルシャの王子様。
VisualC++5.0
MFCのブラックボックスが嫌いでSDKで始める。DIBの存在を認知、そして
夢中になる。
以後○○コーダーになる。今考えればDelphiはすっとばしてもよかった
かな。
0447デフォルトの名無しさん
NGNG個人的には「思ったものは何でも作れる」ってのはプログラマとしてのゴール(頂点)だと思うんだが…
0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNG○○コーダーっつって、どうせデモコーダーって言うんだろ。
デモコーダー=妄想上級者
このスレは現実主義。よって君はスレ違い。さよなら。
0450Javaでゲーム作ってたヒト
NGNGやってみりゃ分かるけど、System.gc()はまったく解決策になりません。
0451デフォルトの名無しさん
NGNG0452ヒッキー@プログラミング
NGNGMFCが相変わらずよくわかりません…。
CStringクラスとCTimeクラスというものをハケーンしました。
んで、MessageBoxで時間を出したりしました…。ムナシイ。
やっぱ自分でウインドウ作るところからやろうかなー。
VBで、ウインドウをグラフィカルに設計できるツールつくろうかと。
…ってそれを極めていったら一人MFCになるのか…鬱氏
>>423
リファレンスを読んだりしてたら、
ブロック崩しを作ることがおろそかになってきました。
>>424-425
ありがとうございます。
よくマニアックな人を呼び寄せるオーラがあると自分で感じます。
>>426
そうですねー。
もうちょっと見やすさについて模索してみたいと思います。
Delphiは…新たに文法を覚えるのに時間がかかりそうです。
>>427
Java、やってみようと思うんですが、WinXPでサポートされなく
なったりすると聞いたんで、考え中です。
>>429
ほおほお。参考になります。
WM_PAINTとか、メッセージ(?)がイパーイありますねー…
覚えきれるのだろうか。
>>430
やりました。
ものすごいですね。感動。3Dオブジェクトが(・∀・)イイ
>>432
おー、欲しいです。
できればソースも…。
0453デフォルトの名無しさん
NGNG俺はWindowsAPIを学んだ方がとっつき易いと思う。
0454ヒッキー@プログラミング
NGNGやってみました。
付属のGBエミュがなんとも味があってよかったです。
ハードの限界をうまく生かしたつくりというか、
率直に言えば、視点がすごいですね。
>>434
GCについて検索してみました。
バージョンによって採用するアルゴリズムを変えているんでしょうか。
低レベル的な処理をあまり知らない僕的には、GC使わなくても、
毎回開放するソースを書いた方がいいんじゃないかと思うんですが。
うーん、そうするとJavaっぽさが減るのかな。
>>436
ういー。いろいろ手を出そうとしています。
昨日、Wave鳴らす処理書いてるときに、自分で波形作りたいなーと
思いまして、WaveOutOpenなどしてみようと思ったんですが、
なぜかうまくいきませんでした(藁
>>437
開発環境、Pen3なのですが、MMX200のノーパソでやったところ、
ガクガクしてました。早くしてみたいなぁという欲求はあります。
>>438
たしかにソースの拡張がしんどくなってきました。
ちゃんとした設計というのをやったことがないので、どのような
仕様書があれば混乱せずにまとめられるのかが分かりません…。
次は自分で理解できる範囲で文書化してから作ろうかと。
0455ヒッキー@プログラミング
NGNGDelphiで書かれたものをよく見かけるし、興味があります。
でもJavaならCっぽいし、そちら方面へ行こうかと。
>>440
Cはポインタあたりで詰まりそうになりましたが、(藁
情報処理2種受ける時に勉強したので読むことはできます。
本を見ながら、リスト・木構造など作りましたが、
頭が割れそうになりました。
>>441
ほおほお。参考になります。
やっぱC使いたいなぁ…。C++は分かりにくいので好きじゃないですが。
>>442
たしかに。
なんでも作れるという気構えが無いと、もし仕事するなら、
やっていけないでしょうしね。
プログラムはアルゴリズムの方が重要だというのを最近理解できました。
今までは文法覚えた(というか、マニュアルが引けるようになった)だけで
いい気になってました。
ボール2個にするときに、今までのソースを壊してしまうんではないかと
ちょっと戸惑っているところがあります。zipで保存してるから
大丈夫なんですけど、自分で具体的に想像できない部分は弱気になります…。
>>443
今は趣味でプログラムをしていますが、何かの分野で、実用的なソースが
書けるようになったら、プログラムをしている方々に貢献できたらいいなぁと
思っています。
>>444
どもども。
>>445
八頭身…動きが…(藁
ご自愛が多すぎるので困っています。
>>446
あー、QBasicってWin95に入ってましたねー。
といってもUSモード専用でしたっけ?
VB1.0…なんか1.0っていうとものすごく古く感じます。
そういえばDIBって普通のBitmapと違いがあるんでしょうか。早いとか?
プリンスオブペルシャって…シビアな設定のやつですか?
0456ヒッキー@プログラミング
NGNG思ったものを何でも作れるようになりたいです。
すぐに作れる、というより、何でも作ってしまえる自信を付けろ
ということを、おっしゃってるんではないかと勝手に解釈しています。
>>448
NHKの外国のホームドラマを思い出しました。場外から笑い声が…
>>449
デモってメガデモっていうやつですか?
>>451
あっぁっぁっぁ…
>>453
がんばってAPIを使いこなせるようになります。
まず、プロセス・スレッド・パイプなど謎の単語を理解しようと思います…。
あー、コンピュータ用語はムズカシイ。
0457デフォルトの名無しさん
NGNG15時に書きこむって…
# 折れもだけど、テスト2日前だから、結構早く帰ってこれる(藁
0458デフォルトの名無しさん
NGNGWinAPIなら「猫でもわかるプログラミング」あたりがお勧め。
折れもヒッキーなので応援してます(藁
0459デフォルトの名無しさん
NGNGhttp://www.amazon.co.jp/exec/obidos/ASIN/4756136001/qid=1006946989/sr=1-9/ref=sr_1_0_9/249-2226099-7449900
0460デフォルトの名無しさん
NGNGコードを増やすにつれてメンテナンスが厳しくなる。
それと tmp1 とか Form1 みたいな名前は、真面目に付け直したほうがいい。良いソースコードという
のは、詳細を追わなくても字面を見るだけで処理内容が分かるぐらいに、名前の選び方に注意を払っ
てるよ。
0461442
NGNG生きてるか死んでるかのフラグを構造体に追加。
ボールの処理しているところをループにして、全ての生きているボールに対して
処理するようにする。
これが一番簡単だと思うよ。ミスの判定は、生きているボールの数を表す変数を
用意するか、ボールを落としたときに全てのボールが死んでるかをチェック等。
何をしたらボールが増えるかってのはゲーム性に関わってくるので簡単には決め
れないが、システム的に一番簡単なのはいつでも次のボールを打てるようにして
しまうのかな。いつでも左クリックで球発射。でも残機が減るとか。その代わり
得点2倍みたいな。
0462442
NGNG面クリアが良さそうだね。キャッチできなかった球はロスト。
0463ヒッキー@プログラミング
NGNG本当にヒッキーですよ。
寝て起きてプログラム書いて本読んでの繰り返しです。
大学生ですか?
>>458
MFC、やめようと思ってきました(藁
APIは、本のマニュアルがあるのでなんとかなりそうです。
「猫でもわかるプログラミング」ですかー。ちょっと探してみます。
>>459
ほおほお。なんか硬派っぽい本ですねー。
本屋に逝った時に探してみようと思います。
>>460
自分でもちょっと感じてきてました…。
とりあえず、コントロールの名前をちゃんとつけました。
どの変数をローカルにしたらいいか考え中です。
グローバルのままの方が楽に感じるので、選別が難しいです。
>>461-462
おー、そういう処理の仕方があるんですね。参考になります。
フラグもたせれば処理しやすいですね。
2個以上が同時に出るとなると、ゲーム的には最後にキャッチ
する方がたしかに楽しいかも。
ゲーム性についても、いろいろ考えるようにします。
0465デフォルトの名無しさん
NGNG>大学生?
じゃないよ、そんなにおとなじゃない(藁。
中坊だから。いまちょこっとずつ僕も勉強中(プログラムとテスト勉強)
0466ヒッキー@プログラミング
NGNGあんまり考えるべきことではないかも知れませんが、
どの程度まで内部を把握してプログラムすべきかということです。
VBでも、速さを犠牲にする事を覚悟で、ある程度のCPU以上のもの
限定で作れば、物事を実現する為には簡単だと思うんです。
たとえコンピュータ内部を把握しなくても、実現できればいいんでは
ないかと。(僕は内部をつきつめたい方ですが。)
マクロメディアのディレクターとかでも、言語的は非常に限られていて、
凝ったアプリケーションを表現するには難しいかもしれませんが、
目的はもっと簡単に実現できると思うんです。
何が言いたいかといいますと、どこのレベルで自分で満足を得れるか
という事と、仕事としてはコンピュータをどの程度、低レベルな段階にまで
知ればいいのかということです。
C++にハマって、オブジェクトを組み立てるような感覚でプログラムする
のは非常にプログラムをするユーザとしてはありがたいですが、
機械語レベルでのオーバヘッドは勉強しないとわかりません。
また、機械語まで分解しないと気がすまない性分の人もいらっしゃるかと
思います。
僕は今はC++がわかればそれで満足を得られそうですが、もし、C++をマスター
する段階までいけたら、機械語を勉強せねば…とか思うかもしれないです。
それって、>>442さんのおっしゃる通り、アルゴリズムとは全く関係ない気が
するんですね。新たな言語を勉強していくだけで一生が終ってしまうような…。
ひとつの物事に執着して、殻にこもるのはカッコ悪いと感じますが、
言語をひとつに決めないとアルゴリズムを勉強できないのではないかと。
それからVBのような環境依存言語は、言語を覚えるという手間をヒトに
かけさせる時点でダメなような気がします。
あとCも、環境によって関数の名前が変わったり、(ライブラリを作る人が
違うというか、そのヒトが関数名に著作権的なものを感じさせているというか)
結局どれをやればいいのか思いつきません。
結論としては、僕的にはコンピュータを内部まで知らなくても、1回ソースを
書いたら全ての環境で全く同じソースがコンパイルできるようになったら
いいなと思います。
新たな言語に自分の環境をあわせる事に対する姿勢はどのような感じで
いけばいいのでしょうか。また、今までどうされて来ましたか?
仕事が今までどうりにこなせない不満などあると思うのですが。
せっかく書いたのでage
0467ヒッキー@プログラミング
NGNG>>464
もっとしてるかも(藁
>>465
おー、中学生ですか。2chに来てると病みますよ。
テストは、数学をきっちりマスターするまで勉強した方がいいと思います。
他の勉強も、ゲームなどプログラムするときの糧となりますので、
おろそかにせずに、適当にかじる事をお勧めします。
やー、そんな早くからやってるとは。恐れ入ります。
0468デフォルトの名無しさん
NGNG> ひとつの物事に執着して、殻にこもるのはカッコ悪いと感じますが、
> 言語をひとつに決めないとアルゴリズムを勉強できないのではないかと。
大丈夫。最初の言語を覚えるのは苦労するけど、二番目は楽、三番目はもっと楽になるから。
0469デフォルトの名無しさん
NGNGかじってるていわれてもまだまだ(汗
三角関数とか独学で勉強中。
1さんって高校?大学?それ以上?
0470ヒッキー@プログラミング
NGNGほおほお。そういうものですか。
僕はまともに書き方がわかるのはVBくらいなので分かりませんでした。
ちょっと救われた気がします。ご意見ありがとうございました。
>>469
おー、三角関数ってだいたい高校で習うんじゃないですか?
僕は年齢的には大学ですね。ハタチです。
このスレで教えてもらったところだけど、ここお勧めです。
http://www.kwansei.ac.jp/hs/z90010/hyousi/2106.htm
0471デフォルトの名無しさん
NGNG0472458
NGNGと言うより、ウィンドウメッセージ関連でしょうか。
クラスですから、C++も解っていた方がより楽ですし。
「猫でもわかる〜」はC/C++の入門にも良いです。
ここのおかげで本が不要(藁
http://www.kumei.ne.jp/c_lang/
0473デフォルトの名無しさん
NGNG0474デフォルトの名無しさん
NGNG三角比は外国は中学校でちょこっとやるらしい。
VBが案だけできたらCも余裕でいけるんじゃない?
0475デフォルトの名無しさん
NGNG>大丈夫。最初の言語を覚えるのは苦労するけど、二番目は楽、三番目はもっと楽になるから。
そうだね。リュウを使えるようになるのに凄く苦労したけど春麗、ダルシムと加速度的に覚える
のが早くなり、一通り全キャラやった後にリュウに戻ると勝手にうまくなってるものだよね
板違いな上に時代錯誤な発言ですまん
0476デフォルトの名無しさん
NGNGそのマターリ感がこのスレにふさわしい
0477デフォルトの名無しさん
NGNG俺もそう思う。俺の場合は最初はケンだったけどな。
それでザンギエフとか使ってて、またケンに戻ってくると
通常技の使い方とかが上手になってるんだよ。
0478デフォルトの名無しさん
NGNGs/案/あれ/g;
0479デフォルトの名無しさん
NGNG┃ ┃
>1haヒッキーのため ┃
15:00前後に良く書きこむようです。 ┃
┗━━━━━━━━━━━━━━┛
0480デフォルトの名無しさん
NGNGC++ はいろんなもの隠蔽しちゃってて、全然低レベルじゃないと思いますよ。
ましてや MFC なんて、裏で何やってんだかわかろうとするだけ無駄です。
やるなら高級アセンブラ C。
0481デフォルト素人さん
NGNG0482デフォルトの名無しさん
NGNG> C++ はいろんなもの隠蔽しちゃってて、全然低レベルじゃないと思いますよ。
気のせい気のせい。C++ はソースを読んで(最適化前の)アセンブリコードが予想
できる代物で、その意味では C と同様に「高級アセンブラ」です。
ただ、ゲームを書くなら MFC はあまり嬉しくないとは思う。Win32 の基本的なフレー
ムワークは
メッセージを使った処理
なんだけど、ゲームの場合にはこれを無視してしまった方が書きやすい(PeekMessage
でメッセージを見て、なかったらゲームを進行させるように書く)。MFC はそういうコードを
書くことは想定していないので、いろいろ面倒です。
もし C++ で書くなら、WTL の CWindowImpl あたりを使うか、もしくは素直に自分でウィン
ドウプロシージャを書くのが良いかと。
0483デフォルトの名無しさん
NGNGCWindowImpl は WTL じゃなくて ATL だな。ごめん。
0484デフォルトの名無しさん
NGNGガベージコレクション、で google 検索。
0485デフォルトの名無しさん
NGNGアセンブリコードが予想できたら結構すごい。
0486デフォルトの名無しさん
NGNG漏れはC++使ってるけど、MFCなんて使ってないよ。
0487PGでもSEでもないシロウトだが
NGNG> どの程度まで内部を把握してプログラムすべきかということです。
その前に、
グローバル変数とローカル変数の使い分けっつーか、
モジュール化とか意識するようになったほうが良いと思われ。
順番として。
シロウト考えなんで、プロのかたの意見を優先に参考にしてください。
0488ヒッキー@プログラミング
NGNG猫でもわかるプログラミング、読みふけってしまいました。
間に猫の絵があって、なんとなく読みやすいです。
MFCって、APIの後でやっと分かるものなんですね…
でかでかと売り文句が書いてあるので、それをマスターしないと
いけないのかと、誤解しました。
>>473
検索してみましたが、MATLABってすごくムズカシそうですね(藁
Cで3Dの表示をするより簡単に記述できるんでしょうか。
ソースのC化機能とかついてるみたいですね。
>>474
外国は教育のカリキュラムが違うでしょうしね。
VBはたいした言語ではないので、Cに移ると苦労します。
>>475-477
あー、そうですねー。最初は必殺技のコマンドを入力するだけで
苦労するけど、後から違うキャラの技を覚えるのが楽になったり
しましたね。僕はガイルを最初に使ったので、ブランカだけ楽でしたが(w
>>480
低レベルな処理を知りたいとは思いますが、C++で楽ちんな考え方を
してプログラムしたいというのもあります。
※それにしてもなぜC++をやろうとしたらみんな煙たがるのか…。
>>482
ほおほお。MFCって、ゲームを作るときには使わない方が
いいんですか。たしかにメッセージ処理は関係ないかも。
キーの処理とか決まった位置で自分で書きますしね。
CWindowImpl、検索してみます。ありがとうございます。
>>486
C++って、LINUXにWINのソースを移植するとき、WinAPIを使ってる
所を全部消さないといけないんでしょうか?
MFCを使ってたらさらに移植が難しいですね…。
>>487
そうですね…。たしかに考えが飛躍していたように思います。
僕的には、目標がはっきりしていた方が勉強しやすいので、
悩みを解消したいのもあって、意見を書いてみました。
0489一応プロ
NGNG今は、アルゴリズムとデータ構造を徹底的に叩き込むべきだと思う。
その後で、効率よくプログラミングするためにはオブジェクト指向で設計した方がいいかもしんない、
って自然に思うようになるから。オブジェクト指向の勉強はそこからでも遅くはない。
「C++って既存のライブラリがいっぱいあるでしょ?そっち使った方が楽じゃん」という考えは
プログラミング初心者はしないほうが良いです。じゃないとスキルは伸びないと思う。
Cでインタプリタを作ってみたら?
基礎的なアルゴリズムを一通り学べるし、ある程度動くようになったら、オブジェクト指向で
メインコードを簡略化したくなるよ。あ、できるだけ文法はCに近いものがいいかも。
0490ヒッキー@プログラミング
NGNGご意見ありがとうございます。
たしかに、既存のライブラリに頼って、それを呼び出すだけの
プログラムを書いたところで、自分の技量には何の関係も無いですね。
やはり、経験を積まれた方の意見は重みがあります…。
インタプリタって文を分解して、1行ずつ実行するというアレの事ですか?
うーん、どうやって実装したらいいのでしょう。
文を、中間的なバイナリコードに変換してそれを逐次、実行するような
感じでしょうか。文の内容をそのまま実行して逝ったらいいんでしょうか。
いろいろ考えてみようと思います。
0491489
NGNGVM上であればWindowsだろうがLinuxだろうが動くから嬉しいかも。
最初は、変数はアルファベット1文字、型は整数のみとかに制限したりするといいよ。
とりあえずこの辺を参考にしてみて。
http://pc.2ch.net/test/read.cgi/tech/981672957/
0492デフォルトの名無しさん
NGNGただCをお勧めする。
0493デフォルトの名無しさん
NGNGちょっと待ちいや。いきなりインタプリタは酷やろ。
ヒッキー、迷路や迷路。迷路作成プログラム作ってみ。結構奥深いで。
0494デフォルトの名無しさん
NGNG激同。迷路は奥が深い。
折れも昔作ったなぁ。
# 「活字」の関西弁は気持ち悪い(藁
# 一応関西人ですが(私
0495デフォルトの名無しさん
NGNG0496デフォルトの名無しさん
NGNGまぁええがな(w
>>495
それは単なる表示上の応用やな。基本的には二次元でええやろ
そや、2ちゃんにもカキコできるようにテキスト迷路なんてどや?50x50ぐらいのん。
0497デフォルトな名無しさん
NGNG優良スレたてるまで出られないとか。
0498デフォルトの名無しさん
NGNGどんどん挑戦する事が大切!ですね。
>>493氏の提案している迷路なんてどや(藁
# でも騙りも出ずにってすごいなぁ(藁
0499458だったもの
NGNG俺もここで何かやってみるかな。しかし受験もあるし。
鬱堕詩嚢
0500デフォルトの名無しさん
NGNG挑戦すること…ですね。
折れも受験だしなぁ。来年、ガンバロ〜っと。
0501デフォルトの名無しさん
NGNG0502デフォルトの名無しさん
NGNG受験を来年って浪…(自粛)…じゃん(藁
それはそうと、電子投票ほうが成立したね。
┓(´д`)―y。o(どうなるんだろ?)
0503ヒッキー@プログラミング
NGNG↑次うぷしました。変更点は
・ソースの部分的なモジュール化
・NativeCodeコンパイルに変更
です。見た目と動きはほぼ変わりません…。
>>491
ほおほお。中間コードを吐く方法でよかったですか。
自分で変なこと言ってたらどうしようとか心配してました。
スレ、読んでみます。ありがとうございます。
>>492
了解。Cの方向で。
>>493
やっぱインタプリタは難しいですか…。
迷路でも、ちゃんと完成させるのがムズカシそうだ。
一回、作ってみようと思います。
>>494
いくつもゴールへのルートがあると難しそうですねー。
僕も関西人です。
>>495
3D…がんばれゴエモンみたいなやつですか。
>>496
あー、2chにカキコできるサイズのものだったら面白いですね。
>>497
どういうゲームなんでしょうか(w
最良スレの定義がわからない…
>>498
ういー。どんどん挑戦してみようと思います。
体力が続く限りやります。
>>499
受験生ですかー。たいへんですね。
プログラムはいつでもできるので、まっとうな道を進む事をお勧めします。
僕みたいになると、先が見えないので大変です。
>>500
おぉ、受験生多いなぁ。
やっぱ数学してないと大変です。数学がんばってください。
>>502
電子投票ってどんなんでしょ?
選挙でつかうんでしょうか。
0504458そのもの
NGNGしかも受験は受験でも高校受験だったりして。
ってスレとは完全に関係ないのでsage
0505デフォルトの名無しさん
NGNGで、VBから一番移動し易いのはやっぱりDelphi。
Cマガの付録CDに入ってるんだから、お金もそんなにかからんし
ソースを見る限り VBにしかないselect文とか使ってないから Delphiには殆どそのまま移植可能
簡単でないのはコントロール配列の扱いくらいかな
それに VBとDelphiの比較サイトは結構あるし
ttp://www.threeweb.ad.jp/~satou/delphi1.htm
ttp://www.ab.wakwak.com/~greenspace/dev-api/develop/step_1.html
0506デフォルトの名無しさん
NGNG0507一応プロ
NGNGインタプリタの見本っぽいの作ったけどいるか?構文解析の参考になると思う。
インタプリタっつーか、式を入力してそれを計算して結果を表示するだけだけど。
例えば、
>3*(2 + (a - 2) % 3)
と入力すると、
a =
となるので、aに値を入力。
すると答えが表示される。
ただし、入力できる式は、リテラル整数は1桁のみ、変数はa-zA-Zの52種類。
演算子は、+-%*/の5種類。
# ろくな字句解析してないのに4時間もかかった・・・。コード的には300行弱。
0508一応プロ
NGNGインタプリタと言ってもピンきりだよ。
add 1 1
とかを解析・実行して結果を2と表示するものとかなら簡単でしょ?
そういうとこから始めたらいいよ。
0509デフォルトの名無しさん
NGNGどうでもいいけど、それってインタプリタじゃなくて電卓って言わない?
0510デフォルトの名無しさん
NGNG電卓もインタープリタの一部ともいえる
0511デフォルトの名無しさん
NGNGいちおう構文解析が入る(演算子の優先順位を考慮に入れる必要がある)から
単なる電卓とは違うけど、そこから言語処理系への道はかなり遠いよな。
0512一応プロ
NGNG再帰下降解析すれば、そう遠くないよ。
言語処理系として難しいのは最適化あたりじゃないか?
あと、エラー処理かな。エラーが起きたら中断するだけなら簡単だけど。
最適化まではやったことないから知らんけど。
中間コードを生成して、それを解釈実行するところまではそう難しくないって。
そこまでは別に難しいアルゴリズムなんてないし。
0513374
NGNGおっ、名前付けをちゃんとしたんだね、なかなかみやすくなったんじゃないかな?
おおぅ、ブロックをモジュール化したんですね。
よく見てないんですが、いいんじゃないですか。
気になった点をいくつか、Form_Initializeの
'ここにループを書くとウインドウ描画前に始まってしまうので、
'タイマー使用
TmrCallMain.Enabled = True
は画面が表示されずにMainLoopに入ってしまうんでやってるんだと思うんだけど
その場合は、Initializeでフォームを Show して DoEvents かませば大丈夫です。
Me.Show
DoEvents
MainLoop
とこんな感じで書けばいけると思う。
あとは重複して書いてるところが多い。
With tmpRect
.Bottom = 220
.Left = 250
.Right = 310
.Top = 140
End With
これはいっぱいあるんで、
tmpRect = MakeRect( 220,250,310,140 )
とこんな感じのRECTを作る関数を作った方が良いです。
小さい物でもいっぱいあると曲者です。
後はある特定のボタンが押されているときの速度を
変える処理はこんな風に書けばよいです。
Dim MoveSpeed As Long
MovdSpeed = 2 '通常移動速度
If Press.Shift Then MoveSpeed = MoveSpeed * 2 'SHIFTが押されているときは2倍
ElseIf Press.Ctrl Then MoveSpeed = MoveSpeed * 3 'CTRL が押されているときは3倍
If Press.Left Then
Paddle.X = Paddle.X - MovdSpeed 'この辺を変数に変えてみた
If Paddle.X < 0 Then Paddle.X = 0
ElseIf Press.Right Then
Paddle.X = Paddle.X + MovdSpeed 'この辺を変数に変えてみた
If Paddle.X + Paddle_width >= Game_area Then Paddle.X = Game_area - Paddle_width
End If
重複する処理は書いてはいけない、修正や変更が大変になります。
ちょっとづつ値が違うような処理は変数をうまく使えばひとつにまとめられます。
似たような構文が続くものは必ずうまく書く方法があるのでそこに注意してみてください。
あと、実行させると自機が自動で左に移動します。
カーソルきかないっす。仕様ですか(笑。
0514ヒッキー@プログラミング
NGNG挑戦する事を忘れるのはまだ早いですよ(藁
高校受験ですかー。たいへんですね…。
その頃、今まで生きてきた中で一番勉強してた時期のような気がします。
吸収が良い時期なので、なんでも勉強した方がいいかもしれませんね。
>>505
Delphiは…VBと同じような位置付けに感じるので、やっぱやめとこうかと
思っています。他のOSでもDelphiが使えたら考えるかも。
あ、パスカル言語という風に考えたら検索したら見つかるかもしれないですね。
>>506
はい。アルゴリズムを覚える方をかんばります。
>>507-508
おぉ、ありがとうございます。
見せて頂けるなら欲しいです。
いきなりインタープリタと考えると難しいけど、一個一個解決して
いけばいいんですね。
>>511
うーん、やっぱインタープリタの道は険しいのか…
>>512
最適化って、どの変数にレジスタを割り振るかとか、
ややこしそうな処理のことでしょうか…。
>>中間コードを生成して、それを解釈実行するところまではそう難しくないって。
ほおほお。なんか安心しました(w
>>513
おー、具体的な例を挙げて、教えてくださってありがとうございます。
たしかに重複する箇所が多かったと思います。
RECTのところ、おっしゃる通りに変更してみたら、読みやすくなりました。
他の所も修正しようと思います。
あ、あとForm_initializeのところ、書き直したらいけました。
なぜか前にやったときはうまく逝かなかったんだけどなぁ…うーん。
0515ヒッキー@プログラミング
NGNGでした…。joyStickの関数がちゃんと値を返してくれないような…。
もしくわ僕の書き方が悪いのかもしれません。
とりあえず、一時的に消します。
0516一応プロ
NGNGほれ。
ttp://www2.makani.to/akutoku/upload/dat/1007214743.lzh
パッと見て悪いと思う部分は真似ないように!
ダウンしたら>>1のサイトで配布しても良いよ。
上のが消えてもダウンできるように。
0518デフォルトの名無しさん
NGNG> ファイルへの直接リンク(アップローダのページからクリックすれば、見れます)
と言われて拾えないんだけど。2:00 以降になれば OK?
>>512
> 再帰下降解析すれば、そう遠くないよ。
ま、数式の解析から言語処理系への過程が遠いか遠くないかは、実物を見て本人
が判断すりゃ良いやね。(俺は遠いと思うけど)
前に勉強がてら書いた Pascal ライクな処理系のコード置いときます。中間コードの
生成と、コンパイル時に 1 + 1 を事前に 2 と置き換える程度の簡単な最適化が入っ
てます。
http://members.tripod.co.jp/lambda_func/pc.zip
#TRY - CATCH とかはお遊びで書いてるので、真似しないようにね。
0519374
NGNGすごいなぁ。どんどんやってください。
二十歳の実務経験なしでここまでできるとは驚きです。
ソース見てると、欲しいところにうまくコメントを書いているし、
いろいろ調べ物もうまいみたいだし、成長も速いし、
いいなぁ欲しい人材です。ウチの新人もこうであれば...。
あと、インタプリタやらなにやら話があがっていますが、
あなたの好きなところからプログラムをやっていくことがいいと思います。
好きなことをやってると成長は速いです。
APIに興味があるようなのでそちらで何かやってみては?
0520一応プロ
NGNG俺はHSP程度なら数式解析とたいした差はないと思ってる。
というか、やってみたら意外と簡単だったっていうのが正直な感想。
# それまですごく難しいものだと思ってた。
もちろん言語処理は奥が深いからピンキリだね。
>>518の"遠い"と言うのはそういうことかな?だったら激しく同意。
実は俺はまだ言語処理系触れ始めと言っていいくらい。
yaccとかlexは使わないで1からゴリゴリ書いてるけど、再帰下降解析
はほとんど差が無く感じるな。管理するデータが多くなったくらいで・・・。
あ、ソース頂きました。
>>519
ま、結局は>>1次第だね。
でも言語処理ってゲームで生かせると思う。
俺も20歳なんだけど、どう?(笑)
仕事中に2chに出入りしてる人間はダメ?
# いちいち長いな(´Д`;)
0521名無し@就職活動中
NGNGやっぱ現段階でそこそこできるやつよりも、
1氏のように頭のきれる人のほうがいいですよね・・・
>>1
あなたの情熱がうらやましいです。がんばってください。
0523ヒッキー@プログラミング
NGNG>>516
どもども。いただきました。
これから拝見させていただきます。
>>518
おー、すんませんです。
いただきました。参考にさせていただきます。
>>1 + 1 を事前に 2 と置き換える
あー、定数の演算の場合、すでに計算しておくっていう方法もあるんですね。
>>519
ありがとうございます。嬉しいです。
あんまり誉められると頭に乗ってしまいます…。
>>あと、インタプリタやらなにやら話があがっていますが、
>>あなたの好きなところからプログラムをやっていくことがいいと思います。
了解しました。
インタープリタは、HSPを知ったときに、ちょっと作ってみたいなぁと
感じていたので、興味はあります。
とりあえず今はもうちょっと簡単な事からやってみようかと…。
APIでウインドウを作って、メモ帳のようなものでも作ろうと思います。
>>520
おー、ハタチなんですか?すごいですね…。
僕もいつか追いつきたいと思います。
>>521
ありがとうございます。
引きこもってると楽なので、勉強がしやすいです。
なぜか学校逝ってる時は勉強の時間に勉強しないんだけど…(藁
社会に出ると、できるかどうかわかりません。
精神的に追い詰められやすい性格なので…。
>>522
いやいや、いらないと思うよりは、できると仮定して
能力を伸ばしていく事の方が大事じゃないですか?
いらないと決めて、いらない人間になってしまったら
本当に社会にとって良くないと思います。
どのような人であれ、同じような量の食事やらをするわけですから。
マジレススマソ。
0524522@就職活動中
NGNGでもなーんにもしてない、ってわけじゃないよん。
つーか激しく板違いなので消えます。
0525デフォルトの名無しさん
NGNG3面から出てくる金のブロックを壊した時に、画面の左上の隅に毎回黄色のブロックが出現します。
ソースを見てないけど自分の推測では恐らく金のブロックは2回当てると壊せるブロックで、
1回当てると黄色のブロックに変化させるつもりが、位置を設定してないため毎回(0,0)の
位置に誤って出現しているのだと思います。
通常じゃ配置されそうにない位置に出現するのと、他のブロックと画像が重なることがあることからそう判断しました。
けどバグじゃなくても直してほしいです。このブロックのせいで4面がいつまでたってもクリアできない…
あとバーが左端にあった時だったと思いますが、真横からボールが当たった時バーが少し壁にめり込みました。
しかしこれは別にゲームに支障がないのでバグとはいえないかな?
あと非常に面白いです。コンボで一気に点が入るところが。
0526505
NGNG>Delphiは…VBと同じような位置付けに感じるので、やっぱやめとこうかと
>思っています。他のOSでもDelphiが使えたら考えるかも
同じといえば同じだけど・・・・・まあいいか・・・
もしC++で躓くようならDelphiを経由するといいよって感じでね
0527デフォルトの名無しさん
NGNGどのWindowsアプリも最終的にAPI呼び出しで実行されるんだから、
CでAPIを叩くのはいい勉強になると思う。
API呼び出しだけでプログラミングするとなるとDelphiよりCのほうが素直
だと思うし。
そのあとC++にいくかDelphiにいくかVBに戻るかVB.netに行っちゃうかは
趣味の問題だと思うけど。
0528デフォルトの名無しさん
NGNGAPI呼び出しってのが 猫でものように、SDKレベルのメッセージループを直に書く
ことだとするならDelphiでも素直に書けるよ。
ただし、Cの方がオフィシャルな参考書があるという事が大きいね
Cの文法も判らないと勉強出来ない。だから必須という事なら賛成するよ。
個人的には VB->C->Delphi->Java->C++の順に学ぶのが王道だと思ってるんだけどね
0529デフォルトの名無しさん
NGNGA、B、Cの順番を踏襲したからなぁ。
0530クロスボウとやら
NGNGVB->Delphi->C->Java->C++
が良いと思われ。
0531デフォルトの名無しさん
NGNGDelphiは余計
0532デフォルトの名無しさん
NGNG漏れはVB->C++でいいと思う。
っていうか、移る前にVB使いこなせっつーの。
VBでDirectX。これが通の頼み方。
0533デフォルトの名無しさん
NGNG今でも自作ツール作る時はDelphiだ。
0534ヒッキー@プログラミング
NGNG↑次UPしました。変更点は
・ボールを3つ同時に出せるように変更
・ボールを全て回収したらステージクリア
です。最後に回収しないといけないようにしました。
>>524
がんばっていらっしゃるなら、前向きになられる事をお勧めします。
後ろ向いて勉強したら自分にとって負担になると思います。
>>525
どうもすみません…変な位置にブロックが移動する現象、直しました。
バーの横からボールに当たったとき、ちょっと動いてしまうような
ソースを書いているのですが、自分でもちょっと変だと思っています…。
直そうかな。
>あと非常に面白いです。コンボで一気に点が入るところが
ありがとうございます。
お褒めの言葉を頂くと、何より励みになります。
0535ヒッキー@プログラミング
NGNGちょっとC++は敷居が高くて困っていました…。
うーん、Delphiも触ってみようかな。
>>527
そうですねー。CからAPIを呼び出すほうが簡単に感じます。
Delphiは触った事ないけど…。
>>528
あ、Delphiでも素直に書けるんですね。
だんだん揺らいできた(w
>>529
どういうことでしょう?
>>530
ほおほお。やっぱそういう順路もありなんですね。
>>532
ごめんなさい…。
VBでDirectXですかー。うーん、DirectX使うんだったら
なんとなくC覚えたいなぁ。
>>533
ツールを作るときのような手軽さはやっぱC++にはなさそうですね…。
0536デフォルトの名無しさん
NGNG早速、やってみたよ。バグじゃないけど報告
ゲームバランスの調整になるかもしれないが
玉が3つゲーム画面上にあると極端に自機の動きが重くなり
玉のスピードについていけない感じがします。
0537ヒッキー@プログラミング
NGNGご報告ありがとうございます。
ウチの環境では遅くならないのでわかりませんでした…。
やっぱ知恵を使わないとだんだん重くなりますよね。
ソースを見直します。
0538デフォルトの名無しさん
NGNGボールが同時に出るようになったんですね。素晴らしい。
個人的にはボール同士が衝突してほしいです。
Delphi Personalは無料ですし試してみるといいかもしれません。
0539デフォルトの名無しさん
NGNG0540一応プロ
NGNGブロックが動いたり
ブロックからミサイルが飛んできたり
このままシューティングにシフトしていったら面白いシューティングができるかも。
0541デフォルトの名無しさん
NGNG> VBでDirectXですかー。うーん、DirectX使うんだったら
> なんとなくC覚えたいなぁ。
マジレス
DirectX 使うなら C ではなく C++。DirectX は COM コンポーネントとして提供
されてるから C++ 使わないと記法が鬱陶しい(設計をオブジェクト指向でやる
必要はないけどさ)。
0542374
NGNGでも、そのおかげでオヂサンには、
1面すらクリアできなくなりました。(最高2面。鬱...
ブロック壊すとアイテムが落ちてくるなんてのは面白いかもね。
1アップとかボールが下でも跳ね返る(落ちなくなる)ようになるとか
0543ヒッキー@プログラミング
NGNGボーランドのソフト、無償でいろいろ提供されてますね。ビクーリ。
ボールの衝突ですかー。書いてみようと思います。
>>539
実はVisualStudioを買ってしまいました(藁
>>540
スクロールしたら見た目が大幅に変わりそうでいいですねー。
ブロックからミサイル…完全にシューティング化ですね(w
>>541
ほおほお。やっぱC++ですね。
オブジェクト作るときのnewとかどうやってCで書くのかわからない…。
うーん、勉強します。
>>542
僕もクリアできなくなりました…。
アイテム出てくるともっと良くなりそうですね。
まだまだ改良の余地がありそう。
0544デフォルトの名無しさん
NGNG次の面に行った瞬間死んじゃったりしたよ。キツイなぁ。これって前のままじゃだめなの?
あとボールが3つに増えると自機が遅くなるバグだけど、
ウチの環境ではマウスで動かしているとそうなったよ。キーボードだと普通に遊べる。
あとアイテムのことだけど、ブロック崩しはもともとバランスのいいゲームだと思うから出し過ぎは危険だと思うよ。
棒が長くなったりボールが分裂したりはいいけど(むしろちょっと歓迎)、間違ってもミサイルでブロックを壊せるなんてものは登場してほしくないなぁ。
最後に口調がちょっと生意気気味ですいません。
0545一応プロ
NGNG>あとアイテムのことだけど、ブロック崩しはもともとバランスのいいゲームだと思うから出し過ぎは危険だと思うよ。
その考え方のほうが危険じゃないか?発想力が乏しくなりそう。
個人の好みだけど、そういう考え方は好きではないな。
「ブロック崩しはこういうもの」とかいう定義は勉強中のプログラマにはして欲しくないな。
それはゲームを"するだけの人間"に任せておけばいいだろう。
仮に「ミサイルでブロックを壊す」という機能を実装して、ゲーム性が損なわれたとしたら、
それを補うアイデアを考えればよい。時間は十分にあるんだから。
趣味でやってるんだから、気に入ったアイデアがあったらとりあえず実装してみれ。
0546デフォルトの名無しさん
NGNGそれはそうなんですけどね。
ただ今回のバージョンアップ版をやってみてゲームバランスが崩れかかってるかなと思ったんですよ。
前のバージョンの方がよかったなって。
なんか今回のバージョンになってブロック崩し本来の面白さが欠けたような気がする。(そうはいってもボール分裂は見たい…)
けどミサイルなんて物はブロック崩し本来の面白さを完全にぶち壊してしまうような気がする。
そして一度その方向に進んでしまうと、もう二度と本来の面白さを生かすような方向には転換しない気がする。
まぁそれを1さんが見事に面白くしてくれればいうことなしなんだけど。
0547デフォルトの名無しさん
NGNG発展を評価すべきだよ。
ちなみにボールを増やすのを指示したのは俺だけど、1の今の技量でいきなりアイ
テムを出すのはキツいと思ったから暫定的に今のシステムを提案しただけだよ。
もしこの先アイテムを出すとして、ボールが分裂するアイテムが出たとしても、
今の状態からなら新しいボール発生の条件を変えるだけで済むし。
今のシステムを生かすなら、得点システムを変えてコンボボーナスを無くして
変わりに飛ばしてるボールの数によって2倍、4倍の点が入るようにするのが
いいかな。あとは、ボールが2個以上飛んでる場合は右クリックしながら受けると
キャッチできるとか。
ミサイルでブロックを破壊はブロック崩しとしては常識外れだけど、それでも闇雲
に否定するのもどうかと思うよ。例えば、ミサイルで攻撃する対象はブロックでは
なくてボールにして、ボールの動きに干渉できるようにするとか、いくらでも考え
ようはあるかと。
0548528
NGNG「習うより慣れろ」 これ大抵の技術の一番の習得方法
そりゃ横に誰かいて手取り足取り教えてくれるなら別だけど、
独習なら手軽に試せて結果も満足いくDelphiを 間に挟むのは良い事だと思うよ
0549デフォルトの名無しさん
NGNGbetter VBって感じですか?
0550デフォルトの名無しさん
NGNG0551デフォルトの名無しさん
NGNGやっぱブロック崩しはローラーでそうさせねば。
0552デフォルトの名無しさん
NGNGBCBがあるのをお忘れずに。DirectXまで考えるとBorland製品は絶対に奨められ
ないが。
ただ、RAD環境ってのは、ツールみたいな標準GUI主体のソフトには便利だが、
リアルタイムゲームみたいなプログラムにはほとんど何も助けにならないよ。
それと1よ、みんなの意見を取り入れるのはいいが、自分で思いついたアイディア
も積極的に入れていった方がいいと思うよ。実装は難しそうでもここに書いてくれ
れば、実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。
0553デフォルトの名無しさん
NGNG俺も DirectX 使う場合には、RAD はそれほど「便利」ではないと思うけどね。
DirectX プログラミングは GDI に比べると、ちと難易度が上がる。たとえば GDI だと
バックバッファへの描画は BitBlt() を呼び出せばいいだけだが、DirectX だとこれが
タイミングによっては「失敗」することを考慮する必要がある。
#GDIでも BitBlt() が失敗する可能性はあるんだが、殆どの場合は気にしなくて大
#丈夫。
たとえば DirectDraw を使う場合、IDirectDraw7, IDirectDrawSurface7 関連のメソッド
は、すべて
1. 失敗したら
2. 再描画 (RestoreAllSurfaces()) もしくは IDirectDraw7 の再初期化
3. 失敗した処理のやり直し
ってロジックを埋めておく必要がある。
今のブロック崩しのコードのようにベタにコード中に処理を記述する形式だと確実に破
綻するので、処理を同期的に行わず一旦キューにため、エラー発生を前提にキューに
ある処理を順次処理、みたいな一段高度なアーキテクチャを要求されるよ。(DirectX
は初期化だけでも、最初は面倒だろうし)
0554デフォルトの名無しさん
NGNG> 2. 再描画 (RestoreAllSurfaces()) もしくは IDirectDraw7 の再初期化
じゃなくて
2. サーフェイスの復元 (RestoreAllSurfaces()) もしくはIDirectDraw7 の最初期化
+再描画
だな。
0555デフォルトの名無しさん
NGNGBCBはあれはコンパイルが遅いから 変更即RUNで試すというサイクルで出来ない。
RADでもDelphiの場合は自分でコンポを容易に作れるから 画面作りの効率化
はもちろん、キャラの設定なんかもキャラをコンポ化すればRAD環境で可能
必要なら、スクリプトをプロパティに設定し設計時からキャラを動き回ったりさせることだって出来る
そういうふうにコンポーネント化してゆく事でどんどん効率的になってゆく体験は大事だと思う。
0556デフォルトの名無しさん
NGNGそれはコードを書く側の問題。
VBでもCでもC++でもコードの再利用をしやすいように組む事はできる。
っていうか話し聞いてると、Delphiに浸ってたら脱初心者は無理のような気がしてくる。
もっとプログラミングそのものに浸ってから最後にDelphiでいいと思われ。
とりあえず、プログラミング入門編としてのRAD系は卒業した方がいいのでは?
0557デフォルトの名無しさん
NGNG>それと1よ、みんなの意見を取り入れるのはいいが、
>自分で思いついたアイディアも積極的に入れていった方がいいと思うよ。
>実装は難しそうでもここに書いてくれれば、
>実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。
552さんの提案は、非常に有益だと考えます。
プログラム学習者にとってもこのスレがこういう方向に
進むことを期待します。
0558555
NGNGVBでも Cでも 確かに再利用し易いように組む事は出来る。
でも、それは独習で身につくのだろうか?
指導者がついているか、適性があり経験を重ねて身につくものだと思う
言い切っちゃうとさ、管理者居なくて独習で経験を重ねてるだけじゃ VB/Cだと悪い癖しか付かないよ
それは実際の現場見りゃ判るでしょ? 経験xx年のプログラマの作るコードがどんなものかさ
なお、Delphiでコンポを作る場面はRADじゃない。
でもその作業がスグにRADに反映してゆくから、 少しの苦労で見入りが大きい。
そういう点から学習効率がいいと思うんだ。
まあ本人の問題だから本人が決めればいいことだけどさ
0559デフォルトの名無しさん
NGNG> VBでも Cでも 確かに再利用し易いように組む事は出来る。
> でも、それは独習で身につくのだろうか?
はい。
ソフトウェアコンストラクションに関しては、管理者がいようが仕事でやろうが、本人
が勉強してコード書いて頭と身体で覚えないとダメです。RAD や周囲の環境は補助
にはなるけど、それだけで自動的にコンストラクション能力が上がるものではない。
これだけだとなんなんで、推薦図書を。推薦図書スレにも書いたので重複になるけ
ど、今の >>1 に合いそうなものを抜粋ね。
コードコンプリート―完全なプログラミングを目指して
マコネル,スティーブ ;石川 勝
アスキー (1994)ISBN:4756102107
ライティングソリッドコード―バグのないプログラミングを目指して
Steve Maguire
アスキー ISBN:4756103642
プログラミング作法
Brian Kernighan, Rob Pike
アスキー ISBN:4756136494
0561デフォルトの名無しさん
NGNG効果音がなった時、一瞬だけ描画が止まるというか
カクッとなるの、俺だけ?
0562デフォルトの名無しさん
NGNG反射のバリエーションが増えるよ。名付けてリフレクターブロック(でいいのかな?)!
あと自機を \__/ の形にするってのはどうよ。傾く角度も変わったりして。
0563超大作
NGNG15 DIM BK(40,25)
20 LOCATE 10,10:PRINT"BLOCK 崩し"
30 LOCATE 10,11:PRINT"HIT ANY KEY!"
40 IF INKEY$="" THEN GOTO 30
50 FOR I=1 TO 25:FOR J=1 TO 40:BK(J,I)=0:NEXT:NEXT
60 FOR I=3 TO 7:FOR J=2 TO 38:BK(J,I)=1:NEXT:NEXT
70 X=20:Y=23:BX=5:BY=10:BH=1:BJ=1
80 A$=INKEY$
90 LOCATE X,Y:PRINT" "
100 X=X+(A$="J" AND X>0)-(A$="L" AND X<35)
110 LOCATE BX,BY:PRINT" "
115 IF BH+BY<1 THEN BH=-BH
116 IF BJ+BX<1 OR BJ+BX>38 THEN BJ=-BJ
117 IF BK(BX+BJ,BY+BH)=1 THEN
BEEP 1:BK(BX+BJ,BY+BH)=0:BH=-BH:BEEP 0
SC=SC+1:LOCATE 30,1:PRINT SC
END IF
120 BX=BX+BJ:BY=BY+BH
125 IF BY+BH>23 THEN END
126 IF BY=Y AND ( BX=X OR BX=X+1 OR BX=X+2) THEN BEEP 1
BH=-BH
ENDIF
130 LOCATE X,Y:PRINT"---"
140 GOTO 80
はぁ、疲れた、
0564デフォルトの名無しさん
NGNGどうやってプレイしろと・・・。
0565デフォルトの名無しさん
NGNGそもそも「ブロック」であることに拘らなくてもいいのでは?
#でもそうすると「ブロック」崩しではなくなるか(w
あと、時機も「パドル」であることに拘らなくてもいいのでは?
などなどと、考えていると面白いアイデアも出てくるのでは?
例えば…
・ブロックでなくてインベーダーだとか
・時機はパドルでなくてバット(昔の野球盤風)
なんてのは?面ごとにそんな趣向を凝らしても面白いかもね。
0566ヒッキー@プログラミング
NGNGなんか面クリアと見せかけてゲームオーバーになったりしますね…。書き直します。
前のままにすると、なんか足らない気がして、最後に受けた方がいいかなぁと。
ウチでも、マウスで動かすと遅くなりました…。気付かなかった。鬱氏
ミサイルで壊すっていうのは結構いろんなブロック崩しで出てきますねー。
僕もちょっと違和感を感じます。アイテムは何かしら出したいとは思っています。
>>545
そうですね。そういう考え方もできるのか…。ご意見ありがとうございます。
なんか、人の意見を尊重しようとするあまり、自分の意思が欠けてたような
気がします。
>>546
やっぱゲームっていうジャンル上、プログラムの実装の仕方なんて、
ユーザには何も関係ないですもんね…。
面白いものを目指す事を忘れないようにしたいです。
>>547
おー、ボールの分裂の意見をくださったかたですか。
同時に飛んでいるボールの数によって点を変えるようにしたほうが
良いかもしれないですね。必然的にユーザは
ボールをいくつも出す→危険な事に挑戦するという感じで、
面白さに繋がるかもしれませんね。
ミサイルにボールが当たると動きが変わるというシステムは斬新ですねー。
参考にさせていただきます。
0567デフォルトの名無しさん
NGNG0568ヒッキー@プログラミング
NGNG手軽に試せるという風に考えると、C++に逝くよりはDelphiの方が
よさそうですね。ついでに無料みたいだし…惹かれてみたり
>>549
うーん、そうなんですかね?どうなんでしょう。
やっぱお勧めになるという事は、それなりのワケがあるんだと思います。
>>550
そういう事だったのか(藁
>>551
あー、そういえばホイールついてましたね。
関係ないけど、目の付け所がシャープですね。
>>552
やっぱウインドウ作ったりボタン作ったりってゲームにはあまり
関係ない要素ですよね。作り始めてやっと気付きましたが(w
>>実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。
ありがとうございます。
僕も何か考えて、まずここで発表してから実装に移ろうかと思います。
0569ヒッキー@プログラミング
NGNG>>DirectX だとこれがタイミングによっては「失敗」することを考慮する必要がある。
なんかむずかしそうだ…。
キューに処理を貯めて、それを実行するって複雑そうですねー。
何の機能も無い、キューの構造を作るだけでひぃひぃ言いそうなんですが(藁
>>554
サーフェイスって、メモリ上のビットマップのことでしょうか?
>>555
コンパイルする時間ってなんかドキドキします。
たいがい、凡ミスエラーだらけなんですが…。
うーん、なんかプログラムを楽しんでできそうですねー。Delphi。
>>556
いつまでもヌルい環境に浸っていたらダメかもしれないですね。
最初、ウインドウをAPIで作ったとき、驚愕しました。
>>557
僕にとっても非常にありがたいです(藁
>>558
再利用しやすいコードって、非常に難しいです。
汎用的に書いてるつもりでも、実は他のプログラムにコピペしたら
穴だらけみたいなソースをいつも書いています…。
※なんか、全てのパターンを満たすほど意見があって、自分で取捨選択
するのが難しいんですが…。
>>559
おー、本で勉強すれば自分でもスバラシいコードが書けるように
なるもんですか。本の名前まで挙げていただいて、ありがとうございます。
>>560
思いついたら書こうと思います。
>>561
APIの呼び出し方が間違っているのか、ウチでも、ノートPCでやると
カクカクします…。
>>562
プログラム的に非常に勉強になりそうですねー。
やってみたいけれど、ちょっとまだ難しいかも…。勉強します。
0570ヒッキー@プログラミング
NGNG何の機種用のBASICなんでしょうか(藁
BEEP 1ってどっかで見たような…
>>564
PC98をおもむろに起動するとか…
>>565
自機がバットって…ワラタ。
殻をぶち破る勢いのある発想ですねー。参考になります。
>>567
そうしたいと思ってはいるんですよ。
0571デフォルトの名無しさん
NGNGつーか、そもそもインベーダーゲームってのはそういう発想で生まれたはず。
0572デフォルトの名無しさん
NGNGJavaってよくオワッテル言語と聞くのですが
皆さんはなぜ勧めるの?
0573デフォルトの名無しさん
NGNGオワッテル人たちが言っているに過ぎないため。
0574デフォルトの名無しさん
NGNGメンバー集めないと廃部になるJava倶楽部。
0575:デフォルトの名無しさん
NGNG徐々に成長していって、面白かったよ。
これからも頑張れよ。まじで
0576デフォルトの名無しさん
NGNG0577名無し
NGNGJava倶楽部が廃部になったら、どこ行きます?
0578デフォルトの名無しさん
NGNG自分だけ被害者になるのが嫌なので
初心者も巻き添えにしてやろうってことです。
0579572
NGNG0580デフォルトの名無しさん
NGNG0581デフォルトの名無しさん
NGNG今までずっと囲碁をやって来て、囲碁部がつぶれたから、
じゃあ将棋部へなんて無理だろ
って、俺は574じゃないが
0582デフォルトの名無しさん
NGNGだから、ずっと囲碁やってて囲碁部がつぶれたらどこ行くの?
0583572
NGNG喧嘩はしないで―
0584デフォルトの名無しさん
NGNG全国行脚に出る
0585デフォルトの名無しさん
NGNGネット囲碁。
0586デフォルトの名無しさん
NGNG0587デフォルトの名無しさん
NGNGすけさんを
わすれずにね
0588ヒッキー@プログラミング
NGNG>>571
そうなんですか?ほおほお。
>>575
ういー。がんばります。
0589デフォルトの名無しさん
NGNG趣味ならその時好きなことをすればよい
趣味は酔狂なほどたのしい
0590589
NGNG0591デフォルトの名無しさん
NGNG伊達や酔狂も程々にな。
0593デフォルトの名無しさん
NGNGというか今主流の言語を語れる人って居るのかな。
このスレならゲームに使われてるものか・・・・
実際このゲームはこうで・・・・とか。
ハーフライフとかKohanて奴がModに対応してるとか聞いたんですが。
そのModってなんなんですか?
3D系ならともかくKohanてゲームはリアルタイムストラテジーなんですが
何となくは解るんですが、実際Mod作ったりしてるプログラマって
いるんですかね?日本に。
CSとかとてもアマチュアが作ったとは思えない出来なんだけれど。
0594デフォルトの名無しさん
NGNGスレ違い。googleでも行くがよろし。
0595デフォルトの名無しさん
NGNGゲーム作りにはそれが障害になりうる。また文法が緩く、入門者
は早期に移動しないと悪癖が見に付き易い。
DLLの利用は出来るが、一般的なDLLは作れない。
Delphi APIも直接叩ける、インラインアセンブラも使える。 DLLも作成出来
COM/ActiveXも作成出来る。 Linux用にはKylixもある。
文法は厳しく、制御構造もVBより少ない。 またbegin/endのような
書き方が冗長に見えるが、それが逆に冗長でないコードの書き方を
促進しているともいえる。 ポインタと配列も完全に区別されており、
初心者の入門言語としては良い。 さらにコンポーネント志向とも言
えるその設計スタイルは上級者になっても利用出来、かつ他言語
でも応用可能な身に付けてよいスタイルである。
ただし、多くのSDKがCスタイルで提供されており、最新技術を利用
したい場合は両方に通じていなければならない。 その移植の手間
もDIYとなるのが苦痛な面もある。
Java 基本的にはハードは直接叩けない=制限が多い (MSのは別にして)
しかし、ブロック崩し程度なら障害にはならない。
開発環境としてRADもあるが、 VB/Delphiに比べると貧弱
RADでない環境の足がかりとして良い
C/C++ windowsでは多くのSDKはほぼ C/C++ 特にVCで提供されており
最低読めなければならない必須言語である。
しかし入門時からどっぷり漬かると、
配列とポインタの混同に始まり、豊富なサンプルコードの為に逆に
コードコピペの癖やアルゴリズムのSTL依存病、などの症状にも
かかりやすい
0596デフォルトの名無しさん
NGNGガムバレ
0597デフォルトの名無しさん
NGNG妙にDelphiびいきだなぁ(笑
漏れは別にSTL依存は全く問題無いと思うけど。むしろSTLを使いこなせたら
ちょっと尊敬しちゃう。漏れはコンテナクラスくらいしか使う気しない。
Direct3D使うようになると、DelphiどころかVC++/IC++以外のコンパイラは
たとえC/C++であっても却下なんだよなぁ。
Borlandもさっさと妥協してオブジェクトファイルのフォーマットをMSに合わ
せれば良いのだが。
0598デフォルトの名無しさん
NGNG> Direct3D使うようになると、DelphiどころかVC++/IC++以外のコンパイラは
> たとえC/C++であっても却下なんだよなぁ。
なんで? 詳細キボンヌ
0599デフォルトの名無しさん
NGNG言語というより一つの処理系にすぎないと思うんだけど。
0600デフォルトの名無しさん
NGNGっていうか、VBにもユーザコントロールって無かった?
0601デフォルトの名無しさん
NGNGそこで成長が止まるか コンポ自作側に回るかが分岐点かもな
UserControl はActiveXを手軽に作れるのがメリットで、便利とは
思うけど、あくまでもコントロール。
コンポーネントはコントロールも作れるけど、クラスの一種。
コンポーネントにしたからといってオーバーヘッドはクラス化と同じ
程度。(実行時型情報を動的に使えば多少のオーバヘッドは出るけど)
またコンポーネントを作る事でクラス作成の訓練にもなるのがイイ感じ
それってC++でも一緒じゃないの?
参考書片手に勉強すればいい話かと。
結局本人次第としか言いようがない・・・。
0603デフォルトの名無しさん
NGNG0604デフォルトの名無しさん
NGNG問題はまあ クラス設計とかが難しいって話かもしれないけど
趣味で作るなら 何回か作れば最適なのが見つかるし。
0605デフォルトの名無しさん
NGNG>>1 =ヒッキー@プログラミング
例のブロック崩しですが(この話題ってもうおわったの?)、
ブロックをすべて崩した後に、ボールをキャッチせず、残りのボールを0にすると
「ゲームクリア」となるのはいいのですか?
しかもその後面が変わって即「ゲームオーバー」となってしまう。
ださい と思うんやけど。
ソース見てくるわ
# VBは経験ないので、直感で読みます(藁
# C言語を勉強中http://www.kumei.ne.jp/c_lang/で。
# ポインタってのがよく分からないのが、つらい。
0606ヒッキー@プログラミング
NGNG的を射たご意見、ありがとうございます。
ちょっとやる気がでました。
>>590
そういえばN88Basic互換のフリーソフトがVectorにありましたね。
サンプルがう○この描画でしたが(藁
>>592
ハイスコア、ネット上で集計するにあたって、何が必要でしょう?
アプリケーション上から自動で処理するには、CGIにPOSTメッセージ
を送ればいいんでしょうか。
>>593
Modって、音楽のModですか?
>>595
Delphiってインラインアセンブラ使えるんですか?
おー、結構すごそうですねー。
KylixってDelphiと互換の開発環境だったんですねー。
参考になります。
>>596
ありがとうございます。ガムバリます。
>>597
STLとは何でしょう?検索してみます。
やっぱWindowsで開発する以上、MSのツール使った方がいいのかなぁ…。
>>600
なんか、OCXというのを作る機能がありましたね。
一回、Web上に張りましたが、ウイルスぽい警告を出されるので
萎えました(藁
>>601
Delphiって、実行ファイルにコンポーネントを埋め込めるんでしょうか。
…としたら、探しまくるようになりそうですね。
僕は人が作ったクラスは内部で何をやってるのか見えないので、
あまり好きではないです。手軽に作りたい方が先行してたら
既にあるものを使わせて頂いた方が楽ですが。
>>602
うーん、いろいろ考え方がありますねー。
やっぱプログラムを勉強する人次第なんでしょうか。
>>603
なんか、開発環境デフォルトでついてる、謎のクラスやらを
覚えるのが大変で、どこに手を付けていいやら分からなくなります。
>>604
クラス、一回作ってみようと思います。
VBで作ってもダメかな…。
>>605
ご指摘ありがとうございます。直してみました。
遊んでくださる人がいる以上、不都合は直そうと思いますが、
1個直す度にUPしてたら、ファイルだらけになるのではないかと
思い、ちょっと戸惑ってました。
0607ヒッキー@プログラミング
NGNG↑次UPしました。変更点は、
・ブロック全て破壊後にボールを落としても、StageClearとなる現象の修正
です。
0608597
NGNGMicrosoftとBorlandではオブジェクトファイルに互換性が無いんだけど、
(昔はあったらしいがMSが仕様変更したときにBorlandがついてこなかったとか)
dllならimplib使ってBorland用のlibを作れるからDirectXでもあまり問題
無いんだけど、Direct3Dは重要なライブラリがスタティックライブラリで
提供されてて、それはdllじゃないからBorlandのコンパイラでは利用不可能。
DirectX7の頃はそれほど重要でもなかったんだけど、X8になったらシェーダー
のコンパイル関数とかがスタティックライブラリの方に入ってて死亡。
一応、NVIDIAのNVASM使ってコンパイルできなくも無いけど、試行錯誤するのに
毎回コンパイルしなきゃいけないのは面倒かと。
事実上、DirectX8でBorlandコンパイラには死刑宣告されたようなもんだ。
0609デフォルトの名無しさん
NGNGMSの単なる嫌がらせか?
0610デフォルトの名無しさん
NGNGその点でDirectXが使えない=死刑宣告というのは偏狭。
0611デフォルトの名無しさん
NGNG0612デフォルトの名無しさん
NGNGだからぁ、Direct3DはCOM使ってない部分があるんだって。
COMにしないのは何故だか分からんが。速度的な問題かも。かなりの部分がインライン
関数になってるくらいだし。
>>610
597に「Direct3D使うようになると」って但し書きしてるから、そこも見てから言っ
てくれ。
>>611
coff2omfでも駄目みたい。
ただ、検索したらボーランド用のライブラリを公開してる人がいたよ。
どんなのか見たら、Direct3DXの関数を全部エクスポートしたdll作って、
それを利用するみたい。
俺もソースの無いdllとかを改良するときに同じ事してるけど、これなら
呼び出しコストが少し増えるだけで利用できるわな。
0613598
NGNGgcc(mingw)とかlcc-winとかはどうなのかな。
0614デフォルトの名無しさん
NGNG0615傍観者
NGNGここは1の成長を見守るスレなんだから。
0616デフォルトの名無しさん
NGNGやるとしたら、このあたりか?
鬱だ氏のう DirectX 2
http://pc.2ch.net/test/read.cgi/tech/997101556/
0617デフォルトの名無しさん
NGNG0618デフォルトの名無しさん
NGNGblock29.zip の ManageBall.bas について質問なんですが、
286行目から…
---------------------------------------
'キーボードの時の角度の補正
If CBall.vx > 0 Then
If Press.Shift Or Press.Ctrl Then
If Press.Right And CBall.Angle >= 25 Then CBall.Angle = CBall.Angle - 10
If Press.Left And CBall.Angle <= 65 Then CBall.Angle = CBall.Angle + 10
Else
If Press.Right And CBall.Angle >= 20 Then CBall.Angle = CBall.Angle - 5
If Press.Left And CBall.Angle <= 70 Then CBall.Angle = CBall.Angle + 5
End If
Else
If Press.Shift Or Press.Ctrl Then
If Press.Right And CBall.Angle <= 65 Then CBall.Angle = CBall.Angle + 10
If Press.Left And CBall.Angle >= 25 Then CBall.Angle = CBall.Angle - 10
Else
If Press.Right And CBall.Angle <= 70 Then CBall.Angle = CBall.Angle + 5
If Press.Left And CBall.Angle >= 20 Then CBall.Angle = CBall.Angle - 5
End If
End If
---------------------------------------
「CBall.vx > 0」というのは右に向かっている状態ということでしょうか。
[SHIFT]で加速パドルになってて、かつ角度が「25度以上」なら、
パドルの力が加わって右方向に流れる角度(-10)になる
というイメージでいいでしょうか?
その次が、同じく加速パドルで「65度以下」なら、パドルによって
左方向の力が加わり、角度が垂直方向より(+10)になる
ということですか?
「25」「20」「65」「70」という角度にはなにか意味があるのでしょうか?
もしよろしければ教えてください。
0619ヒッキー@プログラミング
NGNGスタティックライブラリって、コンパイラが変わると
使えなくなるんでしょうか?
>>615
実はこういう話題も、僕にはまだちょっと難しいですが
興味があるので、調べながら読ませてもらっています(藁
>>616-617
どもども。お気遣い、ありがとうございます。
>>618
>「CBall.vx > 0」というのは右に向かっている状態…
はい、右に進む場合は座標がだんだん正の方に増えていくので、
そのように書きました。
>「25」「20」「65」「70」という角度にはなにか意味が…
あまり意味はないのですが(w 、ただ、15度以下になったり、
75度以上にならないようにしようかと思いまして。
急角度になりすぎると、角度を修正する事ばかりにとらわれて、
ゲーム性が違うほうに向かってしまうんではないか、
と感じたので、そのようにしました。
0620ヒッキー@プログラミング
NGNG↑次UPしました。変更点は
・マウスモードでボールを複数出すと自機が重くなる現象の修正
です。
ソース、1行の修正で済みました…。
もうちょっと注意深く調べるようにします。
0622598
NGNG> スタティックライブラリって、コンパイラが変わると
> 使えなくなるんでしょうか?
コンパイラというか、コンパイルしてできるオブジェクトファイルの形式ね。
大体はシステムで共通なんだけど、Borlandだけ他と違ってるということかな。
なんでスタティックライブラリだけかというと、DLLの場合はシステムでロー
ドできる必要があるから、独自のものにはできないので問題が起きないから。
0623傍観者
NGNGおつかれ〜〜、早速見てみます。
>>616-617
サンクスコ。
やっぱいい奴の周りにはいい奴が集まるって事だねヽ(´ー`)ノ
他スレなら『しきるな(゚Д゚)ゴルァ!!』だし。
0624デフォルトの名無しさん
NGNGマウスモードの時に最小化ボタンをクリックしたりデスクトップのアイコンをクリックすると
ボールが発射されてしまいますね。これは直してほしいところです。
ゲーム画面をクリックすると開始、
ゲーム画面の中だけにマウスの移動範囲を制限するというのはどうでしょうか。
そして一時停止するとマウスの移動制限をなくし、
またゲーム画面をクリックするとマウスの移動範囲を制限し、ゲームを開始する。
このようにすればなんとなく解決する気がします。
ただこれにすると一時停止中でしかマウスモード→キーボードの切り替えができませんが。
あとなんとなく左クリックで開始と一時停止、右クリックでボールを増やすという方が一般的な気がします。恐らく。
とりあえずマウスの移動制限の説明のリンクを。
ttp://www.elixir.co.jp/developer/vb/lib/vb_all.htm
0625デフォルトの名無しさん
NGNG良い人材を見つけたら自分で育てたくなるのがPGってもんだ(謎
>>1は、もうこのゲームのチューニングは十分ではないだろうか?
ここら辺から先は別の人間が進めても良いと思う。
>>1が作ったソースコードをベースに、有志が独自の改造を施してみては?
そして改造したらジオで公開し、ココに報告する。と。
>>1は次は何を作りたいんだ?
0626デフォルトの名無しさん
NGNG0627ヒッキー@プログラミング
NGNGいえいえ、こちらこそソースを読んでいただいて
ありがとうございます。
>>622
そういうことでしたか。
DLLは独自のものにできないんですね。
オブジェクトファイルって、exeになる前の中間ファイルのことですか?
(というか、リンクという作業もよくわかりません(w)
>>623
おー、どうもありがとうございます。
>>624
そうですね。画面外をクリックした時に始まるのは変ですね。
マウスの移動範囲を制限するというのは、ゲームを正しく動かす為には
有効なやり方だと思いますが、手軽さが減るのではないかなぁ
と思います。
リンク先、参考にさせていただきます。どもども。
>>625
僕も止め時が難しいなぁと感じてました(w
でも、ソースを放置するにも、説明が少なすぎるし、
何かまとめになるようなモノを書こうかと思っています。
順番的には、次はテトリスを作ろうかと。
>>626
まだいくつかVBで作ってみようと思います。
他の言語に移るのはもうちょっと勉強してからにします。
(次の候補は一応VCにしました。)
0628デフォルトの名無しさん
NGNGテトリスが一応出来たら、ぷよぷよへの応用も結構できる。
ただ、ブロックの消える判定が違うが。
0629デフォルトの名無しさん
NGNG0630622
NGNG> DLLは独自のものにできないんですね。
今Windowsで使われてるのはPEフォーマットという奴
> オブジェクトファイルって、exeになる前の中間ファイルのことですか?
そう。というかVBも中間ファイルとかいって作ってるはずだが。
> (というか、リンクという作業もよくわかりません(w)
オブジェクトファイル同士(とライブラリ)をくっつけて実行ファイルを作ること
0631デフォルトの名無しさん
NGNG次はテトリスって話だけど、少なくともテトリスはブロック崩しより簡単だよ。
ぷよぷよは再帰使うと簡単だけど、VBって再帰使える?
0632デフォルトの名無しさん
NGNGテトリス
ぷよぷよ
電卓(俺推奨 藁 (1/3)*3が1と表示されるヤツ
だな。
0633デフォルトの名無しさん
NGNG薬師丸ひろ子まだ〜。
0634ヒッキー@プログラミング
NGNGぷよぷよは面白そうですねー。
でもぷよぷよ、すごく苦手なんです…連鎖のデバッグができない(w
>>629
ほおほお。そうですかー。
次にやってみたいと思います。
>>630
おー、ご教示ありがとうございます。
リンクという作業がようやく納得できました。
>>631
うーん、テトリスならすぐにできそうなので、
それからブロック崩しの続きを考えようと思います。
再帰ですか。VBはできないような……できるのかな。
ぷよぷよで再帰とはどこで使うのでしょう?
くっついた時の判定でしょうか?
>>632
あー、電卓の存在を忘れるところでした。
インタープリタは書いてみたいですが、もう少し経験を積んでから
やり始めようと思います。
>>633
そろそろ髪の毛1本づつとか送って来たりして(w
0635デフォルトの名無しさん
NGNG削除判定のときじゃない?
簡単な塗りつぶしのアルゴリズムと一緒。
0636デフォルトの名無しさん
NGNG配列変数で仮想画面を作ってそれで判定する・・・であってますか?
いや、というより本当に聞きたいのはブロックの回転の仕方なんです。
■
■ → ■
■■ ■■■
と回転させる時、みなさんはどのようにして回転させていますか?
やはり変数に(2次元配列変数)
│012
┼──
0│000
1│001
2│111
などと形を記録しておいて、回転の度に該当する変数を呼び出しているのでしょうか。
ていうか以前にそこらへんをすべてむりやり計算して回転させようとして無茶苦茶になって挫折したんです。
うーん、上手く説明できない。これでわかるかな?
0637デフォルトの名無しさん
NGNG0638デフォルトの名無しさん
NGNG計算して回転させるのも「むりやり」じゃなくてフツーだよ。
まぁ、やるなら最初にプログラム内で回転させたパターンを全部生成して、それを
使うのが一番良いと思うが。
0639デフォルトの名無しさん
NGNGVBでDirectX使ってみたら?
たしかDirectX7はVBからでも使えたような・・・。
0640デフォルトの名無しさん
NGNGモナーの *やさしい* Delphi質問スレ
http://pc.2ch.net/test/read.cgi/tech/1003113413/
の ( = ゚ ω゚ ) みたいになるぞ・・・
0641デフォルトの名無しさん
NGNG俺も詳しく知らないのでほっとけば誰かの講釈が入るだろうと思って
たんだけれど・・・・
MODで名前あってるか知らないけど、確かCSならHL(ハーフライフ)
持ってればただでゲームできるという代物だったよーな。
つまりHLのプログラムを利用したゲームだって事だと思う。
クォーク(クエイク?)とかアンリアルとかもにたようなモノだと
どこかで読んだ記憶がアリ。なんとかエンジンって言うのかな。
俺はこれくらいしかしりません。
0642デフォルトの名無しさん
NGNG>>640の言うようになるかどうかはお前次第だ。
別に移行のタイミングなんて関係ないから気にするな。
0644デフォルトの名無しさん
NGNGmodは知ってるけど、googleで検索すればいくらでも解説はあるから無視した。
ただ、音楽の方のmodばかりヒットするから、マイナス検索使わないと面倒だが。
そもそもこのスレに関係ないし。
0645デフォルトの名無しさん
NGNGゲーム作りに興味ありそうなんで、
俺が知ってる事を言ってみただけなんですが
すいませんでした。
0646ヒッキー@プログラミング
NGNG体調悪くて、書き込みできませんでした。
>>635
お、再帰使えますか?実験してみます。
あー、囲まれた領域を塗りつぶすアルゴリズムですか。
>>636
僕も回転の仕方で詰まりました(w
やっぱ回転後の配列を用意したほうがいいのかなぁと。
>>637
そうなんですよね。
>>638
うむぅ。そうしてみようかと思います。
>>639
DirectXをVBから使う方法を解説した本が一応手元にあるんですが、
GDIを使って処理する方が勉強になるかと思いまして。
>>640
読んでみようと思います…
>>641
あー、そういえばグラフィックを入れ替えるデータを
配布している方がいらっしゃいますね。
あれって、自分でデータを解析されているんでしょうか。
>>642
どもです。気楽に逝こうと思います。
>>643
お、回転のパターンが載ってますね。
じっくり見てみます。
>>644
やっぱ有名なんですね。
>>645
おかげ様で、また新たな単語を知る事ができました。
興味があるので、検索してみようと思います。
0647デフォルトの名無しさん
NGNG0648ヒッキー@プログラミング
NGNG↑テトリス、未完成ですがUPしてみました。
今の所、端に埋まったりします…
>>647
お、このスレ1番上に出てきますねー。感動。
生き返ったのでage
0649デフォルトの名無しさん
NGNGいちばん上までブロックが積もっても、ゲームオーバにならない・・・。
ランタイムエラーとやらが出て、終了してしまいます。
0650デフォルトの名無しさん
NGNGprivate static int[][] pattern = {
{},
{ 0x00f0, 0x4444, 0x00f0, 0x4444 }, // 棒
{ 0x0660, 0x0660, 0x0660, 0x0660 }, // □
{ 0x0e40, 0x4640, 0x4e00, 0x4c40 }, // 凸
{ 0x0e80, 0x4460, 0x2e00, 0xc440 }, // L
{ 0x0e20, 0x6440, 0x8e00, 0x44c0 }, // 逆L
{ 0x0c60, 0x2640, 0x0c60, 0x2640 }, // Z
{ 0x06c0, 0x8c40, 0x06c0, 0x8c40 }, // 逆Z
};
0651デフォルトの名無しさん
NGNG(・∀・)イイ!!VBはよくわからんが、とりあえず指摘。
>>649さんのに加えて、回転する時の軸が変(つーか普通のと違う)から、ちょっと違和感あり。
回転のほうは、壁にめり込む場合は回転できないようにするのかな??
あまり役に立てなくてスマソ。
1、頑張れよ〜〜
0652デフォルトの名無しさん
NGNG回転法則自体は>>643の仕様どおりになってると思う。
(壁にめり込むのは別として)
市販されてるテトリスは回転法則がソフトによってまちまちです。
例えばこの辺を参照
ttp://www.din.or.jp/~koryan/t_r01.htm
0653デフォルトの名無しさん
NGNG同時期に出た各社のテトリス(アーケードでもATARI版とかあった)の中では
セガのが一番良かった。落下スピードが反則的に速いかわりに、地面について
からくっつくまでの時間がとても長い。
BPSのパソコン版はイマイチ。
0654デフォルトの名無しさん
NGNGぶっちゃけ、回転パターン用意した方が速い(両方の意味で)けど、
一応、計算で求めれ無い事も無い。
│012
┼──―
0│000
1│001
2│111
↑を配列変数「block」として、
for(x=0;x<3;x++)
for(y=0;y<3;y++)
work[y][2-x] = block[x][y];
ってーやれば、一応workの中に回転後のブロックが出来る(多分)
もちろん、
│0123
┼──――
0│0010
1│0010
2│0010
3|0010
なんつー場合は、
for(x=0;x<4;x++)
for(y=0;y<4;y++)
work[y][3-x] = block[x][y];
っつー事になるわけだけどもね。
まぁ、よっぽどカラフルなテトリス(個々のブロックに色がついている)でも
作ろうとしない限り必要ねーんだけど。
俺だったら>>650使うね。
0655ヒッキー@プログラミング
NGNG↑テトリス、次UPしました。
今のところ問題点としては
・壁に埋まる
・レベルが上がらない(早くならない)
などです。
>>649
どもども。
一番上まであがったら座標が-1になるときがあって、それで
エラーを吐いていたようです。応急処理的に、MsgBoxを出してみました。
ご報告、ありがとうございます。
>>650
僕もそういう感じで処理したかったんですが、
VBだと冗長な処理になってしまいます…。
宣言時に初期化できないもんでしょうか。
>>651
ういー。がんばります。
>>652 さんのおっしゃる通り、いろいろ回転が違うみたいですね。
ゲームボーイでさっきやりましたが、>>643 さんにリンクして頂いた
回転と違っていました。
って、>>652さんのページ、すごいですね(藁
>>653
あー、セガのってサルのやつですですよね。
僕は当時お小遣いが少なくてほとんどできませんでした…。
なんかOL風の人が、異様な形相ですごい速度を
さばいてたのを見ました。
テトリスってパソコン版あったんですか?知らなかった。
>>654
回転、計算でもとめれるんですねー。
僕は回転の仕方を考えていたら頭がよじれそうになりました。
やっぱ配列に回転後のデータを格納しておいた方が速いのでしょうか。
0656バード大佐
NGNGいつのまにかテトリス開発に移ってたのかw
0657デフォルトの名無しさん
NGNG0658デフォルトの名無しさん
NGNGブロック崩し、テトリス、パックマン、リバーシ(オセロ)、ぷよぷよ、インベーダー……
このあたりはゲームプログラミング初心者に最適な題材だからだ。
ゲーム会社の研修の課題にも使われるぞ(マジで)。
0659デフォルトの名無しさん
NGNG操作レスポンス非常に良好ですが、落としたブロックが固まる前に
次のブロックを回転させようとして大変な状態になること多数。
下キーで落とした時にはすぐに固まって次に行って良いかと思いました。
あと、揃えた列が消える時に画像効果が欲しいですね。
それと、この際タイトルに
「貴様ら! 落ちてくるブロック揃えて消してください」なんてどうかと。
0661デフォルトの名無しさん
NGNG貴様ら!テトリス作ったからプレイしてください
でどう?
0662デフォルトの名無しさん
NGNG「貴様ら!ブロック崩し作るので見てください (662)」
↓
「貴様ら!ブロック消し作るので見てください (3)」
0663デフォルトの名無しさん
NGNG>けしって何
の部分が
「こけしって何」に見えた俺は逝ってよし?
0664デフォルトの名無しさん
NGNG(´-`).。oO(逝かないで・・・)
0665ヒッキー@プログラミング
NGNG↑次UPしました。
まだ若干ブロックに埋まったりします…
>>656
はは。テトリス終ったら、またブロック崩しの続きを作ろうかと思っています。
>>657
オリジナリティを出すのはまだ早いかと思いまして…
>>658
>ゲーム会社の研修の課題にも使われるぞ
ほおほお、そうなんですか?
もっとやらねば。
>>659
そうですねー。下キー押したときは固まるようにしようと思います。
画面効果、考えてみます。
>>660
採用させていただきました(w
>>663
こけしですかー。最近見てないなぁ…。
0666ヒッキー@プログラミング
NGNG↑次UPしました。一応ちゃんと動くようになりました。
あとは音を付けたいと思います。
0667デフォルトの名無しさん
NGNG0668デフォルトの名無しさん
NGNGhttp://jiten.www.infoseek.co.jp/Kokugo?pg=result_k.html&col=KO&qt=%B5%AE%CD%CD&sm=1
昔は尊敬の意味があった(^^)
0669デフォルトの名無しさん
NGNG0670デフォルトの名無しさん
NGNGこのスレッド見てて、そう思った。
俺も頑張ろう。
0671デフォルトの名無しさん
NGNG「ら」は尊敬じゃないだろう。
0672ヒッキー@プログラミング
NGNG↑次UPしてみました。
・音の追加
・バランスの調整
・タイトル画面の追加
などしてみました。
>>667
なんとなく、一貫性があった方が良いかと考えまして。
そろそろ、他の名前の付け方考えます…
>>668
ほおほお。貴様!ありがとうございます。
>>669
目撃ドキュソ
>>670
このスレでプログラムの勉強始めてから、がんばるのは
スバラシイ事だと実感しました。
>>671
そうですね…うーん、貴様ドモ!…余計ダメですね。
0673デフォルトの名無しさん
NGNGどのキーでブロックを回転させるの?
0674ヒッキー@プログラミング
NGNG逆回転は今の所ありません…
0675
NGNG0676660
NGNG0677デフォルトの名無しさん
NGNG0678ヒッキー@プログラミング
NGNG最近、更新回数が減ったせいか、酸化してくださるかたも
減っていったような…
そろそろブロック崩しの続きでも作ろうと思います。
>>675
うんちを取って、終了してしまいました(藁
>>676
今辞書引いたところ、ドモはラよりも駄目みたいです…
>>677
方…(・∀・)イイ
0679デフォルトの名無しさん
NGNGとつくづくおもふ。
臭蚊屁の……
次スレは「貴様方!C言語勉強するので見てください」だな(藁
0681ヒッキー@プログラミング
NGNGクサカベさんって、煽り専門のように見えるのですが
気のせいでしょうか。
この発言に「はつみみです。」っていうレスついたりして(藁
>>680
おー、第2段が(w
さっそくご挨拶に逝きました。
対抗age
0682ヒッキー@プログラミング
NGNG開発停滞してる間にお客さんが減ってしまった…。
VCにブロック崩しを移植しようと思っているんですが、
どのようにして画像を表示したら良いか模索中です。
STATICでCreateWindowを実行したらいいんでしょうか。
とりあえずいろいろ実験します。
0683デフォルトの名無しさん
NGNG0684デフォルトの名無しさん
NGNG1. メインウィンドウと同じサイズのビットマップを用意しておく(バックバッファ)
2. ゲームではバックバッファにデータを書き込む
3. 一通り書き終わったら、バックバッファをメインウィンドウに BitBlt して貼り付ける。
こんなものでいいと思うが。普通の Windows アプリケーションでは WM_PAINT メッセージに対応して
描画するんだが、ゲームだったら無視して適当なタイミングで BitBlt() しても構わんでしょ。
0685たけお
NGNG0686ヒッキー@プログラミング
NGNG↑VC編始めました。いろんなところのソースを見ながら書きました。
ちゃんと動いてないかもしれません…。
タイマーとかデバイスコンテキストとか破棄されてなかったらごめんなさい。
>>683
ケコーンしましょう。
>>684
今の所、バックバッファは用意しませんでした。
WM_PAINTのところ何も書いてないんですが、いいんでしょうか。
BeginPaint・EndPaintの役割が、まだはっきりつかめてなかったりします(w
>>685
おぉ、ありがとうございます。
見てくださるかたが、もしいらっしゃらなかったらちょっと悲しいです。
※肩こりで頭が痛くて、変な事書いてるかもしれません…。ごめんなさい。
0687デフォルトの名無しさん
NGNGテトリスの上カーソルキー、使う予定がないなら回転をアサインしてほしいなぁ。
そうすると片手で遊べるんだけど(w
>>VCブロック崩し
描画は>>684の方法でOKでしょう。現状のディスプレイDCに直接BitBltだと
そのうちチラツキが気になってくるハズ。
で、画像の表示は今はDDB使ってるけどそのうちDIBを使うことになると思う。
DIBならメモリに直接イメージを描けるからマスクパターンも要らなくなるしね。
WM_PAINTは処理しない場合でもDefWindowProc()が適当に処理してくれるから気にしなくても大丈夫。
BeginPaint()とEndPaint()はWM_PAINT内では
必ず呼ぶということだけとりあえず覚えておけばOK。
とりあえずこんだけ。
0688デフォルトの名無しさん
NGNGまず *.aps, *.plg, *.opt, *.ncb はソースアーカイブから削除ね。他の環境に持っていっても、役に
立たんから。
ReleaseDC(), DeleteDC() の使い方を間違えてるな。
CreateCompatibleDC() などで作ったメモリデバイスコンテクストは、DeleteDC() で解放する。
GetDC() や GetWindowDC() で取得したデバイスコンテクストは ReleaseDC() で解放する。
混同しないよう。
グローバル変数を使いすぎだが、それはともかくグローバル変数の宣言はヘッダにまとめておく。
extern を実装側に書くと、不一致が生じたときに検出できないで、致命的なバグになるぞ。逆に
外に見せる必要が無い関数/変数は static リンケージにして、同一ファイルからのみアクセスで
きるようにしておくのが身のためです。
画面サイズのこととか、エラーチェックしてない点とか、わりとツッコミどころ満載だが、とりあえず気
になったとこだけサクッと書き直してみた。
http://members.tripod.co.jp/lambda_func/cblock01_x.zip
0689デフォルトの名無しさん
NGNG0690デフォルトの名無しさん
NGNG0691デフォルトの名無しさん
NGNG別に、俺が書いたコードをそのまま使えとは言わんよ。サンプルとして参照したければ
すればいいし、したくなきゃ捨てときゃ良いだけ。
漏れもそう思って昨日言おうとしたけど、1が読んだら参考になると思ってやめた。
1ならそれをうまく吸収できそうだし。
0693ヒッキー@プログラミング
NGNG↑テトリス修正しました。変更点は
・上キーで回転できるようにした
・タイトル画面とゲームオーバーの画面で終了したら、正常にアンロードされない問題の修正
・横キーとスペースキーを同時に押したら壁に埋まってしまう現象の修正
です。
>>687
上キーで回転できるようにしました。
描画の時、見える部分を直接いじるとやっぱチラついてくるもんなんですね。
DIB、検索してみました。便利そうですねー。
でもDIBに対して行うBitBltのようなものを自分で実装しないといけないんでしょうか。
マスクデータが要らないのはいいですね。
白なら転送しない…みたいに書けばいいんでしょうか。
>>BeginPaint()とEndPaint()はWM_PAINT内では必ず呼ぶということだけとりあえず覚えておけばOK
ほおほお。了解しました。
>>688
>>*.aps, *.plg, *.opt, *.ncb はソースアーカイブから削除ね
やっぱいらないデータもあるんですね…。よく調べずに添付してしまいました(w
ほおほお、新たに作成したDCはDeleteDCで、
既にあるDCを取得した場合はReleaseDCを使えばいいんですね。覚えます。
>>グローバル変数の宣言はヘッダにまとめておく
>>外に見せる必要が無い関数/変数は static リンケージに
そうしてみます。externはなるべく使わないようにします…
書き直して頂いた分、見させてもらいました。
書き方、すごく参考になりました。ありがとうございます。
StdAfxって、最初に1回だけコンパイルする分ですよね?
あと、#if defined のところがよく分かりませんでした…
0694ヒッキー@プログラミング
NGNGわざわざ労力を使って書き直して頂けるというのは大変嬉しいです。
>>690
.cにしたら問題が出そうな気がしたので.cppにしました。
>>691
いえいえ、捨てるなんて�dでもない。
>>692
吸収するべくがんばります。
0695デフォルトの名無しさん
NGNG> StdAfxって、最初に1回だけコンパイルする分ですよね?
プリコンパイルヘッダのこと?
Windows アプリケーションだと <windows.h> やら何やらヘッダファイルを読み込むわけだが、
これはかなりサイズが大きくて、解析に時間がかかる。そこで <windows.h> など良く使うヘッ
ダファイルを
1 あらかじめ解析して、コンパイラがすぐに使える形 (*.pch) に変換しておく
2 *.c, *.cpp をコンパイルするときには毎回 <windows.h> などを解析する代わりに、1 で作っ
たコンパイル済みヘッダ (*.pch) を使う
ことで、コンパイルの速度を上げられる。小細工の類だが、知っておいて損は無いやね。
> あと、#if defined のところがよく分かりませんでした…
あれは通称コードガードという技法で、二回以上同じヘッダファイルを #include したときに発生
するトラブルを避けるためにつけておく。このぐらいの小規模なプログラムだと問題ないんだが、
規模が大きくなってくると
ヘッダ A がヘッダ X を #include
ヘッダ B がヘッダ X を #include
main.cpp がヘッダ A, B を #include (X は都合二回 #include される)
みたいな状態が発生してコンパイルに支障が出る可能性がある。
0696デフォルトの名無しさん
NGNG> > あと、#if defined のところがよく分かりませんでした…
> あれは通称コードガードという技法で、
そういう通称あるの? いや一般的になんと呼ばれてるのか知らんのだけど。
0697デフォルトの名無しさん
NGNG>>686のソースはまるっきりCだろ、コメント以外は。
>>688のもほぼC。
C++じゃなきゃ通らないのはごく一部、structをtypedefしてないとか参照渡し
とか名無しの引数くらい。
0698687
NGNGサンクス。これでお気楽に遊べるようになったよヽ(´ー`)ノ
>描画の時、見える部分を直接いじるとやっぱチラついてくるもんなんですね。
バックバッファを使えば目に見えるBitBltは一回で済むからチラつかなくはなるよ。
あと、CreateDIBSection()で取得したDIBなら普通にBitBltできるよ。
他の方法はちょっとわかんない・・・これしか使ったことないもんで(;´Д`)
まあDIBよりもバックバッファを実装する方が先だな。実装方法はわかる?
>白なら転送しない…みたいに書けばいいんでしょうか。
非パレットでのマスクならそうだね。パレットモードなら0番を描画しないとか。
やろうと思えばアルファプレーンを用意しての半透明描画だって可能。
0699
NGNG画像もぷよぷよ
0700デフォルトの名無しさん
NGNGブロックが接地してからの挙動がおかしい。
具体的には、ブロックが接地したあとの猶予時間にブロックを移動させたり
回転させたりすると変な動作をしてる。
これは速度が速くなってくると頻発するようになる。
あと、Lineが100あたりになったとき実行字エラーの'9'(インデックスが有効範囲外)が
発生してプログラムが強制終了。
速度が遅いときにはほとんど問題ないみたいなので多分、高速化のロジックあたりに
問題があるんだと思う。
でもこのバグが解消してもこれ以上はスピードが速すぎてゲームとして
成立しなさそうな気がする。このどうしようもなくなってくる感じは
任天堂の初代のゲームボーイ版を彷彿とさせるものがある(w
0701636
NGNGそこらへんのページやVectorにも僕の作ったテトリス、私の作ったテトリス、
俺の作った対戦型テトリスとかいろいろ置いてありますが、テトリスって勝手に作って公開しても別にいいんですか?
シュアウェアとかにしても構わないんですか?(するつもりないけど…)
>>637 >>638 >>646 >>654
教えていただいてありがとうございました。
学校の期末試験期間中現実逃避して書き込んだんで中々レスする機会がありませんでした。
プログラミングをはじめて1〜2ヶ月目の挫折を1年経った今、見事にはらすことができました。
あの時の「VisualBasic6.0評価版」ではなく、ポケットコンピューター「PC-G850S」で。
0702デフォルトの名無しさん
NGNGテトリスの名前を使うのは商標権の侵害で確実にクロ、
名前を使わなくても、著作権の同一性保持権の侵害でグレーと思われる。
とりあえず、フリーソフトまたはシェアウェアでテトリスを公開していて、
著作権者のThe Tetris Companyに警告されたケースは結構あるらしい。
でも、みんな次から次へと作るから全然追いついてなさそうだ。
ライセンスを正規に獲得したければこの辺か。
ttp://www.tetris.com/corporate/
実際どういう手続きになるのかは知らない。そんな感じ。
0703
NGNG0704636
NGNGやっぱり駄目ですか・・・残念
Googleで「自作 テトリス」で検索すると2000以上もの件数が…
これでは全然追いつけそうにないですね。さらに増えていくし…
しかしこの中には犯罪とも何とも思わず作っている人も多いんだろうなぁ。
>>703
ホームページにメールアドレスを書かない主義なので、
警告するときは直接電話がかかってくるんだろうか。それともそのままタイー・・・
0705デフォルトの名無しさん
NGNG普通のゲームは、いわゆるクローンは別にクロではないそうですけど、
テトリスの場合は(テトリスカンパニー側は)かなり厳しいですね。
どこまで似てるのはよくてどこからはダメなのか、というのはよくわからんです。
0706
NGNG0707デフォルトの名無しさん
NGNGブロック崩しゲーとしてはそっちの方がなんとなく正しい気がする。
ばきゅんばきゅんって感じで
0708デフォルトの名無しさん
NGNGテトリスのシステム自体は「アイデア」だから、よほどゲームとしての
類似性がない限り法的にどうこうできないと予想される。
ブロック崩しだって同じでしょ?
0709702
NGNGたぶん裁判になればパックマン事件みたく
映画の著作物云々でウダウダやるのだろうが。
ちと著作権のありかたについて考えさせられる事例ではある。
アイデアとしての落ちものパズルについては
カシオの特許で問題になってたが、その後どうなったのだろう。
0710デフォルトの名無しさん
NGNG『テトリス』って名前使わなきゃ良いと思ってたよ。
オセロはダメでもリバーシなら可みたいな。
著作権よりも>>709が言うように特許じゃないの?
0711デフォルトの名無しさん
NGNGバイト中。つーか月1k円の小遣いって(藁
0712ヒッキー@プログラミング
NGNG↑ブロック崩し(VC)、次UPしました。
自機が動かせるようになりました。
>>695
プリコンパイルヘッダっていうんですね。参考になります。
StdAfxを作っておくと、たしかにコンパイルが早くなりました。
コードガードのところ、よくみたら「#if defined」ではなくて、
「#if !defined」になってました…。ようやく機能が理解できました(藁
>>697
>>「>>686のソースはまるっきりCだろ、コメント以外は。」
たしかにそうかも…
>>C++じゃなきゃ通らないのはごく一部、structをtypedefしてないとか参照渡し
>>とか名無しの引数くらい。
ほおほお。typedefしなくてもstructって毎回書かなくていいんですね。
…って、いろいろ便利そうなので、cppのままにしときます。
ありがとうございます。
>>698
今回UPした分、バックバッファ使ってないせいか、やはりチラつきました。
>>CreateDIBSection()で取得したDIBなら普通にBitBltできるよ。
おお、それは便利そうですねー。一回実験してみます。
>>バックバッファを実装する方が先だな。実装方法はわかる?
ん〜、どうでしょうか。できるだけやってみます。
>>アルファプレーンを用意しての半透明描画だって可能。
半透明ですかー。やってみたいなぁ。
半透明の演算って、加算でやるんでしょうか?
0713ヒッキー@プログラミング
NGNG(・∀・)イイ
PC版ぷよぷよから画像抜き出したりしたら面白そうですね。
>>700
ご報告ありがとうございます。
>>ブロックが接地してからの挙動がおかしい。
>>これは速度が速くなってくると頻発するようになる。
速度が速くなるまでやってみました。…たしかにおかしいです。
>>Lineが100あたりになったとき実行字エラーの'9'が発生してプログラムが強制終了。
一度に2マス以上落ちて、配列の要素を超えてしまったんではないかと…
直します。
>>でもこのバグが解消してもこれ以上はスピードが速すぎて…
たしかに。レベル上がるごとに落ちる速度に掛け算してるのがまずかったと思います…。
ゲームボーイ版テトリスで一番長くプレイしたので、影響が出たのかもしれません(藁
>>701
おお、ポケコンですかー。ウチにあるのは5行ほどしか表示できないので、
極端に狭いテトリスしかできません(藁
>>702
テトリスのライセンスのページってあるんですね。
最終的にロシア人の作者にお金が逝くのだろうか。
>>707
発射…(藁
テトリスとは違うゲームが出来上がりそうですね。
>>708
たしかにブロック崩しもタイトーにお金払わなければならんのでは…
という感じがします。商用でなければいいんでしょうか。
>>709
映画とゲームを比較して裁判で争うのっておかしいですよね。
たしかに最近のFFはまさに映画ですが。
(裁判で今後認めさせる為に無理矢理あのようなゲームにしたのでは…)
カシオって、落ち物パズルの特許もってたんですか?
>>710
オセロって日本人が考えたんでしたっけ。
>>711
コンパイラはフリーでありますよ。
ボーランドのTurboC++とかDownloadできるみたいです。
GUIのツール類は無いみたいですが…
0714デフォルトの名無しさん
NGNGDIB は描画時にデバイスコンテクストにあわせて変換が入るから、遅くないか?
このへんようわからんのですが…
http://www.google.co.jp/search?q=%89f%89%E6%82%CC%92%98%8D%EC%95%A8&hl=ja&lr=
http://www.ne.jp/asahi/law/y.fujita/used_sw/kenkai9801.html
関係ないのでsage
0716デフォルトの名無しさん
NGNGDDBに比べれば確かに遅いかもしれないけど
最近のマシンなら十分に使い物になる。60fpsくらい全然余裕(解像度にもよると思うけど)。
バリバリに画面描画を行うならDirectXがいいかもしれないけど
たいていはDIB(っていうか、旧WinG)で間に合うと思う。
0717デフォルトの名無しさん
NGNGお言葉はありがたいけど……
フリーであるんだけどね、通信速度が……WinUpDateで精一杯(藁
ISDN?いやいや、56kbpsしか出ませんよ(泣
通信費か、もしくは……
0718デフォルトの名無しさん
NGNGCマガ買え
0719デフォルトの名無しさん
NGNGノート1冊0.1k円……
がんばる!
0720デフォルトの名無しさん
NGNGとりあえずCの勉強ならLSI-Cの試食版でもやってみれば?
アーカイブで400Kだから全然余裕だろ?
0721701
NGNGけど6行あるうちの4行しか使ってません。というか使えません。
大きくすると描画に時間がかかってゲームにならないんです。
しかも教育用ポケコンの仕様かどうかわかりませんが、横幅が普通のよりせまいんです。
だから雑誌に載っているプログラムを打ち込んでもはしっこが見えない・・・(泣
0722デフォルトの名無しさん
NGNGアリガトウ♥
コレから落としてきます。 ねこでも――で便供養中です。
0723デフォルトの名無しさん
NGNG/便供養中/勉強中/鬱;
いいものいっぱい!Yahoo!オークション で激安情報!
SFC+おまけ
http://page3.auctions.yahoo.co.jp/jp/auction/c14653830
ドリンクホルダー
http://page3.auctions.yahoo.co.jp/jp/auction/c11344496
ドライヤー
http://page.auctions.yahoo.co.jp/jp/auction/40411210
Panasonicテレビデオ
http://page4.auctions.yahoo.co.jp/jp/auction/d12789591
0725デフォルトの名無しさん
NGNGg とりあえず、あぼ〜んっと。
e あげとこうっと。
0727デフォルトの名無しさん
NGNG0728ヒッキー@プログラミング
NGNG↑次UPしました。VBのソースを移植してたらイパーイ時間かかりました。
変更点は
・自機からボールが跳ね返る
・背景の表示
です。自機、背景から透けてますでしょうか。
>>714
DIBって遅いんですか?
今の所まだDDB(?)でやってます。
>>715
あー、そういえばゲームの中古販売の時に出てきた言葉でしたね。
思い出しました。
>>716
マシンパワーでプログラムの処理時間をカバーできるという事ですね(w
ゆくゆくはDirectXを覚えたいです。
>>717
うーん、つらいですねー…。
よく見たら月々のお小遣い1000円じゃないですか…10K円だと思ってた。
>>718
Cマガって、付録にコンパイラの体験版ついてるんですか?
>>719
ルーズリーフをみんなに1枚ずつもらうとか…
>>720
LSI−C、最初つかってました。
>>721
やっぱ4行でないと重いのか…
横幅狭いのはつらいですねー。専用のプログラムを書かないと…。
>>722
ガムバッテください。
>>724
テレビデオちょっと欲しいかも。
>>727
どういうことでしょう(w
0729デフォルトの名無しさん
NGNGOK?
0730デフォルトの名無しさん
NGNGとりあえず、コンパイラの警告レベルを 4 にしましょう。
if (x = 0)
みたいな、ありがちなバグがいくつも。
0733デフォルトの名無しさん
NGNGうちの環境でVer.3を動かしたところ、
動きがもんの凄いスローで、
右側のスコア欄に恐らく該当する部分の表示が
やばいことになっています。
0734デフォルトの名無しさん
NGNG>>714
確かにDIBはピクセルフォーマット変換が入って画面へのBitBltは遅くなるが、
DDBだとスプライト描画が足を引っ張るから、大抵のゲームでは問題にならな
いよ。DDBで多重スクロールなんてやろうとしたら鬱になるかと。
あと、DIBもデスクトップのピクセルフォーマットと同じフォーマットで作成
すると速くなるよ。それじゃDIBの意味ないんだけどさ。DirectDraw使った方が
速い。
0735デフォルトの名無しさん
NGNGこれから勉強しようとするときは、サンプルとか見て
この関数なんな?とか、この型はいったい何者?って思っても
とりあえずこうするもんだ、とかでOKなの?
やってみたいんだけど、WinMainの引数からして意味不明・・・。
スレ違いだったら、すいません。
0736デフォルトの名無しさん
NGNGとりあえず「プログラミング Windows 第五版」を買って読みましょう。適当にコードを書くと、
動くところまでたどり着かんで死ぬ。
0737デフォルトの名無しさん
NGNGttp://www.kumei.ne.jp/c_lang/
こことか見ながら勉強してみ。わからんとこがあったらヘルプ見るか検索。
それでもわからなければどっかで聞いてみる。
そのうち色々とわかるようになる。わからなければプログラミングには
向いていないってことで。
0738デフォルトの名無しさん
NGNGバージョンは?ksockのバージョンは?
かちゅをいれなおしてみたら?
それかログを削除 -> 取得しなおすとか
0741デフォルトの名無しさん
NGNG16→16より24→16のほうが速かったりするらしいけど
0742734
NGNG3dlabsのドライバはめちゃくちゃ速いんだか遅いんだかどっちだったか忘れたけど
極端に違った記憶がある。
0743デフォルトの名無しさん
NGNG「ピクセルを直接操作できる」
だけど、これってメモリデバイスコンテクストに対して GDI 関数を呼ぶよりも速いからお薦め、
という意味? DDB でもメモリデバイスコンテクストを作って SelectBitmapすれば SetPixel(),
GetPixcel() でピクセル操作自体は可能だよね。
0744デフォルトの名無しさん
NGNGピクセル操作に関数呼んでたら遅くなるじゃん…アドレス指定してゴリゴリ出来る
ところがミソなんじゃない?あとはピクセルフォーマット決められるとか。
漏れはメモリ領域取ってStretchDIBitsとか使うけど。パレット付きとか使うとき楽。
上限反転も気にしないで済むし。
0746
NGNG0747デフォルトの名無しさん
NGNG上下は高さをマイナスにすればいいんだよ。ヘルプにも書いてあったような。
SetPixelはDIBの直接アクセスに比べると遥かに遅いです。
少なくとも100倍は差があるかと。MMXも使えないし。
0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNGTrueTypeつかって文字書きたいときなんかどうすんの?
0751デフォルトの名無しさん
NGNGIDirectDrawSurface7::GetDC() なんかでデバイスコンテクスト拾える。DirectX 8 だとダメだが。
0752デフォルトの名無しさん
NGNG0753ヒッキー@プログラミング
NGNG>>729
う〜ん、なんか僕にはなじめそうにない機種なのでやめときます…
あの韓国の携帯ゲーム機がちょっと欲しかったりします。
>>730
してみました。…イパーイ警告でました(w
ありがとうございます。
>>731-732
うーん、なんででしょうか。リンクが多すぎるのかな。
>>733
コードが悪かったのかもしれません…。
直したいと思いますが原因の追求をどうやればいいのか…
>>734
やっぱスプライトの処理でコマゴマとBitbltしたら遅そうですねー。
スト2の地面の描画とか真似しようと思ってもDDBだったら無理なんでしょうか。
DirectXってやっぱ覚えたほうがいいですね。
>>735
僕もWinMainがサパーリわかりませんが、初めてCのコード書いた時の
Mainと同じように把握しています。
0754ヒッキー@プログラミング
NGNGそういうことも、あるんもんなんですね。
>>742
ドライバで差が出てしまうと、どうしようもないですねー。
>>743-744
やっぱGetPixelとかは直接DIBをいじるより遅いんですね。
>>746
ピクミン、やった事ないです…
>>747
マイナスにすればいいですか?ヘルプ見てみます。
>>748-749
(゚д゚)ウマー
>>750-751
ほおほお。後で使えるように覚えておきます。
>>752
DIBの場合って、フォントを描くにはどうしたらいいんでしょう?
0755デフォルトの名無しさん
NGNG???
DIBはGDI使えるが?
0756デフォルトの名無しさん
NGNGDIB という単語が多義的に使われていて混乱してる気がするな。
ほんとに素の DIB だと SetDIBitmsToDevice(), StretchDIBits() で描画することしか出来ない。
GDI 関数を使いたければ CreateDIBSection() で DIB セクションを作成する必要がある。
ということで OK?
ついでに DDB, DIB, DirectDrawSurface の得失
DDB
+ GDI 関数が使える
+ BitBlt() が高速
- ピクセル操作は Win32 API 呼び出しが絡むので遅い
(単に API がどうこうというだけでなく、データをビデオメモリ上に持ってるんじゃない?)
DIB
- GDI 関数が使えない(ただし CreateDIBSection で補える)
- BitBlt() はやや遅い
+ ピクセル操作はポインタ経由で行えるので高速
+ ピクセルフォーマットを自分で決められる
DirectDrawSurface
+ GDI 関数が使える (ただしピクセル操作よりは遅くなる)
+ BitBlt() が高速
+ 標準で透過処理などをサポートしている
+ ピクセル操作はポインタ経由で行えるので高速
(ただしシステムメモリにサーフェイスを作った場合、ビデオメモリに作ると操作は逆に遅くなる)
- ピクセルフォーマットはデバイス依存になる
というところで。
良くも悪くもシステムが面倒を全部見てくれる DDB, ハードウェアが直接見える DirectDrawSurface,
その中間に位置する DIB という感じ。
0757デフォルトの名無しさん
NGNGそうじゃないなら言葉足らず。
0758ヒッキー@プログラミング
NGNG何を書いているのかわからなくなりました…。鬱だ
>>756
詳細なご説明ありがとうございます。
用途によって使い分けるのがいいんですね。
ゲームを作るときにDIBを使う…という意味がはっきりしました。
逆に、絵を数枚だけ表示したい時などはDDBの方がよさそうですね。
0759デフォルトの名無しさん
NGNGガンバレ
DIBってデバイスに依存しないビットマップって意味だから,一旦DDBにコピーして
おいてから描画すると高速になる事があって(゚д゚)ウマーだね。面倒くさいけど(w
ま,細かいことはこれから覚えていけばいい事だし,とにかく作ってみて完成させる。
コレが一番。やればやっただけ効果あるし,やる気ある奴は伸びるのも早いよ。
0760デフォルトの名無しさん
NGNG前のほうでちょっと書いたんだけど、Win3.1の頃にはWinGっていう規格があった。
最後のGっていうのはGameの略。つまりゲームアプリのために作られたもの
なんだけど、それがWin32になってAPIとして取り込まれたものがDIBセクション。
DIBとDIBセクションは一応別物として理解していてくれ。
DIBセクションに関してはCreateDIBSectionで検索すればすぐ出てくる。
0761ヒッキー@プログラミング
NGNG↑次UPしました(VC)。変更点は
・ブロックの表示&はね返る
です。
>>759
ほおほお。いろいろ作ってみます。
DIBを作ってみて、速度を計ってみようと思います。
>>一旦DDBにコピーして
というのは、DDBにいったんBitBltするんでしょうか?
>>760
あー、そういえばPCを初めて買った時に見た、雑誌の付録で
WinGを使ってるのがありました。
MSDNのCreateDIBSectionのページを見てみます。
ありがとうございます。
0762デフォルトの名無しさん
NGNGCreateDIBSectionかDirectDrawの二択。
とりあえず、32bitカラーのCreateDIBSectionがおすすめ。
アライメントとかの問題も気にする必要ないから初心者にも扱いが楽。
CreateDIBSectionで速度的に問題があれば、DirectDrawに手を出してみるのが
いいかと。ただし、IA32についてちゃんと理解していなければ、ちっとも速くな
らないから注意。
0763デフォルトの名無しさん
NGNG>というのは、DDBにいったんBitBltするんでしょうか?
そうそう。表示デバイスとコンパチブルなビットマップを作ってBltするんだよ。
CreateCompatibleBitmapでMSDN探せば出てくるよ。
書き換えのチラツキ防止策にも使われたりしますが,ゲームじゃあまり使わ
れないから,気にしなくてもいいかも(w
0764デフォルトの名無しさん
NGNGなぜかネットにつなぐとしたくなるんだよ。
フレッツじゃないし、56kbps(前もこんな人いたような)だからつらい。
まぁ1がんばれ。
0766あきまさ
NGNG0767デフォルトの名無しさん
NGNG元気の出る波動送っときます。
も〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜ん…
も〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜ん…
0768ヒッキー@プログラミング
NGNGそろそろ復帰します…。
0769デフォルトの名無しさん
NGNGえっ、何かの搬入ですか?
それとも、電源工事?
0770デフォルトの名無しさん
NGNGって思うんだ
0771デフォルトの名無しさん
NGNGあけましておめでてーな。
本年もよろしくお願いいたしやがります。
0773デフォルトの名無しさん
NGNG書き込みが少ないのが悲しい。
ひまつぶし
しようと思うが
カキコ無し
圖
0774ヒッキー@プログラミング
NGNG>>762
ういー。了解しました。
IA32って、どういうのでしょう?Itaniumの仲間ですか?
>>763
ほおほ。参考になります。
コンパチブルなBITMAPは一応作ることができたのですが、
普通にBITMAPを作ると白黒になってしまうようなのですが、
解決策はあるのでしょうか?
(MSDNの内容がイマイチ読み取れませんでした…)
>>764
漏れもテンション上がるとウ○○がしたくなります…
あとコーヒー飲んだ後。
がんばります〜。
>>765
若干元気になりました。
>>766
ただいまー。
また、そちらのスレに顔出しマス…。
>>767
なんか耳鳴りがすると思ったら波動を送ってくださってたんですね(藁
>>768
ん?
>>770
小さくできそうですねー。
でもwindows.hをインクルードするだけで重くなるような…
>>771
もっと減らせますか?んんん。
>>772
今年も夜露氏苦おねげーします。
>>773
歌丸師匠!?
もっと正月もがんばったら良かったかと思っています。
0775デフォルトの名無しさん
NGNGIA32はi386〜Pen4(PenPro含む)
0777デフォルトの名無しさん
NGNG> でもwindows.hをインクルードするだけで重くなるような…
ヘッダと実行ファイルのサイズは関係ないって。
ただ CRT に関しては libc.lib (libcmt.lib) をスタティックリンクして使うか msvcrt.dll を使うかでサイズに
差が出る。プロジェクトの設定から [C/C++] - [コード生成] - [使用するランタイムライブラリ] で選択ね。
0778デフォルトの名無しさん
NGNG>普通にBITMAPを作ると白黒になってしまうようなのですが、
コンパチDC作ってビットマップ作成だったかも知れん。スマソ
ここら辺ややこしいんだよな…
0779債務不履行の名無しさん
NGNGいつもsageなのになぁ。
今日、某新聞の求人広告に………があってつい見にきてしまった。
保守上げだ。
0780Monamoe
NGNG漏れも高校の時CとVB勉強してたよ。
今はC++だけど。
年齢もかなり近い。
1さんは漏れの1つ年上みたいだね。
しかも漏れもヒッキーでゲーム作ってたりする。
Cで書かれてるブロック崩しやらせてもらったけど、
なかなかいい感じだね。
1つ注文すると、最大化ボタンはいらないと思うよ。
CreateWindow関数のWS_OVERLAPPEDWINDOW
ってのを変更すれば最大化ボタンを消せるYO!
お互い頑張ろうね!
0781ぴくみん
NGNG0782ヒッキー@プログラミング
NGNG一回休むと続けづらくなってきました…
とりあえずVC起動
0783ヒッキー@プログラミング ◆hky/PGis
NGNG0784不良社員
NGNGそういうときはやらんでよし。
他に興味あるプログラムを作るか、
遊ぶかダラけるかをおすすめします。
とりあえず、やる気でないときは私はそうしてます。
やる気ってコントロールするのが難しいんだよね
0785デフォルトの名無しさん
NGNG0786デフォルトの名無しさん
NGNG仕事でも、趣味でも、勉強でも。
がんばれage.
0787ほえー
NGNG0788デフォルトの名無しさん
NGNG漏れはマスターベーションの方が大事だと思うな。
0789デフォルトの名無しさん
NGNG0790デフォルトの名無しさん
NGNGお前みたいなデブメガネは死ね
0791デフォルトの名無しさん
NGNG0793デフォルトの名無しさん
NGNGそういう時は別の言語触ってみたら?
J++も入ってるんでしょ? 他にもDelphi6Personalとかも無料だし
0794789
NGNGおいおい何怒ってるんだよ。(笑)
0795デフォルトの名無しさん
NGNG0796デフォルトの名無しさん
NGNG>>1さぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ♥ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ♥ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ(以下略
0797デフォルトの名無しさん
NGNG| >>1 はどこ!! |
|_________|
∧∧ ||
( ゚д゚) ||
/ づΦ
0798デフォルトの名無しさん
NGNG勢いはもう \0 どうぜん…(w
0799デフォルトの名無しさん
NGNG(例) http://www.google.co.jp/search?q=%8F_%96%D1&hl=ja&lr=
0800デフォルトの名無しさん
NGNG0801ヒッキー@プログラミング ◆hky/PGis
NGNG0802デフォルトの名無しさん
NGNGプログラミングは (それほど) 初心者でもないが、ゲームプログラミングはド素人ってあたりで
どうよ? ひとつシューティングゲームでも書いてみたいなと思ってるんだが、観客いた方が気
合入るし。
0803デフォルトの名無しさん
NGNG俺は全然構わないと思うよ。
>>1もプログラミング多少できたみたいだし。
0804デフォルトの名無しさん
NGNG0805デフォルトの名無しさん
NGNGCreateCompatibleBitmap
の引数のHDCに入れるものが間違ってるからだったような・・・
hWnd = 「メインウインドウのhWnd」;
hdc = GetDC(hWnd);
CreateCompatibleBitmap(hdc, width, height);
とhdcをウインドウのものにすればすればカラーになるはず
0806デフォルトの名無しさん
NGNG漏れも便乗させてもらってもいい?
0807802
NGNG良いんじゃない。
とりあえず DirectDraw7 で、16x16 タイル張りの背景をスクロールできるところまで行きました。
ちとコードを整理したら up します。
0808806
NGNGどうもありがとう。
漏れ業務ではPL/SQLしか経験なくてやばめだけど。
わたしはDirectDrawは使えないヘタレなので、DirectX系無しのVCで・・
背景のスクロールはWM_TIMERでX+=10;とかにして
BitBltの所の背景のX座標の位置を増やしてみました。
たぶんWM_TIMER使っているからだと思うけどゲームみたいな綺麗な
スクロールじゃないや。
それにInvalidateRectをWM_PAINTじゃなくてWM_TIMERの方に書かないと
だめだったし。無念。
0809806
NGNG一文しか私は使っていないんですが、UpdateWindow(hwnd);は
やっぱり普通は使うものなんですか?
自分のソースにInvalidateRectの次の行に書いたらKARNEL32.dllっていうのがエラー出します(涙
0810デフォルトの名無しさん
NGNGVBに帰る手もあると思う。
0811デフォルトの名無しさん
NGNGおそらくWM_PAINT に UpdateWindow 書いてねーか?
0812デフォルトの名無しさん
NGNGhttp://www2.sega.co.jp/sw/woody/
セガのブロック崩し。
おもろいよ。
0813デフォルトの名無しさん
NGNG漏れもちょっと参加してみます。
貴様ら!見てください
http://www.geocities.co.jp/SiliconValley-PaloAlto/4792/
プログラム歴は、昔BASICとCをかじった程度。ひと月程前にDelphiをダウソして勉強中。
0814デフォルトの名無しさん
NGNG色つけたら見てるだけで楽しくなりそう。
0815名無しへの扉
NGNGhttp://www.vector.co.jp/soft/win95/game/se174379.html
0816デフォルトの名無しさん
NGNGAPI板にも来てください
http://pc.2ch.net/test/read.cgi/tech/1006783012/l50
0817813
NGNGhttp://www.geocities.co.jp/SiliconValley-PaloAlto/4792/
画面を分割して、衝突判定を分けたんですが、
だんだんソースがゴチャゴチャしてきて見辛くなってきた。
あと、Ctrl+左マウスドラッグで画面をスクロールできるようになりました。
>>814
ぱくり元のゲームも見てるだけで飽きないとこが好きだったんですが、フルスクリーン専用だったので、
そのへんをなんとかしたいなってのも、作ってる動機のひとつです。完成したらスクリーンセーバにもしてみようかと思ってます。
今のとこ、どうやって作ったらいいのか全然わかりませんが。
見た目の寂しさは何とかしたいとこですが、一通りの機能が出来るまでは我慢しようとおもいます。
音の追加とかも。
0818デフォルトの名無しさん
NGNGぼーっとみちゃったよ。
0819デフォルトの名無しさん
NGNG0820ヒッキー@プログラミング ◆hky/PGis
NGNG今日またやり始めたので、よかったらおいでくださいませ(;´Д`)
0821813
NGNGhttp://www.geocities.co.jp/SiliconValley-PaloAlto/4792/
なんとなくソースファイルをメインフォーム、宣言、描画、物理計算部の4つに分割してみたんですが、
描画時の色がおかしくなってしまい困ってます。
//細胞カーソル描画
procedure DrawCellCursor(cell: PCell; Color: TColor);
begin
with Form1 do begin
if Cell = Nil then Exit;
Image1.Canvas.Pen.Color := Color;
Image1.Canvas.Pen.Width := 2;
Image1.Canvas.Brush.Style := bsClear;
Image1.Canvas.Ellipse(Cell.x - CellRadius - 4 - ViewLeft, Cell.y - CellRadius - 4 - ViewTop,
Cell.x + CellRadius + 4 - ViewLeft, Cell.y + CellRadius + 4 - ViewTop);
end;
end;
//============================================
上のようになっていて
DrawLifeCursor(LifeSelected, clBlue);
のように呼んでいるんですが何故かclBlueでなくclBtnFace(ウィンドウの色)で描画されてしまいます。
ソース分割前は正常だったんですが…。考えてみてもまったく原因が分からない。(;´д`)
お、>>1さんが、ひっそりと復活。息切れしないよう、程ほどに頑張ってね〜。
0822デフォルトの名無しさん
NGNG引数のColorではなくてForm1.Colorが描画されてるのかな。
名前がバッティングしないように引数を変えてみてはどうでしょうか。
0825デフォルトの名無しさん
NGNG0826デフォルトの名無しさん
NGNG0827ヒッキー@プログラミング ◆hky/PGis
NGNGhttp://www.geocities.co.jp/SiliconValley/2530/
WM_TIMERで処理するのをやめて、時間を計るようにしました
0828ヒッキー@プログラミング ◆hky/PGis
NGNG0829デフォルトの名無しさん
NGNGなんら問題はありません。
タリー
タリー タリー イヤーソ
(\_/) タリー
( ´Д)アハーン タリー タリー
/ つ (\_/) (\_/)ノ⌒ヽ、
(_(__つ⊂(´Д`⊂⌒`つ(´Д` )_人__) ))
0830デフォルトの名無しさん
NGNG今VBの方をDLしてみたんだけど、面白かったYO!
0831ヒッキー@プログラミング ◆hky/PGis
NGNGがーん(´ρ`)
>>830
ども、ありがとうございます!
これからもがんばって作っていきます
0832デフォルトの名無しさん
NGNG折れもC勉強しようかと思うんだけど、
コンパイラなどどれがいい?
便乗 保守 呼込 質問 揚
0833デフォルトの名無しさん
NGNG0834ヒッキ-@プログラミング ◆hky/PGis
NGNGどもー。
Cですかー。漏れはWindows派の人間なのでやっぱVCが
(・∀・)イイと思うんですが、もし挫折してしまったら
投資がモターイナイので、フリーのLSI-C試食版などどうでしょうか?
DOS環境に限られますが、勉強ならちょうど良いんではないかと。
構造体・配列・ファイル管理などができるようになってきたら、
gccかボーランドのコンパイラに移行すればまた無料でできます。
0836ヒッキ-@プログラミング ◆hky/PGis
NGNGインラインアセンブラのところでエラー出すんですが何ででしょう…。
あと、makeコマンドでコンパイル→リンクする時も
なぜかエラーが…。
設定の仕方がよくわかりません。タスケテ
0837デフォルトの名無しさん
NGNGとりあえずエラーメッセージを Copy & Paste しろ。
0838デフォルトの名無しさん
NGNG466で考えたことはずっと忘れないように。
> 結論としては、僕的にはコンピュータを内部まで知らなくても、1回ソースを
> 書いたら全ての環境で全く同じソースがコンパイルできるようになったら
> いいなと思います。
例えばJavaはすべてのプラットフォームに同じ土台(JavaVM)を用意することで
その上では同じコードを実行できる。
それもひとつの方法なんだけど、1がこれからもっと規模の大きいプログラムに取りかかるとき、
構造化やオブジェクト指向の考え方を知っておいて損はしないと思う。
ざっと1のVBのソース見た限りでは、プログラムが実行する処理を順番に書いてるだけだよね。
VC版ブロック崩しはブロック、パドルなんかを別ファイルに分けてるから、その辺考え始めてると思う。
確かにブロックやパドルは、それぞれひとまとまりだから分けることが出来る。
でもブロックもパドルもボールも同じ画面に描画される物体だよね。
それぞれ表示すべき座標があり、グラフィックがある。
ブロックに対しても、パドルに対しても、ボールに対しても「表示しろ」と命令すれば
しかるべき位置にしかるべき表示をしてくれるとすれば、理にかなってると思わない?
こういう考え方をすると、ブロック=パドル=ボールは共通の概念をもったものであると考えることもできる。
良くまとまらないけど、オブジェクト指向の考え方に踏み出すきっかけにならないかな…?
#俺も昔ゲーム作って、今の1と全く同じようなファイルの分け方してた(ワラ
0839デフォルトの名無しさん
NGNG今のVC版ブロック崩しではボールやパドルのソースファイルに
HDCやら何やらも一緒に入ってるよね。
で、例えばMoveしたときにHDCに対して絵を送ってやって表示を実現してる。
ボールを画面に表示するプログラムの手順としては間違ってるわけではないが、
ボールは表示されるべき場所(この場合はプログラムのWindowの中)の事まで
考慮すべきかどうか。
VBの時も、VCの時も、「ボール」の振る舞いは「移動する」「反射する」…で変わらない。
ブロック崩しのアルゴリズムも変わるわけじゃない。
変わったのは実装依存の部分。これはVBだったらBitBlt、VCだったらBltToBufとか使ったり。
他にはtimer使ったりイベントが呼び出されたり。
こういうとき一枚ラップ用の関数を定義して、例えば表示ならDraw()の中で
実装依存の関数BltToBufを呼び出したりすると、プログラムが読みやすくなる。
抽象化された概念(言葉)でラップして、実装は内側に閉じこめてしまうわけ。
このようにしておくと、例えば描画エンジンをDirectXに取り換えても書き換える部分はごくわずかで済む(のが理想)。
Drawの内側の実装部分を変えるだけだから。
実際うまく行くように切り分けるのは最初は難しいかもしれないけど、
この考える作業は結構楽しい。
でそれにハマりすぎて何時までも完成品が出来なかったりすることもあるけどな・・>俺。
そんなとき初心に帰ってゴリゴリ書くのもいいなとこのスレ見て思ったよ。
長レスすまそ。
0840ヒッキ-@プログラミング ◆hky/PGis
NGNGアセンブラのとこのエラーはこんな感じです…。
a.c: In function `vsync':
a.c:79: parse error before '{' token
で、中身はこんな感じです。
76:void vsync()
77:{
78: __asm
79: {
80: mov r0, 0x4000006
81: scanline_wait:
82: ldrh r1, [r0]
83: cmp r1, 160
84: bne scanline_wait
85: }
86:}
0841ヒッキ-@プログラミング ◆hky/PGis
NGNGMakeの時のエラーは、
D:\GBA\sample\proto_devkit\proto_devkit>make
gcc -g -O3 -mthumb-interwork -nostdlib -Wall -fverbose-asm -fpeephole -M main.c
> Makedepend.txt
make: /bin/sh.exe: Command not found
make: *** [Makedepend.txt] Error 127
こういうのです。
でも、sh.exeにはパス通ってると思うんですが…
っていうか、sh.exeに渡すファイルがないって言う事でしょうか…。
あ、友達からネトゲーのお誘いが…
>>838さんまた後でレスします
0842デフォルトの名無しさん
NGNG自信無いのでsage
0843デフォルトの名無しさん
NGNGgccのインラインアセンブラの書式じゃないから。
0844デフォルトの名無しさん
NGNGcygwinインストールした?
0845ヒッキ-@プログラミング ◆hky/PGis
NGNGうーん、一応PATHに足したつもりなんですが…
>>843
まじすか?がーん。
まずgccの使い方をもっと覚えた方がいいですよね…
>>844
cygintl.dll cygwin1.dll
っていうファイルは、zipに一緒に入ってたので
入れました。
0846844
NGNGDLLだけじゃなくて、cygwin上の開発環境入れたらかなり大量に入るはずなんだけど。
0847ヒッキ-@プログラミング ◆hky/PGis
NGNGcygwinってコンパイラとは別に用意しないといけないんでしょうか?
pathにはC:\devkitadv\binっていうのを足してます。
devkitadvっていうのがGBA用のgccみたいです。
0848デフォルトの名無しさん
NGNGちなみにmake.exeはそこにあるわけ?
0849ヒッキ-@プログラミング ◆hky/PGis
NGNG0850デフォルトの名無しさん
NGNGmount [ENTER]
mount -s [ENTER]
ってタイプするとなんて出て来る?
0851ヒッキ-@プログラミング ◆hky/PGis
NGNGmount: not found
$ mount -s
mount: not found
0852デフォルトの名無しさん
NGNGpwd [ENTER]
./mount [ENTER]
./mount -s [ENTER]
だとどうよ?
0853ヒッキ-@プログラミング ◆hky/PGis
NGNGで、cygwinのbashからmakeしたらうまく逝きました…。
>>852さんどうもありがとうゴザイマス。
0854デフォルトの名無しさん
NGNGまたプログラムやりたくなったよ。
頑張れー>>1
0855デフォルトの名無しさん
NGNGSHELL=sh
って書いたらたぶん解決してたと思う。
853で普通のcygwinとアドバンス開発環境が同居することになったようだけど、
無用な混乱が起こるような気がします。
PATHの設定とmountの状態でわけわからんくなる可能性がありますぜ。
0856ヒッキ-@プログラミング ◆hky/PGis
NGNGJavaってそういえばどこでも同じコードで動くんですよね。
でもシステム内部をいじるようなプログラムができないっぽい
ですね。やっぱこれからはWebベースのプログラムでないと
駄目なんでしょうか?C#もJavaっぽいし
Webのプログラムができなくてもいいから、いろんなシステム上で
動くコードが書けたら良いとおもうんですが…。
そういえばWindowsのコードって中間コードなんでしょうか?
それともx86系に依存したコードですか?……って調べてみます(わら
>ざっと1のVBのソース見た限りでは、プログラムが実行する処理を順番に書いてるだけだよね。
>VC版ブロック崩しはブロック、パドルなんかを別ファイルに分けてるから、その辺考え始めてると思う。
ファイルを、どこで線を引いて分けるかというのはとても
難しいですねー。とりあえず見た目に違うもので分けました…。
>ブロックに対しても、パドルに対しても、ボールに対しても「表示しろ」と命令すれば
>しかるべき位置にしかるべき表示をしてくれるとすれば、理にかなってると思わない?
そうですよね。
違うところは画像へのポインタと、座標だけですもんね。
>#俺も昔ゲーム作って、今の1と全く同じようなファイルの分け方してた(ワラ
安心しました(藁
やっぱそういう部分も考えないと良くなっていかないですねー。
今までは、ただ動けば(・∀・)イイという感じでプログラムしてました。
後で読めないソースや、再利用できないようなものを書くというのは
あまり良い事ではないですね。勉強になります。
>こういうとき一枚ラップ用の関数を定義して、例えば表示ならDraw()の中で
>実装依存の関数BltToBufを呼び出したりすると、プログラムが読みやすくなる。
この概念はすごい難しいです…。
いろいろ考えを巡らせてみましたが、中身の若干の変更で
他へ移植できるような書き方はなかなか思い付かないです…。
でも、うまくまとまってから作ったら、動きの把握しやすい
ソースになりそうですね。
後、少し疑問に思うことがあるのですが、ソース中の関数が、
WinAPIか自作の関数か分からなくなるときがあるので、
自作の関数に接頭文字を付けようと思いましたが、
全てに付けるにはあまりキレイじゃないし、読み分けするには
どうしようかと思っています。
もう一つ、staticな関数なんですが、他のファイルに公開する
関数と見分けるのがややこしいので、見やすくしたいと思うのですが、
どういう書き方が考えられるでしょうか。
僕的には、staticな関数は1段Tabしてから書いたらどうかと思っています。
そういう書き方は読みやすいですか?
(ソースの最後に、staticだけかためて書くというのも考えましたが、
機能別に書いていくと、ソースの途中に書いた方が良い場合もあったので…
もしかしてこっちの方が読みやすいでしょうか?)
最後に…レス忘れてました(;´Д`)すいません…
0857ヒッキ-@プログラミング ◆hky/PGis
NGNGおー、どもです!
プログラム、やっぱおもろいですよー。
がんばります!
>>855
がーん、まじですか?
後でインストしたcygwinにはパスが通っていないのか、
なぜかアドバンス開発環境のsh.exeからcygwinのコマンドが
実行できないんですよねー。うーん。
makeファイルからコンパイルするとき、イチイチcygwinから
cdで移動して、実行してました。
一回、SHELL=sh書いてみます。さんきうです!
0858デフォルトの名無しさん
NGNGWinAPI かどうかはそのうち覚えるから心配すんな。
でもまぁ自作関数にプレフィクスをつけるのは勧めとくよ。
少なくとも目立つ関数にはな。
関数の static 化はあんまり考えなくていーんじゃねーの。
そこまできっちり考えて作る必要なし。
0859デフォルトの名無しさん
NGNG> いろいろ考えを巡らせてみましたが、中身の若干の変更で
> 他へ移植できるような書き方はなかなか思い付かないです…。
Win32 only だが
表示 GDI, DirectX7
入力 User32.lib (Win32 標準), DirectInput8
サウンド mci, DirectAudio8
組み合わせ可能なコードとかなら手元にあるぞ。C++ だけど。
> WinAPI かどうかはそのうち覚えるから心配すんな。
俺は C++ で書いてるから、Win32 API にはグローバルスコープを示す :: を
つけるようにしてる。
0860838
NGNG一段落ついたらクラスの使い方を覚えるといいよ。
ファイル単位でデータをstaticにしたり関数をstaticにして
スコープを分ける代わりに、クラスを使うと、同じように
データと関数を1セットにまとめることができて、
publicとprivateのキーワードで外部公開するかしないかを選択できる。
>後、少し疑問に思うことがあるのですが、ソース中の関数が、
>WinAPIか自作の関数か分からなくなるときがあるので、
これはクラス(クラススコープ)の導入で解決する。
いま問題になるのは、Win32APIも自作の関数もグローバルなレベルにあるから。
クラスのメンバ関数はそのクラスに属するから、例えばパドルクラスを作れば
Paddle paddle;
paddle.Init();
というように、Init関数はパドルを初期化するんだぜ、ってのが明快になる。
同様に bar.Init() ってのがあっても混乱することはない。
今、PaddleInit() って関数名は、「パドルを初期化する」ものだから、
Paddleという接頭辞によってInitの対象を限定してることになる。
よって方向性は間違ってない。
関数をグローバルスコープにして接頭辞をつけて対処するのは誤り。
>関数の書き方
関数の実装はとりあえずヘッダに書いた順に並べてる。
ここは個人で見やすいようにしておけばいいと思う。
他のファイルから呼び出すときは、ヘッダファイルだけ見れば分かるから。
編集の時はVC++のクラスビューア(だっけ?)で関数名クリックすればジャンプするでしょ。
もしくはヘッダで関数名を右クリックして定義位置を表示。
あと、ソースの書き方は綺麗で好感が持てます。
0861デフォルトの名無しさん
NGNG> 関数をグローバルスコープにして接頭辞をつけて対処するのは誤り。
誤りってことはないやね。確かに C++ で書くなら接頭辞不要だけど、C の場合には
プリフィクスをつけるのは一般的。
Win32API なら wave*, mci* とか UNIX のカーネルなら pmap_*, arp_* など実例は
多数。
0862ヒッキ-@プログラミング ◆hky/PGis
NGNGSHELL=sh でうまく逝きました!
やたら苦労したので、やたら嬉しいです。どもども!
>>858
まだきっちり考えなければ把握できないほどの
規模でもなかったですね…。
よく出てくる関数は目立つ名前にしようかなーと思います。
>>859
GDI→DirectDrawは、だいたい予想つくんですが、
mci→DirectAudioっていうのは想像するのが難しいです…。
どこまで分解したらいいかとか、どういう機能があるかとかを
知らないといけませんね…。
グローバルスコープの::って、左に何か付けるんでしょうか?
右にはAPIの名前ですよね?
0863ヒッキ-@プログラミング ◆hky/PGis
NGNGクラス覚えたら、整理しやすくなりそうですね。
Javaの本ちょこっと読んだんですが、継承やら
多態やらムズカシそうなので理解しないうちに
置いてました…。
Paddle paddle;
paddle.Init();
こういう書き方はすごい見やすいですねー。
また疑問が湧いてきたんですが、パドルの実体を
作るのって、メインループのあるファイルの中で
いいんでしょうか?
>関数の実装はとりあえずヘッダに書いた順に並べてる。
ほおほ、やっぱヘッダの順番と中身の順番が違うかったら
ややこしいですよね。
やっぱ、関数の機能の説明などのコメントは、ヘッダの方に
入れた方がいいですか?
>もしくはヘッダで関数名を右クリックして定義位置を表示。
あ、そんな機能あるんですか!?(;´Д`)
>あと、ソースの書き方は綺麗で好感が持てます。
ありがとうございます。
実際、仕事に逝った時に役に立てるようにもっと
いろいろ書き方考えてみます。
>>861
時と場合によって使い分けるのがいいんですね。
何かに固執して、他の場所で臨機応変に対応できない
ようにならないように気をつけます。
0864デフォルトの名無しさん
NGNG> グローバルスコープの::って、左に何か付けるんでしょうか?
グローバルスコープにある識別子(変数や関数名、enum 値)にアクセスする場合
には、何もつけません。
::CoInitialize(NULL);
みたいに書けば OK。
C だと名前はグローバルスコープ以外には置けませんが、C++ だと namespace
やクラスに閉じ込めることが出来ます。
namespace Block
{
enum { PADDLE_PLAYER1, PADDLE_PLAYER2 };
}
たとえばこんな感じに書くと enum 値は Block 名前空間に属することになるので
Blcok::PADDLE_PLAYER1
と書いてアクセスできます。所属する名前空間が異なれば、同じ識別子があって
も衝突せずに併用できます。
あと、特定の名前空間の識別子を選択的、あるいはまとめて現在のスコープに
導入する方法 (using namespace) があるので、実際にはそれを使うことが多い。
0865838
NGNG誤り、は言い過ぎた。実例上げてくれたとおり。
自分で関数定義するとき、かつクラスや名前空間が使えるとき、
という条件のつもりで書いた。
>>863
>パドルの実体を作るのって、メインループのあるファイルの中で
>いいんでしょうか?
でいいよ。使うところで作る。
他にはゲーム進行を行うクラスを定義して、そのメンバとして
パドル、ボール、ブロックを持たせるやり方も考えられる。
>やっぱ、関数の機能の説明などのコメントは、ヘッダの方に
>入れた方がいいですか?
両方に同じ説明(短文)を書いてる。実装の方にはコードの修正日も。
上手い人の書き方を参考にして、自分がいいと思う書き方でやればいいと思うよ。
複数人で作業する環境だったら、コメントはこう書け、みたいな
規約が決まってるかもしれない。
0866デフォルトの名無しさん
NGNG> 実装の方にはコードの修正日も。
それはバージョン管理ツール入れて、バージョン管理ツールにお任せが良いと
思われ。
私はバージョン管理は CVS、コメントは doxygen で出力できるように Javadoc
形式で入れてる。
0867デフォルトの名無しさん
NGNG同時に三つのブロックに当たったときの動作どうする?
漏れのプログラムの場合、そのまま突き抜けるような
動作になっちまって・・
0868ヒッキ-@プログラミング ◆hky/PGis
NGNG>::CoInitialize(NULL);
>みたいに書けば OK。
ほおほ、そういう書き方があるんですねー。
ネームスペースっていうのは初めて聞きました…。
そんな便利な機能があったとは。
>あと、特定の名前空間の識別子を選択的、あるいはまとめて現在のスコープに
>導入する方法 (using namespace) があるので、実際にはそれを使うことが多い。
?なんか滅茶苦茶ムズカシいんですけど…(わら
using namespaceっていうのは手法のことでしょうか?
それともライブラリみたいなものですか?
>>865
>他にはゲーム進行を行うクラスを定義して、そのメンバとして
>パドル、ボール、ブロックを持たせるやり方も考えられる。
おお、そういう事も考えられるんですね。
なんか、目に見えるものばっかりをクラスに定義しようと
考えてました…。
クラスにクラスを持たせるっていう時は、継承させるんでしょうか?
それとも、実体をクラス内に持たせるという事ができるんでしょうか?
>両方に同じ説明(短文)を書いてる。実装の方にはコードの修正日も。
その方法なら修正時に、実装部かヘッダーか、
どちらを見られても対応できますね。
コードの修正日ってやっぱ必要なんでしょうか?
>上手い人の書き方を参考にして、自分がいいと思う書き方でやればいいと思うよ。
ですね。いろいろ見回って勉強します。
>複数人で作業する環境だったら、コメントはこう書け、みたいな
>規約が決まってるかもしれない。
複数人でやった事ないですけど、そういうルールって
結構重要っぽいですね。
>>866
バージョン管理ツールって、よく聞くんですが、
どういうソフトなんでしょうか?イメージできない…。
>>867
僕のやつも、2つほど一緒に当たると、突き抜けてしまいます(わら
ボールの近くのブロック全て検知して、同時に当たったときは、
進む方向に対してOR演算とかしたらうまく逝きそうな予感…
0869デフォルトの名無しさん
NGNG> ?なんか滅茶苦茶ムズカシいんですけど…(わら
「名前空間」とか使ってる単語が難しいだけで、別に実際に使うのは難しくないって。
namespace Paddle
{
using namespace Ball;
// こうすると namespace Ball の中にある名前を、修飾 Ball:: なしで
// 参照できる
using std::for_each;
// こうすると namespace std にある for_each だけを、修飾 std:: なしで
// 参照できる
}
こんな感じ。
0870ヒッキ-@プログラミング ◆hky/PGis
NGNGそういうのって、関数の引数に指定したりできるんですか?
function(namespace Paddle)みたいに…。
今のところ、enumのパワーアップ版みたいなイメージしてます。
あと、例えばBallには、数値を持たせることはできますか?
0871デフォルトの名無しさん
NGNGひまになったんでなんかゲーム作ろうと思って。
0872ヒッキ-@プログラミング ◆hky/PGis
NGNGういういー。
っていうか、ここは2chなので、漏れに人の考えを
制限する権利が無いんですよね。どぞご自由に。
0873デフォルトの名無しさん
NGNG>>868
クラスにする目安は、意味的、役割的にまとめる価値があるもの。
管理役として、マネージャっていう職があるのと同じ。
クラスを継承するか、所持するかは、例えば
トヨタ車とホンダ車など各社の車を表すのに「車」クラスを継承させる
車の「ハンドル」や「タイヤ」は車が所持する
と考えれば分かりやすいかな。
クラスにクラスを持たせるのはこんな感じ。
Class Paddle {}
Class Ball {}
Class Manager {
Paddle paddle;
Ball ball;
}
>コードの修正日
いつ書いたコードか分かるのは便利。
過去に書いたコードと比較して、スキルレベルの確認ができるから。
0874ヒッキ-@プログラミング ◆hky/PGis
NGNG>クラスにする目安は、意味的、役割的にまとめる価値があるもの。
>管理役として、マネージャっていう職があるのと同じ。
そういうとらえ方なんですねー。
なんか誤解してました…。
>トヨタ車とホンダ車など各社の車を表すのに「車」クラスを継承させる
>車の「ハンドル」や「タイヤ」は車が所持する
おおお、イメージばっちりです!
すごく分かりました。ありがとうございます。
>いつ書いたコードか分かるのは便利。
>過去に書いたコードと比較して、スキルレベルの確認ができるから。
ほおほ、たしかにそうですよね。
僕も修正日とか書くように心がけようと思います。
0875ヒッキ-@プログラミング ◆hky/PGis
NGNG最近、ブロック崩し作ってませんでした…。
GBAにはまりまくりです。
0876デフォルトの名無しさん
NGNG0877デフォルトの名無しさん
NGNG0878デフォルトの名無しさん
NGNG0879デフォルトの名無しさん
NGNG0880デフォルトの名無しさん
NGNG0881デフォルトの名無しさん
NGNG0882デフォルトの名無しさん
NGNGマウスや、ましてやキーボードなんかじゃまったく遊べない。
何か新機軸のアイデアでもあれば別だけど、、、
0883デフォルトの名無しさん
NGNG0884デフォルトの名無しさん
NGNGそれだ!
マウスホイールならいっそ画面を90度回転させるとか。
自機の移動は縦で。
0885デフォルトの名無しさん
NGNGそれって昔のテニスじゃ・・・
0886デフォルトの名無しさん
NGNG0887デフォルトの名無しさん
NGNG自機の10倍くらいに
0888
NGNG0889ヒッキ-@プログラミング ◆hky/PGis
NGNGhttp://www.geocities.co.jp/SiliconValley/2530/car.lzh
GBAで連打するゲーム作ったんで、よろしければ
やってみて頂きたいなぁと。
まだ完成度低いですけど…。
0890デフォルトの名無しさん
NGNG0891デフォルトの名無しさん
NGNGこれでできると思われ。
自分はできました(感動した)。
0892ヒッキ-@プログラミング ◆hky/PGis
NGNGがーn
>>891
お、どもです!
やっぱやってくれる人がいると、すごい嬉しいっす。
今、F-ZEROの地面みたいな画面はどうやって描くか
考え中です。回転の式をうまく使えばできるかなぁとか…
でも、あんなグリグリ動かしたら処理落ちしそうな気もするし…。
あと、回転した後の図形の、当たり判定っていったい
どうするんでしょう。当たり判定の位置を決めるにも、
毎フレーム回転させないといけないんでしょうか。
0893デフォルトの名無しさん
NGNG当たり判定は平面2次元。表示だけ斜めから見てパースつける。イジョ
0894ヒッキ-@プログラミング ◆hky/PGis
NGNGって、よく考えたらそうかも…。道を誤るところでした(;´Д`)
パースって、歪み方がイマイチ想像できないんですが…
うーん、CGの本読んでみます。ありがとうございました。
0895デフォルトの名無しさん
NGNGF-ZEROとかの2軸回転はメガデモ系のサイトで調べるといいと思うよ。
基本的な考え方はそれでわかるかと。
0896ヒッキ-@プログラミング ◆hky/PGis
NGNGほおほお。メガデモ系ですか。
処理的には2軸回転を使うんですねー。
検索してみます。ありがとうございます。
0897ヒッキ-@プログラミング ◆hky/PGis
NGNG…ようやく発見しますた(;´Д`)
0898デフォルトの名無しさん
NGNG良かったな
てかこのスレだいぶ廃れてきたような気がするのぉ…
0899デフォルトの名無しさん
NGNG0900ヒッキ-@プログラミング ◆hky/PGis
NGNG教えて頂いたことを、すぐにコードに反映させる
ような感じで作っていけばよかったような…。
ブロック崩しも、しばらくやってませんし…。
VCで作るんだったら、クラス化する方法を
ある程度覚えてからの方が良いような気がして、
現状のまま作る事に、ちょっと気が重くなっていました。
それから2軸回転、難しくてまだ把握できません…。
0901デフォルトの名無しさん
NGNG考え方は2Dの画像回転と変わらないよ。逆に写像してライン引くって感じかな。
思いっきりそれを解説したメガデモ系サイトのコンテンツをローカルに保存した
のがあるんだけど…。
0902ヒッキ-@プログラミング ◆hky/PGis
NGNGほおほ…2Dの回転と同じですか。
なんか、ひらめきそうなので一回VBで作ってみようと思います。
>897のサイトで、なんとかがんばろうと思います。どもです。
0903デフォルトの名無しさん
NGNGこのまえGBA買ってきたからGBAでやれたらなーって思って。
ところでGBA用のコンパイラってどこか置いてあるの?
できれば無料のところを紹介してほしいなぁ。
クレクレ君でスマソ。こんな地下にあったらスレが進んでるかどうかわからないよー(;´д`)
0904デフォルトの名無しさん
NGNG0905デフォルトの名無しさん
NGNGリロードしたらあげられてた…。
0906ヒッキ-@プログラミング ◆hky/PGis
NGNG実機で実行するには、FA-LINKERっていうのがいります。
値段、高いですが…
http://www3.importya.com/Game/gba.htm
あと、コンパイラはDevKitAdvanceというのがあります。
http://www.io.com/~fenix/devkitadv/
ここのサイトに、コンパイラの使い方とかの解説が
日本語で書いてあります。
http://isweb38.infoseek.co.jp/computer/j-gbadev/
0907デフォルトの名無しさん
NGNGさんくすですー
さすがに「ヒッキー」だけあってレスが早いですね(w
もう残すところ95レスとなりました、新スレ立てるなら、URLはっといてね。
0908デフォルトの名無しさん
NGNGというか、そんなもの、APIなんか使う必要性ないだろう。
VBだったら、VB6.0の評価版(無料)でもダウンロードしてやれば十分。
でも、プログラムのことがわかりかけた最初のころに、
いろいろ作りだすのが楽しいんだよな、と昔を思い出したりする。
0909デフォルトの名無しさん
NGNG0910デフォルトの名無しさん
NGNG0911デフォルトの名無しさん
NGNG0912ヒッキ-@プログラミング ◆hky/PGis
NGNG0913デフォルトの名無しさん
NGNGF-ZERO出来たか?w
0914ヒッキ-@プログラミング ◆hky/PGis
NGNG何が2軸なのか、わかりませんでした…
DIBで、実験中です。
0915デフォルトの名無しさん
NGNGおう。そりゃヨカタ。
マリオカート@2ちゃんキャラで一つタノムw
0916デフォルトの名無しさん
NGNG0917ヒッキ-@プログラミング ◆hky/PGis
NGNG今のところ、こんな感じです。
まだゲームまで、程遠いような…
0918デフォルトの名無しさん
NGNG動かしてみた。マップチップみたいにもなってるしいいんでねぇか?
そろそろVBを卒…w
0919ヒッキ-@プログラミング ◆hky/PGis
NGNGお、どもです。
VB、なんとなくやりやすいんですよ。
VCは、MFCを使えないので、GUIのフレームを作るのが
めんどくさかったり…。
Formをリソースで作って、それを管理すればいいんですけどね…。
0920デフォルトの名無しさん
NGNGまぁ,サンプル程度ならVBでもいいかも知れん…。
ぬるま湯ばかりでもイカンよw
0921デフォルトの名無しさん
NGNG今のところVBなので1さんもいかが
http://game.2ch.net/test/read.cgi/game/961407432/
0922デフォルトの名無しさん
NGNG( 家にコンパイラないんだよな。 )
0923デフォルトの名無しさん
NGNG(コンパイラ無料のがたくさんあるし。)
0924デフォルトの名無しさん
NGNGVB.NETでよければコンパイラだけは無料であるぞ。
http://www.microsoft.net/japan/msdn/netframework/downloads/sdk.asp
.NETやるならC#のほうを薦めるけど。
0925デフォルトの名無しさん
NGNG( ちょっと興味があるんだなぁ…… )
( 家は通信回線遅いし、雑誌の付録でも探そ… )
0926デフォルトの名無しさん
NGNG正直買おうか迷ってる。
0927デフォルトの名無しさん
NGNG0928デフォルトの名無しさん
NGNGだから.NET Framework SDK(以下略
0929ヒッキー@プログラミング ◆hky/PGis
NGNGなんか、しばらく凹んでました…。
今回ちょっと奥行き感を出してみました。
あと、速度を上げる為に視点の回転機能を外しました。
0930デフォルトの名無しさん
NGNGVCもあるんですか。ありがとう。
0931デフォルトの名無しさん
NGNGおう。凹んでないでガンバレ。明るく逝こうw
次は地面回転と3Dスプライト(ビルボードって言った方がイイカ?)だな。
速度は…前のもサクサクダタのでワカラン・・・
0932デフォルトの名無しさん
NGNG0933デフォルトの名無しさん
NGNG0934デフォルトの名無しさん
NGNG0935デフォルトの名無しさん
NGNG0936デフォルトの名無しさん
NGNG0937デフォルトの名無しさん
NGNG0938デフォルトの名無しさん
NGNGひきプロたん(;´Д`)ハァハァ
0939デフォルトの名無しさん
NGNG普段とは考えられないひきプロたんに萌え
0940(-_-)さん
NGNG(∩∩)
0941(-_-)さん
NGNG0942デフォルトの名無しさん
NGNGひきプロHP GOGOGO!!
http://www.geocities.co.jp/SiliconValley/2530/
0943デフォルトの名無しさん
NGNG0944デフォルトの名無しさん
NGNG0945to:sage
NGNG>>832
とか.
# 目茶遅レス
日本語もばりばり通って, LSI-C試食版のように制限が無い,
Borland C++ Compiler 5.5.1が良いと思います.
56kbpsな環境...懐かしいですね.
そんな環境で毎日chat三昧で月に3万とかかかって何度も怒られました(ぉ
Irvineとかでdownloadしては如何でしょうか.
尚,BCCはきちんとreadme読んで, bcc32.cfg と ilink32.cfgを設定しなきゃ
ならないので注意.
あとは autoexec.bat いじるなり, マイコンピュータのプロパティ, 詳細で
環境変数をいじるなりすれば, OK.
www.borland.co.jp/cppbuilder/freecompiler/
>>1
お体悪くしないようにがんばってくださいね(笑
0946デフォルトの名無しさん
NGNGageてしまた. スマソ.
0947デフォルトの名無しさん
NGNGsetbccとかを使えば設定は楽だよ。
0949デフォルトの名無しさん
NGNGまだこのスレをお気に入りに入れている俺もアレかも試練が、レスありがと。
結局 Borland C++ 5.5.1 にしますた。
当時はirvineなんて知らなくてがんばって落としたけど(w
もうすぐCATVがくるんで、ソレまでのんびりCの勉強をしてます。
|尚,BCCはきちんとreadme読んで, bcc32.cfg と ilink32.cfgを設定しなきゃ
|ならないので注意.
|あとは autoexec.bat いじるなり, マイコンピュータのプロパティ, 詳細で
|環境変数をいじるなりすれば, OK.
googleで出てきた設定ツールを使ったので案外すんなりできた。
がんがって、いまbcc32のコンパイルのオプションと、
リンクの方法を勉強中です...
#雑談スマソ
0950デフォルトの名無しさん
NGNG0951aa
NGNG正直、APIを使わなくてもできる。
使うのはフィールドとなるピクチャーとシェイプ(図形)
だけでいい。
0952デフォルトの名無しさん
NGNG0954デフォルトの名無しさん
NGNGこのスレも急浮上。
0955デフォルトの名無しさん
NGNG0957デフォルトの名無しさん
NGNGp: ピクチャボックス t: タイマ(Interval=50)
e(): ブロック f: 自機 b:ボール (いずれもShape)
fは背景黒&不透明, bは透明, e()は不透明
Dim n,w,h
Sub Form_Load():For Each V In e:V.BackColor=vbWhite- _
V.Index:Next:n=e.UBound+1:w=-100:h=-100:End Sub
Sub p_KeyDown(k As Integer, S As Integer)
f.Move f.Left+100*((k=37)-(k=39)):End Sub
Sub t_Timer():b.Move b.Left+w,b.Top+h:w=IIf(Abs(p.Width/2-b.Left)>p.Width/2, _
-w,w):h=IIf(b.Top<b.Height,-h,h):If b.Top>p.Height Then MsgBox "lost":End
c=p.Point(b.Left+b.Width/2,b.Top+b.Height/2):If c>&HFFF000 Then h=-h: _
e(vbWhite-c).Visible=0:n=n-1:If n=0 Then MsgBox "complete":End
h=IIf(c=vbblack,-h,h):End Sub
0958デフォルトの名無しさん
NGNG雰囲気の読めない君は7行スレに行きなさい
0959デフォルトの名無しさん
NGNG>>949?
>>950どっち?
0960952
NGNG0961デフォルトの名無しさん
NGNG0962デフォルトの名無しさん
NGNG0963ひきプロ
NGNGまたVBでゲーム作ろうとしてます、どうでしょか
0964(-_-)さん
NGNG0965(-_-)さん
NGNG出来るのかもしれないが、分かる限りで設定してみた感じでは無理だった・・・・
0966(-_-)さん
NGNG一応保守
0967(-_-)さん
NGNG0968(-_-)さん
NGNGなかなか良い感じに進んでいるようです・・・
こんな勝手な事して怒られたりしないだろうか、と思いつつ、
いつも通り保守
0969(-_-)さん
NGNG0970鍋田保
NGNG| ̄ ̄( ゚Д゚) ̄ ̄| < ぼく1000取り王の鍋田保!
|\⌒⌒⌒⌒⌒⌒\ \
| \ \  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\ |⌒⌒⌒⌒⌒⌒|
\ |_______|
0971鍋田保
NGNG| / | |│
|./ | |│ ∧_∧
[______.|_|│ (´∀` )__
| _|__|_i‐┴-、(σ、、⊂ヽ_)
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|__)||
| ̄ ̄)
| ||
0972鍋田保
NGNG/:::::::::::::::;;:::::::::::::::::\ i::|:::i::/l/ i;::ト、:、:::i:::::::::::::::i /,r‐''''"´ ̄ ̄,ヽ
/::::::::;::::;;:::/ ヽ;::i、:::::::::::\ |::i/レ'-i'' 'ヽi-ヾ,ヽ!:::::::::::::l /,./ //::゙:ヽ、
. i:::::::::/レ' リ ヽ;lヽ::;::::::::::\:ハ -‐- -─- i::::::::::::::l./〃L__,,.. ェ=''‐':r、:::::::ゝ
.|::::::/.,r;==; ,r==;ヽ:::::::| \:l| | | | |:::::::::/ !::::::::::::::::::::::::::::::/!:!'|'iヽiヾ!
. |:::::| { i::::::::i i::::::::i } i::::::| \ | r---、! l,.!:::::/ !:::::::::::::::::::::::::::::i' リ _゙、'
. |:::::|. ' io:::ノ. io:::ノ ' |::::::| \'-'=,‐,='r''i~ / |::::::::::::::::::::::::::::::! ‐''´ `''!
. |::::::i ,__'__ i:::::::| ∧∧∧∧∧ .|:::::::::::::::::::::::::::::::i 〃 __,. l
. |:::::lヽ ('⌒':) /!::::::| < 鍋 > l::::::::::::::::::::::::;;:::::::'、 '-'/
. |:::::|;;;;;`'‐、.,_'ー‐' , ‐'";;;;|:::::::| < 予 > |:::::::::::::::::::::::l ,>‐''" ̄ ̄ ̄
──────────────<. 田 >─────────────
0973鍋田保
NGNG:::::::::://::/' |:::/ | 'i::::l'、;:::::::::::::::::..... i.< の > r '、.ノ ‐‐- 、
:::::::/,.i::/‐-レ' | 'i::| i::::::;;::::::::::::::::<. !!!. > / ヾ. ゝ \
::::/ ',,,,,,,, | ''''i:|''‐i;:::| i::::::::::/ ∨∨∨∨∨ \ / /__// ヽ
::i /,:‐-、 -リ‐-、';|ヽ!:::/::;::::/l::/ ヽ::L';:::i:::::::\// / 〇 //| ./l !
:| l i::::::::::l r'''''':、.ヽ /:::/ l/‐:レ' ';:L.ヽ:!`、::::::\ /l ' |/ .レl /
| 'r‐j:::i !:::::::::::l /::::/./,'::::::::::i i::::::::::iヽ.ヽ:::::::i\/ l へ 〇ノ /
! `''''" 'iつ:::/. ,'::::l {: l::::::::::::! |:::::::::::l i |::::::::|. \ 、_ ノ //
:':、 、 / i::::::| ' l○:::/ l○::::/ / |:::::::::! \ ,--‐'/
0974鍋田保
NGNG,. -- 、
.,:',ィ;ノ、!;::':,
.i::l'O Oi::i
.l::ト、.ヮ,.ノ::!
⊂ ̄ ̄~⊃
/ \
|〜〜〜〜|
|〜〜〜〜|
\ ./
0975デフォルトの名無しさん
NGNG0976デフォルトの名無しさん
NGNG0977鍋田保
NGNG/:::::::::::::::::::::::::::::ヽ
/::::::::::::ハ::::;:::::::::::::::::゙:,
,'::::;i:/レ' ヽiヽ:::::::::::::::::!
l::::|'r,:=; ,:=;、';i:::::::::::::!
.,r'‐;|.l !::::i i:::::i l |::::::::::::|
,'.三ミi 'ー'゙ 'ー'゙ |:::::::::::::| 鍋田保1000やで。
| 'ri''ヾ:、 r‐┐ ,.|::::::::::::::| 鍋田保1000とるで
l |i,__!:>'=''r‐''".i:::::r、:::::|
! l,|: |" ゙、'、 ;:/::;/ ヽ:|
l! |大" `''"/'"' ヽ
! | ヽ| 、i ,. イ'
! ' /! l,/ |
0978鍋田保
NGNG,.‐'´ `''‐- 、._ヽ /.i ∠,. -─;==:- 、ゝ‐;----// ヾ.、
[ |、! /' ̄r'bゝ}二. {`´ '´__ (_Y_),. |.r-'‐┬‐l l⌒ | }
゙l |`} ..:ヽ--゙‐´リ ̄ヽd、 ''''  ̄ ̄ |l !ニ! !⌒ //
. i.! l .::::: ソ;;:.. ヽ、._ _,ノ' ゞ)ノ./
` ー==--‐'´(__,. ..、  ̄ ̄ ̄ i/‐'/
i .:::ト、  ̄ ´ l、_/::|
! |: |
ヽ ー‐==:ニニニ⊃ !:: ト、
おれたちはとんでもない思い違いをしていたようだ。これを見てみろ。
まず「鍋田保」を英字で表記する
『NABETATAMOTSU』
これを逆にすると、
『USTOMATATEBAN』
そしてこれを更に日本語に直すと
『ウストマタテバン』
鍋田保と言う事を考えれば末尾に『1000取り王』を加えるのが当然だ。
すると導き出される解は
『ウストマタテバン1000取り王』
そして最後の仕上げに意味不明な文字『ウストマタテバン』
これはノイズと考えられるので削除し残りの文字を取り出す。
するとできあがる言葉は・・・・・・『1000取り王』。
つまり!『1000取り王』とは『まさに鍋田保』を表す言葉だったのだ!!
0979鍋田保
NGNG/:::::::/::/::ヽ::i:::::::
/::::/::/l:/ |::|_!::i: このスレも鍋田保が1000だ…
l::::レl/`` '´l:! |::|
|::::| ┃ ┃ ゙i:!
|:::j. ┃ ┃
|::/
|〈 __ ∪|
|:::ヽ. L...__) |:
|:::::::::゙ヽ、 _,、-'゙|:
|:::::::::|i::::i::フ|"´ |::
|:::::::::||:/ /| |::
.!:i::::::| /__---/|::::
〉ト、::| / / |::::
r' | ヾ! / / ト//
0980鍋田保
NGNG0981鍋田保
NGNG,rn
r「l l h
| 、. !j
ゝ .f _
| | ,r'⌒ ⌒ヽ、
,」 L_ f ,,r' ̄ ̄ヾ. ヽ.
ヾー‐' | ゞ‐=H:=‐fー)r、)
| じ、 ゙iー'・・ー' i.トソ <鍋田保がおまえら拉致して1000取るニダ
\ \. l、 r==i ,; |'
\ ノリ^ー->==__,..-‐ヘ___
\ ノ ハヽ |_/oヽ__/ /\
\ / / / |.
y' /o O ,l |
0982デフォルトの名無しさん
NGNG0983デフォルトの名無しさん
NGNGhttp://gamble.2ch.net/test/read.cgi/keiba/1019217537/l50
0984鍋田保
NGNG(´ ⌒`) ポッポー !
l l
カタカタ ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
(・∀・#)< また鍋田保が1000だあ!
_| ̄ ̄||_)_\__________
/旦|――||// /|
| ̄ ̄ ̄ ̄ ̄| ̄| . |
|_____|三|/
0985鍋田保
NGNG/\⌒ヽペタン
/ /⌒)ノ ペタン
∧_∧ \ (( ∧_∧
(; ´Д`))' ))(・∀・ ;)
/ ⌒ノ ( ⌒ヽ⊂⌒ヽ
.(O ノ ) ̄ ̄ ̄()__ )また鍋田保が1000とるんですね
)_)_) (;;;;;;;;;;;;;;;;;;;)(_(
0986鍋田保
NGNG∩_∩∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ´∀`)/< 先生!鍋田保が1000取ると思います!
_ / / / \_____________________
\⊂ノ ̄ ̄ ̄ ̄\
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0987鍋田保
NGNG,.‐'´ `''‐- 、._ヽ /.i ∠,. -─;==:- 、ゝ‐;----// ヾ.、
[ |、! /' ̄r'bゝ}二. {`´ '´__ (_Y_),. |.r-'‐┬‐l l⌒ | }
゙l |`} ..:ヽ--゙‐´リ ̄ヽd、 ''''  ̄ ̄ |l !ニ! !⌒ //
. i.! l .::::: ソ;;:.. ヽ、._ _,ノ' ゞ)ノ./
` ー==--‐'´(__,. ..、  ̄ ̄ ̄ i/‐'/
i .:::ト、  ̄ ´ l、_/::|
! |: |
ヽ ー‐==:ニニニ⊃ !:: ト、
おれたちはとんでもない思い違いをしていたようだ。これを見てみろ。
まず「鍋田保」を英字で表記する
『NABETATAMOTSU』
これを逆にすると、
『USTOMATATEBAN』
そしてこれを更に日本語に直すと
『ウストマタテバン』
鍋田保と言う事を考えれば末尾に『1000取り王』を加えるのが当然だ。
すると導き出される解は
『ウストマタテバン1000取り王』
そして最後の仕上げに意味不明な文字『ウストマタテバン』
これはノイズと考えられるので削除し残りの文字を取り出す。
するとできあがる言葉は・・・・・・『1000取り王』。
つまり!『1000取り王』とは『まさに鍋田保』を表す言葉だったのだ!!
0988鍋田保
NGNG∧∧ ∧_∧
(,,゚∀゚) ( ´∀`) o <鍋田保がまた千とるんだよね
/ | ( づ_,..................,____
〜OUUつ _,,...!-‐'''" ̄  ̄~`''ー-.、_
,,r‐'" ,r-ー、..,,,,r''""゙`ヽr-、,、_ ~`ー、
,r''" r'~゙ヾ'" " ヽ,_ ゙ヽ,
,r" ,r"~ `'ヽ,、_ ゙:、
,i" r'" ゙''j ゙:,
,! ,i'" _,,,,,,,,_ _,,,.___,., __,、, "ヽ, l,
| ,r'.;:'"~:::"::::::::::::::~`''''ー―::::'''''"::::::::::::::::~~::::::::゙''"`ー:'''':、 |
i, ,r'::r:::::ヾ;::::::::::ヾ;;;;;ソ::、::ソ:::::(;;;;シ:::ヾ::::::,r':,r、:::::::::::::::::::::::::::゙i ,!
゙i !;:::::ヽ'''::::::::::::::::::::::::::::::::::::::シ:ヾシ:::::::::::::::〉::::::::'''''シ:::::::::::::::::ノ ,:'
゙i、 ゙i、:::::::::〈:::::::::ヾ:::::::::::::::::::::::`ー''"::::::::::::::::::::::::::::::::::::::::::::,r" ,r'
゙ヽ、゙ヾ::::::::::::::::::::::::::::::::::::::::::::::ーミ;;;:::::::::::::::::::::::::::::::::::,,r'" ,r'
゙ヽ、~゙ヾ;:::::::::::::::::::::く:::::::::::::::::::::::::::::::::::::::::::::::,,,r''",,r''"
0989デフォルトの名無しさん
NGNG0990デフォルトの名無しさん
NGNG0991鍋田保
NGNG/:::::::/::/::ヽ::i:::::::
/::::/::/l:/ |::|_!::i: このスレも鍋田保が1000だ…
l::::レl/`` '´l:! |::|
|::::| ┃ ┃ ゙i:!
|:::j. ┃ ┃
|::/
|〈 __ ∪|
|:::ヽ. L...__) |:
|:::::::::゙ヽ、 _,、-'゙|:
|:::::::::|i::::i::フ|"´ |::
|:::::::::||:/ /| |::
.!:i::::::| /__---/|::::
〉ト、::| / / |::::
r' | ヾ! / / ト//
0992鍋田保
NGNG/ ) ♪
( /~⌒⌒⌒ヽ )
( ξ 、 , |ノ
♪ (6ξ--―●-●|
ヽ ) ‥ ) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/\ ー=_ノ < よう♪鍋田保が1000だぜ
|∪ ∧) \________________
(( | \ ♪
0993デフォルトの名無しさん
NGNG0994デフォルトの名無しさん
NGNG0995鍋田保
NGNG(´ ⌒`) ポッポー !
l l
カタカタ ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
(・∀・#)< また鍋田保が1000だあ!
_| ̄ ̄||_)_\__________
/旦|――||// /|
| ̄ ̄ ̄ ̄ ̄| ̄| . |
|_____|三|/
0996鍋田保
NGNG人 ││ 鍋\ 鍋\
ノ二\ ナ ゝゝ V 鍋鍋鍋 鍋\ 鍋\
/ / 乙 つ O 鍋\ 鍋\ 鍋\ 鍋\
鍋鍋鍋 鍋\ 鍋\ 鍋\ 鍋\
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\
鍋鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋\
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ 鍋鍋鍋 \
鍋\ 鍋\ 鍋\ 鍋\ 鍋\ \\
鍋\ 鍋\ 鍋\ 鍋鍋鍋 \
鍋\ 鍋\ 鍋\ \\\
鍋\ 鍋鍋鍋 \ ┌┐ ┌┐
鍋\ \\\ ┣━┳┃┃ ┃ ││ ││
鍋鍋鍋\ ┃ ┃┃┃ ┣┓ ━╋ ━╋ V V
\\\\ ┛ ━┛ ┃ ┏┫ ┏┫ O O
0997デフォルトの名無しさん
NGNG0998鍋田保
NGNGr「l l h
| 、. !j
ゝ .f _
| | ,r'⌒ ⌒ヽ、
,」 L_ f ,,r' ̄ ̄ヾ. ヽ.
ヾー‐' | ゞ‐=H:=‐fー)r、)
| じ、 ゙iー'・・ー' i.トソ <鍋田保がおまえら拉致して1000取るニダ
\ \. l、 r==i ,; |'
\ ノリ^ー->==__,..-‐ヘ___
\ ノ ハヽ |_/oヽ__/ /\
\ / / / |.
y' /o O ,l |
09991000!
NGNG1000イカ臭い童貞鍋田保は氏んでね。
NGNG;;i::::;;:::i;;;;ヽ:::;ヽ-、'、 `~ 'i;、 i :::::i'''~´ ::
:;:i;;;;'、;ヽ;;;;;i、ーiヽ.ヽ 、 i、i ,,、-‐'''''ー--、-、 ヽ :::::'、;;ヽ、 ::::
;;:i::i;;ヽ:;;;ヽ;;;;i;i '//'"、 `';'~^ .i ヽ、、-‐'''"´~^"´_、-'''~"~ ̄`'''´`''::、_ヽ、 ::: ::::'、;;;;ヽ ::::
ー、;;ヽ;;ヽ;;;;ヽi、':i i,:;' / ''´'' _、,-、-‐‐'''''''''ー-、'''`/´ ヽ`、 ヽ :::::: :::::::::;::;;;; :::
`''ー、,,;;、;;;ヽ、`i' '` /;'ー'´' `''ー :::: ,,,i、、ヽ ヽ、 :::::: :::::::::;::::;;; ::
`''ー-、;;`''ー--‐‐‐/"/´ :::::: ` 、:::::_、-‐''~´''''ヽ-'ー-、,,,ヽ :::: ::::::::::::i;:::i:::
`''ー-、,ヽ /´ /:i :::,,、--------、,''"´ヽ;;ヽ;;;;;::::::'ヽ::ヽ:ヽ::i. :: :::::::::::ノ::/'''
、 `''"、_//i ::ノ:::/::::::i::::i;;;::::::::::::i、::::'、::i、:;;;;;;::::;;ヽ:'、::::i :::::::::::/''":::::
''、, `''ー、,_ ::/::/';;;;、-‐:、:::ヽ::;;;;;;;;;、ヽ;;;;ヽ;;ヽ;;;;;;;;;;;;;;i:i;;;;;'、 :::::::::/:::
`-、 `ー'''/`'ー''ー、__;;;;;;;_、-‐'''''"";;;;;;;;_,,,,,,、-‐‐‐‐‐‐--、,,,,/ヽ :::::::::::ノ :::
ヽ, ヽ、 i. `、 ヽー、;;;;;;;;;_、-‐''"´ :::::: ::::::~`ヽ、,,、、-‐'''"::::
ヽ ヽ, '、、 ヽ '、 `、_ :::: ::::::::::/:::::::
ヽ:: `''"ヽ i `、 ヽ`'ー、 :::::: ::::::/::
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。