トップページ⇒tech
1001コメント487KB

貴様ら!ブロック崩し作るので見てください

レス数が1000を超えています。これ以上書き込みはできません。
0001ヒッキー@プログラミングNGNG
VBでWinAPIを使う方法がわかってきたので
作りたくなりました。

Bitbltなど使う予定ですが、細かい技術がないので、
小出しにプログラムしようと思います。
(タマが動くだけとか、キーボードで自機を動かすだけとか)

オナーニスレだけどよろしくね。
0002デフォルトの名無しさんNGNG
名スレの予感!
0003デフォルトの名無しさんNGNG
オナニでもがんばれYO!
0004デフォルトの名無しさんNGNG
「完成しない」に3万5000薬師丸ひろ子
0005ヒッキー@プログラミングNGNG
この前、軽くやってみたんですが、
タマが45度以外の方向に進むのがどうやればいいのか考え中です。

三角関数使って、傾き計算するだけでいいですかね?
とりあえず今からやってみます。
0006デフォルトの名無しさんNGNG
がんばれ。
ただ、その前に物理の勉強が必要だな。(藁
0007ヒッキー@プログラミングNGNG
あ、ヤパーリ物理の勉強しないとダメですか。

高校の数学もろくにできてないんで、難しいです。
0008デフォルトの名無しさんNGNG
三角関数?簡単なブロック崩しだったらそんなの使わんぞ
壁の反射のヒントは「ビリヤード」かな?
0009デフォルトの名無しさんNGNG
ヒント:直角で構成された世界では、玉の角度が変化するのは動いている物体に
あたった瞬間だけ。
0010デフォルトの名無しさんNGNG
てめぇ!拝見させていただきますゴルァ
00118NGNG
つーか、玉の軌道をX軸で反転すれば問題なし。
0012ヒッキー@プログラミングNGNG
>>8
ビリヤードですか…苦手です。反射がイメージできない…。

>>9
角度の変化は動いている物体にあたった瞬間だけですか。
ほおほお。

>>10
ゴルァ!よろしくお願いします。
00138NGNG
あ、Y軸軌道であればX軸を中心に軌道反転、
X軸軌道であれば、Y軸を中心に反転だな。

誤りゴメソ
00148NGNG
ttp://www2.makani.to/akutoku/upload/dat/1004858247.bmp

こんな漢字?>1氏
0015ヒッキー@プログラミングNGNG
>>14
おお、すばらしい手書きの画像をありがとうございます!
そういえばそういうの習いました…。

www.geocities.co.jp/SiliconValley/2530/block01.zip
↑ちょっと埋まってしまっておかしいですが、
 評価よろしくお願いします。ソース付き。
 いまんとこ45度です…
0016デフォルトの名無しさんNGNG
 まあ、ビリヤードは跳ね返り係数を考慮しないといけないけど、ブロック
崩しならいらないかな。
 なので、>>13に加えて動いてる自機にあたったときに、どういう処理を
するかだね。
0017デフォルトの名無しさんNGNG
>>15
ど、どうって。もっとおっきくしよーよ。
くらいしか・・・(汗
00188NGNG
いやーVBワカンネ(藁

しかし、頑張ってプログラム作っている1氏に漏れはカンドーした!
Cが少しでもわかるなら、直線描画のソースやるけどいるか?
始点と終点入れるとライン描画する関数なんだけどさ、
ブロック崩し作るなら、この知識は絶対必要にナルヨ!
Cわからんっていうなら、文章形式で説明スルヨ
0019ヒッキー@プログラミングNGNG
>>16
跳ね返り係数ですか。あとでビリヤード系のページ探して
見てみますね。ありがとう。

>>17
たしかに小さすぎた。でかくしてみます。

>>18
おー、ありがとうございます。
実は、Cはちょこっとやってるのですが、なにぶん、DOS窓で
動くのしか作れないもので…VESAのライブラリ拾って16bit色
出してみたいと思いましたが、英語の文書が読めなくて挫折しました。
ソースいただけるならかなり嬉しいです!
0020デフォルトの名無しさんNGNG
「貴様ら!」と来て、「見てください」と突然丁寧になるのにワロタ
0021デフォルトの名無しさんNGNG
つぎはとりあえず、キーボード入力でバーを動かすプログラムかな?
00228NGNG
>1氏

ttp://www2.makani.to/akutoku/upload/dat/1004860590.txt

これね。10分後には削除するのでお早めに。
0023ヒッキー@プログラミングNGNG
>>22
いただきました。どもども。
じっくり読ませていただきます。

>>21
今がんばって製作しております。
0024ヒッキー@プログラミングNGNG
www.geocities.co.jp/SiliconValley/2530/block02.zip

一応キーボードで動くようになりました。
しかしZキーとXキーです。
当たったときの跳ね返り処理はまだないです。
00258NGNG
次はバーの当たり判定とバー移動の狡猾化だな。

当たり判定は、最初は難しく考えずに、ボール画像の底辺の座標とバー画像の上辺が
交わっている時に、ボール軌道を壁と同じ処理にぶち込めばいいだけだ。

ガンバレ
0026デフォルトの名無しさんNGNG
玉の速度をX成分Y成分に分ければヨシ。
考え方の詳細は物理の教科書で力学部分を参照。
跳ね返り係数はまず跳ね返り出来たときでいいんじゃない?
0027デフォルトの名無しさんNGNG
跳ね返りのとき、単に速度符号を反転するだけだと
振動しまくって壁から抜けられなくなるときがあるので注意。
0028デフォルトの名無しさんNGNG
http://www.geocities.co.jp/HeartLand-Keyaki/7104/oha/free_8.htm
ここの、タキオンブロックっていうのを参考にしてみてください。面白いですよ。
0029デフォルトの名無しさんNGNG
お前頑張ってるので鯖を提供してやる。
ttp://takuomix.homeip.net/
0030ヒッキー@プログラミングNGNG
www.geocities.co.jp/SiliconValley/2530/block03.zip
次、うぷしました。なんとかバーから跳ね返ることに成功。
しかしたまに失敗します…

>>25
参考にさせていただきました。

>>26
ほおほお。了解しました。
物理の教科書…あるかな。

>>27
うい〜。次に実行ファイル作るとに考えてみます。

>>28
DLしてみますね。

>>29
まじですか?ありがとう。

ちょっと飯食ってきます
0031仕様書無しさんNGNG
>>5
> この前、軽くやってみたんですが、
> タマが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
>>1
とりあえず、「ブレセンハム」って言葉を検索してみろ。
0033デフォルトの名無しさんNGNG
ん。スレタイトルとは裏腹に良スレage
0034爺NGNG
>>31
昔の元祖ブロック崩しはそんな高尚なことやってなかったと思うが、、、
0035デフォルトの名無しさんNGNG
>>34
それは、ただ貴方が知らなかっただけだと思われ(w
0036  NGNG
>>31
それ、全然参考にならんって。(ワラ
玉の動きは角度とスピードから計算するのがヨロシ。
x = x + speed * cos(angle)
y = y + speed * sin(angle)
floatで保存しておいて、画面に描く時にintに変換せよ。
0037デフォルトの名無しさんNGNG
>1
テメェ!早く拝見させてください
0038デフォルトの名無しさんNGNG
考えてるはずだ!
角度とか。



ごめん。言ってみたかった。
0039デフォルトの名無しさんNGNG
うおぉ・・・・、初めてこのスレに気づいたが、
なんだかプログラム始めたばかりの自分を思い出すぜー!
アップしてあるアプリとか見ても、なんだか初々しくて感動するぜ!
俺にもこんな時代があったなぁ。
1さん頑張れよぉ。
0040デフォルトの名無しさんNGNG
俺もVBで肩身が狭いので、1を何気に応援したい。

キー入力について(既に知ってたらごめんね)

Private Sub Form_keydown(KeyCode As Integer, Shift As Integer)

Ebd Sub
でキー入力イベントつかってるよね?

ここで引数の KeyCode に入力されたキーが入ってて、
上下左右のキーを押した場合、
vbKeyUp
vbKeyDown
vbKeyLeft
vbKeyRight
っていう値がそれぞれ入ることになってる。

だから、
If KeyCode = vbKeyUp Then 何他羅漢多良
っていう判別式をかけば、上下左右のキーで移動処理が可能になるよ。
ほかの動作キーにもそういう値があるからヘルプで確認してみて。
ついでに俺も初心者だ。
0041ヒッキー@プログラミングNGNG
>>31
ほお、そうですよね。XとYを同時に足したら1.414倍になりますね…。
リンク先のページ、参考にさせていただきます…が、読めるかな。
あ、ソースはCか(藁

>>32
検索してみました。
割り算使わない&整数のみで可能ですか。ゲームに向いてそうですね〜。
できたら実装したいです。それにしても意外とブロック崩しって難解なんですね…。
ゲームってそういうもんでしょうか。

>>36
おお、めちゃくちゃ分かりやすいです。
ひとまず、36さんの方向で…

>>37
漏れも早く次うぷしたいんだモルァ!

>>38
計算してます。角度とか。
0042デフォルトの名無しさんNGNG
ブロック崩しの場合
横方向の速度は一定でよかったんじゃなかったっけか
0043デフォルトの名無しさんNGNG
ゲームとして成立させるためには、
キーボードのオートリピートの対策も絶対必要だな。
0044デフォルトの名無しさんNGNG
>43
メッセージキューにキー入力が残る事?
0045デフォルトの名無しさんNGNG
というかブロック崩しならマウスにすれば?
0046デフォルトの名無しさんNGNG
おいおい、意外にも名スレだな。最近珍しいぞ。
0047デフォルトの名無しさんNGNG
いやぁ、VBでやるよりC++でやるほうが手軽で簡単だと思うぞ。
一回、DirectXのライブラリ組んでしまえば、アルゴリズムは全く同じなんだから。
VBの見えないフォームにビットマップ読み込んでデバコンを指定して・・・なんてかっこ悪いからな。
0048 デフォルトの名無しさん NGNG
スレタイトルに好感が持てタ
0049デフォルトの名無しさんNGNG
衝突は
点でやるなよ
線でやれ
0050デフォルトの名無しさんNGNG
>47
VBでDirectX使えば良いのでは?
0051デフォルトの名無しさんNGNG
ブロックは4つに分解して飛び散り、その
破片にも当たり判定つけてください。
0052デフォルトの名無しさんNGNG
美女を背景にしてください。
0053デフォルトの名無しさんNGNG
自前で用意したバッファにボールからバーまで全部
自力で描画したりして、基礎を覚えるのも良いよ。
VBやDirectXのインターフェース覚えるのを頑張ってもいいが、
こっちは一生使える知識だし。
時代錯誤か?
0054デフォルトの名無しさんNGNG
>49
俺が昔VBで作ったブロック崩しが変な動作だったのは点で判定したせいだったのか。
0055デフォルトの名無しさんNGNG
4人対戦できる様にしてください。
画面を正方形にして、上下左右の各辺にプレイヤーを配置する形で。
005640=44=50NGNG
>53
連続書き込みで悪いけど、やり方教えて。
特に、自前でバッファを用意するってとこ。
VBだけで可能なの?
0057デフォルトの名無しさんNGNG
どうせAPIつかうんならCでやった方が良いと思うけど。
VBでやる利点無いよね?
0058 NGNG
>>51
中々面白そうなので、俺が作る事にした(w
剛体力学ブロック崩し。
005940=44=50=56NGNG
>57
初心者がプログラミングを勉強しやすいのが利点。
なんてったって、インタプリタだし。
0060デフォルトの名無しさんNGNG
衝突は
線でもダメなら
面でやれ
0061デフォルトの名無しさんNGNG
あれ?
1は?
0062ヒッキー@プログラミングNGNG
>>39
ありがとうございます。がんばります。
>>40
うい〜。vbKeyLeftとかで矢印つかえるようになりました!
>>47
C++ですか…MFCというのがどうもよく分からなくて放置してました。
>>49
線で衝突というのはどうしましょう?四角く範囲区切るということですか?
>>51
難しいです…
>>52
完成したあかつきにはどっかから画像探して貼り付けます。
>>53
はーい。がんばりたいと思います。
>>55
Winsockコントロール使ったことがあるので、何とかなるかも。
最後に考えます
>>61
帰ってきました。
0063デフォルトの名無しさんNGNG
ネットワーク対戦可にしてください
0064ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次のファイルうぷしました。
 とりあえず、Y軸方向へ進むときに角度を計算しました。
 >>36氏に感謝。

>>63
なるだけがんばります。
006540NGNG
>61
あと、タイマーコントロールを使わないで、
代わりにループさせると処理が安定して早くなる。
VBのタイマーコントロールは優先度が一番低いらしいから。
で、ループ処理のなかに DoEvents と sleep をいれると、
うまくOSにも制御が戻るから。
sleep はAPIで、使い方は sleep(100)とか。
括弧の中の数字が、アプリの実行の停止時間で、1=0.001秒だったはず。
0066デフォルトの名無しさんNGNG
背景の美女を脱がしてください。
0067デフォルトの名無しさんNGNG
口調が変わってるじゃねーかゴルァ!!

似たスレどこかで見ました。
006840NGNG
バグ報告

右に移動中、右からきた玉が自機を透ける。
0069ヒッキー@プログラミングNGNG
>>65
ほおほお。sleep入れてみました。
VBのタイマーコントロールは怪しいらしいですね。
APIのGetTickCount使うようにしました。

>>66
脱がしたいです。

>>67
おもしろかったので真似しましたゴルァ!
0070ヒッキー@プログラミングNGNG
>>68
ありがとうございます。
なんか、あまり考えずに書いたので、右側が跳ね返るときも
左側が跳ね返るときも同じ処理を書いていたようです…鬱

04を再アップしました
007140NGNG
>70
了解!
俺は初心者だし、お互いがんばろう。
ついでに言うと、GetTickCountの使い方がわからん(ー_ー;
0072デフォルトの名無しさんNGNG
>>1
スレタイトルの最初が>貴様ら<で、最後が>ください<になってるので
思わずみてしまった。

伽藍とバザール的良スレ。最後までやりとげてほしい。
このスレと結果報告を兼ねるHPで有意義な情報を公開にょ
0073デフォルトの名無しさんNGNG
1、flag_x,flag_yは不要
  毎回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
>>73
あらら、かぶった。ごめん
0076ヒッキー@プログラミングNGNG
>>71
GetTickCountは、Windowsが起動してからの時間をミリ秒単位で
返す関数のようです。引数は無しです。
で、10ms経った時間を計ろうと思ったら、現在時間から前に計った時間を
引いて、10を超えたら…みたいに書いたらいいみたいです。

>>72
はい、なんとかHPにまとめてみたいと思います。
有意義な意見をくださる方がイパーイいらっしゃるので、
僕の為にだけではもったいないです。

>>73
そうですよね。Sinとか毎回計算してたら遅くなりそうですしね。
んで、線分の交差を検索したところ、外積やら知らない単語が
出てきたので、それを調べようとして泥沼状態です…
>その場合-1ではなく -1.0001 のようにするとだんだん…
ほおほお、たしかに(藁 取り入れてみたいです。

>>74
そういうことでしたか。ようやく納得できました。
ありがとうございます!
0077デフォルトの名無しさんNGNG
線分の交差
http://piza2.2ch.net/tech/kako/996/996157997.html
0078デフォルトの名無しさんNGNG
普通のブロック崩しって、
バーの端っこにぶつかったら急角度で跳ね返る、
要するに物理法則を無視した動きをするけどその辺はどのように解決する?

その辺をどうにかしないと、
バーやブロックや壁の垂直面・水平面が全て水平だったらボールの動く角度は
常に一定になるけど……。
0079デフォルトの名無しさんNGNG
スライスで軌道が変わったりすると面白そう。
アナログなコントローラでないと無理だけど。
008040NGNG
ボールの運動量とバーの摩擦係数から、反射後のx成分を求めるの?
俺としては、物理学的なものは無視して、まずは形にすることをお勧めする。
0081デフォルトの名無しさんNGNG
そこらへんは作って楽しい所だから好きにやればいいんじゃないの?
 単純に端に8ピクセルより近ければ 端からの距離を Dとして
 VY:=-VT : VX=VX*D/8 とかでもそれなり
0082デフォルトの名無しさんNGNG
>>81
それじゃボールのスピードが変わっちゃうYO!
0083デフォルトの名無しさんNGNG
キー入力はAPIを使うこと(GetAsyncKeyState)
リアルタイムゲームでキー押下イベントを使うVBアプリは糞と呼ばれます

描画はバックバッファを使うこと
非表示のPictureコントロール(AutoRedraw=True)に全部描いてから
FromにPictureコントロールの内容をコピーしよう
0084デフォルトの名無しさんNGNG
s/From/Form/
0085デフォルトの名無しさんNGNG
貴様、ShiftKeyでバーの移動速度を倍くらいにしてください(w
>>83
キーコード
カーソルキー左 37 、カーソルキー上 38、シフトキー 16
だっけ?左右逆かも。
008685NGNG
>>85
右39だ。上は関係ないや。
逝ってくる。
0087デフォルトの名無しさんNGNG
キーコードはキー入力定数を使えば間違いない
vbKeyLeftとかってやつな
0088デフォルトの名無しさんNGNG
ところで1さんはいつプログラミング始めたの?
0089デフォルトの名無しさんNGNG
新しいファイルがアップされてた。
0090ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block05.zip
↑次のファイルうぷしました。なんか、めり込みます…
 線で跳ね返る処理をコピペしたら、おかしくなりました。
 タマに、斜め方向に線をいれてます。(X状に)

>>77
リンク先、参考にさせてもらいます。どもです。
>>78
そうですね〜。完成が見えてきたら考えてみます。
>>79
アルカノイドのコンパネみたいなやつあったら嬉しいんですけどね(藁
>>80
うい〜。形を作ることを考えます。
>>81
そうですね〜。まずは好きにやってみます。
>>83
う…今回うぷした分でキー入力は修正しました。さんくす。
>>85
うい。してみました。
>>87
APIでキー入力の処理をしたので、VK_LEFTに変わってしまいました。
>>88
う〜ん、どのくらいでしょう。
趣味でたまにちょくちょくするくらいで、
期間的にはだいぶ長いことやってます…。
最初はファミリーベーシックで挫折(小学生時代)
ポケコンのベーシックにはまる(中学3年〜高校生)
CとVB勉強(高校〜)みたいな。
0091デフォルトの名無しさんNGNG
>90
バグが酷いんだが、なんとかならんか?
激しく酷いぞ。
0092デフォルトの名無しさんNGNG
まだ次期尚早かもしれないけど、マスクパターンを使った
擬似スプライト処理をしたほうがいいね。ボールのフチが見えて萎える。

それからバックバッファを使わないと後々困ると思うよ。
いまのままだと、ボールやバーの移動量をふやすと軌跡がのこっちゃうでしょ。
0093デフォルトの名無しさんNGNG
それから、FormをUnloadしたときに正しく終了してないので
これは今すぐ直しなさい。
Form1_Unloadイベントに一行End書くだけでしょ。
タスクマネージャ見て驚いたよ。
0094ヒッキー@プログラミングNGNG
>>91
すいません、徐々に直していきます。
>>92
うい。了解。
前にフチを消す処理を書いたような覚えが…探してみます。
バックバッファですか。そこに書いてから実際の画面に転送ですよね。
やってみます。
>>93
ごめんなさい…ウチでもタスクマネージャ見たら溜まってたんで
焦りました。05を再アップしました。
今まで試してくださった方、大変申し訳ないです。
0095ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block06.zip
↑次うぷしました。
 背景になじませてみました
0096 NGNG
ちょっとおかしい部分あるけど、昨日に比べて格段に出来上がってるじゃん。
覚えるの早いねー。
ブロックの管理あたりで一騒動ありそう・・・。
何か考えてる?
0097デフォルトの名無しさんNGNG
なんかペースが早いな。
消化できてても吸収できてないと後々にひびく。
1が無理してなきゃいいが・・・
0098デフォルトの名無しさんNGNG
こんぐらいで消化不良起こすようじゃ・・・
0099デフォルトの名無しさんNGNG
>98
消化はできてるだろ。
問題は、覚えたかどうかだ。
0100デフォルトの名無しさんNGNG
100ゲット!
0101デフォルトの名無しさんNGNG
名スレ!
このスレをヴァカ学生どものテキストに使いたいくらいじゃよ。
結局GDI描画にしたのねん。
メモリ上に仮想VRAMおったてて、スクリーンにBitBltかけるライブラリとか
なら探せばいくらでもありそう。
でも、プログラム的にはGDIのBitBltと同じような処理になっちまうだがな。
まあ、ともかく1よ、テキトーにがんばってくれや。
燃え尽きんようにな。
0102デフォルトの名無しさんNGNG
あー見ている間に1に技術的に抜かれてしまった(w
0103デフォルトの名無しさんNGNG
>102
そうなの?
0104デフォルトの名無しさんNGNG
このスレはプロゲームプログラマのネタスレと見た。
ソースは全然見てねーけどな。
0105デフォルトの名無しさんNGNG
>>104
いや、その線はないだろう。ソースを見てみれ。
ある程度経験を積んだ奴はどんなに素人らしいコードを
書こうとしても、必ずその「痕跡」がコードに現れてくるものだ。

ただ>>1は、スレの育て方のコツを知っているみたいなので
もしかしたら「プロの2チャンネラー」かもしれん・・・
0106デフォルトの名無しさんNGNG
応援age
010773NGNG
昨日言った事の1はクリアしたが2が出来ていいない
 衝突判定の為には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ねらー歴は数ヶ月です(藁
何度かスレ立てて、どうやったら面白いか考えてました。
おっしゃる通り、素人でございます。
0109 NGNG
>>107
強制するのはよくないよ。
自分で考えて作るのがプログラムの楽しさだ。
0110デフォルトの名無しさんNGNG
メインループの書き方がどうもね…
いまのままだと処理内容が増えるにつれて
リニアに遅くなるよね
0111デフォルトの名無しさんNGNG
>>110
ゲームってそうゆうもんだよ。
0112デフォルトの名無しさんNGNG
>>19
>動くのしか作れないもので…VESAのライブラリ拾って16bit色
漢発見!
0113デフォルトの名無しさんNGNG
>>111
んなこたーない

1フレームの処理Pにかかる時間をn(msec)とし、
フレーム更新間隔をm(msec)としたら、
本来1フレームはPを処理したあとに(m-n)msecを
sleepすべきである。(これを画面走査線の動作に
あわせるのが、vsyncである)
したがって、n<=mである限り1フレームの更新間隔は
nによらず一定で、その値はmである。
0114デフォルトの名無しさんNGNG
一方、このブロック崩しは
1フレームの更新間隔m=(10+n)msecとなることは自明。
プログラムの組み方によるが、たとえばブロック1つにつき
処理時間lを要するとすれば、ブロック数kに対しn=a+l*kである
つまり、m=(a'+l*k)となり、変数kによってmが線形的に変化する
こととなる。

これは、「ブロックが大量にあるスタート時とブロック残り数が
少ない最後のほうでフレーム更新間隔が異なる」ことを意味する。
フレーム更新間隔の変化は、パドルの動作、ボールや演出の動作にも
影響を与え、ゲームとしての品質を低下させる。
0115ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block07.zip
sleepの処理を改善してみました。>>113氏に感謝。

>>107
線分と線分の距離を求めるアルゴリズムを検索してみます。
ちょっと考えがついていってないので、しばしお待ちを…
>>110 - >>113 - >>114
ご指摘ありがとうございます。
たぶん、おっしゃる通りに改善できたと思います。
0116デフォルトの名無しさんNGNG
>>114
ブロックとの衝突判定をどうするのかまだ決まっていない状態で
議論しても始まらんだろ。

とりあえずぱっと思い付いた(つーか、ありがちな)方法だが、
普通ブロックって奴を画面に配置する時は縦横きれいに整列されているので、
その構造を利用するだけでも

     線1本との交差判定にかかる処理時間
     縦方向に配置するブロックの最大数を r
     横方向に配置するブロックの最大数を c

とした場合、その衝突判定にかかる処理時間は(生存しているブロックの
数に関わらず)

     l * r * c

で済むんではないの?
(ついでに線との衝突判定を律義に1本ずつ計算せずに
「どの線とぶつかる可能性があるか」を計算で拾い出せば
もっと速いけどな)
0117116NGNG
あ、悪りぃ。細かい事だけど、
>線1本との交差判定にかかる処理時間
を
>線1本との交差判定にかかる処理時間を l
に読み替えてくれ。
0118ヒッキー@プログラミングNGNG
やっぱ07おかしいかも…いったん削除。
0119ヒッキー@プログラミングNGNG
再アップしました。
0120デフォルトの名無しさんNGNG
1はホントにヒッキーなの?
0121デフォルトの名無しさんNGNG
>>116
別に今回のブロック崩しでどういう処理をするかは論じてない
あくまでゲームループ一般の話題であり、ブロック衝突に
かかる計算量は、あくまで一例としたまでで
気に食わないなら「ボールが複数に分裂した場合」でも
「敵が複数出現する場合」でもかまわない

それよりあれだけの情報で新しいリリースではちゃんと修正している
>>1はかなり理解力が高いと思う
ソース見たけど、いわゆる「処理落ち」まできちんと考慮してるみたいだ
初心者は初心者なんだろうけど、頭はかなりよさそうだね
0122デフォルトの名無しさんNGNG
なんでこのスレsage進行してるの?ageてもいいんじゃ・・・
0123デフォルトの名無しさんNGNG
まだ、ボールがパドルにめり込んでスタックするというバグが残ってるよね
反射の処理が冗長な割に正確じゃないのよね。思い切って書き直したほうがいいと思う

if パドルの上端(上半分)に接触 then vy=-abs(vy)
if パドルの下端(下半分)に接触 then vy=abs(vy)

ってなふうにad hocに書いたほうが妙なバグに悩まされずに済むよ
0124速報NGNG
1頑張れ。完成したぞ。

http://game.2ch.net/gamedev/
0125デフォルトの名無しさんNGNG
>>124
おお、待ち望んでいたものが。ワショーイ
0126デフォルトの名無しさんNGNG
ブロポンみたいにしようよ・・
0127 NGNG
>>124
ってことは、これは板違いにつき終了ってことね。
0128デフォルトの名無しさんNGNG
>127
まだインフラ整備されてないようだから、それまではいいんじゃない?
0129デフォルトの名無しさんNGNG
とりあえずこのスレは使い切って欲しい
0130デフォルトの名無しさんNGNG
移転するならアドレスかいてくれYO!
0131ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block08.zip
↑次あぷしました。
 1.タマがめり込む現象の改善
 2.線分の交差で跳ね返っていたのを消して、もっと単純に

>>123
思い切って書き直しました。
めり込みがなくなったかと思います。
>>124
昨日、記念カキコしてきました(藁
これが終ったら、向こうに逝きたいと思います。
>>127
あああああああああああああああああああああ、ちょっと待って(w

久々age
0132デフォルトの名無しさんNGNG
珍しく良スレだな。
こういうのがゲ術板でも出てくるといいのだが。
0133デフォルトの名無しさんNGNG
http://www.tkcity.net/~lucify/top/pikumin.jpg
0134 NGNG
ゲ術板、PCのカテゴリに移動したね。
厨房減ればいいけど。
0135ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block09.zip
↑次あぷしました。
 ブロックとぶつかるようにしました。

>>120
本当にヒッキーです。かれこれ数ヶ月になります。
>>133
ワラタ
>>134
おぉ、ほんとだ。良い板になるといいですね。
0136デフォルトの名無しさんNGNG
>1
もっとスピード早くして。
0137ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block10.zip
早くしてみました。
0138デフォルトの名無しさんNGNG
>>1
いまんとこ定数ごっちゃになってないけど、
大丈夫か?きちんと見た目わかりやすく定義した方がよくないか?

そんなこという俺もいっつも適当だけど、鬱
0139ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block11.zip
↑ついにゲームっぽくなりました。

>>138
定数ですか。
AND演算に使ってないので、大丈夫だと思います。
ただ、マジックナンバーをなくそうかと。
定義、見やすくしてみたいと思います。
0140デフォルトの名無しさんNGNG
ついでに変数もint〜〜などと書いてほしい

などと言ってみるテスト。
0141デフォルトの名無しさんNGNG
>>139
210点でクリアー.
1はいい調子だね.
0142デフォルトの名無しさんNGNG
>>139
いいね、いいね。シンプルだけど遊べるよ。
ただ、「この角度でボールに当たったら、こうは動かんだろ〜」という
ストレスが多少ありますね〜。
0143デフォルトの名無しさん NGNG
まじで名スレ (・∀・)ガンバレ!
実は、リリース版まで上がってて小出しにしてるのかとか
一瞬疑ってしまったよ
モチベーションって大切だよな、うんうん
0144デフォルトの名無しさんNGNG
ゴルァ>>1!!がんばって下さい。
0145初心者NGNG
漏れはプログラム始めたばかりでAPIサパーリだが、応援させてもらうぞゴラァ
>>1!頑張ってください
01462NGNG
漏れもうれしいぞ。
0147ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block12.zip
↑計算してみました。角度とか。
 あと、ステージ2を追加しました。

>>140
間違えそうになりましたよ(藁
>>141
おお、どうもありがとうございます。21個、ブロックがあるので
210点になります。
>>142
たしかにちょっと変ですね…。
自機の横にあたったときは上に行くようにしてます。
>>143
このスレ立てたときに1から作りました。
みなさんのおかげで、なんとかゲームらしくなりました。ありがと〜。
>>144
まだまだがんばります!
>>145
うい〜。APIは僕も最初、ちんぷんかんぷんでした。
ある日、突然目覚めました。
>>146
お〜、どもです。スレ維持する為にがんばります。


昨日、アルゴリズムの本を買ってきました。
もうちょっと勉強します…
0148デフォルトの名無しさんNGNG
なんかいい雰囲気だな。オレもむかし、MSXでブロック崩し作った。
昔のブロック崩しは、ブロックの横からの判定がなくて当たり前で、
衝突判定はかなり単純なものだったなあ。

ボールの角度も、エポック社の取説では、ラケットに当たった位置に
よって、4方向(!)ぐらいだけだったような。
そのレベルはとっくに超えてて、いいぞゴルァ!
0149デフォルトの名無しさんNGNG
1さんの作品が完成したら、プログラミング始めたばかりの人たちによる、
「貴様ら!○○作るので見てください」をシリーズ化キボン。
0150デフォルトの名無しさんNGNG
>>149 ただし「貴様ら!HelloWorld作るので見てください」は却下な。
0151ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block13.zip
↑3面追加&グラフィック変更しました。

>>148
おぉ、MSXですか。
当時はプログラムを打つと言えばファミリーベーシックしか知りませんでした。
MSXを知ったのはプレステ出てからです(藁
お褒めいただき、ありがとうございますゴルァ!
>>149
これ終ったら、また新たなスレ立てようと思っております。
みんなでシリーズ化したら面白そうですね。
0152デフォルトの名無しさんNGNG
>>149
それちょっと考えてみた。
しかし、現時点でかなり1に遅れをとっている状態であり、
怖くて立てる勇気がない。
0153141NGNG
>>151
660点でクリア.
1,成長早いね.exeのアイコン変わってるし.

途中で1回玉がブロックの下素通りしたよ.
玉はもうちょっと早くてもきもちいいなぁ.
0154ヒッキー@プログラミングNGNG
あれ、書いたのに書けてなかった…ショック
さっきなんて書いたっけ…

http://www.geocities.co.jp/SiliconValley/2530/block14.zip
↑次あぷしました。
 2周目以降の追加&ブロックから確実に跳ね返るようにしました。

>>152
厳しい意見をもらっても、凹まない精神があれば大丈夫と思います。
一緒にがんばりましょう。
>>153
テストプレイ、さんくすです。
ちょっと玉の加速度を上げました。
0155デフォルトNGNG
ステージのデータをファイルから読み込むようにして欲しいなァ。
効果音とかあると気持ちいいかも。
0156デフォルトの名無しさんNGNG
>>149
でも乱立されるとちょっと。
0157デフォルトの名無しさんNGNG
>>149
ゲ製作技術板でやるべき
0158デフォルトの名無しさんNGNG
>>157
ゲームとは限らないの方向で一つ。
「貴様ら!コンパイラ作るので見て下さい」とか
0159デフォルトの名無しさんNGNG
>>158
「貴様ら!ゲームライブラリ作るので見てください」だったら萎え
0160デフォルトの名無しさんNGNG
「貴様ら!コドモ作るので見て下さい」キボーン
0161ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block15.zip
↑音が鳴るようになりました。

>>155
ステージデータ、ファイルから読めるようにしてみたいですねー。
Txtで作れるようにしようかな…。
>>160
それ、見てみたいです。
あ、行為だけならビデオで見てるか…
0162デフォルトの名無しさんNGNG
そこの女!オナニーするので見ていてください
0163デフォルトの名無しさんNGNG
貴様ら!物理法則のシミュレーションを教科書の最初から順にやっていくので見てください!
0164デフォルトの名無しさんNGNG
>>163
真面目に嫌。
0165デフォルトの名無しさんNGNG
なんかコメントとかしっかりしてるけど。
>>1は何か他の言語の経験者?
0166ニセイチNGNG
>>165
COBOLとForthとアセンブラやったことあります。
0167デフォルトの名無しさんNGNG
>>166
で?そのレスのどこで笑え・・・・・と?
0168デフォルトの名無しさんNGNG
>>165
細々とやってたらしいよ。
基礎は身に付けてるみたい。
0169デフォルトの名無しさんNGNG
最初はヘタレてても、ちょっとアドバイスするとそれ以上のものを
作ってくる1は、正直すごい。
さて、ステージデータのファイル形式、どんなのを作ってくるかな?
ステージエディタなんかも作ってみては?
0170デフォルトの名無しさんNGNG
>>168
そうなんだ。誰かコメントつけなさいってアドバイスしたのかと思った。
(すまんスレ全部読んでない)プログラマとしての素養は備えているね。
俺はだめだ。もうやーめたっと。
0171デフォルトの名無しさんNGNG
>>167
うるへーばか('Д´)お前はそこでかわいてゆけ
0172デフォルトNGNG
>>1=>>2だとしたら、かなりのやり手だな。
0173デフォルトの名無しさんNGNG
>>171
「うしおととら」の偽なまはげ編だな。 
0174デフォルトの名無しさんNGNG
>169
えへへ・・・お前・・・優しいなぁ・・・
01752NGNG
残念、>>2はオレだ。
マジで予感したよ。
0176デフォルトの名無しさんNGNG
魔○シュ○ティ○グのときは、こんなに温かくなかったなあ(藁
0177デフォルトの名無しさんNGNG
これをHSPで作ってたら、
また違った展開になっていたと思われ。
0178171NGNG
ってか、うしとらに反応あって嬉しい。
0179デフォルトの名無しさんNGNG
>>1
漏れも応援してるよ! ガンバレ!
0180141=153NGNG
>>161
動かしてみたよ.いいじゃん.音.
動きも速くなってていいね.

あとは,玉とラケットが接触するとき,
ラケットと玉との相対スピードで飛ぶ方向変えれると,
もっとはまるね.
0181デフォルトの名無しさんNGNG
1の件が一段落付いたら。

貴様ら! プログラマークエスト作るので見ていて下さい。ってのやろう。

プログラマークエストII-悪霊のクライアント
http://pc.2ch.net/test/read.cgi/prog/1000130870/
0182デフォルトNGNG
>>1にはシューティングとか作ってもらったほうがいいかも。
ちょっと期待しちゃう。
0183デフォルトの名無しさんNGNG
>>182のような物もいいかも知れないけど、
VBを卒業してLinuxでもいれてCを勉強したほうが1の為に良いだろう。
1は素質があるようなのでオープンソースの場で活躍が期待できそう。

そんなわけで期待age
0184デフォルトの名無しさんNGNG
>>4はこのスレの参加者全員に薬師丸ひろ子を配ること
0185デフォルトの名無しさんNGNG
ワラタ
0186デフォルトの名無しさんNGNG
>>1
VCでやったほうがいい
VBは所詮厨が使うもの
0187デフォルトの名無しさんNGNG
>>186
1をM$依存症にする気か?
1の明るい未来のためにCのほうがいいと思われ。
つーか、あなたは既にM$依存章のようですが?(藁
0188デフォルトの名無しさんNGNG
/. jp 的アンチ MS 主義者ですか?
Windows 使っている限り MS の掌の上なんだから諦めも肝心。
それはそれとして opensource 活動もするのが大人のやり方。
0189187NGNG
Windowsなど使っていませんが何か?
0190ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑16個目UPしました。
 ステージエディットできるようにしました。
 あと、毎秒100フレームは計算しすぎかと思って、50フレームにしました。

>>180
一応、ラケットの進む向きで角度を変えられるようにはしてあります。
でも、物理法則に反してるかもしれません(藁
コマンドラインオプションで、/dをつけて起動してみてください。
>>181
リンク先、見てみます。
>>182
シューティングつくりたいです。怒首領蜂みたいなやつ。
>>183
Linuxですか…ちょっと敷居が高いです。
インストールしたことはあるんですけどね…
>>186
VC、いじってみようかと思います。
>>187
僕もすでにVBいじってる時点でM$依存症かも…

ちょっと疲れ気味です。
>>4さんから送られてくる予定の薬師丸ひろこでなごみたいと思います。
0191デフォルトの名無しさんNGNG
>>186
( ´,_ゝ`) VC・・・   p
0192デフォルトの名無しさんNGNG
>>190
> ちょっと疲れ気味です。
> >>4さんから送られてくる予定の薬師丸ひろこでなごみたいと思います。
ウマイ!!!
で、ちゃんと休憩しているか?
0193デフォルトの名無しさんNGNG
>>187
グラフィックスやサウンド絡んだら、いずれにせよ Generic な C/C++ の範囲外だから、環境依存に
なるのは仕方ないと思われ。

まぁ SDL あたりのライブラリを使うって手もあるけどさ。
0194デフォルトの名無しさんNGNG
>>189
で、結局のところ何を言いたいの?

ゲームなんか作ってないで、C 勉強して Linux の開発やれって意見なら大きなお世話だし、Win32
ではなく Linux にターゲットを移そうという提案にしても、ゲーム開発に限れば Win32 + GDI と比較
して Linux + svgalib, Linux + X11 で特にメリットがあるとは思えないけど。

Win32 は

- マルチメディア関連の API が標準化されている
- 情報も豊富
- 開発環境も整っている
- 利用者が多い

という点で、趣味のゲーム開発者にとっては、これを選択する十分な理由があるよ。

>>1
とりあえず VB + GDI でしばらくやってみて、限界を感じたら VB + DirectX なり VC に移れば良い
と思う。趣味でやってることなんだし、プラットホームや言語はなんでも良くて、ゲーム作って本人も
周囲も楽しむのが最優先でしょ :D
0195ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑17番UPしました。
 サウンドを、毎回ファイルから読むのではなくて、
 実行ファイルのリソースの中に入れてみました。

>>192
夜は早めに寝ています。
あんまり全力でやらないように、適度に努力してみます。
>>193
SDL、検索してみましたが面白そうですね〜。
使ってみたくなりました。
>>194
うい〜。DirectXはかなり興味があります。
VBで使うのはめんどくさそうなので、VCから使いたいです。
もっと勉強しないと…
0196デフォルトの名無しさんNGNG
>>1
( ´ゝ`) < MacOSXの世界に来ないかい?
0197デフォルトの名無しさんNGNG
VB+DirectXなんてできるの?
どうでもいいが。
>>196
なんのメリットが?
0198デフォルトの名無しさんNGNG
>>197
できるYO!
0199デフォルトの名無しさんNGNG
>>197
( ´ゝ`) < 偏見パレードかもしれないけどね

・ProjectBuilderだと、VB並てかそれ以上の操作性+各オブジェクトの
 関係の理解がし易くなる
・Appleだけあって、メディアが作り易い
・C言語の拡張であるObjectiveCとJavaが使える
・http://www.big.or.jp/~crane/cocoa/ ←ここでほとんど理解できる。

( ´ゝ`) < いじょーだよ。
( ´ゝ`) < あくまでも偏見だからね。
( ´ゝ`) < でもProjectBuilderはマヂに生産効率アップできるよ。
0200199NGNG
( ´ゝ`) < 日本語が以上に変。鬱蛇志之右
0201デフォルトの名無しさんNGNG
ttp://mackoy.cool.ne.jp/
ここはVBだったはず。
昔はVBって書いてあったけど今は見つけられなかった
0202ROMNGNG
>>各位
それぞれの信念理念を元にした野外での議論は必要無いのではとおもわれ
>>1
いろんな意見があるが最終的には1自身できめてください。
少し休憩して、ロールプレイング的な感覚を楽しませてください。
応援してますぞ
0203デフォルトの名無しさんNGNG
>>1
なんか知らんが、こう言うスレの中では、
ここの>>1がすき。

応援しとるぞ、折れも。
0204ヒッキー@プログラミングNGNG
hp.vector.co.jp/authors/VA019204/programming/
↑ここのページ見てちょっと凹みました。
 中学生でもこんなにすごい人がいるとは。
 ちなみに僕はコンピュータ系専門学校に逝っていましたが
 あまりに酷いので逝かなくなりました。親に悪いことをした…

>>199
Macでプログラムってあんまり考えなかったです。
いろいろソフトがあるんですね。ほおほお。検索してみようと思います。
>>201
電車のゲームですか?
Direct3D使ってるんですねー。すごい。
>>202
うい〜。応援どうもです。
今日は休憩しました。またがんばろうと思います。
>>203
ケコーンしましょう。

一覧から消えたのであげ
0205203NGNG
>>204
オランダあたりじゃないと、結婚できないな、
>>1さんは男みたいだし。
0206デフォルトの名無しさんNGNG
>204
本にいくらでも書いてあるんだから、そんなHPでへこむな。
やってないだけで、やればできるだろ。
0207リア厨 ◆3JQchEFY NGNG
>>204
前に見たときはスゴイって思ってたけど、
「プログラムは何故動くのか」とかいう本みたら
「たいしたことないじゃん。」って思えたよ。
つまり、206に激しく同意
0208デフォルトの名無しさんNGNG
というか、やろうという意思、モチベーションを
維持しつづけられる若さと情熱にあふれた>>1が
何よりも眩しく、羨ましい。
0209141=153=180NGNG
>>195
1360点でクリア.
1,ほんとえらいよ.言語とかどうでもいいから,とにかく
このゲームををひとつしあげてほしい.

思ったこと.
玉が加速して面白いね.そのせいか,
そろそろShift2倍速もつらくなってきたね.
アナログコントローラじゃない壁をどうやっておもしろく取っ払おう?
圧縮ファイルの作り方は,16個目のより17個目のほうが好き.
いちおうこわいからソース調べてからVBでコンパイルして遊んでるので,
別フォルダになってないほうが手間がすくなくてうれしい.
あとさ,こまかいことだけどさ,ボールの影の形四角っての
そろそろやめない?

とにかく1,楽しみにしてるからがんばれ.
0210デフォルトの名無しさんNGNG
>四角
関数変えるだけだと思うので1行書き換えておK
0211ヒッキー@プログラミングNGNG
>>205
スイマセン、男です(藁
>>206 >>207
そうですねー。そういう分野の本も読めばいいんですね。
ちょっと救われました。
>>208
ありがとうございます。
ヒッキーなので、日々の生活で精神が乱されることがないので
継続できているんだと思います。学校に通ってた時は苦悩の日々
でした。
>>209
毎度、ありがとうございます。
ボールの影、ウチの環境(Win2000)では出ていなくて、
今までわかりませんでした…。
ちょっとBitbltの引数を考えたいと思います。
それから、これからは17個目のような形式であぷします。
0212ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block18.zip
↑処理を簡素化&ボールの後ろの四角が見えないようにしました。
 だいぶ軽くなったと思います。
 あと下に落ちたときに、はじめからやるボタンを追加しました。

http://www.geocities.co.jp/SiliconValley/2530/block_ed.zip
↑それから、どなたかステージエディタを試して頂けないでしょうか。
0213デフォルトの名無しさんNGNG
これから試してみますね。age!!!
0214デフォルトNGNG
重なったブロックにボールが当たると、ボールが当たったほうは
消えますが、当たってない方が欠けてしまいます。
0215ヒッキー@プログラミングNGNG
>>213
ういー。どもです。
>>214
あー、たしかにそういう風に書いてしまいました…
見直します。サンクス!
0216ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/block19.zip
↑ブロックの跳ね返りの処理を見直しました。
 ちょっとストレスが減ったかな…。
 それから、重なったブロックが欠けないようにしました。
 処理をだいぶ減らしたので、おかしくなってる部分があるかも。


基本的な動きができるようになってきたので、そろそろ
壊せないブロックや、点数の違うブロック、2回当てないと壊れないブロック
など追加したいと思います。あと、空中にいる間に壊したブロックを
格ゲーのコンボ(?)みたいにカウントしようかとも思っています。
0217デフォルトNGNG
自機にボールが食い込んじゃう。
0218デフォルトの名無しさん NGNG
点数の増加についてですが、1ブロック10点固定ではなく自機を離れてから
連続してブロックを壊した場合、コンボ点を導入するってのはどうですか?
1個 - 10点
2個 - 20点
3個 - 40点
4個 - 80点
5個 - 160点・・・
0219デフォルトの名無しさんNGNG
ブロックを崩すだけでなく、自分が崩される機能というのはどうですか?
0220デフォルトの名無しさんNGNG
それだとブロック崩し崩されになってしまいますが。
0221デフォルトの名無しさんNGNG
座右の銘 ブロック崩し崩され
0222デフォルトの名無しさんNGNG
>>219-221
warata
0223デフォルトの名無しさんNGNG
あのー、移動しながら玉を跳ね返すときに、
機体にボールが吸い付いて振動してしまうのですが、
僕だけでしょうか?
0224デフォルトの名無しさんNGNG
>204
彼の成長と君の成長は直接に関係があるわけじゃないよ。
君がもっと成長したあと、そのページを見直してみたとき、
「なんだ、大げさにいうほどのことじゃなかったな」
と思える日が来るかも知れないんだし。
0225141=153=180=209NGNG
>>216
やってみたよ.
>>223が言うように,ボールが機体にくっつくね.
特にボールのスピードがおそいときに,そうなるね.
おいらもWin2Kだけど,影は消えました.

ブロックを打ち返す,ってとこさ,このゲームの要だから,
ちゃらいところに凝るのもいいけど基本的なところで「味がある」
操作系にできないかなぁと思うんだけど.
ってことで1がんばれ.
0226デフォルトの名無しさんNGNG
初めて覗いたけど、すごいよ・・・
自分がヘタレだと改めて感じました・・・
>>1さん、頑張ってください
0227ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。

・自機にめり込まないように修正
・画面変更

などしてみました。

>>217 >>223
スイマセン、変なソース書いてました…修正しました。
(直ってないかも…)
>>218
ほお。面白そうですねー。
次の更新時に考えてみます。
>>219-221
ダウンタウンのネタっぽくてワラタ
>>224
そうですねー。もうちょっと勉強して、たいしたことなかったと
思えるようにしたいです。
>>225
影が出るのはOSの問題じゃなかったんですねー。
あまり考えずに言ってしまってスイマセンでした。
確かに基本的なことができてなかったら、画面等にこだわっても
面白くないものになってしまいますね…。書き直します。
>>226
おぉ、ありがとうございます!
応援していただけるとやる気が出てきます。
0228デフォルトの名無しさんNGNG
いいねいいね
わずか10日でこの成長っぷり
>>4から35,000薬師丸ひろ子がもらえる日は近いね
0229RE: block20.zipNGNG
Stage_Data.basはもうちょっと書き方があるだろう。
0230デフォルトの名無しさんNGNG
>'ここにループを書くとウインドウ描画前に始まってしまうので、
>'タイマー使用

show
doevents
のコンボをform1_loadに書いておけば
その時点でwindowが表示されるよ
0231デフォルトの名無しさんNGNG
>>229
もっともな指摘だがさすがに1もこれを放置する気はないだろう
それよりファイルナンバーの直指定はやめるべき
使用可能なファイルナンバーはFreeFileで取得しよう
0232ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。

・ブロックとボールの判定回数の減少

とかしてみました。

>>228
>>4さん、そろそろ2万薬師丸ひろ子程度、用意しておいてください。(藁
>>229
Stage_Data.bas、書き直しました…
さすがに前のはかっこ悪かったと思います。反省。
>>230
う〜ん、やってみたんですけど、なぜかうまく逝きませんでした…
で、MainLoopをTimer内に書かずにサブルーチンにしてみました。
>>231
今回、FreeFile使うように修正しました。
ご指摘、ありがとうございます。
0233デフォルトの名無しさんNGNG
気合がびしびし
0234デフォルトの名無しさんNGNG
ブロックの下に、おねーチャンのヌードってどうですか?
実装無茶苦茶簡単で、熱中度異常にアップします。
コストパフォーマンス最高です。
重要な部分?のブロックは、頑丈だとよいです。
0235デフォルトの名無しさんNGNG
結構作りが丁寧でちょと感動
やっぱ同じ作るにしても
他人に見られることを意識して作ると違うね〜
0236デフォルトの名無しさんNGNG
貴様ら!はどうかと思うが、ほのぼのマターリとした進行で感動した!

というわけで、漏れもスレに参加。

sin,cosを毎回計算するなって言ってる人いるけど、そんなの今の段階で言うべき
事じゃないと思うよ。だいたい今時のマシンで1フレームに1回程度のsin,cosの
計算なんか全く負担にならないし。むしろ、意味の無い最適化でソースが複雑に
なることの弊害の方が大きいかと。あ、VBって知らないんで、VBのsin,cosが死ぬ
ほど重かったらゴメソ。

パドルとボールの当たり判定だけど、ボールが画面下に動いているときだけ処理
するといいよ。そうすればめり込んだり、打ち返すまでに2回跳ねかえるような
事が無くなって良い感じ。

あと、壊れないブロックを作ると球が永遠に落ちてこなくなる事があるので注意。
■■■■■
■□  ■
■   ■
■   ■
■■■ ■
こんな地形で(■は壊れないブロック。□は壊れるブロック)□の右側に45度で
当たるように打ち込むと無限ループ突入。
単純なブロック崩しなら、たまーにランダムで反射する方向が微妙にズレるように
して回避するのが吉。名作アルカノイドでは敵キャラが無限ループ防止の役になっ
てた(ランダムでズレる手法も使われてた気がするが)。
0237236NGNG
おもいっきりズレてて恥ずかしい。

操作系に関しては色々あるが、最近2chで流行りのワンキーにしちゃうってどお?
ボタン押してると右に移動して、離してると左に移動。
少し慣性を加えておくのがミソ。
0238236NGNG
あと、タイトルを「貴様ら!ブロックを崩してください」にしたらどうかな?
0239デフォルトの名無しさんNGNG
いや、sin/cosを使わない事で DDAアリゴリズムになってていいよ

 たとえば、
1) y方向の速度vyを常に非常に小さな量加算する
-->まるで重力があるかのように

2) vx = vx-vx*vx*vx/10000 みたいにすると空気抵抗に

3)特定のブロックに引力や反力を導入する

とかね
0240デフォルトの名無しさんNGNG
引力の例
Private 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
sub main のiniファイルにデフォルトのステージデータファイル名を
書き込むコード、あれも綺麗に書き直そう
連番ファイル名以外にも対応したいならば、リソースに
ストリングテーブルとして書いておき、それを読み出す形にすべきだろう

それにしてもこのへん、丁寧な設計思想で好感が持てる
0242ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。変更点は、

・画面効果の追加

です。

>>233
うおー。がんばります。
>>234
僕も考えているんですが、ネットに落ちてる画像勝手に使ったりしたら
まずくないかなーと思って考え中です。→ >>52(藁
>>235
ありがとうございます。
やっぱ、一人で作ってるとあんまり見た目考えないですねー。
プログラム板のかたに見て頂けてうれしいです。
>>236
おぉ、ご意見ありがとうございます。
Sin・Cos関数を使う部分は1つにしてみてます。なんかVBの標準機能って
どうも遅い気がするので…。
2回跳ね返るとどうも動きに違和感がありますね。画面内の方向に
跳ね返るようにしました。
壊れないブロックって、そういう事も考えられるんですね。
そういえばアルカノイドって敵いてましたね。敵キャラがそんな役目も
果たしているとは…。ちゃんと考えられてるんですね。

ワンキーにしたら、熱中しそうですね(藁
考えてみます。

タイトルを「貴様ら!ブロックを崩してください」にしてみました。

>>239
おお、実用的な例をありがとうございます。
ボールに動きが出て面白そうですねー。
(ところでDDAとは何でしょうか…検索してみます。)
>>240
具体的なソースまで挙げて頂いて、ありがとうございます。
頭でイメージするのが難しいので、一回実験してみたいと思います。
>>241
そうですねー。あのままだと何かあるたびにiniファイルに書くコードを
考え直さないといけない気がします。
そういえばストリングテーブルってありましたね。調べてみます。
0243233-242だけ読んだNGNG
スコアのつけ方をもう少し何とかしてほしい。
連続してブロック壊したらポイントが2倍とか
ブロック壊せなかったら5ポイント減らすとか
ずっと同じポイントだったら、意欲がうせる?
0244デフォルトの名無しさんNGNG
DDA=デジタル微分解析 で検索すると日本語サイトがヒットするよ・・・きっと・・たぶん
0245ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。変更点は、

・コンボボーナスの追加

です。

>>243
ういー。最近のシューティングゲーム的に点が増えるようにしました。
>>244
出てきましたー。どもです。
でも言葉の意味はいまだ良くわからず…
0246ヒッキー@プログラミングNGNG
あ…バグありました。
直します…
0247ヒッキー@プログラミングNGNG
直しました。
ゲームをストップさせてもコンボのカウントが動いてました。
0248おすぎNGNG
最近見たどの映画よりもこのスレッドに感動しました。
私はこのスレを応援します。
0249デフォルトの名無しさんNGNG
> ball_x = ball_x + vx * (90 - Angle) / 90
> 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
>>249
それってDDAって言うの?
ただのベクトル演算にしか見えないが。
0251デフォルトの名無しさんNGNG
ね。DDA直線発生とはゼンゼン違う。
DDA使うと1単位の直線移動距離が傾きによって変わるので
素人にはお勧めできない、てゆかフレーム単位に描画する
リアルタイムゲームではお勧めできない。
この程度のプログラムで小数点演算を忌避する理由も特にないことだし
存分にベクトル演算してくれ。

それに>>249の書き方だと移動量は変わっても角度変数angleは変わらない。
2回目以降の反射のときはどうするんだろうか。
0252デフォルトの名無しさんNGNG
コピペ許可ねがいます>>1 >>1
----------------------------------
そんな事より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 で作成)
0253249NGNG
>それってDDAって言うの?
 前半とは別の発言のつもり・・・
  >>249 Angleを小さくして毎サンプルかければカーブを描けるけど
    それならDDAかな

>>251  直線発生だけじゃなくても、浮動小数点演算でも
  差分方程式ならDDAって言うと思うけどなあ・・・
0254デフォルトの名無しさんNGNG
>>252
面白かった。リンク先でいろいろやってみたり(藁
ニュー速たってたのはしってるけど、スレ倉庫にもないって。
9月ごろのスレだし、、、

1のレスが面白そう。
0255デフォルトの名無しさんNGNG
>吉野家コピペジェネレータ
作るなこんなもん〜(爆笑)
なんだかもう。
0256ヒッキー@プログラミングNGNG
そんな事より>>252よ、ちょいと聞いてくれよ。スレとあんま関係ないけどさ。
昨日、近所の漏れのスレ覗いたんです。漏れのスレ。
そしたらなんか人がめちゃくちゃいっぱいで座れないんです。
で、よく見たらなんか吉野家コピペとか張ってあるんです。
もうね、アホかと。馬鹿かと。
お前らな、吉野家コピペ如きで普段来てない漏れのスレに来てんじゃねーよ、ボケが。
吉野家コピペだよ、吉野家コピペ。
なんか親子連れとかもいるし。一家4人で漏れのスレか。おめでてーな。
よーしパパもコピペ作っちゃうぞー、とか言ってるの。もう見てらんない。
お前らな、ブロック崩しのソースやるからコピペやめろと。
漏れのスレってのはな、もっと殺伐としてるべきなんだよ。
熟練プログラマな奴といつ喧嘩が始まってもおかしくない、
刺すか刺されるか、そんな雰囲気がいいんじゃねーか。女子供は、すっこんでろ。
で、やっと落ち着いたかと思ったら、隣の奴が、薬師丸ひろ子もらった、とか言ってるんです。
そこでまたぶち切れですよ。
あのな、薬師丸ひろ子もらったなんてきょうび流行んねーんだよ。ボケが。
得意げな顔して何が、薬師丸ひろ子もらった、だ。
お前は本当に薬師丸ひろ子もらいたかったのかと問いたい。問い詰めたい。小1時間問い詰めたい。
お前、薬師丸ひろ子もらったって言いたいだけちゃうんかと。
漏れのスレ通の俺から言わせてもらえば今、漏れのスレ通の間での最新流行はやっぱり、
Win32API、これだね。
VB、Win32API。これが通の頼み方。
Win32APIってのはWindows依存。そん代わり使いこなすとGUIバリバリ。これ。
で、それにVB、。これ最強。
しかしこれを頼むと次から熟練プログラマにマークされるという危険も伴う、諸刃の剣。
素人にはお薦め出来ない。
まあお前らド素人は、HTMLでも書いてなさいってこった。
0257デフォルトの名無しさんNGNG
>>256
普段からこのスレには来てたり<252

まぁ、行数が多いから面倒なんだよな。読むのも。
なんか俺って荒らしみたいだな。何行も貼りつけて。

なんとなく「ちゆ」見に行ったんです。
そしたら、>吉野家コピペジェネレータ
があったんですね。実験に使ってみたり(藁

1さん、頑張れ!俺もなんか作ってみるよ、最近疲れ気味だが
ひまだ氏。
0258デフォルトの名無しさんNGNG
>>256
あと今 HTML と CSS , JavaScript かいてた。
どうせド素人だから……ブツブツ
#ギコぺダウソしたてでちょっとウキウキ(藁
0259デフォルトの名無しさんNGNG
おめでとう0xff君!

で、薬師丸ヒロミが・・・なにか?
0260ヒッキー@プログラミングNGNG
>>257
ごめんなさい、煽るつもりはなかったんです。
吉野家コピペジェネレータが面白かったので…。

何か作られたらUPしてみせてください。
0261デフォルトの名無しさんNGNG
いや、長いのは読まない主義だったのに
読んで得したスレだ。いや、筆舌っぽいんでドーモ
0262249NGNG
>それに>>249の書き方だと移動量は変わっても角度変数angleは変わらない。
>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
ふつー、vx,vyから角度なんて求めないけどね。
角度を10度変えたいなら、直接vx,vyを10度回転させる。
0264デフォルトの名無しさんNGNG
>>263
一次変換を忘れてるに 3 ガノッサ。
0265デフォルトの名無しさんNGNG
ガノッサという264は、カノッサを間違えて覚えているに東京ドーム2杯分。
0266デフォルトの名無しさんNGNG
>>265
じゃー漏れは薬師丸ひろ子2人分
0267(・ε・)NGNG
ステージデータをテキスト形式にして2chとかに貼り付けて
交換できるようにして欲しいに、4ガノッサ。
0268デフォルトの名無しさんNGNG
>>253
>直線発生だけじゃなくても、浮動小数点演算でも
>差分方程式ならDDAって言うと思うけどなあ・・・

DDAの最初のDが何を意味するか?
DDAがどういう要求から生まれたものか?
を考えれば、DDAは「実数演算を用いない」ことが
定義に含まれていると考えるのが自然
でなきゃ単なる微分解析じゃん
0269デフォルトの名無しさんNGNG
DDAは考え方としては、実数を分数で扱うような感じだな。
正直言うと、いまどきそんな考え方は必要無い。
(ラスタライザとか書くなら別だが)
0270ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。変更点は

・他の色のブロックの追加
・ステージエディタの修正

です。

>>249
毎回除算してた部分を書き直してみました。
次うぷするときは重力とか入れてみたいです。
>>251
ういー。なんかDDAというのは難しそうなので、
また今度調べてみようと思います。
>>262
アークタンジェントってどうやって使ったらいいのでしょうか…。
ラケットにこすれる時、vxを直接変えたほうが簡単かもしれないですねー。
>>263
ほおほお。そういうことも考えられるんですね。参考になります。
>>267
してみました。
4ガノッサください。
0271ヒッキー@プログラミングNGNG
なんとなくageとこう。
0272デフォルトの名無しさんNGNG
DDAは Bresenham の アルゴリズムで線・円描画で有名だけど
考え方としての応用範囲は広いよ。 差分解析だよね。
整数演算だけで実現出来るけど、無理に整数に拘る必要はないと思うよ

でもデジタル微分とか差分とか難しく考える必要はないよ
 説明は x=f(t) を  x=∫f'(t)t として f('t) を積分するだけ
 tの多項式なら何度かこの変換をすれば定数になる
 また2変数の多くは相互に参照すればt項が消せる
 ・・・・というのが理屈だけど、ゲームなんかだと理屈関係
 なく自然に使ってるよね。

 というか px,pyにvx,vyを毎回足すという処理が既にDDAだから
難しいというより 既に使ってるよ >>270
0273249NGNG
ソース見た所、まだAngleを変な感じに使ってるね・・・反射が難しいのかな

反射 は 回転(カーブ)に似てるけど壁の角度を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度
の方向に反射させればいい
0274249NGNG
上で使ってる PI は 3.1415/180 という定義になってるからそれを使ってる

でもPIは3.1415にして PiDegみたいな変数名の方がいいと思うな
0275249NGNG
 ラケットのスミでの反射はatnを使って角度を求めてもいいけど
  スミ座標と玉の中心座標の差 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デフォルトの名無しさんNGNG
ここ読んでも判るようにさ
http://members.tripod.co.jp/snishi/text/index.html
みんなそんな難しい手法使ってないから安心しろよ>>1
0278吾輩は名無しさんであるNGNG
うむ。吾輩などはむりやり型が好みだな。
0279デフォルトの名無しさんNGNG
でも、まあ、三角関数と行列ベクトルが判る程度に勉強はするべし
0280デフォルトの名無しさんNGNG
さらに微積分も必要かもな
0281249NGNG
いや、別にゲームだから中でどんな処理しようが動いてるなら問題ない
と俺も思うよ。
 でも、1はソースを公開してるし、習得も早いからさ、
 つい、スタンダードというか普通はこうするってのを教えたくなったのさ

 基本的なアイテムの動かし方を身に付けた方がいいだろって余計なお世話かもしれんけどな
0282sageNGNG
数学関係の参考テキストも少しこのスレであげといた方が( ・∀・)イイ
0283デフォルトの名無しさんNGNG
なんかさ、ずーっとボールが同じ速度にするのではなくて
壁に当たったら少しずつ速度がUPみたいなほうが
おもしろいとおもう。

実際、テトリヌなんか、ブロックの落ちる速度が速くなったりするしね。

# あんまりテストプレイさせてもらっていないから分からないけど…
0284デフォルトの名無しさんNGNG
http://jp.shockwave.com/games/arcade/bricks/bricks_frame.html
のブロック崩しみたいに、ボールの角度変え + 敵きぼんぬ>>1
0285デフォルトの名無しさんNGNG
>>284
カコイイ!
0286吾輩は名無しさんであるNGNG
制作中の人間に、あまり同ジャンルのゲームは見せないほうがいいと思うぞ。
0287デフォルトの名無しさんNGNG
>>286 スマソ。
パクリだ!なんて騒がれたら、1がかわいそう。
1さん、オリジナル な要素を含めてね(♥
0288デフォルトの名無しさんNGNG
ブロック崩し自体、既にパクリなので大丈夫です。
0289(・ε・)NGNG
>>270
http://shinkiro.tripod.co.jp/valkyrie/cd_gano.html

す、すいません。1ガノッサしかないんです。
0290デフォルトの名無しさんNGNG
/*  ここからコメント

>>260
煽るつもりはって言われても、
こっちもわざと書いてみたりしただけだし(藁 カメレススマソ
完成したらどっかにうぷしておきます。ただしURIは公開しません(藁

# なんとなく今暇だからアプリ作りつつ例の吉野家コピペ
# 作成ScriptをJavaScriptでかいてたり。

重力もいいね。なにかボールと反発するようなブロックとかも追加きぼん!
ボールが風か何かで吹き飛ばされるみたいなのとか。

みんながアイデア出すから、結構ゲームの発想の手間が省けてたり
してるんじゃないかと。

厨房のとき発想力の無さからあきらめたんだよね。折れ。
だからこそ応援しているぞ1!

ここまでコメント */
0291デフォルトの名無しさんNGNG
>>284
アルカノイドのつもりで敵にパドルぶつけたら、パドルが破壊された(笑

同ジャンルのゲームを見た方がいいかは微妙だね。
パクり以前にモチベーション下がるか上がるか・・・それは本人次第だけど。
俺なんかは、自分のアイディアが既出だったりすると萎えるタイプ。

最初このスレ見たとき俺もブロック崩し作ろうかと思ったけど、1が萎えそう
だからやめたよ。
0292デフォルトの名無しさんNGNG
けっこう面白いじゃん。みんな何点くらいいったよ?
おれは7314点が最高。三面がクリアできない。。。
0293292NGNG
記録更新。5面までで16,258点
0294(・ε・)NGNG
>>292
それは何?
インターネットランキングに対応しろと言うことかい・・・?(笑)
0295デフォルトの名無しさんNGNG
わざわざ落としてまでやる気無し
0296(・ε・)NGNG
あれ?ステージエディタはテキスト化されてないの?
作って公開しようと思ったんだけど。
0297デフォルトの名無しさんNGNG
ときどきブルブルいいながらブロックにくっついて移動するね
0298あきまさNGNG
age
0299デフォルトの名無しさんNGNG
ステージクリアした時の、ご褒美エロCGキボンヌ (´Д`;)ハアハア
0300 NGNG
いろいろみんな1を応援してるようだけど、
ソースまで載せて手ほどきするのはどうかと思うよ。
最初の頃のようにキーワードや概要だけを載せてあげたほうが、
1も試行錯誤するだろうし結果的に身に付けるスピードも速くなると思う。

まあ1が鵜呑みにせず自分なりに解釈して作り出すタイプ(根っからのプログラマ気質?)
なら全然構わないんだけどさ。
頑張って欲しいね。
0301デフォルトの名無しさんNGNG
>>299
ステージクリアまで待てないよ・・・
ステージの背景に描いて頂戴!
0302デフォルトの名無しさんNGNG
>>300 そうは言っても、衝突や反射をちゃんと解説してるサイトってある?
0303デフォルトの名無しさんNGNG
26180てん!わ〜い
0304デフォルトの名無しさんNGNG
つまんね〜。ちょうくそげーじゃん。
もっとましなの作れよ。
0305吾輩は名無しさんであるNGNG
>>304
お主が作ればよかろう。
0306ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑つぎうぷしました。変更点は

・マウスモードの追加
・残機を3に変更
・難易度の調整

です。

>>272
ほお、そうなんですか?既に使っていたとは(藁
理屈的にはムズカシそうですねー。ちゃんと理解できるようにします…。
>>273
ちょ、ちょっとまってください…理解するのに紙に書いてみないと
難しいです…正規化とはなんでしょう?ヘイホウコン使うんでしょうか。
もうちょっと頭使います。
>>277
お、ちょっと安心しました(w
ラケットがあたる位置で判定してたりするんですねー。
>>279
了解。頭に刻んでおきます。
>>280
ビブンセキですか。できるかな…。
>>281
おー、ありがとうございます。そういう意図があったんですね。感謝します。
>>283
一応、書いてはいたんですが、上がり方がしょぼかったようです。
難易度調整しました。
>>284
やってみました。ShockWaveって結構すごいですねー。
まだまだ負けてる…。敵っておもしろいので考えてみたいです。
>>289
ありがとうございます。1ガノッサ頂きます…ってガノッサって
おっさんだったんですね。
>>290
ご意見ありがとうございます。風とか吹いてもおもしろそうですね。
結局重力は今回、いれれませんでした…

更新age
0307ヒッキー@プログラミングNGNG
>>291
自分のアイデアが既出だったらちょっと悲しいと思います。
ブロック崩し、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
0309249NGNG
ええと、やっぱりベクトル・行列を勉強した方がいいよ
といっても、
 ベクトルは単に複数の数をまとめて扱うというだけ
 行例は、数式の係数をまとめて扱うというだけという理解でとりあえずスタート

たとえば、玉の動きは
  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
>>309
気持ちはうれしいけど、その説明は
ちゃんと数学の本を手にして読まないと
わけわからんかと。
0311デフォルトの名無しさんNGNG
 演算子法的立場からの解説って奴だね
 遅延演算子も導入してさ
 一挙に微積分飛び越してフーリエ・ラプラス変換の世界にご招待ってのは?
0312249NGNG
>>310 そうかもしれないね。
 Web上の教科書は 特にベクトル 行列は少ない。基礎だからね
 だから高校の教科書でも手に入れて勉強するしかないね。

 ちょっと調べてみつけたのは
 高校:
ttp://www.kwansei.ac.jp/hs/z90010/hyousi/2106.htm

応用数学なら見つかるんだけどね
ttp://next1.cc.it-hiroshima.ac.jp/MULTIMEDIA/diffpub/diffpub.html
0313249NGNG
どうも探し方が悪かったみたい

数学玉手箱
http://www.nikonet.or.jp/spring/sanae/MathTopic/MathTopic.htm

ベクトルとは
http://www.nikonet.or.jp/spring/what_v/what_v.htm
0314デフォルトの名無しさんNGNG
>>1
エロ画像ソース!

★☆★いやんエッチ!見ないでよ!★☆★
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;
この程度で十分かと。
0316249NGNG
>>315 そりゃそれで、十分といえば十分。

だいたい、今のAnglleで傾斜させる方式でもゲームが今の状態で完成だとすれば十分。
  実現方法は面白さとは何の関係もないしね
0317デフォルトの名無しさんNGNG
>>309
 |vx| |cos ,-sin|
 |vy| | sin , cos|
じゃなく
 |cos ,-sin| . |vx|
 | sin , cos|  |vy|
てかいてよ
0318(・ε・)NGNG
ブロックを全部壊した後、自機で球を受け止めてクリアにしてはどうだろうか。
0319(・ε・)NGNG
Block00,9,000,032#Block01,9,016,016#Block02,9,032,000#Block03,9,216,032
Block04,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>318NGNG
なぜ?
0322デフォルトの名無しさんNGNG
>>318
なんかいいね。
0323デフォルトの名無しさんNGNG
>>318
なんだそりゃ
マッピーで盗品全部集めた後に
開けたドアを全部閉めたらクリア
って言ってるのと同じだぞそれ
0324(・ε・)NGNG
Block00,9,104,184#Block01,2,024,120#Block02,9,184,152#Block03,2,024,096
Block04,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 マッピー知らんです。ゲームはあまりやらないもんでして。
0325(・ε・) ◆LbaGYMio NGNG
要望は出すけど、組み込むかは>>1が判断してね。当たり前だけど。
0326デフォルトの名無しさんNGNG
とりあえず、ゲームのバランス調節等のアドバイス

基本は、難しいことをしたら見返りがあって、簡単なことをしたらペナルティ。
見返りってのはボーナス点が貰えるとか、ブロック崩しなら速度が遅くなるとか。
ペナルティはその逆。
とは言っても、必ずしもこれに従う必要は無いよ。
例えば同等の難易度の2種類の行為について、片方だけ点を高くしておくと
点を稼ぐにはそれだけを狙う必要があって、結果的に難易度の向上に繋がる。

クリアだけなら簡単、稼ごうとすると難しくなるようにようにするのが俺流。
0327デフォルトの名無しさんNGNG
>>320
iniファイルのステージファイル名を書き換えるのがいいと思われ
0328初心者さんNGNG
漏れも超級素人なんで見てておもしろい。
がんばってね。>>1
0329コーダーさんNGNG
今更発見したが、いいスレだ。

>>1
俺は始めて作ったゲームっぽい作品はBio100%の戦艦シューティングもどき
だった。なつかしい。
最後までがむばれYO!
0330ななしNGNG
コンボボーナスの点数がカウントされないことがあるみたいだよ。
水平に近い弾道でブロック壊したら、
2Hitsって出たけど、ポイントが0から増えなかった。

うまく再現できないんで、もう少し試してみる。
0331デフォルトの名無しさんNGNG
なんか、自機の真中心で跳ね返したらブロックを突き抜けて
壊すみたいのがいいなぁ。

要望ばっかだが、>>330の 問題をぼくも確認してみます。
0332デフォルトの名無しさんNGNG
/*    ↓これが
http://www.google.co.jp/search?q=%83u%83%8D%83b%83N%95%F6%82%B5+%95%9E&hl=ja&lr=
ブロック崩し + 服 で検索。
さすがにエロ系が多かった。
0333デフォルトの名無しさんNGNG
>>332
コメントかい。(誰かのレスにそんなかんじのが…パクリ?)
しかもコメントとじれてないし。

それより>>1のヒッキー@(略)
やってみたけど、結構おもしろかった。
ず〜っと前のヴァより断然面白くなってるよ。
コンボ点&角度変化&玉の速度アップで。
vectorにでも、こういうゲームはうようよあるから、
頑張れ!
0334デフォルトの名無しさんNGNG
ごめんな。俺には1794点しか取れないよ(;´Д`)
0335ヒッキー@プログラミングNGNG
>>308
ほお、高専の教科書ですかー。穴場的ですね。
普通の本屋で注文できるのかな…
>>309
おー、とてもよくわかりました。
回転の式はCGの本に載ってたので、1回画像の回転のプログラムを作るときに
使ったことがあります。そのときは行列の意味がよくわからなかったんですが(藁
反射は単に符号を反転させるだけで良いというのは分かるのですが、
ボールが早すぎる時に、反転しても画面に戻ってこなくなる事があったので、
ifをいれて、画面内の方向のみを向くようにしました。
伸張は…(y軸が斜面で、斜めにあるのを上から見る場合は)というのが
よく分かりません…。
>>312
高校の方のページ、なんか読めそうです。
分からないところ、全部読んでみようと思います。
>>313
わざわざいくつも探して頂いて申し訳ないです…
あとで、ウチのページでまとめて紹介したいと思います。
>>314
あの…エロ画像ならHDDにも入っています(w
でも、やっぱ使ったらまずいかなぁと
>>318
はは。そうですねー。おもしろいかも。
今の段階では、受け止めてクリアの表示を出してる間、
ボールが自機に埋まる or 変な位置にあるような気が
するので、ちょっと考えてみます。
>>319
やってみました。
うまりますね…。残像残ってるし。埋まらないように考えたいと思います。
わざわざ上げていただいて、サンクスです。
>>320
あー、たしかに。
いじってみようと思います。
>>324
今、実験的に速度の制限つけてみました。
直るかどうかはもうちょっと試験運転しないとわからないですが。
>>326
あー、そういうのおもしろいですねー。
ゲーセンでシューティングゲームやってると、そういう設定のが
結構ありますね。名作ほど微調整が細かかったり。
>>328
ういー。がんばりますよー。もうちょっと完成度あげたいです。
0336ヒッキー@プログラミングNGNG
>>329
この前、Bio100%のページいきました。
戦艦のゲーム、以前にどっかでやった事あるような…(藁
>>330
実は水平に近いほど点が入らないようにしてあります。
テストしてると、10度くらいの角度にしたら、簡単にクリアできるし、
点もかなり入ってしまったので。
>>331
おぉ、そういう設定の仕方もあるんですねー。参考になります。
>>332
服がだんだん欠けていくゲームがイパーイありますね。
全部同じ様に見えるのは気のせいでしょうか。
>>333
どもども。ありがとうございます。
vectorですかー。一回、ゲームのところ覗いてみます。
>>334
今回のUPしたやつは前より難しいです。
僕もそんなに点が取れなくなりました…
0337ヒッキー@プログラミングNGNG
この前、この板のスレ「シューティングゲームを作りたい!!」
http://pc.2ch.net/test/read.cgi/tech/990219336/
を読みました。

作ってみないと気付かないような所にワナがいっぱい潜んでるんですねー。
(3Dシューティングで、リプレイのデータが浮動小数点で
 管理してるとずれてくるなど)

あと、雷電のレーザーはどうやって実現してるのか気になりました…。

それから、ひとつ疑問なんですが、ローカル変数とグローバル変数は
どういうときに使い分けたらいいんでしょう。全てグローバルでも
よさそうに感じるのですが…。
ローカルだと関数呼び出すたびにメモリを確保しないといけないと思うし、
関数に引数を使うときも、スタックに積んだりしてたら余計に遅くなったり
しないかなぁと、ふと疑問に思いました。
0338ヒッキー@プログラミングNGNG
あぁ何か日本語がおかしかった。
0339デフォルトの名無しさんNGNG
>>337
グローバル変数はなるべく使わない方がいいよ。
理由は色々あるけど、一番恐いのはどこで変数の内容が破壊されるか分からない事。
以前、全てグローバル変数で組んでて原因不明のバグで悩んでる人の相談にのった
ときは、ループ用のカウンタをグローバル変数にしていて、ループの中で別の関数
を呼んでいるんだけど、その呼ばれた先でも同じ変数を使ってループしていた。
その関数呼ぶとループ用の変数が書き換えられるから、それが原因で無限ループに。

まぁ、この辺はグローバル変数でトラブってみないとピンとこないかもしれないが。
昔のBASICはグローバル変数しか無かったから苦労した。

ちなみに速度で言えば、ローカル変数の方が速いよ。
ローカル変数が使うメモリ領域ってのはスタックメモリって呼ばれていて、あら
かじめ決められたサイズで最初に確保してあるの。だから、メモリ確保に関する
コストはほとんど0に等しい。
(ちなみに通常のメモリはヒープと呼ばれていて、グローバル変数はヒープに
確保される)

ローカル変数の方が速い根拠だけど、1つはコンパイラの最適化がかかりやすいこと。
ローカル変数ってのはその関数を抜けたら消えてなくなるものだからメモリに値を
保存しておく必要が無いので、実際にはメモリを確保せずにCPUのレジスタを割り
当てる場合がある。レジスタはPCの中で最も高速にアクセスできるメモリ。
もう1つは、ローカル変数は関数に入った時点で順番に確保されるから、関数内で
使う変数がメモリの中で近い位置に確保されること。CPUのキャッシュは32バイト
単位でキャッシュしてるから、1つの変数にアクセスした際に他の変数もキャッシュ
に入る可能性が高くなる。

ローカル変数とグローバル変数に関しては、構造化プログラミングを勉強してみると
いいかも。いまどき構造化プログラミングなんて参考書無さそうだけど。

ちなみに、スタックメモリはコンパイル時にサイズが決まっていて、通常はあまり
大きくないのでローカル変数で巨大な配列とか使うとエラーが出るので注意。
グローバル変数ならヒープに確保されるので、20MBくらい使っても平気。
0340339NGNG
こういう事を疑問に思って、質問してみるってのは良い傾向だと思うよ。
(大事なのは聞いてみることより、むしろ疑問に思うこと)
0341デフォルトの名無しさんNGNG
せっかく VBには構造体があるから まず ボールを構造体にしよう

 ball_xとか vx とかを一つの構造体にまとめたら 関数呼び出しが楽だし
 ボールを2つにするのも簡単になる
0342デフォルトの名無しさんNGNG
>>339
>グローバル変数ならヒープに確保される

…ん?
0343デフォルトの名無しさんNGNG
>>342
間違っていないと思うけど。グローバル変数はプログラムの
開始から終了までずっと残っているものなので、ヒープ領域
に確保されると習った。

あと、ローカル変数でも static 宣言した変数はその関数が
終了しても値が残っていて、これもヒープに確保されると
習った。

間違っている?
0344デフォルトの名無しさんNGNG
>>343
間違ってる。BSS で検索。
0345デフォルトの名無しさんNGNG
初期値があるやつはdataセクションに入ると思われ。
0346デフォルトの名無しさんNGNG
>>344
BSSとかって環境依存な気がする。
0347デフォルトの名無しさんNGNG
>>346
いずれにせよ、ヒープに確保されるのは間違いって話では?

C の規格ではメモリの分類に関しては何も言ってないが、一般には

text プログラムのコード (サイズ固定)
bss 初期化されない変数 (サイズ固定)
data 初期化された変数 (サイズ固定)
stack 自動変数 (サイズ可変)
heap 動的に確保/解放されるメモリ (サイズ可変)

ぐらいに分けて管理してることが多いと思われ。Win32 だとヒープもプロセスヒープ以外に、プライベート
ヒープとか複数持てたり、スレッドが絡むとスタックも並行して複数存在することになるから、いろいろと
話がややこしいけど。
0348デフォルトの名無しさんNGNG
>>347
習ったって話なので一般論を習っただけでわ?
bss やら data ってのは環境依存というより実装依存だと思われ
0349デフォルトの名無しさんNGNG
>>348
とりあえずこういう用語は一般的に使われるし
覚えておいて損は無いでしょ。
得も無いかもしれんけどな。
0350デフォルトの名無しさんNGNG
>>347
漏れがC覚えたのZ80だったから、スタックとヒープしか無いような状態だったよ。
0351デフォルトの名無しさんNGNG
なんでそう言い張るんだ!
 ヒープはヒープ! alloc系の操作で確保する領域
 普通の変数はそれとは別のセクションに取られる

領域は大まかにコード用の領域、グローバル/staticデータの領域、ヒープ用、スタック用と
4つに分割される。 一般的にはスタック用とヒープ用の領域は重なっていて、
スタックは下から ヒープは上から確保される

 基本はZ80用でも構成は殆ど同じ 違いはROM用に定数用の領域があったりする程度
0352デフォルトの名無しさんNGNG
>>351
> スタックは下から ヒープは上から確保される
他は知らんが x86 は逆だな。
0353ヒプ子NGNG
私のために、喧嘩はやめて〜!
0354デフォルトの名無しさんNGNG
1がついて来れないから、そろそろやめにしないか?
0355(・ε・) ◆LbaGYMio NGNG
有名どころかな?
http://www.interq.or.jp/tohoku/kenta/
0356デフォルトの名無しさんNGNG
下というのが
番地nからn+1,n+2と向かっていくのか
番地nからn−1、n−2と向かっていくのか分かりづらいですな。
上位って一般的に番地0のこと?
0357デフォルトの名無しさんNGNG
太陽のあるほうが上。
地面のあるほうが下。
0358デフォルトの名無しさんNGNG
big endianでは0番地が上
little 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
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。変更点は

・毎秒60フレームに変更・ソースの見直し

です。

ソースが読みにくくなってきたので、Form1のイベントに関係ない部分は
別ファイルにしました。
あと、今までGetTickCountを使って毎秒のフレームの調整をしていたのですが、
なぜか10ms単位でしか時間を調整できないので、timeGettimeを使うように
変更しました。
0362デフォルトの名無しさんNGNG
このスレ見てたらVB始めたくなりました。
プログラムは初心者レベルなので初心者本買って
勉強してみたいと思いました。
頑張ってください>>1さん
0363343NGNG
大変勉強になりました。私は今までヒープと bss と data を
全部ひっくるめてヒープと捉えていたようです。

>>360
>http://www-6.ibm.com/jp/developerworks/security/000721/j_smash.html

かなり参考になりますね。この話題に限らず、www-6.ibm.com には
有益な情報が多いと思います。
0364デフォルトの名無しさんNGNG
超なにげにDeveloperWorksのリンクを引いてくるあたり、
やはり>>1はプロかセミプロで、このスレは壮大なネタなのではとか…思ってみたり…
ソースのコメントのつけ方とか………
0365(・ε・) ◆LbaGYMio NGNG
Googleに「ヒープ BSS」を尋ねて見たら2個目にあったよ。
ネタでも実際ゲームが出来てるので、それを楽しんでます。
仕事の合間にちょうどいい。

最新版いい感じになったね。まだたまにすり抜けるけど。
前よりとても良くなった感じ。個人的には球が速すぎるけど。
0366デフォルトの名無しさんNGNG
>>364
VBが初めてであって、C++とか結構やってるんでしょう。

>ヒッキー
パドル?にあたる場所で反射角度を変えてほしい。
端にあたると鋭角に反射で、もう一回あたると鈍角に戻るとか。
0367デフォルトの名無しさんNGNG
つーか、まん丸いパドルにチャレンジキボーンヌ
0368ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/lifegame.zip
↑なんか、ライフゲームなるものをハケーンしたので、VBで作ってみました。
 なんだかよく分からないけど、セルオートマトンらしいです。

>>362
おー、がんばってください。
なんか、嬉しいです。僕もがんばります。
>>363
ほおほお。他のファイルも見てみようと思います。
>>364
素人ですよ。
プロならもっと保守に便利なソースを組まれるんではないかと
妄想してみたり。僕のは設計も何もしてないのでぐちゃぐちゃです(藁
>>365
どもども。
自分でも球速すぎるんでは…と思います。でもクリアできない
くらいがいいかなぁと。
>>366
う〜ん、それなんですけど、なんとなく取り入れてません。
球が当たる瞬間に、パドルが動いてる方向によってちょっとずつ
変える方式にしてます。
>>367
まん丸いあたり判定…どうしましょう。
シューティングのスレでは8角形で近似するとかいう意見が
書いてありましたねー。…といってもそれすらどうしたらいいのやら。
0369デフォルトの名無しさんNGNG
>>367
ほとんどのゲームは「コレ」じゃないから、
プログラム組むのは難しいけど、
おもしろいかと。
0370デフォルトの名無しさんNGNG
なぜ1さんはいつもさげるんだろう?
0371デフォルトの名無しさん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^2+r1^2
○ (x0-x1)^2+(y0-y1)^2 < (r0+r1)^2
○ sqr((x0-x1)^2+(y0-y1)^2) < (r0+r1)
0373359NGNG
反射したときに新しい進路で当たり判定するっていうのは、例えばボールが
左上に進んでいるとして
■■
■
このちょうど角の部分にボールが当たったときに、左か上のどちらかで反射の
処理をするよね?左のブロックで処理をしたとすると進路は右上になる。
この右上に進路が変わったときにもう一度判定をしないと、既に上のブロック
にも当たっているのに反射の処理をしないから、1回分だけ判定が遅れてブロッ
クの中にめり込む。もし上のブロックが壊れないブロックだった場合は、球が
ブロックの中に入ってしまうよ。

>>371
atnは使わない方がいいと思うよ。
反射後の速度はV'=V-2N(N・V)。
(Vは反射前の速度ベクトル、Nは正規化された球の法線ベクトル)
0374デフォルトの名無しさんNGNG
コントロールの変数名にはプレフィックスをつけるとよりソースが見やすくなるよ。

プレフィックスというのは変数の命名規約みたいなもので、
例えば、コマンドボタンなら必ず変数名の先頭にcmdをつけるとかそんな感じです
MSDNのキーワードに "プレフィックス, コントロールの名前" と
入力すればM$が推奨しているプレフィックス名の一覧が出てくるはず。

1さんのソースで言えば、check1にはchkMouseModeとか、
timer1にはtmrCallMainLoopっていう感じかな。
check1とかcommand1とかは極力さけて、意味のある名前をつけた方がいいよ。
0375374NGNG
間違えてageチャタヨ...
激しく鬱駄。
内容も偉そうだし。すんまそん。
0376デフォルトの名無しさんNGNG
ageると>>1を愛する8頭身が来るからね。
0377デフォルトの名無しさんNGNG
>>376
       |   |
       |   |
       |   |
       |   |
       |   \
        |   ∧_∧
     // ( ´Д`)\  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
っと、AsciiArtばかり貼っちゃった。
>>377=>>379-381=>>382
ごめん。>>378=>>1さん。
その代わり、いろいろバグなど見つけてきます〜。
0383デフォルトの名無しさんNGNG
あげ。
おれあんまりVBは強くないけど、がんばってくる。>>1
しーってどんなキャラかわからんかったから、
適当に編集しちゃった。しぃファンの方、スマソ。
0384デフォルトの名無しさんNGNG
このスレいい!
0385   NGNG
なあおい、アイコンを自由に変更できるツールおくれ。。。
0386デフォルトの名無しさんNGNG
>>386
まさかWINDOWSのアイコンじゃないだろうな?
0387マッドハンドNGNG
>>385
窓の手
0388  NGNG
>>386
そうだけど、開発はBCC32だから、

作成のしかたでも教えておくれ。
おそらく、どっからどこまでをアイコンデータとして登録してるのか
しらないから。
0389デフォルトの名無しさんNGNG
リソースファイル作るだけじゃないの?
0390 NGNG
>>389
?
もっと分かりやすく、頼みます。
0391デフォルトの名無しさんNGNG
ここは質問スレではありません。
0392デフォルトの名無しさんNGNG
>>391
でた、ゴミ出す曜日以外の日に、ゴミ出し監視おばちゃん!
0393デフォルトの名無しさんNGNG
>>392
でた、朝起きれねえで部屋ゴミだらけなやつ!
0394デフォルトの名無しさんNGNG
どっちも他のスレでやってくれ。
>>1に迷惑かけるな。
0395デフォルトの名無しさんNGNG
>>393
うっせー、あたってるYO!
0396デフォルトの名無しさんNGNG
パドルと玉の摩擦で玉にスピンがかかるようにして
スピンがかかっているとカーブだ!ブロックに当たって
反射するときも変化するぞ!
・・・・・・・・・・とか

パドルを高速に移動させると
     ∧∧   )      (´⌒(´
  ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
      ズザーーーーーッ
のアニメーションに変化だ!
・・・・・・・・・・とか

ごめん、逝ってきます
0397デフォルトの名無しさんNGNG
>>396
スピンはいいアイデアだと思う。
0398デフォルトの名無しさんNGNG
スピンとか重力とか空気抵抗やるなら とにかくまず Angle の変な使い方を止めろ
0399デフォルトの名無しさんNGNG
スピンはいいかもしれないけど、ボールの速さとか考えると、
逝って良し難易度だな。
0400デフォルトの名無しさんNGNG
重力いれたらブロック崩しじゃないよ。サーカス。
サーカスのリメイクはタイトーのプランプポップが良かったな。
0401 NGNG
>>400

MS-DOS(98)の名作。
ぶろっくでぽん♪も忘れないでほしい。
0402ヒッキー@プログラミングNGNG
昨日は体調悪くて死んでおりました。
ティムの右上辺りが腫れているので脱腸かもしれません(w

しばらくしたらレスします…。
0403デフォルトの名無しさんNGNG
8頭身!!>>1を助けれ!
0404デフォルトの名無しさんNGNG
  ___________...∩ _______──────────
  ───────────[二]─────── ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   / ̄/
                   | |                     _     /  /
              ___/三三)____              \\  /   ./
         __/            _ヽ.              \\   /
       /′     ===      ((_) 丶─┬───────" \\ /
      / ̄// ̄ ̄| | ̄ ̄ ̄ ̄|________| モナー救急        ○<
    イ   //   ||[ ̄ ̄] |            | γ──────ヽ   \\
  / 人_/|ヽ──| .|  ̄ ̄  | __      _|./           \   \\
 ( -     |   / |____| (__\ ./ ̄ ̄                ̄ ̄ \\
  ゝ_     ̄ ̄          ___/                          ̄
      ̄ ̄ヽ ̄ ̄ ̄ ̄|| ̄ ̄ ̄ ̄||
         ヽ二二二二二二二二二二二二二
   Λ_Λ
  ( ;´∀`)    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  (    つ  <   >>1さん、病院へ……
  | | |     \___________
  (__)_)

>>377=>>379-381=>>382=>>404
0405デフォルトの名無しさんNGNG
                    �I
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡
                    ミ彡       (⊃))))
                    ミ彡        \\
                    ミ彡         ヽヽ
                    ミ彡      ∧∧ | | < 1さん待ってて〜!
                    ミ彡     (´Д`)丿丿   今うまい棒買ってくるから〜
                    ミ彡  /⌒     (
                    _ミ彡_∠/⌒ヽ �@  ヽ
                  / ミ彡   \   \ 命  )
                 /  ミ彡 /\_)   ) /\ \/つ < 全財産ダスヨ〜 ¥940
                /////     //   \ ノ
                し'し'し'し’      ( (
                             し     3    3   3
0406デフォルトの名無しさんNGNG
         ||             >
         ||       ∧ ∧  <
         || 〜′ ̄ ̄( ゚Д゚)  >              / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
         ||  UU ̄ ̄ U U  <         >・) <  >>405のお金にぶつかってヘリ落ちたモナー
         ||            >         (  彡 \__________________
         ||            <          √ ゞ((○
         |厂 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
         ||               | >>1を救助するモナー |
         ||               |____   ___|
         ||                     \/
         ||                  Λ_Λ
         ||                 ( ´∀`)
〜〜〜〜〜〜 || 〜〜〜〜〜〜〜〜〜〜〜(    つ〜〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜 || 〜〜〜〜〜〜〜〜〜〜〜| | | 〜〜〜〜〜〜〜〜〜〜〜〜
〜______□____________(__)_)___〜〜〜〜〜〜〜〜〜〜
〜〇        |               \           )〜〜〜〜〜〜〜〜〜〜
〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜\〇 ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜( ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄)〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄〜〜〜〜〜
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
`〜〜〜〜〜〜〜〜

>>377=>>379-381=>>382=>>404=>>406
0407モナー板から移住者ひとり。。。NGNG
 
0408デフォルトの名無しさんNGNG
AAばっかだ・・・鬱だ。
1よ元気になれ。俺はおまえは有望だとみこんだ(藁
寄付金だ↓
 ┏━━━━━━━━━━━┓
 ┃100モナ / ̄\ Λ冂Λ .┃
 ┃     |    |( ´∀` )o ┃
 ┃     \_/ (∪   φ) ┃
 ┗━━━━━━━━━━━┛
0409デフォルトの名無しさんNGNG
>>377=>>379-381=>>382=>>404=>>406=モナ板出身?
0410デフォルトの名無しさんNGNG
俺の予想。
ギコぺを使っていると見られる。
だってギコぺデータ使いすぎ。>>377
0411デフォルトの名無しさんNGNG
   Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ( ゚∀`) < 看病に来ました〜。
┌∪┐  )つ  \________
└─┘ ヽ
〃(__人__ノ
0412デフォルトの名無しさんNGNG
1はタマ取って田中の仲間入りですか?
0413デフォルトの名無しさんNGNG
なんかネタスレみたいになってきたけど、、、
1はPCのやりすぎだったりしてな。
0414デフォルトの名無しさんNGNG
402 名前: ヒッキー@プログラミング sage投稿日:01/11/24 11:17
昨日は体調悪くて死んでおりました。
ティムの右上辺りが腫れているので脱腸かもしれません(w

ティムの ティムの ティムの ティムの ティムの ティムの ティムの!!!!
0415デフォルトの名無しさんNGNG

 ■■■■■
 ■ □   ■
 ■      ■
 ■      ■
 ■■■■■
0416デフォルトの名無しさんNGNG
>>415って何?
つーか発展ないな…
0417デフォルトの名無しさんNGNG
1さぁぁぁあん♥(藁
0418ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑更新しました。

・ボールの動きと自機からの反射を見直し
・無限ループの解消

などしてみました。
ボールの動きは変な計算をしていたので、ちゃんと
毎回、Sin・Cosを計算するようにしました。前のは
なぜちゃんと動いていたかわかりません…。
相変わらず体がおかしいです。
0419デフォルトの名無しさんNGNG
>>1体気ぃつけぃやぁ。
さっそく、ソース覗いてみるは(藁
0420ヒッキー@プログラミングNGNG
>>371
う〜ん…ムズカシイです…。
atnって、タンジェントの逆の計算なんですね。
ってまだ難しくて理解できません…。なぜそうなるんだろう。
>>373
角、ちゃんと上も横も判定するようにしました。
elseifでかいていたので、どちらかになっていたみたいです。
正規化と法線ベクトルとは…?調べてみます。
>>374
そうですねー。
VBの本見てみたら書いてありました。ちゃんと名前付けたほうがいいですよね。
>>382
AA、なごませていただきました(藁
実はリアルモナーも八頭身も好きです。美の追求とか。
バグハッケソ、よろしくお願いしますー。
>>385
既存のファイルのアイコンを変更できるツールでしょうか。
うーん、リソースってどうやって入れ替えるんだろう…。
>>396
う…難しい…(w
でも、おもしろそうです。斬新なアイデアですねー。
>>398
直してみました…。
>>399
たしかに。ゲームとして難しくなるかも。
>>400
サーカスですかー。どんなゲームでしょうか。
サーカスチャーリーとかいうやつとは別物?
0421ヒッキー@プログラミングNGNG
>>401
98ですかー。数年前にエロゲーをよくやりました。
>>377=>>379-381=>>382=>>404=>>406
はは。AA(・∀・)イイ
>>408
どもです。
100モナって…円じゃないのかー。
>>411
どもども。すんまそん
>>412
   ,――、  ,――、
  /    ヽ     |
 |    _.ム   ノ
  \/ ̄    ̄ ̄\  
   /    ,-―――-ヽ
  /  /  /   \ |
  |  /   ,(・) (・) |   
  |  |     __  ● __ |
   | |    =__= |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   | ヽ    /__//  < んなわけねーだろ
 /|  \     /\   \______________
0422ヒッキー@プログラミングNGNG
>>413
やりすぎかも…。
肩がこってしまいました。
>>417
ぐはぁ
>>419
おー、ありがとうございます。
だんだん読みにくくなってきました…。
ちゃんと設計しないとダメですね。
0423デフォルトの名無しさんNGNG
スレの成長が止まってきたね・・・


…あっ!レポート提出期限明日だったっ、
0424デフォルトの名無しさんNGNG
1ってセンス良すぎ。
いや、プログラミングもなんだけど、
このレスがなんとも・・・
0425デフォルトの名無しさんNGNG
>>424 なぁ。
結構初気の頃からここいるけど、1センスいいよなぁ。
0426249NGNG
>>420 今迄出来るだけ見てたけど、 さすがに限界。

   というかVBだとこの規模になってくると 見るのが限界になるんだよね。
   ノートパットで編集出来る付近がさ


そろそろオブジェクト指向な言語に移ってみたらどう?
手近な所でDelphiとかさ
0427  NGNG
Delphiやるくらいなら、Javaのほうがいいかと。
0428デフォルトの名無しさんNGNG
>>427
> Delphiやるくらいなら、Javaのほうがいいかと。

Java って使ったことないけど、ゲーム中に GC かかっても大丈夫 ?
0429デフォルトの名無しさんNGNG
>>428
そもそも 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
>>430
丸いね・・・下の、なんていうだ、あれが。
0432デフォルトの名無しさんNGNG
うむ
頑張ってるねぇ >>1
とりあえず、僕もC++でブロック崩し 作ってみようかな。
とか思っちゃったよ。

低レベルなのでも作ったら 欲しい?
0433433NGNG
俺が知ってるブロック崩しの最強はコレ。(GameboyColor用)
作り掛けぽいけどとにかくエミュででもやってみれ。

ttp://www.student.oulu.fi/~aeeben/images/berlin.png
ttp://www.student.oulu.fi/~aeeben/download/berlin.zip
0434Javaでゲーム作ってたヒトNGNG
あー、JavaのGCは大丈夫じゃないです。
挙動が予測可能な通常のマルチタスクOSのメモリ管理やタスク管理とは
まったく訳がちがいます。

Java 1.2から1.3、1.3から1.4に入れ替えただけで
今までに作ったほとんどのゲームのGC引っかかりポイントが変わったのには
もうぶち切れ。
0435デフォルトの名無しさんNGNG
自分でときどき都合いいときにgcを呼んどけばいいんじゃない?
0436デフォルトの名無しさんNGNG
なんでもいいから やってみたら?
 今くらいのレベルまで行ったら次の言語に移るの繰り返せば
 本人の勉強にもなるし 見てる方も面白いからさ
0437デフォルトの名無しさんNGNG
別に言語を移る必要はないと思うが。
まだまだ全然VBの限界って訳じゃないし、現時点で重いわけでもないし。
0438デフォルトの名無しさんNGNG
>>437
VB を「限界」まで使うのは、個人的にはお奨めしないけど。(ねぇ)

コードを読んでみたけど、まだ VB でも行ける範囲だとは思う。ただ、そろそろ行き当たりばったりでソースを
拡張するのは辛くなってきてるのは確かだな。
0439249NGNG
いや、VBの限界ってのじゃなくて、
 ギャラリー側からは気軽に見るのがツライサイズって事ね
 作者側からはまだ頑張れるサイズだと思うよ。

それに、目標は本人のスキルアップにあると思うから
  他の言語も触ってみるのも大事かと
  VBonlyでこれ以上慣れると弊害もあるだろうし

個人的には VBからならDelphiを経由してJava そしてC/C++
というふうなステップがいい感じじゃないかと思うんだけど、どう?
0440デフォルトの名無しさんNGNG
DelphiとJavaは経由しなくていいと思うけど。

Cでプログラムの低レベルな部分を学んだほうがいいと思う。
DelphiとJavaはその後でいいんでないの?

低レベルな部分を知らないで、DelphiやったってVBを続けるの
とほぼ一緒だろうし。Javaは別の利点があるけどね。
0441デフォルトの名無しさんNGNG
VB   1はもう入門段階は卒業証書を発行してあげていいレベル

Delphi  少し厳し目の文法でVBでユルユルになった感覚を正す
      またオブジェクト指向的スタイルへの誘いにふれ
      ボールやアイテムをコンポーネント化してみよう

Java Freeしなくていい気楽さと Cスタイルの気楽さを楽しみながら
     ポトペタじゃないスタイルへの入門

C/C++  Windowsのメッセージ駆動な仕掛けに苦しみながらも
ローレベル処理をシコシコ書く楽しみに触れる
0442437NGNG
俺はプログラマとして最低のレベルってのが、思った物は何でも作れることだと
思うが、1はまだそこまで行ってないかと。
だから他の言語を覚えるのはそこまで達してからの方がいいかと。
新しい言語を覚えるにはまず文法を覚えなきゃいかんが、文法ってのはいくら
覚えてもプログラミング技術は全く進歩しないから、文法を覚えるまでの期間は
プログラマとしての進歩は無いよ。
大学や専門学校での初等教育では文法を覚える事=上達のような教え方だが、
正直言って文法を覚えた時点でやっとスタートラインに立てたという程度。

プログラミングの本質はアルゴリズムとデータ構造で、プログラミング言語って
のはそれを具現化する道具でしかない。

もちろん文法の制限によって学ぶことが不可能または著しく困難な概念もあるが、
新しい概念を学ぶよりも制限された機能の中で目的を達成する考え方を学ぶ方が
重要だと思うよ。

とりあえず1はそろそろ、ボールを2つ以上動かすことを考えてみては?
あと、どうしたらソースが見やすくなるかを考えてみるといいかと。
他の人のソースがあれば、それを見てみるのもいいかも。
0443デフォルトの名無しさんNGNG
他の言語に移るのは>>1の判断でよいでしょ。
>>1がVBに限界を感じたら移れば良いだけ。
限界を感じなければ>>1はその程度の器ってこと。

まぁ、仕事なら適材適所で言語を選ぶんだけど、趣味だからあま
り外野がアドバイス以上の口出しをしてはいけないな・・・。

>>1
参考程度にな。
0444デフォルトの名無しさんNGNG
8等身。とりあえず>>1が発言しやすいように
いったんお茶を濁してくれ。
0445デフォルトの名無しさんNGNG
             / ) / ̄ ̄ ̄ ̄ ̄ ̄ ̄
            ./ / |  >>1さん
           / /  \          / ̄ ̄ ̄
           / /     ̄|/ ̄ ̄ ̄ ̄| ご自愛を
         ./ /_Λ     , -つ   \
         / / ´Д`)  ./__ノ        ̄∨ ̄ ̄ ̄ ̄
        /    \ / /   ⊂_ヽ、
        .|    へ/ /      .\\ Λ_Λ
        |    レ'  /、二つ       \ ( ´Д`)
        |     /.          . >  ⌒ヽ
       /   /             /    へ \
       /  /               /    /   \\
      /  /               レ  ノ     ヽ_つ
     / ノ               /  /
   _/ /                /  /|
  ノ /                 ( ( 、
⊂ -'                    |  |、 \
                     .  | / \ ⌒l
                       | |   ) /
                      ノ  )   し'
                     (_/
0446コーダーさんNGNG
>>1
ブロック崩し、イイ感じになってきたねぇ。

ちなみにおいらの言語歴、参考になればシアワセ。
QBasic
PC-DOS6.2に付属のやつでシコシコ入門編。ワイヤーフレームの3D迷路
を作る。インベーダーゲームとか。
VisualBasic1.0
Windows3.1でプログラミング開始。ラウンチャーを作る。サンプルに
付属のBitBltのスプライトに夢中になる。
Delphi3.0
BASIC系に無い言語仕様にビックリする。とりあえずAPIとか勉強する。
Bio100%の戦艦ゲームもどきを作る。ちなみにグラフィックはドット打ち
したプリンスオブペルシャの王子様。
VisualC++5.0
MFCのブラックボックスが嫌いでSDKで始める。DIBの存在を認知、そして
夢中になる。

以後○○コーダーになる。今考えればDelphiはすっとばしてもよかった
かな。
0447デフォルトの名無しさんNGNG
>>442
個人的には「思ったものは何でも作れる」ってのはプログラマとしてのゴール(頂点)だと思うんだが…
0448デフォルトの名無しさんNGNG
ゴール?それはピザよりも美味しいのかい?
0449デフォルトの名無しさんNGNG
>>446
○○コーダーっつって、どうせデモコーダーって言うんだろ。
デモコーダー=妄想上級者
このスレは現実主義。よって君はスレ違い。さよなら。
0450Javaでゲーム作ってたヒトNGNG
>>435
やってみりゃ分かるけど、System.gc()はまったく解決策になりません。
0451デフォルトの名無しさんNGNG
オナニスレはわかるがオナニレスはやめれ。
0452ヒッキー@プログラミングNGNG
ちょっとVC始めてみました。
MFCが相変わらずよくわかりません…。
CStringクラスとCTimeクラスというものをハケーンしました。
んで、MessageBoxで時間を出したりしました…。ムナシイ。

やっぱ自分でウインドウ作るところからやろうかなー。
VBで、ウインドウをグラフィカルに設計できるツールつくろうかと。
…ってそれを極めていったら一人MFCになるのか…鬱氏

>>423
リファレンスを読んだりしてたら、
ブロック崩しを作ることがおろそかになってきました。
>>424-425
ありがとうございます。
よくマニアックな人を呼び寄せるオーラがあると自分で感じます。
>>426
そうですねー。
もうちょっと見やすさについて模索してみたいと思います。
Delphiは…新たに文法を覚えるのに時間がかかりそうです。
>>427
Java、やってみようと思うんですが、WinXPでサポートされなく
なったりすると聞いたんで、考え中です。
>>429
ほおほお。参考になります。
WM_PAINTとか、メッセージ(?)がイパーイありますねー…
覚えきれるのだろうか。
>>430
やりました。
ものすごいですね。感動。3Dオブジェクトが(・∀・)イイ
>>432
おー、欲しいです。
できればソースも…。
0453デフォルトの名無しさんNGNG
MFCはまだ早くねえかい?

俺はWindowsAPIを学んだ方がとっつき易いと思う。
0454ヒッキー@プログラミングNGNG
>>433
やってみました。
付属のGBエミュがなんとも味があってよかったです。
ハードの限界をうまく生かしたつくりというか、
率直に言えば、視点がすごいですね。
>>434
GCについて検索してみました。
バージョンによって採用するアルゴリズムを変えているんでしょうか。
低レベル的な処理をあまり知らない僕的には、GC使わなくても、
毎回開放するソースを書いた方がいいんじゃないかと思うんですが。
うーん、そうするとJavaっぽさが減るのかな。
>>436
ういー。いろいろ手を出そうとしています。
昨日、Wave鳴らす処理書いてるときに、自分で波形作りたいなーと
思いまして、WaveOutOpenなどしてみようと思ったんですが、
なぜかうまくいきませんでした(藁
>>437
開発環境、Pen3なのですが、MMX200のノーパソでやったところ、
ガクガクしてました。早くしてみたいなぁという欲求はあります。
>>438
たしかにソースの拡張がしんどくなってきました。
ちゃんとした設計というのをやったことがないので、どのような
仕様書があれば混乱せずにまとめられるのかが分かりません…。
次は自分で理解できる範囲で文書化してから作ろうかと。
0455ヒッキー@プログラミングNGNG
>>439
Delphiで書かれたものをよく見かけるし、興味があります。
でも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
>>447
思ったものを何でも作れるようになりたいです。
すぐに作れる、というより、何でも作ってしまえる自信を付けろ
ということを、おっしゃってるんではないかと勝手に解釈しています。
>>448
NHKの外国のホームドラマを思い出しました。場外から笑い声が…
>>449
デモってメガデモっていうやつですか?
>>451
あっぁっぁっぁ…
>>453
がんばってAPIを使いこなせるようになります。
まず、プロセス・スレッド・パイプなど謎の単語を理解しようと思います…。
あー、コンピュータ用語はムズカシイ。
0457デフォルトの名無しさんNGNG
>>1って今気がついたんだけど、ほんとにヒッキーなんだね・・・
15時に書きこむって…

# 折れもだけど、テスト2日前だから、結構早く帰ってこれる(藁
0458デフォルトの名無しさんNGNG
いきなりMFCは止めておいた方が良いと思う。
WinAPIなら「猫でもわかるプログラミング」あたりがお勧め。

折れもヒッキーなので応援してます(藁
0459デフォルトの名無しさんNGNG
この本がおすすめ
http://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 みたいな名前は、真面目に付け直したほうがいい。良いソースコードという
のは、詳細を追わなくても字面を見るだけで処理内容が分かるぐらいに、名前の選び方に注意を払っ
てるよ。
0461442NGNG
ボールを2個以上にするなら、ボールの変数を構造体の配列にまとめて、ボールが
生きてるか死んでるかのフラグを構造体に追加。
ボールの処理しているところをループにして、全ての生きているボールに対して
処理するようにする。
これが一番簡単だと思うよ。ミスの判定は、生きているボールの数を表す変数を
用意するか、ボールを落としたときに全てのボールが死んでるかをチェック等。

何をしたらボールが増えるかってのはゲーム性に関わってくるので簡単には決め
れないが、システム的に一番簡単なのはいつでも次のボールを打てるようにして
しまうのかな。いつでも左クリックで球発射。でも残機が減るとか。その代わり
得点2倍みたいな。
0462442NGNG
いつでも自由に発射できるようにした場合は、以前あった案のキャッチして
面クリアが良さそうだね。キャッチできなかった球はロスト。
0463ヒッキー@プログラミングNGNG
>>457
本当にヒッキーですよ。
寝て起きてプログラム書いて本読んでの繰り返しです。
大学生ですか?
>>458
MFC、やめようと思ってきました(藁
APIは、本のマニュアルがあるのでなんとかなりそうです。
「猫でもわかるプログラミング」ですかー。ちょっと探してみます。
>>459
ほおほお。なんか硬派っぽい本ですねー。
本屋に逝った時に探してみようと思います。
>>460
自分でもちょっと感じてきてました…。
とりあえず、コントロールの名前をちゃんとつけました。
どの変数をローカルにしたらいいか考え中です。
グローバルのままの方が楽に感じるので、選別が難しいです。
>>461-462
おー、そういう処理の仕方があるんですね。参考になります。
フラグもたせれば処理しやすいですね。
2個以上が同時に出るとなると、ゲーム的には最後にキャッチ
する方がたしかに楽しいかも。
ゲーム性についても、いろいろ考えるようにします。
0464私的名スレ認定済みNGNG
>>455
> ご自愛が多すぎるので困っています。
ご自愛は週に3度までにしとけ。
0465デフォルトの名無しさんNGNG
>>463
>大学生?
じゃないよ、そんなにおとなじゃない(藁。
中坊だから。いまちょこっとずつ僕も勉強中(プログラムとテスト勉強)
0466ヒッキー@プログラミングNGNG
最近、ちょっと悩んでいる事があります。
あんまり考えるべきことではないかも知れませんが、
どの程度まで内部を把握してプログラムすべきかということです。

VBでも、速さを犠牲にする事を覚悟で、ある程度のCPU以上のもの
限定で作れば、物事を実現する為には簡単だと思うんです。
たとえコンピュータ内部を把握しなくても、実現できればいいんでは
ないかと。(僕は内部をつきつめたい方ですが。)

マクロメディアのディレクターとかでも、言語的は非常に限られていて、
凝ったアプリケーションを表現するには難しいかもしれませんが、
目的はもっと簡単に実現できると思うんです。

何が言いたいかといいますと、どこのレベルで自分で満足を得れるか
という事と、仕事としてはコンピュータをどの程度、低レベルな段階にまで
知ればいいのかということです。

C++にハマって、オブジェクトを組み立てるような感覚でプログラムする
のは非常にプログラムをするユーザとしてはありがたいですが、
機械語レベルでのオーバヘッドは勉強しないとわかりません。

また、機械語まで分解しないと気がすまない性分の人もいらっしゃるかと
思います。

僕は今はC++がわかればそれで満足を得られそうですが、もし、C++をマスター
する段階までいけたら、機械語を勉強せねば…とか思うかもしれないです。

それって、>>442さんのおっしゃる通り、アルゴリズムとは全く関係ない気が
するんですね。新たな言語を勉強していくだけで一生が終ってしまうような…。

ひとつの物事に執着して、殻にこもるのはカッコ悪いと感じますが、
言語をひとつに決めないとアルゴリズムを勉強できないのではないかと。

それからVBのような環境依存言語は、言語を覚えるという手間をヒトに
かけさせる時点でダメなような気がします。
あとCも、環境によって関数の名前が変わったり、(ライブラリを作る人が
違うというか、そのヒトが関数名に著作権的なものを感じさせているというか)
結局どれをやればいいのか思いつきません。

結論としては、僕的にはコンピュータを内部まで知らなくても、1回ソースを
書いたら全ての環境で全く同じソースがコンパイルできるようになったら
いいなと思います。


新たな言語に自分の環境をあわせる事に対する姿勢はどのような感じで
いけばいいのでしょうか。また、今までどうされて来ましたか?
仕事が今までどうりにこなせない不満などあると思うのですが。

せっかく書いたのでage
0467ヒッキー@プログラミングNGNG
なんかフリと結論が違うような書き方になってしまった…鬱駄

>>464
もっとしてるかも(藁
>>465
おー、中学生ですか。2chに来てると病みますよ。
テストは、数学をきっちりマスターするまで勉強した方がいいと思います。
他の勉強も、ゲームなどプログラムするときの糧となりますので、
おろそかにせずに、適当にかじる事をお勧めします。
やー、そんな早くからやってるとは。恐れ入ります。
0468デフォルトの名無しさんNGNG
>>466
> ひとつの物事に執着して、殻にこもるのはカッコ悪いと感じますが、
> 言語をひとつに決めないとアルゴリズムを勉強できないのではないかと。
大丈夫。最初の言語を覚えるのは苦労するけど、二番目は楽、三番目はもっと楽になるから。
0469デフォルトの名無しさんNGNG
>>467
かじってるていわれてもまだまだ(汗
三角関数とか独学で勉強中。

1さんって高校?大学?それ以上?
0470ヒッキー@プログラミングNGNG
>>468
ほおほお。そういうものですか。
僕はまともに書き方がわかるのはVBくらいなので分かりませんでした。
ちょっと救われた気がします。ご意見ありがとうございました。
>>469
おー、三角関数ってだいたい高校で習うんじゃないですか?
僕は年齢的には大学ですね。ハタチです。
このスレで教えてもらったところだけど、ここお勧めです。
http://www.kwansei.ac.jp/hs/z90010/hyousi/2106.htm
0471デフォルトの名無しさんNGNG
ひそかにマターリスレ?
0472458NGNG
MFCはAPIを理解してないと混乱する事請け合いです。
と言うより、ウィンドウメッセージ関連でしょうか。
クラスですから、C++も解っていた方がより楽ですし。

「猫でもわかる〜」はC/C++の入門にも良いです。
ここのおかげで本が不要(藁
http://www.kumei.ne.jp/c_lang/
0473デフォルトの名無しさんNGNG
matlab教えて
0474デフォルトの名無しさんNGNG
>>470
三角比は外国は中学校でちょこっとやるらしい。

VBが案だけできたらCも余裕でいけるんじゃない?
0475デフォルトの名無しさんNGNG
>>468
>大丈夫。最初の言語を覚えるのは苦労するけど、二番目は楽、三番目はもっと楽になるから。
そうだね。リュウを使えるようになるのに凄く苦労したけど春麗、ダルシムと加速度的に覚える
のが早くなり、一通り全キャラやった後にリュウに戻ると勝手にうまくなってるものだよね

板違いな上に時代錯誤な発言ですまん
0476デフォルトの名無しさんNGNG
>>475
そのマターリ感がこのスレにふさわしい
0477デフォルトの名無しさんNGNG
>>475
俺もそう思う。俺の場合は最初はケンだったけどな。
それでザンギエフとか使ってて、またケンに戻ってくると
通常技の使い方とかが上手になってるんだよ。
0478デフォルトの名無しさんNGNG
>>474
s/案/あれ/g;
0479デフォルトの名無しさんNGNG
┏━━━━━━報告書━━━━━┓
┃                    ┃
>1haヒッキーのため          ┃
15:00前後に良く書きこむようです。 ┃
┗━━━━━━━━━━━━━━┛
0480デフォルトの名無しさんNGNG
あのぅ、ヒッキーさんは C++ を覚えようとしてはるみたいですけど、
C++ はいろんなもの隠蔽しちゃってて、全然低レベルじゃないと思いますよ。
ましてや MFC なんて、裏で何やってんだかわかろうとするだけ無駄です。
やるなら高級アセンブラ C。
0481デフォルト素人さんNGNG
GCって何ですか?
0482デフォルトの名無しさんNGNG
>>480
> C++ はいろんなもの隠蔽しちゃってて、全然低レベルじゃないと思いますよ。
気のせい気のせい。C++ はソースを読んで(最適化前の)アセンブリコードが予想
できる代物で、その意味では C と同様に「高級アセンブラ」です。

ただ、ゲームを書くなら MFC はあまり嬉しくないとは思う。Win32 の基本的なフレー
ムワークは

 メッセージを使った処理

なんだけど、ゲームの場合にはこれを無視してしまった方が書きやすい(PeekMessage
でメッセージを見て、なかったらゲームを進行させるように書く)。MFC はそういうコードを
書くことは想定していないので、いろいろ面倒です。

もし C++ で書くなら、WTL の CWindowImpl あたりを使うか、もしくは素直に自分でウィン
ドウプロシージャを書くのが良いかと。
0483デフォルトの名無しさんNGNG
>>482
CWindowImpl は WTL じゃなくて ATL だな。ごめん。
0484デフォルトの名無しさんNGNG
>>481
ガベージコレクション、で google 検索。
0485デフォルトの名無しさんNGNG
C++でthrowしたのオブジェクトを参照でcatchしたときとか
アセンブリコードが予想できたら結構すごい。
0486デフォルトの名無しさんNGNG
C++=MFCと決めつけるのはよくないかと。
漏れはC++使ってるけど、MFCなんて使ってないよ。
0487PGでもSEでもないシロウトだがNGNG
>>466
> どの程度まで内部を把握してプログラムすべきかということです。

その前に、
グローバル変数とローカル変数の使い分けっつーか、
モジュール化とか意識するようになったほうが良いと思われ。
順番として。

シロウト考えなんで、プロのかたの意見を優先に参考にしてください。
0488ヒッキー@プログラミングNGNG
>>472
猫でもわかるプログラミング、読みふけってしまいました。
間に猫の絵があって、なんとなく読みやすいです。
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でインタプリタを作ってみたら?
基礎的なアルゴリズムを一通り学べるし、ある程度動くようになったら、オブジェクト指向で
メインコードを簡略化したくなるよ。あ、できるだけ文法はCに近いものがいいかも。
0490ヒッキー@プログラミングNGNG
>>489
ご意見ありがとうございます。
たしかに、既存のライブラリに頼って、それを呼び出すだけの
プログラムを書いたところで、自分の技量には何の関係も無いですね。
やはり、経験を積まれた方の意見は重みがあります…。
インタプリタって文を分解して、1行ずつ実行するというアレの事ですか?
うーん、どうやって実装したらいいのでしょう。
文を、中間的なバイナリコードに変換してそれを逐次、実行するような
感じでしょうか。文の内容をそのまま実行して逝ったらいいんでしょうか。
いろいろ考えてみようと思います。
0491489NGNG
そうだねいったん中間コードを吐いて、VM上で実行すれば生成されたバイナリは
VM上であればWindowsだろうがLinuxだろうが動くから嬉しいかも。

最初は、変数はアルファベット1文字、型は整数のみとかに制限したりするといいよ。

とりあえずこの辺を参考にしてみて。
http://pc.2ch.net/test/read.cgi/tech/981672957/
0492デフォルトの名無しさんNGNG
Cに逝くか、他に逝くか逝かないかは自由だからね。
ただCをお勧めする。
0493デフォルトの名無しさんNGNG
>>491
ちょっと待ちいや。いきなりインタプリタは酷やろ。
ヒッキー、迷路や迷路。迷路作成プログラム作ってみ。結構奥深いで。
0494デフォルトの名無しさんNGNG
>>493
激同。迷路は奥が深い。
折れも昔作ったなぁ。

# 「活字」の関西弁は気持ち悪い(藁
# 一応関西人ですが(私
0495デフォルトの名無しさんNGNG
3D迷路とか。
0496デフォルトの名無しさんNGNG
>>494
まぁええがな(w

>>495
それは単なる表示上の応用やな。基本的には二次元でええやろ
そや、2ちゃんにもカキコできるようにテキスト迷路なんてどや?50x50ぐらいのん。
0497デフォルトな名無しさんNGNG
>>496

優良スレたてるまで出られないとか。
0498デフォルトの名無しさんNGNG
>ヒッキー@プログラミング氏
どんどん挑戦する事が大切!ですね。
>>493氏の提案している迷路なんてどや(藁

# でも騙りも出ずにってすごいなぁ(藁
0499458だったものNGNG
挑戦することが大切か…最近その心意気を忘れてる気がするよ。
俺もここで何かやってみるかな。しかし受験もあるし。

鬱堕詩嚢
0500デフォルトの名無しさんNGNG
>>500get !! (藁
挑戦すること…ですね。
折れも受験だしなぁ。来年、ガンバロ〜っと。
0501デフォルトの名無しさんNGNG
受験を来年頑張れ♥
0502デフォルトの名無しさんNGNG
>>501
受験を来年って浪…(自粛)…じゃん(藁

それはそうと、電子投票ほうが成立したね。
┓(´д`)―y。o(どうなるんだろ?)
0503ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次うぷしました。変更点は

・ソースの部分的なモジュール化
・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デフォルトの名無しさんNGNG
言語の違いを学ぶより、アルゴリズムとデータ構造の方が大事だろ。
0507一応プロNGNG
>>1
インタプリタの見本っぽいの作ったけどいるか?構文解析の参考になると思う。
インタプリタっつーか、式を入力してそれを計算して結果を表示するだけだけど。

例えば、
>3*(2 + (a - 2) % 3)
と入力すると、
a =
となるので、aに値を入力。
すると答えが表示される。

ただし、入力できる式は、リテラル整数は1桁のみ、変数はa-zA-Zの52種類。
演算子は、+-%*/の5種類。

# ろくな字句解析してないのに4時間もかかった・・・。コード的には300行弱。
0508一応プロNGNG
あ、なんか否定されてた(´Д`;)

インタプリタと言ってもピンきりだよ。

add 1 1

とかを解析・実行して結果を2と表示するものとかなら簡単でしょ?
そういうとこから始めたらいいよ。
0509デフォルトの名無しさんNGNG
>>507
どうでもいいけど、それってインタプリタじゃなくて電卓って言わない?
0510デフォルトの名無しさんNGNG
>>509
電卓もインタープリタの一部ともいえる
0511デフォルトの名無しさんNGNG
>>509
いちおう構文解析が入る(演算子の優先順位を考慮に入れる必要がある)から
単なる電卓とは違うけど、そこから言語処理系への道はかなり遠いよな。
0512一応プロNGNG
>>511
再帰下降解析すれば、そう遠くないよ。

言語処理系として難しいのは最適化あたりじゃないか?
あと、エラー処理かな。エラーが起きたら中断するだけなら簡単だけど。
最適化まではやったことないから知らんけど。

中間コードを生成して、それを解釈実行するところまではそう難しくないって。
そこまでは別に難しいアルゴリズムなんてないし。
0513374NGNG
あ、第28段がうぷされてる。ただいま階拝見中...

おっ、名前付けをちゃんとしたんだね、なかなかみやすくなったんじゃないかな?
おおぅ、ブロックをモジュール化したんですね。
よく見てないんですが、いいんじゃないですか。

気になった点をいくつか、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
>>504
挑戦する事を忘れるのはまだ早いですよ(藁
高校受験ですかー。たいへんですね…。
その頃、今まで生きてきた中で一番勉強してた時期のような気がします。
吸収が良い時期なので、なんでも勉強した方がいいかもしれませんね。
>>505
Delphiは…VBと同じような位置付けに感じるので、やっぱやめとこうかと
思っています。他のOSでもDelphiが使えたら考えるかも。
あ、パスカル言語という風に考えたら検索したら見つかるかもしれないですね。
>>506
はい。アルゴリズムを覚える方をかんばります。
>>507-508
おぉ、ありがとうございます。
見せて頂けるなら欲しいです。
いきなりインタープリタと考えると難しいけど、一個一個解決して
いけばいいんですね。
>>511
うーん、やっぱインタープリタの道は険しいのか…
>>512
最適化って、どの変数にレジスタを割り振るかとか、
ややこしそうな処理のことでしょうか…。
>>中間コードを生成して、それを解釈実行するところまではそう難しくないって。
ほおほお。なんか安心しました(w
>>513
おー、具体的な例を挙げて、教えてくださってありがとうございます。
たしかに重複する箇所が多かったと思います。
RECTのところ、おっしゃる通りに変更してみたら、読みやすくなりました。
他の所も修正しようと思います。
あ、あとForm_initializeのところ、書き直したらいけました。
なぜか前にやったときはうまく逝かなかったんだけどなぁ…うーん。
0515ヒッキー@プログラミングNGNG
あー、そういえば左に動くのは、JoyStickに対応しようとしたから
でした…。joyStickの関数がちゃんと値を返してくれないような…。
もしくわ僕の書き方が悪いのかもしれません。
とりあえず、一時的に消します。
0516一応プロNGNG
>>1
ほれ。
ttp://www2.makani.to/akutoku/upload/dat/1007214743.lzh
パッと見て悪いと思う部分は真似ないように!

ダウンしたら>>1のサイトで配布しても良いよ。
上のが消えてもダウンできるように。
0517一応プロNGNG
あ、>>516のコードは中間コード生成してないから。
0518デフォルトの名無しさんNGNG
>>516
> ファイルへの直接リンク(アップローダのページからクリックすれば、見れます)
と言われて拾えないんだけど。2:00 以降になれば OK?

>>512
> 再帰下降解析すれば、そう遠くないよ。
ま、数式の解析から言語処理系への過程が遠いか遠くないかは、実物を見て本人
が判断すりゃ良いやね。(俺は遠いと思うけど)

前に勉強がてら書いた Pascal ライクな処理系のコード置いときます。中間コードの
生成と、コンパイル時に 1 + 1 を事前に 2 と置き換える程度の簡単な最適化が入っ
てます。
http://members.tripod.co.jp/lambda_func/pc.zip

#TRY - CATCH とかはお遊びで書いてるので、真似しないようにね。
0519374NGNG
JoyStickに!?
すごいなぁ。どんどんやってください。
二十歳の実務経験なしでここまでできるとは驚きです。
ソース見てると、欲しいところにうまくコメントを書いているし、
いろいろ調べ物もうまいみたいだし、成長も速いし、
いいなぁ欲しい人材です。ウチの新人もこうであれば...。

あと、インタプリタやらなにやら話があがっていますが、
あなたの好きなところからプログラムをやっていくことがいいと思います。
好きなことをやってると成長は速いです。
APIに興味があるようなのでそちらで何かやってみては?
0520一応プロNGNG
>>518
俺はHSP程度なら数式解析とたいした差はないと思ってる。
というか、やってみたら意外と簡単だったっていうのが正直な感想。
# それまですごく難しいものだと思ってた。

もちろん言語処理は奥が深いからピンキリだね。
>>518の"遠い"と言うのはそういうことかな?だったら激しく同意。

実は俺はまだ言語処理系触れ始めと言っていいくらい。
yaccとかlexは使わないで1からゴリゴリ書いてるけど、再帰下降解析
はほとんど差が無く感じるな。管理するデータが多くなったくらいで・・・。

あ、ソース頂きました。

>>519
ま、結局は>>1次第だね。
でも言語処理ってゲームで生かせると思う。
俺も20歳なんだけど、どう?(笑)
仕事中に2chに出入りしてる人間はダメ?

# いちいち長いな(´Д`;)
0521名無し@就職活動中NGNG
>>519
やっぱ現段階でそこそこできるやつよりも、
1氏のように頭のきれる人のほうがいいですよね・・・

>>1
あなたの情熱がうらやましいです。がんばってください。
0522 NGNG
>>521
新卒なら確かにそうだけどな。

でも>>1や>>518や>>520を目の当たりにして、僻んでるだけの>>521は一番
いらない存在だな。

こんな時間に起きてる俺もいらないな。
0523ヒッキー@プログラミングNGNG
今日は一日中寝ていました。

>>516
どもども。いただきました。
これから拝見させていただきます。
>>518
おー、すんませんです。
いただきました。参考にさせていただきます。
>>1 + 1 を事前に 2 と置き換える
あー、定数の演算の場合、すでに計算しておくっていう方法もあるんですね。
>>519
ありがとうございます。嬉しいです。
あんまり誉められると頭に乗ってしまいます…。
>>あと、インタプリタやらなにやら話があがっていますが、
>>あなたの好きなところからプログラムをやっていくことがいいと思います。
了解しました。
インタープリタは、HSPを知ったときに、ちょっと作ってみたいなぁと
感じていたので、興味はあります。
とりあえず今はもうちょっと簡単な事からやってみようかと…。
APIでウインドウを作って、メモ帳のようなものでも作ろうと思います。
>>520
おー、ハタチなんですか?すごいですね…。
僕もいつか追いつきたいと思います。
>>521
ありがとうございます。
引きこもってると楽なので、勉強がしやすいです。
なぜか学校逝ってる時は勉強の時間に勉強しないんだけど…(藁
社会に出ると、できるかどうかわかりません。
精神的に追い詰められやすい性格なので…。
>>522
いやいや、いらないと思うよりは、できると仮定して
能力を伸ばしていく事の方が大事じゃないですか?
いらないと決めて、いらない人間になってしまったら
本当に社会にとって良くないと思います。
どのような人であれ、同じような量の食事やらをするわけですから。
マジレススマソ。
0524522@就職活動中NGNG
確かに僻んでる。羨ましいもん。
でもなーんにもしてない、ってわけじゃないよん。
つーか激しく板違いなので消えます。
0525デフォルトの名無しさんNGNG
恐らくblock28.zipが最新版だと思うのですが、
3面から出てくる金のブロックを壊した時に、画面の左上の隅に毎回黄色のブロックが出現します。
ソースを見てないけど自分の推測では恐らく金のブロックは2回当てると壊せるブロックで、
1回当てると黄色のブロックに変化させるつもりが、位置を設定してないため毎回(0,0)の
位置に誤って出現しているのだと思います。
通常じゃ配置されそうにない位置に出現するのと、他のブロックと画像が重なることがあることからそう判断しました。

けどバグじゃなくても直してほしいです。このブロックのせいで4面がいつまでたってもクリアできない…

あとバーが左端にあった時だったと思いますが、真横からボールが当たった時バーが少し壁にめり込みました。
しかしこれは別にゲームに支障がないのでバグとはいえないかな?

あと非常に面白いです。コンボで一気に点が入るところが。
0526505NGNG
>>514
>Delphiは…VBと同じような位置付けに感じるので、やっぱやめとこうかと
>思っています。他のOSでもDelphiが使えたら考えるかも

 同じといえば同じだけど・・・・・まあいいか・・・
もしC++で躓くようならDelphiを経由するといいよって感じでね
0527デフォルトの名無しさんNGNG
んー、どの言語でも最終的に機械語として実行されるのと同じぐらい
どのWindowsアプリも最終的にAPI呼び出しで実行されるんだから、
CでAPIを叩くのはいい勉強になると思う。
API呼び出しだけでプログラミングするとなるとDelphiよりCのほうが素直
だと思うし。
そのあとC++にいくかDelphiにいくかVBに戻るかVB.netに行っちゃうかは
趣味の問題だと思うけど。
0528デフォルトの名無しさんNGNG
>>527
API呼び出しってのが 猫でものように、SDKレベルのメッセージループを直に書く
ことだとするならDelphiでも素直に書けるよ。

ただし、Cの方がオフィシャルな参考書があるという事が大きいね
 Cの文法も判らないと勉強出来ない。だから必須という事なら賛成するよ。

個人的には VB->C->Delphi->Java->C++の順に学ぶのが王道だと思ってるんだけどね
0529デフォルトの名無しさんNGNG
>>528
A、B、Cの順番を踏襲したからなぁ。
0530クロスボウとやらNGNG
おいら的には
VB->Delphi->C->Java->C++
が良いと思われ。
0531デフォルトの名無しさんNGNG
>>528
Delphiは余計
0532デフォルトの名無しさんNGNG
すすめるのは結構だがRADとそうでないので区別した方がいいと思うが。
漏れはVB->C++でいいと思う。
っていうか、移る前にVB使いこなせっつーの。
VBでDirectX。これが通の頼み方。
0533デフォルトの名無しさんNGNG
>>531 そうか? 俺は色々な面で勉強になったよ。
 今でも自作ツール作る時はDelphiだ。
0534ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次UPしました。変更点は

・ボールを3つ同時に出せるように変更
・ボールを全て回収したらステージクリア

です。最後に回収しないといけないようにしました。

>>524
がんばっていらっしゃるなら、前向きになられる事をお勧めします。
後ろ向いて勉強したら自分にとって負担になると思います。

>>525
どうもすみません…変な位置にブロックが移動する現象、直しました。
バーの横からボールに当たったとき、ちょっと動いてしまうような
ソースを書いているのですが、自分でもちょっと変だと思っています…。
直そうかな。
>あと非常に面白いです。コンボで一気に点が入るところが
ありがとうございます。
お褒めの言葉を頂くと、何より励みになります。
0535ヒッキー@プログラミングNGNG
>>526
ちょっとC++は敷居が高くて困っていました…。
うーん、Delphiも触ってみようかな。

>>527
そうですねー。CからAPIを呼び出すほうが簡単に感じます。
Delphiは触った事ないけど…。

>>528
あ、Delphiでも素直に書けるんですね。
だんだん揺らいできた(w

>>529
どういうことでしょう?

>>530
ほおほお。やっぱそういう順路もありなんですね。

>>532
ごめんなさい…。
VBでDirectXですかー。うーん、DirectX使うんだったら
なんとなくC覚えたいなぁ。

>>533
ツールを作るときのような手軽さはやっぱC++にはなさそうですね…。
0536デフォルトの名無しさんNGNG
>>1
早速、やってみたよ。バグじゃないけど報告
ゲームバランスの調整になるかもしれないが
玉が3つゲーム画面上にあると極端に自機の動きが重くなり
玉のスピードについていけない感じがします。
0537ヒッキー@プログラミングNGNG
>>536
ご報告ありがとうございます。
ウチの環境では遅くならないのでわかりませんでした…。
やっぱ知恵を使わないとだんだん重くなりますよね。
ソースを見直します。
0538デフォルトの名無しさんNGNG
29やってみました。
ボールが同時に出るようになったんですね。素晴らしい。
個人的にはボール同士が衝突してほしいです。

Delphi Personalは無料ですし試してみるといいかもしれません。
0539デフォルトの名無しさんNGNG
もう買われてしまったVCがかわいそう(´Д`;)
0540一応プロNGNG
背景を縦スクロールさせたり
ブロックが動いたり
ブロックからミサイルが飛んできたり


このままシューティングにシフトしていったら面白いシューティングができるかも。
0541デフォルトの名無しさんNGNG
>>535
> VBでDirectXですかー。うーん、DirectX使うんだったら
> なんとなくC覚えたいなぁ。
マジレス

DirectX 使うなら C ではなく C++。DirectX は COM コンポーネントとして提供
されてるから C++ 使わないと記法が鬱陶しい(設計をオブジェクト指向でやる
必要はないけどさ)。
0542374NGNG
おおっ、ボール3つ同時は面白い。
でも、そのおかげでオヂサンには、
1面すらクリアできなくなりました。(最高2面。鬱...

ブロック壊すとアイテムが落ちてくるなんてのは面白いかもね。
1アップとかボールが下でも跳ね返る(落ちなくなる)ようになるとか
0543ヒッキー@プログラミングNGNG
>>538
ボーランドのソフト、無償でいろいろ提供されてますね。ビクーリ。
ボールの衝突ですかー。書いてみようと思います。

>>539
実はVisualStudioを買ってしまいました(藁

>>540
スクロールしたら見た目が大幅に変わりそうでいいですねー。
ブロックからミサイル…完全にシューティング化ですね(w

>>541
ほおほお。やっぱC++ですね。
オブジェクト作るときのnewとかどうやってCで書くのかわからない…。
うーん、勉強します。

>>542
僕もクリアできなくなりました…。
アイテム出てくるともっと良くなりそうですね。
まだまだ改良の余地がありそう。
0544デフォルトの名無しさんNGNG
今回のバージョンってブロック壊した後にボール受け止めなくちゃいけないんだね。
次の面に行った瞬間死んじゃったりしたよ。キツイなぁ。これって前のままじゃだめなの?

あとボールが3つに増えると自機が遅くなるバグだけど、
ウチの環境ではマウスで動かしているとそうなったよ。キーボードだと普通に遊べる。

あとアイテムのことだけど、ブロック崩しはもともとバランスのいいゲームだと思うから出し過ぎは危険だと思うよ。
棒が長くなったりボールが分裂したりはいいけど(むしろちょっと歓迎)、間違ってもミサイルでブロックを壊せるなんてものは登場してほしくないなぁ。

最後に口調がちょっと生意気気味ですいません。
0545一応プロNGNG
>>544
>あとアイテムのことだけど、ブロック崩しはもともとバランスのいいゲームだと思うから出し過ぎは危険だと思うよ。

その考え方のほうが危険じゃないか?発想力が乏しくなりそう。
個人の好みだけど、そういう考え方は好きではないな。

「ブロック崩しはこういうもの」とかいう定義は勉強中のプログラマにはして欲しくないな。
それはゲームを"するだけの人間"に任せておけばいいだろう。

仮に「ミサイルでブロックを壊す」という機能を実装して、ゲーム性が損なわれたとしたら、
それを補うアイデアを考えればよい。時間は十分にあるんだから。

趣味でやってるんだから、気に入ったアイデアがあったらとりあえず実装してみれ。
0546デフォルトの名無しさんNGNG
>>545
それはそうなんですけどね。
ただ今回のバージョンアップ版をやってみてゲームバランスが崩れかかってるかなと思ったんですよ。
前のバージョンの方がよかったなって。
なんか今回のバージョンになってブロック崩し本来の面白さが欠けたような気がする。(そうはいってもボール分裂は見たい…)
けどミサイルなんて物はブロック崩し本来の面白さを完全にぶち壊してしまうような気がする。

そして一度その方向に進んでしまうと、もう二度と本来の面白さを生かすような方向には転換しない気がする。
まぁそれを1さんが見事に面白くしてくれればいうことなしなんだけど。
0547デフォルトの名無しさんNGNG
1のスキルアップの為に作ってるんだから、今はゲーム性よりもプログラム的な
発展を評価すべきだよ。
ちなみにボールを増やすのを指示したのは俺だけど、1の今の技量でいきなりアイ
テムを出すのはキツいと思ったから暫定的に今のシステムを提案しただけだよ。
もしこの先アイテムを出すとして、ボールが分裂するアイテムが出たとしても、
今の状態からなら新しいボール発生の条件を変えるだけで済むし。

今のシステムを生かすなら、得点システムを変えてコンボボーナスを無くして
変わりに飛ばしてるボールの数によって2倍、4倍の点が入るようにするのが
いいかな。あとは、ボールが2個以上飛んでる場合は右クリックしながら受けると
キャッチできるとか。

ミサイルでブロックを破壊はブロック崩しとしては常識外れだけど、それでも闇雲
に否定するのもどうかと思うよ。例えば、ミサイルで攻撃する対象はブロックでは
なくてボールにして、ボールの動きに干渉できるようにするとか、いくらでも考え
ようはあるかと。
0548528NGNG
>>531
「習うより慣れろ」  これ大抵の技術の一番の習得方法

そりゃ横に誰かいて手取り足取り教えてくれるなら別だけど、
独習なら手軽に試せて結果も満足いくDelphiを 間に挟むのは良い事だと思うよ
0549デフォルトの名無しさんNGNG
Delphi勧める人多いですね。
better VBって感じですか?
0550デフォルトの名無しさんNGNG
いや、Delphiだと無料だから 他のヒッキーも参加し易いんだろ
0551デフォルトの名無しさんNGNG
マウスのホイール対応キボンヌ
やっぱブロック崩しはローラーでそうさせねば。
0552デフォルトの名無しさんNGNG
ここのスレだと、「Delphi=楽、C++=キツい」みたいな話が多いけど、C++だって
BCBがあるのをお忘れずに。DirectXまで考えるとBorland製品は絶対に奨められ
ないが。

ただ、RAD環境ってのは、ツールみたいな標準GUI主体のソフトには便利だが、
リアルタイムゲームみたいなプログラムにはほとんど何も助けにならないよ。

それと1よ、みんなの意見を取り入れるのはいいが、自分で思いついたアイディア
も積極的に入れていった方がいいと思うよ。実装は難しそうでもここに書いてくれ
れば、実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。
0553デフォルトの名無しさんNGNG
>>552
俺も DirectX 使う場合には、RAD はそれほど「便利」ではないと思うけどね。

DirectX プログラミングは GDI に比べると、ちと難易度が上がる。たとえば GDI だと
バックバッファへの描画は BitBlt() を呼び出せばいいだけだが、DirectX だとこれが
タイミングによっては「失敗」することを考慮する必要がある。

#GDIでも BitBlt() が失敗する可能性はあるんだが、殆どの場合は気にしなくて大
#丈夫。

たとえば DirectDraw を使う場合、IDirectDraw7, IDirectDrawSurface7 関連のメソッド
は、すべて

1. 失敗したら
2. 再描画 (RestoreAllSurfaces()) もしくは IDirectDraw7 の再初期化
3. 失敗した処理のやり直し

ってロジックを埋めておく必要がある。

今のブロック崩しのコードのようにベタにコード中に処理を記述する形式だと確実に破
綻するので、処理を同期的に行わず一旦キューにため、エラー発生を前提にキューに
ある処理を順次処理、みたいな一段高度なアーキテクチャを要求されるよ。(DirectX
は初期化だけでも、最初は面倒だろうし)
0554デフォルトの名無しさんNGNG
>>553
> 2. 再描画 (RestoreAllSurfaces()) もしくは IDirectDraw7 の再初期化
じゃなくて
2. サーフェイスの復元 (RestoreAllSurfaces()) もしくはIDirectDraw7 の最初期化
 +再描画
だな。
0555デフォルトの名無しさんNGNG
>>552
 BCBはあれはコンパイルが遅いから  変更即RUNで試すというサイクルで出来ない。

RADでもDelphiの場合は自分でコンポを容易に作れるから 画面作りの効率化
はもちろん、キャラの設定なんかもキャラをコンポ化すればRAD環境で可能
必要なら、スクリプトをプロパティに設定し設計時からキャラを動き回ったりさせることだって出来る

そういうふうにコンポーネント化してゆく事でどんどん効率的になってゆく体験は大事だと思う。
0556デフォルトの名無しさんNGNG
>>555
それはコードを書く側の問題。
VBでもCでもC++でもコードの再利用をしやすいように組む事はできる。

っていうか話し聞いてると、Delphiに浸ってたら脱初心者は無理のような気がしてくる。
もっとプログラミングそのものに浸ってから最後にDelphiでいいと思われ。

とりあえず、プログラミング入門編としてのRAD系は卒業した方がいいのでは?
0557デフォルトの名無しさんNGNG
>>552

>それと1よ、みんなの意見を取り入れるのはいいが、
>自分で思いついたアイディアも積極的に入れていった方がいいと思うよ。
>実装は難しそうでもここに書いてくれれば、
>実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。

552さんの提案は、非常に有益だと考えます。
プログラム学習者にとってもこのスレがこういう方向に
進むことを期待します。
0558555NGNG

 VBでも Cでも 確かに再利用し易いように組む事は出来る。
 でも、それは独習で身につくのだろうか?
 指導者がついているか、適性があり経験を重ねて身につくものだと思う

言い切っちゃうとさ、管理者居なくて独習で経験を重ねてるだけじゃ VB/Cだと悪い癖しか付かないよ
 それは実際の現場見りゃ判るでしょ? 経験xx年のプログラマの作るコードがどんなものかさ

なお、Delphiでコンポを作る場面はRADじゃない。
でもその作業がスグにRADに反映してゆくから、 少しの苦労で見入りが大きい。
そういう点から学習効率がいいと思うんだ。

まあ本人の問題だから本人が決めればいいことだけどさ
0559デフォルトの名無しさんNGNG
>>558
> VBでも Cでも 確かに再利用し易いように組む事は出来る。
> でも、それは独習で身につくのだろうか?
はい。

ソフトウェアコンストラクションに関しては、管理者がいようが仕事でやろうが、本人
が勉強してコード書いて頭と身体で覚えないとダメです。RAD や周囲の環境は補助
にはなるけど、それだけで自動的にコンストラクション能力が上がるものではない。

これだけだとなんなんで、推薦図書を。推薦図書スレにも書いたので重複になるけ
ど、今の >>1 に合いそうなものを抜粋ね。

コードコンプリート―完全なプログラミングを目指して
マコネル,スティーブ ;石川 勝
アスキー (1994)ISBN:4756102107

ライティングソリッドコード―バグのないプログラミングを目指して
Steve Maguire
アスキー ISBN:4756103642

プログラミング作法
Brian Kernighan, Rob Pike
アスキー ISBN:4756136494
0560 NGNG
>>1が思いついたアイデアをココに書いて欲しいナァ。
0561デフォルトの名無しさんNGNG
そういえば、このグロック崩しで
効果音がなった時、一瞬だけ描画が止まるというか
カクッとなるの、俺だけ?
0562デフォルトの名無しさんNGNG
斜めに傾いたブロックってどうよ? /
反射のバリエーションが増えるよ。名付けてリフレクターブロック(でいいのかな?)!

あと自機を \__/ の形にするってのはどうよ。傾く角度も変わったりして。
0563超大作NGNG
10 CONSOLE 0,25,0,1:WIDTH 40,25:DEFINT A-Z
15 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
>>563
どうやってプレイしろと・・・。
0565デフォルトの名無しさんNGNG
>>562
そもそも「ブロック」であることに拘らなくてもいいのでは?
#でもそうすると「ブロック」崩しではなくなるか(w

あと、時機も「パドル」であることに拘らなくてもいいのでは?

などなどと、考えていると面白いアイデアも出てくるのでは?

例えば…

・ブロックでなくてインベーダーだとか
・時機はパドルでなくてバット(昔の野球盤風)

なんてのは?面ごとにそんな趣向を凝らしても面白いかもね。
0566ヒッキー@プログラミングNGNG
>>544
なんか面クリアと見せかけてゲームオーバーになったりしますね…。書き直します。
前のままにすると、なんか足らない気がして、最後に受けた方がいいかなぁと。
ウチでも、マウスで動かすと遅くなりました…。気付かなかった。鬱氏
ミサイルで壊すっていうのは結構いろんなブロック崩しで出てきますねー。
僕もちょっと違和感を感じます。アイテムは何かしら出したいとは思っています。

>>545
そうですね。そういう考え方もできるのか…。ご意見ありがとうございます。
なんか、人の意見を尊重しようとするあまり、自分の意思が欠けてたような
気がします。

>>546
やっぱゲームっていうジャンル上、プログラムの実装の仕方なんて、
ユーザには何も関係ないですもんね…。
面白いものを目指す事を忘れないようにしたいです。

>>547
おー、ボールの分裂の意見をくださったかたですか。
同時に飛んでいるボールの数によって点を変えるようにしたほうが
良いかもしれないですね。必然的にユーザは
ボールをいくつも出す→危険な事に挑戦するという感じで、
面白さに繋がるかもしれませんね。
ミサイルにボールが当たると動きが変わるというシステムは斬新ですねー。
参考にさせていただきます。
0567デフォルトの名無しさんNGNG
背景に裸の女の子
0568ヒッキー@プログラミングNGNG
>>548
手軽に試せるという風に考えると、C++に逝くよりはDelphiの方が
よさそうですね。ついでに無料みたいだし…惹かれてみたり

>>549
うーん、そうなんですかね?どうなんでしょう。
やっぱお勧めになるという事は、それなりのワケがあるんだと思います。

>>550
そういう事だったのか(藁

>>551
あー、そういえばホイールついてましたね。
関係ないけど、目の付け所がシャープですね。

>>552
やっぱウインドウ作ったりボタン作ったりってゲームにはあまり
関係ない要素ですよね。作り始めてやっと気付きましたが(w
>>実装方法やもっと簡単な代替案なんかをアドバイスしてあげるよ。
ありがとうございます。
僕も何か考えて、まずここで発表してから実装に移ろうかと思います。
0569ヒッキー@プログラミングNGNG
>>553
>>DirectX だとこれがタイミングによっては「失敗」することを考慮する必要がある。
なんかむずかしそうだ…。
キューに処理を貯めて、それを実行するって複雑そうですねー。
何の機能も無い、キューの構造を作るだけでひぃひぃ言いそうなんですが(藁

>>554
サーフェイスって、メモリ上のビットマップのことでしょうか?

>>555
コンパイルする時間ってなんかドキドキします。
たいがい、凡ミスエラーだらけなんですが…。
うーん、なんかプログラムを楽しんでできそうですねー。Delphi。

>>556
いつまでもヌルい環境に浸っていたらダメかもしれないですね。
最初、ウインドウをAPIで作ったとき、驚愕しました。

>>557
僕にとっても非常にありがたいです(藁

>>558
再利用しやすいコードって、非常に難しいです。
汎用的に書いてるつもりでも、実は他のプログラムにコピペしたら
穴だらけみたいなソースをいつも書いています…。
※なんか、全てのパターンを満たすほど意見があって、自分で取捨選択
 するのが難しいんですが…。

>>559
おー、本で勉強すれば自分でもスバラシいコードが書けるように
なるもんですか。本の名前まで挙げていただいて、ありがとうございます。

>>560
思いついたら書こうと思います。

>>561
APIの呼び出し方が間違っているのか、ウチでも、ノートPCでやると
カクカクします…。

>>562
プログラム的に非常に勉強になりそうですねー。
やってみたいけれど、ちょっとまだ難しいかも…。勉強します。
0570ヒッキー@プログラミングNGNG
>>563
何の機種用のBASICなんでしょうか(藁
BEEP 1ってどっかで見たような…

>>564
PC98をおもむろに起動するとか…

>>565
自機がバットって…ワラタ。
殻をぶち破る勢いのある発想ですねー。参考になります。

>>567
そうしたいと思ってはいるんですよ。
0571デフォルトの名無しさんNGNG
>>565
つーか、そもそもインベーダーゲームってのはそういう発想で生まれたはず。
0572デフォルトの名無しさんNGNG
ちょいとシツモンです。
Javaってよくオワッテル言語と聞くのですが
皆さんはなぜ勧めるの?
0573デフォルトの名無しさんNGNG
>>572
オワッテル人たちが言っているに過ぎないため。
0574デフォルトの名無しさんNGNG
死に絶えそうな言語にこそ、新しい血が必要なのです。
メンバー集めないと廃部になるJava倶楽部。
0575:デフォルトの名無しさん NGNG
これはすげぇよ。初レスだが、すげぇよ。
徐々に成長していって、面白かったよ。
これからも頑張れよ。まじで
0576デフォルトの名無しさんNGNG
Javaは結局、Sunがトドメを刺してしまった気がする。
0577名無しNGNG
>>574
Java倶楽部が廃部になったら、どこ行きます?
0578デフォルトの名無しさんNGNG
>>572
自分だけ被害者になるのが嫌なので
初心者も巻き添えにしてやろうってことです。
0579572NGNG
うへ・・・・
0580デフォルトの名無しさんNGNG
Javaをたたくのが流行だからです。
0581デフォルトの名無しさんNGNG
>>577
今までずっと囲碁をやって来て、囲碁部がつぶれたから、
じゃあ将棋部へなんて無理だろ
って、俺は574じゃないが
0582デフォルトの名無しさんNGNG
>>581
だから、ずっと囲碁やってて囲碁部がつぶれたらどこ行くの?
0583572NGNG
やべ・・・・
喧嘩はしないで―
0584デフォルトの名無しさんNGNG
>>582
全国行脚に出る
0585デフォルトの名無しさんNGNG
>>582
ネット囲碁。
0586デフォルトの名無しさんNGNG
JAVAプログラマは諸国漫遊ですか?
0587デフォルトの名無しさんNGNG
かくさんと
すけさんを
わすれずにね
0588ヒッキー@プログラミングNGNG
Javaトークで盛り上がってますね(藁

>>571
そうなんですか?ほおほお。

>>575
ういー。がんばります。
0589デフォルトの名無しさんNGNG
仕事なら来る仕事の勉強をすればよい
趣味ならその時好きなことをすればよい

趣味は酔狂なほどたのしい
0590589NGNG
だから初心者には N88BASIC を勧めてる
0591デフォルトの名無しさんNGNG
>>589
伊達や酔狂も程々にな。
0592 NGNG
ハイスコアキボン
0593デフォルトの名無しさんNGNG
CとC++の違いを誰か語ってください。
というか今主流の言語を語れる人って居るのかな。
このスレならゲームに使われてるものか・・・・
実際このゲームはこうで・・・・とか。

ハーフライフとかKohanて奴がModに対応してるとか聞いたんですが。
そのModってなんなんですか?
3D系ならともかくKohanてゲームはリアルタイムストラテジーなんですが
何となくは解るんですが、実際Mod作ったりしてるプログラマって
いるんですかね?日本に。
CSとかとてもアマチュアが作ったとは思えない出来なんだけれど。
0594デフォルトの名無しさんNGNG
>>593
スレ違い。googleでも行くがよろし。
0595デフォルトの名無しさんNGNG
VB    APIも直接叩ける、ネイテブコンパイラでもあるが、非常に遅い。
     ゲーム作りにはそれが障害になりうる。また文法が緩く、入門者
     は早期に移動しないと悪癖が見に付き易い。
     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
正直、このスレの >>1 にチョト感動した。
ガムバレ
0597デフォルトの名無しさんNGNG
>>595
妙にDelphiびいきだなぁ(笑
漏れは別にSTL依存は全く問題無いと思うけど。むしろSTLを使いこなせたら
ちょっと尊敬しちゃう。漏れはコンテナクラスくらいしか使う気しない。

Direct3D使うようになると、DelphiどころかVC++/IC++以外のコンパイラは
たとえC/C++であっても却下なんだよなぁ。
Borlandもさっさと妥協してオブジェクトファイルのフォーマットをMSに合わ
せれば良いのだが。
0598デフォルトの名無しさんNGNG
>>597
> Direct3D使うようになると、DelphiどころかVC++/IC++以外のコンパイラは
> たとえC/C++であっても却下なんだよなぁ。
なんで? 詳細キボンヌ
0599デフォルトの名無しさんNGNG
Delphiびいきの人って多いよね。
言語というより一つの処理系にすぎないと思うんだけど。
0600デフォルトの名無しさんNGNG
初心者がコンポーネントを再利用しまくりで開発するクセがついたらどうするの?

っていうか、VBにもユーザコントロールって無かった?
0601デフォルトの名無しさんNGNG
確かにDephiの場合は コンポーネント検索病にかかるな
 そこで成長が止まるか コンポ自作側に回るかが分岐点かもな

UserControl はActiveXを手軽に作れるのがメリットで、便利とは
思うけど、あくまでもコントロール。

コンポーネントはコントロールも作れるけど、クラスの一種。
コンポーネントにしたからといってオーバーヘッドはクラス化と同じ
程度。(実行時型情報を動的に使えば多少のオーバヘッドは出るけど)

またコンポーネントを作る事でクラス作成の訓練にもなるのがイイ感じ
0602 NGNG
>>601
それってC++でも一緒じゃないの?
参考書片手に勉強すればいい話かと。
結局本人次第としか言いようがない・・・。
0603デフォルトの名無しさんNGNG
C++ってそんなに敷居が高いかな。
0604デフォルトの名無しさんNGNG
C++は簡単だよね。
問題はまあ クラス設計とかが難しいって話かもしれないけど
趣味で作るなら 何回か作れば最適なのが見つかるし。
0605デフォルトの名無しさんNGNG
ガイシュツ?
>>1 =ヒッキー@プログラミング
例のブロック崩しですが(この話題ってもうおわったの?)、
ブロックをすべて崩した後に、ボールをキャッチせず、残りのボールを0にすると
「ゲームクリア」となるのはいいのですか?
しかもその後面が変わって即「ゲームオーバー」となってしまう。
ださい と思うんやけど。
ソース見てくるわ
# VBは経験ないので、直感で読みます(藁

# C言語を勉強中http://www.kumei.ne.jp/c_lang/で。
# ポインタってのがよく分からないのが、つらい。
0606ヒッキー@プログラミングNGNG
>>589
的を射たご意見、ありがとうございます。
ちょっとやる気がでました。

>>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
http://www.geocities.co.jp/SiliconValley/2530/
↑次UPしました。変更点は、

・ブロック全て破壊後にボールを落としても、StageClearとなる現象の修正

です。
0608597NGNG
>>598
MicrosoftとBorlandではオブジェクトファイルに互換性が無いんだけど、
(昔はあったらしいがMSが仕様変更したときにBorlandがついてこなかったとか)
dllならimplib使ってBorland用のlibを作れるからDirectXでもあまり問題
無いんだけど、Direct3Dは重要なライブラリがスタティックライブラリで
提供されてて、それはdllじゃないからBorlandのコンパイラでは利用不可能。

DirectX7の頃はそれほど重要でもなかったんだけど、X8になったらシェーダー
のコンパイル関数とかがスタティックライブラリの方に入ってて死亡。
一応、NVIDIAのNVASM使ってコンパイルできなくも無いけど、試行錯誤するのに
毎回コンパイルしなきゃいけないのは面倒かと。

事実上、DirectX8でBorlandコンパイラには死刑宣告されたようなもんだ。
0609デフォルトの名無しさんNGNG
つーかCOM使ってるくせに他言語/他コンパイラから利用できないDirectXの方がオカシイ。
MSの単なる嫌がらせか?
0610デフォルトの名無しさんNGNG
あと、VBやDelphiの得意とする領域とDirectXの分野は明らかに違う。
その点でDirectXが使えない=死刑宣告というのは偏狭。
0611デフォルトの名無しさんNGNG
>>608 それは coff2omf  でも変換出来ないの?
0612デフォルトの名無しさんNGNG
>>609
だからぁ、Direct3DはCOM使ってない部分があるんだって。
COMにしないのは何故だか分からんが。速度的な問題かも。かなりの部分がインライン
関数になってるくらいだし。

>>610
597に「Direct3D使うようになると」って但し書きしてるから、そこも見てから言っ
てくれ。

>>611
coff2omfでも駄目みたい。
ただ、検索したらボーランド用のライブラリを公開してる人がいたよ。
どんなのか見たら、Direct3DXの関数を全部エクスポートしたdll作って、
それを利用するみたい。
俺もソースの無いdllとかを改良するときに同じ事してるけど、これなら
呼び出しコストが少し増えるだけで利用できるわな。
0613598NGNG
じゃあ「VC++/IC++以外の」というよりも「Borlandの」コンパイラは全滅なわけね。
gcc(mingw)とかlcc-winとかはどうなのかな。
0614デフォルトの名無しさんNGNG
オブジェクトがCOFFのものなら問題ないと思われ
0615傍観者NGNG
ねぇ、そのへんの議論は他でやらない??
ここは1の成長を見守るスレなんだから。
0616デフォルトの名無しさんNGNG
>>615
やるとしたら、このあたりか?

鬱だ氏のう DirectX 2
http://pc.2ch.net/test/read.cgi/tech/997101556/
0617デフォルトの名無しさんNGNG
それもそうだ、1の成長を見守り、やさしく教えてあげませう。
0618デフォルトの名無しさんNGNG
1さんのソースを見て勉強させていただいています。
block29.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
>>608
スタティックライブラリって、コンパイラが変わると
使えなくなるんでしょうか?

>>615
実はこういう話題も、僕にはまだちょっと難しいですが
興味があるので、調べながら読ませてもらっています(藁

>>616-617
どもども。お気遣い、ありがとうございます。

>>618
>「CBall.vx > 0」というのは右に向かっている状態…
はい、右に進む場合は座標がだんだん正の方に増えていくので、
そのように書きました。
>「25」「20」「65」「70」という角度にはなにか意味が…
あまり意味はないのですが(w 、ただ、15度以下になったり、
75度以上にならないようにしようかと思いまして。
急角度になりすぎると、角度を修正する事ばかりにとらわれて、
ゲーム性が違うほうに向かってしまうんではないか、
と感じたので、そのようにしました。
0620ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/
↑次UPしました。変更点は

・マウスモードでボールを複数出すと自機が重くなる現象の修正

です。
ソース、1行の修正で済みました…。
もうちょっと注意深く調べるようにします。
0621618NGNG
>>619
なるほど、勉強になります。
ありがとうございました。
0622598NGNG
>>619
> スタティックライブラリって、コンパイラが変わると
> 使えなくなるんでしょうか?

コンパイラというか、コンパイルしてできるオブジェクトファイルの形式ね。
大体はシステムで共通なんだけど、Borlandだけ他と違ってるということかな。
なんでスタティックライブラリだけかというと、DLLの場合はシステムでロー
ドできる必要があるから、独自のものにはできないので問題が起きないから。
0623傍観者NGNG
>>620
おつかれ〜〜、早速見てみます。

>>616-617
サンクスコ。
やっぱいい奴の周りにはいい奴が集まるって事だねヽ(´ー`)ノ
他スレなら『しきるな(゚Д゚)ゴルァ!!』だし。
0624デフォルトの名無しさんNGNG
マウスモードのチェックをはずしてキーボード操作に戻る時や
マウスモードの時に最小化ボタンをクリックしたりデスクトップのアイコンをクリックすると
ボールが発射されてしまいますね。これは直してほしいところです。

ゲーム画面をクリックすると開始、
ゲーム画面の中だけにマウスの移動範囲を制限するというのはどうでしょうか。
そして一時停止するとマウスの移動制限をなくし、
またゲーム画面をクリックするとマウスの移動範囲を制限し、ゲームを開始する。
このようにすればなんとなく解決する気がします。
ただこれにすると一時停止中でしかマウスモード→キーボードの切り替えができませんが。
あとなんとなく左クリックで開始と一時停止、右クリックでボールを増やすという方が一般的な気がします。恐らく。

とりあえずマウスの移動制限の説明のリンクを。
ttp://www.elixir.co.jp/developer/vb/lib/vb_all.htm
0625デフォルトの名無しさんNGNG
みんないろいろ教えたがってるな。
良い人材を見つけたら自分で育てたくなるのがPGってもんだ(謎

>>1は、もうこのゲームのチューニングは十分ではないだろうか?
ここら辺から先は別の人間が進めても良いと思う。
>>1が作ったソースコードをベースに、有志が独自の改造を施してみては?
そして改造したらジオで公開し、ココに報告する。と。

>>1は次は何を作りたいんだ?
0626デフォルトの名無しさんNGNG
C++かCかDelphiか・・・・
0627ヒッキー@プログラミングNGNG
>>621
いえいえ、こちらこそソースを読んでいただいて
ありがとうございます。

>>622
そういうことでしたか。
DLLは独自のものにできないんですね。
オブジェクトファイルって、exeになる前の中間ファイルのことですか?
(というか、リンクという作業もよくわかりません(w)

>>623
おー、どうもありがとうございます。

>>624
そうですね。画面外をクリックした時に始まるのは変ですね。
マウスの移動範囲を制限するというのは、ゲームを正しく動かす為には
有効なやり方だと思いますが、手軽さが減るのではないかなぁ
と思います。
リンク先、参考にさせていただきます。どもども。

>>625
僕も止め時が難しいなぁと感じてました(w
でも、ソースを放置するにも、説明が少なすぎるし、
何かまとめになるようなモノを書こうかと思っています。
順番的には、次はテトリスを作ろうかと。

>>626
まだいくつかVBで作ってみようと思います。
他の言語に移るのはもうちょっと勉強してからにします。
(次の候補は一応VCにしました。)
0628デフォルトの名無しさんNGNG
テトリスのあとにはぷよぷよというわけですね(藁

テトリスが一応出来たら、ぷよぷよへの応用も結構できる。
ただ、ブロックの消える判定が違うが。
0629デフォルトの名無しさんNGNG
テトリスよりもぷよぷよの方がコード書いてて面白かったなぁ(ボソ
0630622NGNG
>>627
> DLLは独自のものにできないんですね。
今Windowsで使われてるのはPEフォーマットという奴

> オブジェクトファイルって、exeになる前の中間ファイルのことですか?
そう。というかVBも中間ファイルとかいって作ってるはずだが。

> (というか、リンクという作業もよくわかりません(w)
オブジェクトファイル同士(とライブラリ)をくっつけて実行ファイルを作ること
0631デフォルトの名無しさんNGNG
え?この程度で終わりなの?まぁいいが。
次はテトリスって話だけど、少なくともテトリスはブロック崩しより簡単だよ。
ぷよぷよは再帰使うと簡単だけど、VBって再帰使える?
0632デフォルトの名無しさんNGNG
つーか、1よ、今上がっている候補としては、

テトリス
ぷよぷよ
電卓(俺推奨 藁 (1/3)*3が1と表示されるヤツ

だな。
0633デフォルトの名無しさんNGNG
>>4
薬師丸ひろ子まだ〜。
0634ヒッキー@プログラミングNGNG
>>628
ぷよぷよは面白そうですねー。
でもぷよぷよ、すごく苦手なんです…連鎖のデバッグができない(w

>>629
ほおほお。そうですかー。
次にやってみたいと思います。

>>630
おー、ご教示ありがとうございます。
リンクという作業がようやく納得できました。

>>631
うーん、テトリスならすぐにできそうなので、
それからブロック崩しの続きを考えようと思います。
再帰ですか。VBはできないような……できるのかな。
ぷよぷよで再帰とはどこで使うのでしょう?
くっついた時の判定でしょうか?

>>632
あー、電卓の存在を忘れるところでした。
インタープリタは書いてみたいですが、もう少し経験を積んでから
やり始めようと思います。

>>633
そろそろ髪の毛1本づつとか送って来たりして(w
0635デフォルトの名無しさんNGNG
再帰はVBで使えます。

削除判定のときじゃない?
簡単な塗りつぶしのアルゴリズムと一緒。
0636デフォルトの名無しさんNGNG
テトリスって確か一度ブロックを回転してみて、ブロックが重なっていたり壁からはみ出ていたら元に戻すっていう方法でやるんですよね。
配列変数で仮想画面を作ってそれで判定する・・・であってますか?

いや、というより本当に聞きたいのはブロックの回転の仕方なんです。

■
■  →    ■
■■   ■■■

と回転させる時、みなさんはどのようにして回転させていますか?
やはり変数に(2次元配列変数)

 │012
 ┼──
0│000
1│001
2│111

などと形を記録しておいて、回転の度に該当する変数を呼び出しているのでしょうか。
ていうか以前にそこらへんをすべてむりやり計算して回転させようとして無茶苦茶になって挫折したんです。

うーん、上手く説明できない。これでわかるかな?
0637デフォルトの名無しさんNGNG
全パターン用意しておけばいいのでは?
0638デフォルトの名無しさんNGNG
回転の処理が分からないなら、あらかじめ全パターンを配列にいれておくのがよいかと。
計算して回転させるのも「むりやり」じゃなくてフツーだよ。
まぁ、やるなら最初にプログラム内で回転させたパターンを全部生成して、それを
使うのが一番良いと思うが。
0639デフォルトの名無しさんNGNG
そんなことより>>1よ、
VBでDirectX使ってみたら?
たしかDirectX7はVBからでも使えたような・・・。
0640デフォルトの名無しさんNGNG
・・・他の言語に移るタイミングが遅れると
モナーの *やさしい* Delphi質問スレ
http://pc.2ch.net/test/read.cgi/tech/1003113413/

の ( = ゚ ω゚ )  みたいになるぞ・・・
0641デフォルトの名無しさんNGNG
誰も知ってる人おらんのかな・・・
俺も詳しく知らないのでほっとけば誰かの講釈が入るだろうと思って
たんだけれど・・・・

MODで名前あってるか知らないけど、確かCSならHL(ハーフライフ)
持ってればただでゲームできるという代物だったよーな。
つまりHLのプログラムを利用したゲームだって事だと思う。
クォーク(クエイク?)とかアンリアルとかもにたようなモノだと
どこかで読んだ記憶がアリ。なんとかエンジンって言うのかな。
俺はこれくらいしかしりません。
0642デフォルトの名無しさんNGNG
>>1よ、
>>640の言うようになるかどうかはお前次第だ。
別に移行のタイミングなんて関係ないから気にするな。
0643デフォルトの名無しさんNGNG
http://www.geocities.co.jp/SiliconValley-SanJose/4825/tet/index.html
0644デフォルトの名無しさんNGNG
>>641
modは知ってるけど、googleで検索すればいくらでも解説はあるから無視した。
ただ、音楽の方のmodばかりヒットするから、マイナス検索使わないと面倒だが。
そもそもこのスレに関係ないし。
0645デフォルトの名無しさんNGNG
そうなんですか・・・・
ゲーム作りに興味ありそうなんで、
俺が知ってる事を言ってみただけなんですが
すいませんでした。
0646ヒッキー@プログラミングNGNG
現在テトリス作成中であります。
体調悪くて、書き込みできませんでした。

>>635
お、再帰使えますか?実験してみます。
あー、囲まれた領域を塗りつぶすアルゴリズムですか。

>>636
僕も回転の仕方で詰まりました(w
やっぱ回転後の配列を用意したほうがいいのかなぁと。

>>637
そうなんですよね。

>>638
うむぅ。そうしてみようかと思います。

>>639
DirectXをVBから使う方法を解説した本が一応手元にあるんですが、
GDIを使って処理する方が勉強になるかと思いまして。

>>640
読んでみようと思います…

>>641
あー、そういえばグラフィックを入れ替えるデータを
配布している方がいらっしゃいますね。
あれって、自分でデータを解析されているんでしょうか。

>>642
どもです。気楽に逝こうと思います。

>>643
お、回転のパターンが載ってますね。
じっくり見てみます。

>>644
やっぱ有名なんですね。

>>645
おかげ様で、また新たな単語を知る事ができました。
興味があるので、検索してみようと思います。
0647デフォルトの名無しさんNGNG
http://www.google.com/search?q=%83q%83b%83L%81%5B%81%97%83v%83%8D%83O%83%89%83%7E%83%93%83O&hl=ja&lr=
0648ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/tetris1.zip
↑テトリス、未完成ですがUPしてみました。
 今の所、端に埋まったりします…

>>647
お、このスレ1番上に出てきますねー。感動。

生き返ったのでage
0649デフォルトの名無しさんNGNG
>>648 遊んでみました。イイ!
いちばん上までブロックが積もっても、ゲームオーバにならない・・・。
ランタイムエラーとやらが出て、終了してしまいます。
0650デフォルトの名無しさんNGNG
俺のテトリスからコピペ。プレゼントfor誰か。

private 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
>>648
(・∀・)イイ!!VBはよくわからんが、とりあえず指摘。
>>649さんのに加えて、回転する時の軸が変(つーか普通のと違う)から、ちょっと違和感あり。
回転のほうは、壁にめり込む場合は回転できないようにするのかな??
あまり役に立てなくてスマソ。
1、頑張れよ〜〜
0652デフォルトの名無しさんNGNG
651さんの普通が何か分からないけど、
回転法則自体は>>643の仕様どおりになってると思う。
(壁にめり込むのは別として)

市販されてるテトリスは回転法則がソフトによってまちまちです。
例えばこの辺を参照
ttp://www.din.or.jp/~koryan/t_r01.htm
0653デフォルトの名無しさんNGNG
テトリスと言えば、漏れはやはりセガのアーケード版だな。
同時期に出た各社のテトリス(アーケードでもATARI版とかあった)の中では
セガのが一番良かった。落下スピードが反則的に速いかわりに、地面について
からくっつくまでの時間がとても長い。
BPSのパソコン版はイマイチ。
0654デフォルトの名無しさんNGNG
>>636
 ぶっちゃけ、回転パターン用意した方が速い(両方の意味で)けど、
一応、計算で求めれ無い事も無い。

 │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
http://www.geocities.co.jp/SiliconValley/2530/tetris2.zip
↑テトリス、次UPしました。
 今のところ問題点としては

・壁に埋まる
・レベルが上がらない(早くならない)

などです。

>>649
どもども。
一番上まであがったら座標が-1になるときがあって、それで
エラーを吐いていたようです。応急処理的に、MsgBoxを出してみました。
ご報告、ありがとうございます。

>>650
僕もそういう感じで処理したかったんですが、
VBだと冗長な処理になってしまいます…。
宣言時に初期化できないもんでしょうか。

>>651
ういー。がんばります。
>>652 さんのおっしゃる通り、いろいろ回転が違うみたいですね。
ゲームボーイでさっきやりましたが、>>643 さんにリンクして頂いた
回転と違っていました。
って、>>652さんのページ、すごいですね(藁

>>653
あー、セガのってサルのやつですですよね。
僕は当時お小遣いが少なくてほとんどできませんでした…。
なんかOL風の人が、異様な形相ですごい速度を
さばいてたのを見ました。
テトリスってパソコン版あったんですか?知らなかった。

>>654
回転、計算でもとめれるんですねー。
僕は回転の仕方を考えていたら頭がよじれそうになりました。
やっぱ配列に回転後のデータを格納しておいた方が速いのでしょうか。
0656バード大佐NGNG
すげー
いつのまにかテトリス開発に移ってたのかw
0657デフォルトの名無しさんNGNG
(´-`).。oO(なんでみんな既存のゲームに似せようとするんだろ...)
0658デフォルトの名無しさんNGNG
>>657
ブロック崩し、テトリス、パックマン、リバーシ(オセロ)、ぷよぷよ、インベーダー……
このあたりはゲームプログラミング初心者に最適な題材だからだ。

ゲーム会社の研修の課題にも使われるぞ(マジで)。
0659デフォルトの名無しさんNGNG
テトリス、プレイさせて頂きました。
操作レスポンス非常に良好ですが、落としたブロックが固まる前に
次のブロックを回転させようとして大変な状態になること多数。
下キーで落とした時にはすぐに固まって次に行って良いかと思いました。
あと、揃えた列が消える時に画像効果が欲しいですね。

それと、この際タイトルに
「貴様ら! 落ちてくるブロック揃えて消してください」なんてどうかと。
0660 NGNG
シンプルに、
『貴様ら!ブロックをそろえてください』でいいんじゃない?
0661デフォルトの名無しさんNGNG
ストレートに
貴様ら!テトリス作ったからプレイしてください
でどう?
0662デフォルトの名無しさんNGNG

「貴様ら!ブロック崩し作るので見てください (662)」
               ↓
「貴様ら!ブロック消し作るので見てください (3)」
0663デフォルトの名無しさんNGNG
>>662の
>けしって何
の部分が
「こけしって何」に見えた俺は逝ってよし?
0664デフォルトの名無しさんNGNG
>>663
(´-`).。oO(逝かないで・・・)
0665ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/tetris3.zip
↑次UPしました。
 まだ若干ブロックに埋まったりします…

>>656
はは。テトリス終ったら、またブロック崩しの続きを作ろうかと思っています。

>>657
オリジナリティを出すのはまだ早いかと思いまして…

>>658
>ゲーム会社の研修の課題にも使われるぞ
ほおほお、そうなんですか?
もっとやらねば。

>>659
そうですねー。下キー押したときは固まるようにしようと思います。
画面効果、考えてみます。

>>660
採用させていただきました(w

>>663
こけしですかー。最近見てないなぁ…。
0666ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/tetris4.zip
↑次UPしました。一応ちゃんと動くようになりました。

 あとは音を付けたいと思います。
0667デフォルトの名無しさんNGNG
何が何でも罵倒語と丁寧語をスレタイトルに同居させんといかんのだな
0668デフォルトの名無しさんNGNG
>>667
http://jiten.www.infoseek.co.jp/Kokugo?pg=result_k.html&col=KO&qt=%B5%AE%CD%CD&sm=1
昔は尊敬の意味があった(^^)
0669デフォルトの名無しさんNGNG
電波ども、ドキュソを
0670デフォルトの名無しさんNGNG
ああ、努力って報われるのね。
このスレッド見てて、そう思った。
俺も頑張ろう。
0671デフォルトの名無しさんNGNG
>>668
「ら」は尊敬じゃないだろう。
0672ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/tetris5.zip
↑次UPしてみました。

・音の追加
・バランスの調整
・タイトル画面の追加

などしてみました。

>>667
なんとなく、一貫性があった方が良いかと考えまして。
そろそろ、他の名前の付け方考えます…

>>668
ほおほお。貴様!ありがとうございます。

>>669
目撃ドキュソ

>>670
このスレでプログラムの勉強始めてから、がんばるのは
スバラシイ事だと実感しました。

>>671
そうですね…うーん、貴様ドモ!…余計ダメですね。
0673デフォルトの名無しさんNGNG
>>672

どのキーでブロックを回転させるの?
0674ヒッキー@プログラミングNGNG
スペースキーで回転します。
逆回転は今の所ありません…
0675 NGNG
http://ww31.tiki.ne.jp/~mayugon/java/tamago/
0676660NGNG
貴方様ドモ!!で。
0677デフォルトの名無しさんNGNG
貴様方!!
0678ヒッキー@プログラミングNGNG
今日は風邪気味で休憩してました。
最近、更新回数が減ったせいか、酸化してくださるかたも
減っていったような…
そろそろブロック崩しの続きでも作ろうと思います。

>>675
うんちを取って、終了してしまいました(藁

>>676
今辞書引いたところ、ドモはラよりも駄目みたいです…

>>677
方…(・∀・)イイ
0679デフォルトの名無しさんNGNG
けど、>>1=ヒッキー@プログラミング は、ム板に立てて正解だったなぁ…
とつくづくおもふ。
臭蚊屁の……

次スレは「貴様方!C言語勉強するので見てください」だな(藁
0680デフォルトの名無しさんNGNG
http://pc.2ch.net/test/read.cgi/tech/1008483093/
0681ヒッキー@プログラミングNGNG
>>679
クサカベさんって、煽り専門のように見えるのですが
気のせいでしょうか。
この発言に「はつみみです。」っていうレスついたりして(藁

>>680
おー、第2段が(w
さっそくご挨拶に逝きました。

対抗age
0682ヒッキー@プログラミングNGNG
体調がすこぶる悪いです。
開発停滞してる間にお客さんが減ってしまった…。

VCにブロック崩しを移植しようと思っているんですが、
どのようにして画像を表示したら良いか模索中です。
STATICでCreateWindowを実行したらいいんでしょうか。
とりあえずいろいろ実験します。
0683デフォルトの名無しさんNGNG
がんばる人は、好きです。
0684デフォルトの名無しさんNGNG
>>682
1. メインウィンドウと同じサイズのビットマップを用意しておく(バックバッファ)
2. ゲームではバックバッファにデータを書き込む
3. 一通り書き終わったら、バックバッファをメインウィンドウに BitBlt して貼り付ける。

こんなものでいいと思うが。普通の Windows アプリケーションでは WM_PAINT メッセージに対応して
描画するんだが、ゲームだったら無視して適当なタイミングで BitBlt() しても構わんでしょ。
0685たけおNGNG
見てる人は見てる( ̄ー ̄)
0686ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/cblock.html
↑VC編始めました。いろんなところのソースを見ながら書きました。
 ちゃんと動いてないかもしれません…。
 タイマーとかデバイスコンテキストとか破棄されてなかったらごめんなさい。

>>683
ケコーンしましょう。

>>684
今の所、バックバッファは用意しませんでした。
WM_PAINTのところ何も書いてないんですが、いいんでしょうか。
BeginPaint・EndPaintの役割が、まだはっきりつかめてなかったりします(w

>>685
おぉ、ありがとうございます。
見てくださるかたが、もしいらっしゃらなかったらちょっと悲しいです。

※肩こりで頭が痛くて、変な事書いてるかもしれません…。ごめんなさい。
0687デフォルトの名無しさんNGNG
>>VBテトリス
テトリスの上カーソルキー、使う予定がないなら回転をアサインしてほしいなぁ。
そうすると片手で遊べるんだけど(w

>>VCブロック崩し
描画は>>684の方法でOKでしょう。現状のディスプレイDCに直接BitBltだと
そのうちチラツキが気になってくるハズ。
で、画像の表示は今はDDB使ってるけどそのうちDIBを使うことになると思う。
DIBならメモリに直接イメージを描けるからマスクパターンも要らなくなるしね。
WM_PAINTは処理しない場合でもDefWindowProc()が適当に処理してくれるから気にしなくても大丈夫。

BeginPaint()とEndPaint()はWM_PAINT内では
必ず呼ぶということだけとりあえず覚えておけばOK。

とりあえずこんだけ。
0688デフォルトの名無しさんNGNG
>>686
まず *.aps, *.plg, *.opt, *.ncb はソースアーカイブから削除ね。他の環境に持っていっても、役に
立たんから。

ReleaseDC(), DeleteDC() の使い方を間違えてるな。
 CreateCompatibleDC() などで作ったメモリデバイスコンテクストは、DeleteDC() で解放する。
 GetDC() や GetWindowDC() で取得したデバイスコンテクストは ReleaseDC() で解放する。
混同しないよう。

グローバル変数を使いすぎだが、それはともかくグローバル変数の宣言はヘッダにまとめておく。
extern を実装側に書くと、不一致が生じたときに検出できないで、致命的なバグになるぞ。逆に
外に見せる必要が無い関数/変数は static リンケージにして、同一ファイルからのみアクセスで
きるようにしておくのが身のためです。

画面サイズのこととか、エラーチェックしてない点とか、わりとツッコミどころ満載だが、とりあえず気
になったとこだけサクッと書き直してみた。
http://members.tripod.co.jp/lambda_func/cblock01_x.zip
0689デフォルトの名無しさんNGNG
書き直すなよ。
0690デフォルトの名無しさんNGNG
とりあえずCで書くなら.cppじゃなくて.cにしとけ。
0691デフォルトの名無しさんNGNG
>>689
別に、俺が書いたコードをそのまま使えとは言わんよ。サンプルとして参照したければ
すればいいし、したくなきゃ捨てときゃ良いだけ。
0692 NGNG
>>689
漏れもそう思って昨日言おうとしたけど、1が読んだら参考になると思ってやめた。
1ならそれをうまく吸収できそうだし。
0693ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/tetris6.zip
↑テトリス修正しました。変更点は

・上キーで回転できるようにした
・タイトル画面とゲームオーバーの画面で終了したら、正常にアンロードされない問題の修正
・横キーとスペースキーを同時に押したら壁に埋まってしまう現象の修正

です。

>>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
>>689
わざわざ労力を使って書き直して頂けるというのは大変嬉しいです。

>>690
.cにしたら問題が出そうな気がしたので.cppにしました。

>>691
いえいえ、捨てるなんて�dでもない。

>>692
吸収するべくがんばります。
0695デフォルトの名無しさんNGNG
>>693
> 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
>>695
> > あと、#if defined のところがよく分かりませんでした…
> あれは通称コードガードという技法で、
そういう通称あるの? いや一般的になんと呼ばれてるのか知らんのだけど。
0697デフォルトの名無しさんNGNG
>>694
>>686のソースはまるっきりCだろ、コメント以外は。

>>688のもほぼC。
C++じゃなきゃ通らないのはごく一部、structをtypedefしてないとか参照渡し
とか名無しの引数くらい。
0698687NGNG
>上キーで回転できるようにしました。
サンクス。これでお気楽に遊べるようになったよヽ(´ー`)ノ

>描画の時、見える部分を直接いじるとやっぱチラついてくるもんなんですね。
バックバッファを使えば目に見えるBitBltは一回で済むからチラつかなくはなるよ。
あと、CreateDIBSection()で取得したDIBなら普通にBitBltできるよ。
他の方法はちょっとわかんない・・・これしか使ったことないもんで(;´Д`)
まあDIBよりもバックバッファを実装する方が先だな。実装方法はわかる?

>白なら転送しない…みたいに書けばいいんでしょうか。
非パレットでのマスクならそうだね。パレットモードなら0番を描画しないとか。
やろうと思えばアルファプレーンを用意しての半透明描画だって可能。
0699 NGNG
ぷよぷよぱくったことあるよ。
画像もぷよぷよ
0700デフォルトの名無しさんNGNG
バグ報告。
ブロックが接地してからの挙動がおかしい。
具体的には、ブロックが接地したあとの猶予時間にブロックを移動させたり
回転させたりすると変な動作をしてる。
これは速度が速くなってくると頻発するようになる。

あと、Lineが100あたりになったとき実行字エラーの'9'(インデックスが有効範囲外)が
発生してプログラムが強制終了。
速度が遅いときにはほとんど問題ないみたいなので多分、高速化のロジックあたりに
問題があるんだと思う。

でもこのバグが解消してもこれ以上はスピードが速すぎてゲームとして
成立しなさそうな気がする。このどうしようもなくなってくる感じは
任天堂の初代のゲームボーイ版を彷彿とさせるものがある(w
0701636NGNG
前から思ってたんですけど、
そこらへんのページやVectorにも僕の作ったテトリス、私の作ったテトリス、
俺の作った対戦型テトリスとかいろいろ置いてありますが、テトリスって勝手に作って公開しても別にいいんですか?
シュアウェアとかにしても構わないんですか?(するつもりないけど…)

>>637 >>638 >>646 >>654
教えていただいてありがとうございました。
学校の期末試験期間中現実逃避して書き込んだんで中々レスする機会がありませんでした。
プログラミングをはじめて1〜2ヶ月目の挫折を1年経った今、見事にはらすことができました。
あの時の「VisualBasic6.0評価版」ではなく、ポケットコンピューター「PC-G850S」で。
0702デフォルトの名無しさんNGNG
>>701
テトリスの名前を使うのは商標権の侵害で確実にクロ、
名前を使わなくても、著作権の同一性保持権の侵害でグレーと思われる。
とりあえず、フリーソフトまたはシェアウェアでテトリスを公開していて、
著作権者のThe Tetris Companyに警告されたケースは結構あるらしい。
でも、みんな次から次へと作るから全然追いついてなさそうだ。

ライセンスを正規に獲得したければこの辺か。
ttp://www.tetris.com/corporate/
実際どういう手続きになるのかは知らない。そんな感じ。
0703  NGNG
警告きてから、考えよう
0704636NGNG
>>702
やっぱり駄目ですか・・・残念
Googleで「自作 テトリス」で検索すると2000以上もの件数が…
これでは全然追いつけそうにないですね。さらに増えていくし…
しかしこの中には犯罪とも何とも思わず作っている人も多いんだろうなぁ。

>>703
ホームページにメールアドレスを書かない主義なので、
警告するときは直接電話がかかってくるんだろうか。それともそのままタイー・・・
0705デフォルトの名無しさんNGNG
その辺よく分からないんですよね。

普通のゲームは、いわゆるクローンは別にクロではないそうですけど、
テトリスの場合は(テトリスカンパニー側は)かなり厳しいですね。

どこまで似てるのはよくてどこからはダメなのか、というのはよくわからんです。
0706  NGNG
まあ、テトリスっぽくなければOKでしょう(謎
0707デフォルトの名無しさんNGNG
下から上にブロック発射すればよい。

ブロック崩しゲーとしてはそっちの方がなんとなく正しい気がする。
ばきゅんばきゅんって感じで
0708デフォルトの名無しさんNGNG
実質、テトリスを勝手に作って公開しても問題ないと思う。
テトリスのシステム自体は「アイデア」だから、よほどゲームとしての
類似性がない限り法的にどうこうできないと予想される。
ブロック崩しだって同じでしょ?
0709702NGNG
うむ。その辺もあってグレーとした。判例があるわけではないしな。
たぶん裁判になればパックマン事件みたく
映画の著作物云々でウダウダやるのだろうが。
ちと著作権のありかたについて考えさせられる事例ではある。

アイデアとしての落ちものパズルについては
カシオの特許で問題になってたが、その後どうなったのだろう。
0710デフォルトの名無しさんNGNG
商標の問題だけじゃないんだ。
『テトリス』って名前使わなきゃ良いと思ってたよ。
オセロはダメでもリバーシなら可みたいな。

著作権よりも>>709が言うように特許じゃないの?
0711デフォルトの名無しさんNGNG
漏れもC勉強したいけど、コンパイラが……
バイト中。つーか月1k円の小遣いって(藁
0712ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/cblock.html
↑ブロック崩し(VC)、次UPしました。
 自機が動かせるようになりました。

>>695
プリコンパイルヘッダっていうんですね。参考になります。
StdAfxを作っておくと、たしかにコンパイルが早くなりました。

コードガードのところ、よくみたら「#if defined」ではなくて、
「#if !defined」になってました…。ようやく機能が理解できました(藁

>>697
>>「>>686のソースはまるっきりCだろ、コメント以外は。」
たしかにそうかも…
>>C++じゃなきゃ通らないのはごく一部、structをtypedefしてないとか参照渡し
>>とか名無しの引数くらい。
ほおほお。typedefしなくてもstructって毎回書かなくていいんですね。
…って、いろいろ便利そうなので、cppのままにしときます。
ありがとうございます。

>>698
今回UPした分、バックバッファ使ってないせいか、やはりチラつきました。

>>CreateDIBSection()で取得したDIBなら普通にBitBltできるよ。
おお、それは便利そうですねー。一回実験してみます。
>>バックバッファを実装する方が先だな。実装方法はわかる?
ん〜、どうでしょうか。できるだけやってみます。
>>アルファプレーンを用意しての半透明描画だって可能。
半透明ですかー。やってみたいなぁ。
半透明の演算って、加算でやるんでしょうか?
0713ヒッキー@プログラミングNGNG
>>699
(・∀・)イイ
PC版ぷよぷよから画像抜き出したりしたら面白そうですね。

>>700
ご報告ありがとうございます。

>>ブロックが接地してからの挙動がおかしい。
>>これは速度が速くなってくると頻発するようになる。
速度が速くなるまでやってみました。…たしかにおかしいです。
>>Lineが100あたりになったとき実行字エラーの'9'が発生してプログラムが強制終了。
一度に2マス以上落ちて、配列の要素を超えてしまったんではないかと…
直します。
>>でもこのバグが解消してもこれ以上はスピードが速すぎて…
たしかに。レベル上がるごとに落ちる速度に掛け算してるのがまずかったと思います…。
ゲームボーイ版テトリスで一番長くプレイしたので、影響が出たのかもしれません(藁

>>701
おお、ポケコンですかー。ウチにあるのは5行ほどしか表示できないので、
極端に狭いテトリスしかできません(藁

>>702
テトリスのライセンスのページってあるんですね。
最終的にロシア人の作者にお金が逝くのだろうか。

>>707
発射…(藁
テトリスとは違うゲームが出来上がりそうですね。

>>708
たしかにブロック崩しもタイトーにお金払わなければならんのでは…
という感じがします。商用でなければいいんでしょうか。

>>709
映画とゲームを比較して裁判で争うのっておかしいですよね。
たしかに最近のFFはまさに映画ですが。
(裁判で今後認めさせる為に無理矢理あのようなゲームにしたのでは…)
カシオって、落ち物パズルの特許もってたんですか?

>>710
オセロって日本人が考えたんでしたっけ。

>>711
コンパイラはフリーでありますよ。
ボーランドのTurboC++とかDownloadできるみたいです。
GUIのツール類は無いみたいですが…
0714デフォルトの名無しさんNGNG
>>698
DIB は描画時にデバイスコンテクストにあわせて変換が入るから、遅くないか?
0715 NGNG
「映画の著作物」は頒布の話だから、ゲームのアイディア保護とは違う気もします。
このへんようわからんのですが…
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デフォルトの名無しさんNGNG
>>714
DDBに比べれば確かに遅いかもしれないけど
最近のマシンなら十分に使い物になる。60fpsくらい全然余裕(解像度にもよると思うけど)。
バリバリに画面描画を行うならDirectXがいいかもしれないけど
たいていはDIB(っていうか、旧WinG)で間に合うと思う。
0717デフォルトの名無しさんNGNG
>>713
お言葉はありがたいけど……
フリーであるんだけどね、通信速度が……WinUpDateで精一杯(藁
ISDN?いやいや、56kbpsしか出ませんよ(泣
通信費か、もしくは……
0718デフォルトの名無しさんNGNG
>>717
Cマガ買え
0719デフォルトの名無しさんNGNG
小遣1k円……
ノート1冊0.1k円……
がんばる!
0720デフォルトの名無しさんNGNG
>>717
とりあえずCの勉強ならLSI-Cの試食版でもやってみれば?
アーカイブで400Kだから全然余裕だろ?
0721701NGNG
>>713
けど6行あるうちの4行しか使ってません。というか使えません。
大きくすると描画に時間がかかってゲームにならないんです。
しかも教育用ポケコンの仕様かどうかわかりませんが、横幅が普通のよりせまいんです。
だから雑誌に載っているプログラムを打ち込んでもはしっこが見えない・・・(泣
0722デフォルトの名無しさんNGNG
>>720
アリガトウ♥
コレから落としてきます。 ねこでも――で便供養中です。
0723デフォルトの名無しさんNGNG
スマソ。
/便供養中/勉強中/鬱;
0724  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デフォルトの名無しさんNGNG
a 宣伝ですか?
g とりあえず、あぼ〜んっと。
e あげとこうっと。
0726デフォルトの名無しさんNGNG
>>380……
>>724宣伝ウザい。
0727デフォルトの名無しさんNGNG
かちゅ〜しゃでみると>>721のうごきがおかすぃ、、。
0728ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/cblock.html
↑次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デフォルトの名無しさんNGNG
P/ECEをやれYO!
OK?
0730デフォルトの名無しさんNGNG
>>728
とりあえず、コンパイラの警告レベルを 4 にしましょう。

if (x = 0)

みたいな、ありがちなバグがいくつも。
0731717NGNG
>>713へカーソル合わせると700~713が順不同に表示されるんです。
うちだけですか?
0732727NGNG
失礼!!727でした。>>713という番号がおかしいみたい。なぜ?
0733デフォルトの名無しさんNGNG
>>728
うちの環境でVer.3を動かしたところ、
動きがもんの凄いスローで、
右側のスコア欄に恐らく該当する部分の表示が
やばいことになっています。
0734デフォルトの名無しさんNGNG
ひさしぶりに見たらまた盛り上がってたみたいだな。

>>714
確かにDIBはピクセルフォーマット変換が入って画面へのBitBltは遅くなるが、
DDBだとスプライト描画が足を引っ張るから、大抵のゲームでは問題にならな
いよ。DDBで多重スクロールなんてやろうとしたら鬱になるかと。
あと、DIBもデスクトップのピクセルフォーマットと同じフォーマットで作成
すると速くなるよ。それじゃDIBの意味ないんだけどさ。DirectDraw使った方が
速い。
0735デフォルトの名無しさんNGNG
windowsプログラミングってやったこと無いんだけど、
これから勉強しようとするときは、サンプルとか見て
この関数なんな?とか、この型はいったい何者?って思っても
とりあえずこうするもんだ、とかでOKなの?
やってみたいんだけど、WinMainの引数からして意味不明・・・。

スレ違いだったら、すいません。
0736デフォルトの名無しさんNGNG
>>735
とりあえず「プログラミング Windows 第五版」を買って読みましょう。適当にコードを書くと、
動くところまでたどり着かんで死ぬ。
0737デフォルトの名無しさんNGNG
>>735

ttp://www.kumei.ne.jp/c_lang/
こことか見ながら勉強してみ。わからんとこがあったらヘルプ見るか検索。
それでもわからなければどっかで聞いてみる。
そのうち色々とわかるようになる。わからなければプログラミングには
向いていないってことで。
0738デフォルトの名無しさんNGNG
>>731-732
バージョンは?ksockのバージョンは?
かちゅをいれなおしてみたら?
それかログを削除 -> 取得しなおすとか
0739727NGNG
>>738
レス、サンキュさんです。後者で直らないので入れなおしてみます。
名スレ汚してすまんす……。
0740735NGNG
>>736.737
勉強してみることにします。
同じくスレ汚してすいません。
0741デフォルトの名無しさんNGNG
>>734
16→16より24→16のほうが速かったりするらしいけど
0742734NGNG
ついでに言うと、ドライバによって全然速度違ったり。
3dlabsのドライバはめちゃくちゃ速いんだか遅いんだかどっちだったか忘れたけど
極端に違った記憶がある。
0743デフォルトの名無しさんNGNG
DIB の利点として挙げられているのは、要するに

 「ピクセルを直接操作できる」

だけど、これってメモリデバイスコンテクストに対して GDI 関数を呼ぶよりも速いからお薦め、
という意味? DDB でもメモリデバイスコンテクストを作って SelectBitmapすれば SetPixel(),
GetPixcel() でピクセル操作自体は可能だよね。
0744デフォルトの名無しさんNGNG
>>743
ピクセル操作に関数呼んでたら遅くなるじゃん…アドレス指定してゴリゴリ出来る
ところがミソなんじゃない?あとはピクセルフォーマット決められるとか。

漏れはメモリ領域取ってStretchDIBitsとか使うけど。パレット付きとか使うとき楽。
上限反転も気にしないで済むし。
0745744NGNG
>>744
ぐは,上下反転ね(;´Д`)
0746 NGNG
ピクミン操作は、どうよです!
0747デフォルトの名無しさんNGNG
>>744
上下は高さをマイナスにすればいいんだよ。ヘルプにも書いてあったような。

SetPixelはDIBの直接アクセスに比べると遥かに遅いです。
少なくとも100倍は差があるかと。MMXも使えないし。
0748744NGNG
>>747
流石にそれは知ってますよ。説明不足だったかな。スマ
個人的にはリソース不足も関係なく使えてウマーなのでStretchDIBitsを使ってます。
0749デフォルトの名無しさんNGNG
DirectDrawSurfaceだと9x系でもリソース消費が少なくて(゚д゚)ウマー
0750デフォルトの名無しさんNGNG
DirectDrawSurfaceってGDI関数使っての描画できないんだっけ?
TrueTypeつかって文字書きたいときなんかどうすんの?
0751デフォルトの名無しさんNGNG
>>750
IDirectDrawSurface7::GetDC() なんかでデバイスコンテクスト拾える。DirectX 8 だとダメだが。
0752デフォルトの名無しさんNGNG
仮に使えないとしてもGDI関数使えないのはDIBもいっしょだから条件は同じ
0753ヒッキー@プログラミングNGNG
そろそろ体がやばいです(w

>>729
う〜ん、なんか僕にはなじめそうにない機種なのでやめときます…
あの韓国の携帯ゲーム機がちょっと欲しかったりします。

>>730
してみました。…イパーイ警告でました(w
ありがとうございます。

>>731-732
うーん、なんででしょうか。リンクが多すぎるのかな。

>>733
コードが悪かったのかもしれません…。
直したいと思いますが原因の追求をどうやればいいのか…

>>734
やっぱスプライトの処理でコマゴマとBitbltしたら遅そうですねー。
スト2の地面の描画とか真似しようと思ってもDDBだったら無理なんでしょうか。
DirectXってやっぱ覚えたほうがいいですね。

>>735
僕もWinMainがサパーリわかりませんが、初めてCのコード書いた時の
Mainと同じように把握しています。
0754ヒッキー@プログラミングNGNG
>>741
そういうことも、あるんもんなんですね。

>>742
ドライバで差が出てしまうと、どうしようもないですねー。

>>743-744
やっぱGetPixelとかは直接DIBをいじるより遅いんですね。

>>746
ピクミン、やった事ないです…

>>747
マイナスにすればいいですか?ヘルプ見てみます。

>>748-749
(゚д゚)ウマー

>>750-751
ほおほお。後で使えるように覚えておきます。

>>752
DIBの場合って、フォントを描くにはどうしたらいいんでしょう?
0755デフォルトの名無しさんNGNG
>>752
???
DIBはGDI使えるが?
0756デフォルトの名無しさんNGNG
>>755
DIB という単語が多義的に使われていて混乱してる気がするな。

 ほんとに素の 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
結局、>>752がDIBセクションを知らなかっただけということじゃないのか?
そうじゃないなら言葉足らず。
0758ヒッキー@プログラミングNGNG
VBのソースをひたすらVC用に書き直してたら、
何を書いているのかわからなくなりました…。鬱だ

>>756
詳細なご説明ありがとうございます。
用途によって使い分けるのがいいんですね。
ゲームを作るときにDIBを使う…という意味がはっきりしました。
逆に、絵を数枚だけ表示したい時などはDDBの方がよさそうですね。
0759デフォルトの名無しさんNGNG
>>758
ガンバレ

DIBってデバイスに依存しないビットマップって意味だから,一旦DDBにコピーして
おいてから描画すると高速になる事があって(゚д゚)ウマーだね。面倒くさいけど(w

ま,細かいことはこれから覚えていけばいい事だし,とにかく作ってみて完成させる。
コレが一番。やればやっただけ効果あるし,やる気ある奴は伸びるのも早いよ。
0760デフォルトの名無しさんNGNG
>>758
前のほうでちょっと書いたんだけど、Win3.1の頃にはWinGっていう規格があった。
最後のGっていうのはGameの略。つまりゲームアプリのために作られたもの
なんだけど、それがWin32になってAPIとして取り込まれたものがDIBセクション。
DIBとDIBセクションは一応別物として理解していてくれ。
DIBセクションに関してはCreateDIBSectionで検索すればすぐ出てくる。
0761ヒッキー@プログラミングNGNG
http://www.geocities.co.jp/SiliconValley/2530/cblock.html
↑次UPしました(VC)。変更点は

・ブロックの表示&はね返る

です。

>>759
ほおほお。いろいろ作ってみます。
DIBを作ってみて、速度を計ってみようと思います。
>>一旦DDBにコピーして
というのは、DDBにいったんBitBltするんでしょうか?

>>760
あー、そういえばPCを初めて買った時に見た、雑誌の付録で
WinGを使ってるのがありました。
MSDNのCreateDIBSectionのページを見てみます。
ありがとうございます。
0762デフォルトの名無しさんNGNG
ゲーム作るならDDBなんて無視していいと思うけどな。
CreateDIBSectionかDirectDrawの二択。

とりあえず、32bitカラーのCreateDIBSectionがおすすめ。
アライメントとかの問題も気にする必要ないから初心者にも扱いが楽。

CreateDIBSectionで速度的に問題があれば、DirectDrawに手を出してみるのが
いいかと。ただし、IA32についてちゃんと理解していなければ、ちっとも速くな
らないから注意。
0763デフォルトの名無しさんNGNG
>>761
>というのは、DDBにいったんBitBltするんでしょうか?
そうそう。表示デバイスとコンパチブルなビットマップを作ってBltするんだよ。
CreateCompatibleBitmapでMSDN探せば出てくるよ。

書き換えのチラツキ防止策にも使われたりしますが,ゲームじゃあまり使わ
れないから,気にしなくてもいいかも(w
0764デフォルトの名無しさんNGNG
正直ウ○○でそう。(自粛
なぜかネットにつなぐとしたくなるんだよ。
フレッツじゃないし、56kbps(前もこんな人いたような)だからつらい。

まぁ1がんばれ。
0765 NGNG
その後 ウ●●はどうなった?
じゃなくて1さん元気?
0766あきまさNGNG
1さんは何処へ逝ってしまったんですか〜?
0767デフォルトの名無しさんNGNG
養生せえ、養生せえ。

元気の出る波動送っときます。
も〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜ん…
         も〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜ん…
0768ヒッキー@プログラミングNGNG
保守age
そろそろ復帰します…。
0769デフォルトの名無しさんNGNG
>養生せえ、養生せえ。
えっ、何かの搬入ですか?
それとも、電源工事?
0770デフォルトの名無しさんNGNG
ブロックくずしってさ64kbyteプログラミングに向いてないか?
って思うんだ
0771デフォルトの名無しさんNGNG
>770もっと減らせると思う。やってみれば?
0772 NGNG
>>1
あけましておめでてーな。
本年もよろしくお願いいたしやがります。
0773デフォルトの名無しさんNGNG
正月どこにも行かなかった身としては、
書き込みが少ないのが悲しい。

ひまつぶし
    しようと思うが
          カキコ無し
                  圖
0774ヒッキー@プログラミングNGNG
数日間、ゲームやってました…放置してスミマセンでした。

>>762
ういー。了解しました。
IA32って、どういうのでしょう?Itaniumの仲間ですか?

>>763
ほおほ。参考になります。
コンパチブルなBITMAPは一応作ることができたのですが、
普通にBITMAPを作ると白黒になってしまうようなのですが、
解決策はあるのでしょうか?
(MSDNの内容がイマイチ読み取れませんでした…)

>>764
漏れもテンション上がるとウ○○がしたくなります…
あとコーヒー飲んだ後。
がんばります〜。

>>765
若干元気になりました。

>>766
ただいまー。
また、そちらのスレに顔出しマス…。

>>767
なんか耳鳴りがすると思ったら波動を送ってくださってたんですね(藁

>>768
ん?

>>770
小さくできそうですねー。
でもwindows.hをインクルードするだけで重くなるような…

>>771
もっと減らせますか?んんん。

>>772
今年も夜露氏苦おねげーします。

>>773
歌丸師匠!?
もっと正月もがんばったら良かったかと思っています。
0775デフォルトの名無しさんNGNG
>>774
IA32はi386〜Pen4(PenPro含む)
0776 NGNG
インテル・アーキテクチャ・32bit
0777デフォルトの名無しさんNGNG
>>774
> でもwindows.hをインクルードするだけで重くなるような…
ヘッダと実行ファイルのサイズは関係ないって。

ただ CRT に関しては libc.lib (libcmt.lib) をスタティックリンクして使うか msvcrt.dll を使うかでサイズに
差が出る。プロジェクトの設定から [C/C++] - [コード生成] - [使用するランタイムライブラリ] で選択ね。
0778デフォルトの名無しさんNGNG
>>774
>普通にBITMAPを作ると白黒になってしまうようなのですが、

コンパチDC作ってビットマップ作成だったかも知れん。スマソ
ここら辺ややこしいんだよな…
0779債務不履行の名無しさんNGNG
おおお!>>1=>>774=ヒッキー@プログラミング がageている!
いつもsageなのになぁ。

今日、某新聞の求人広告に………があってつい見にきてしまった。
保守上げだ。
0780MonamoeNGNG
なんか漏れ1さんと似てるなぁ…。

漏れも高校の時CとVB勉強してたよ。
今はC++だけど。
年齢もかなり近い。
1さんは漏れの1つ年上みたいだね。
しかも漏れもヒッキーでゲーム作ってたりする。

Cで書かれてるブロック崩しやらせてもらったけど、
なかなかいい感じだね。

1つ注文すると、最大化ボタンはいらないと思うよ。
CreateWindow関数のWS_OVERLAPPEDWINDOW
ってのを変更すれば最大化ボタンを消せるYO!
お互い頑張ろうね!
0781ぴくみん‏NGNG
がんばれ ‏ がんばれ
0782ヒッキー@プログラミングNGNG
だめだ…
一回休むと続けづらくなってきました…

とりあえずVC起動
0783ヒッキー@プログラミング ◆hky/PGis NGNG
てすと
0784不良社員NGNG
>>782
そういうときはやらんでよし。
他に興味あるプログラムを作るか、
遊ぶかダラけるかをおすすめします。

とりあえず、やる気でないときは私はそうしてます。
やる気ってコントロールするのが難しいんだよね
0785デフォルトの名無しさんNGNG
保守age
0786デフォルトの名無しさんNGNG
モチベーションは大事だよね。
仕事でも、趣味でも、勉強でも。
がんばれage.
0787ほえーNGNG
VCに移ったんだ
0788デフォルトの名無しさんNGNG
>>786
漏れはマスターベーションの方が大事だと思うな。
0789デフォルトの名無しさんNGNG
ネタだとしたらつまらんし、本気だとしたらアホだな。
0790デフォルトの名無しさんNGNG
>>789
お前みたいなデブメガネは死ね
0791デフォルトの名無しさんNGNG
何気に 788 != 790 だな
0792788NGNG
>>791
なんでわかったん?
0793デフォルトの名無しさんNGNG
>>782
そういう時は別の言語触ってみたら?
J++も入ってるんでしょ? 他にもDelphi6Personalとかも無料だし
0794789NGNG
>>788=790
おいおい何怒ってるんだよ。(笑)
0795デフォルトの名無しさんNGNG
実は.>>1が自作自演でストレス解消中だったりして・・・。
0796デフォルトの名無しさんNGNG
掃除機、錆吸ぃ。

>>1さぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ♥ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ♥ぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ(以下略
0797デフォルトの名無しさんNGNG
 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
 | >>1 はどこ!!    |
 |_________|
    ∧∧ ||
    ( ゚д゚) ||
    / づΦ
0798デフォルトの名無しさんNGNG
あまりおすすめできない擦れたい、形で始まった子のスレの
勢いはもう \0 どうぜん…(w
0799デフォルトの名無しさんNGNG
googleで「入門」を検索したつもりで「柔毛」を検索してしまいました。
(例) http://www.google.co.jp/search?q=%8F_%96%D1&hl=ja&lr=
0800デフォルトの名無しさんNGNG
やる気・向上心のあるプログラミング初心者募集!
0801ヒッキー@プログラミング ◆hky/PGis NGNG
(;´Д`)
0802デフォルトの名無しさんNGNG
>>800
プログラミングは (それほど) 初心者でもないが、ゲームプログラミングはド素人ってあたりで
どうよ? ひとつシューティングゲームでも書いてみたいなと思ってるんだが、観客いた方が気
合入るし。
0803デフォルトの名無しさんNGNG
>>802
俺は全然構わないと思うよ。
>>1もプログラミング多少できたみたいだし。
0804デフォルトの名無しさんNGNG
♥ a g e ♥
0805デフォルトの名無しさんNGNG
ビットマップが白黒になるのは
CreateCompatibleBitmap
の引数のHDCに入れるものが間違ってるからだったような・・・
hWnd = 「メインウインドウのhWnd」;
hdc = GetDC(hWnd);
CreateCompatibleBitmap(hdc, width, height);

とhdcをウインドウのものにすればすればカラーになるはず


0806デフォルトの名無しさんNGNG
>>802
漏れも便乗させてもらってもいい?
0807802NGNG
>>806
良いんじゃない。

とりあえず DirectDraw7 で、16x16 タイル張りの背景をスクロールできるところまで行きました。
ちとコードを整理したら up します。
0808806NGNG
>>807
どうもありがとう。
漏れ業務ではPL/SQLしか経験なくてやばめだけど。

わたしはDirectDrawは使えないヘタレなので、DirectX系無しのVCで・・
背景のスクロールはWM_TIMERでX+=10;とかにして
BitBltの所の背景のX座標の位置を増やしてみました。
たぶんWM_TIMER使っているからだと思うけどゲームみたいな綺麗な
スクロールじゃないや。
それにInvalidateRectをWM_PAINTじゃなくてWM_TIMERの方に書かないと
だめだったし。無念。
0809806NGNG
それと再描画命令はInvalidateRect(hwnd,NULL,FALSE);
一文しか私は使っていないんですが、UpdateWindow(hwnd);は
やっぱり普通は使うものなんですか?
自分のソースにInvalidateRectの次の行に書いたらKARNEL32.dllっていうのがエラー出します(涙
0810デフォルトの名無しさんNGNG
>>801
VBに帰る手もあると思う。
0811デフォルトの名無しさんNGNG
>>806
おそらくWM_PAINT に UpdateWindow 書いてねーか?
0812デフォルトの名無しさんNGNG
WOODYPOP
http://www2.sega.co.jp/sw/woody/

セガのブロック崩し。
おもろいよ。
0813デフォルトの名無しさんNGNG
このスレ好きだったんだが、ずいぶんさびれちゃって寂しいんで
漏れもちょっと参加してみます。

貴様ら!見てください
http://www.geocities.co.jp/SiliconValley-PaloAlto/4792/

プログラム歴は、昔BASICとCをかじった程度。ひと月程前にDelphiをダウソして勉強中。
0814デフォルトの名無しさんNGNG
>>813
色つけたら見てるだけで楽しくなりそう。
0815名無しへの扉NGNG
見れ!!
http://www.vector.co.jp/soft/win95/game/se174379.html
0816デフォルトの名無しさんNGNG
気合入ってんなぁゴルァ!
API板にも来てください

http://pc.2ch.net/test/read.cgi/tech/1006783012/l50
0817813NGNG
とりあえず次バージョンUPしました。
http://www.geocities.co.jp/SiliconValley-PaloAlto/4792/

画面を分割して、衝突判定を分けたんですが、
だんだんソースがゴチャゴチャしてきて見辛くなってきた。
あと、Ctrl+左マウスドラッグで画面をスクロールできるようになりました。

>>814 
ぱくり元のゲームも見てるだけで飽きないとこが好きだったんですが、フルスクリーン専用だったので、
そのへんをなんとかしたいなってのも、作ってる動機のひとつです。完成したらスクリーンセーバにもしてみようかと思ってます。
今のとこ、どうやって作ったらいいのか全然わかりませんが。
見た目の寂しさは何とかしたいとこですが、一通りの機能が出来るまでは我慢しようとおもいます。
音の追加とかも。
0818デフォルトの名無しさんNGNG
を、なんか楽しげ。
ぼーっとみちゃったよ。
0819デフォルトの名無しさんNGNG
見るわケネーだろうが
0820ヒッキー@プログラミング ◆hky/PGis NGNG
http://www.geocities.co.jp/SiliconValley/2530/
今日またやり始めたので、よかったらおいでくださいませ(;´Д`)
0821813NGNG
またUPしてみましたが…、
http://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が描画されてるのかな。
名前がバッティングしないように引数を変えてみてはどうでしょうか。
0823813NGNG
>>822
おっしゃる通りでした。
なんで気が付かなかったんだろ…。(;´Д`)ハズカスィ
0824agoNGNG
>>1だ!
>>1が帰ってきたぞーー!!


(・ι_・)age
0825デフォルトの名無しさんNGNG
>>1さんのページおめえ('-T)
0826デフォルトの名無しさんNGNG
1の掲示板で2げっととか、ズサーとかってやってる
0827ヒッキー@プログラミング ◆hky/PGis NGNG
ただいまです。ほしゅあげ
http://www.geocities.co.jp/SiliconValley/2530/

WM_TIMERで処理するのをやめて、時間を計るようにしました
0828ヒッキー@プログラミング ◆hky/PGis NGNG
・・・こんどこそあげ
0829デフォルトの名無しさんNGNG
このスレッドは大耳モナーが嫌々放置中です。
なんら問題はありません。
                        タリー
タリー      タリー              イヤーソ
   (\_/)          タリー
   (  ´Д)アハーン    タリー              タリー
   /   つ  (\_/)   (\_/)ノ⌒ヽ、
  (_(__つ⊂(´Д`⊂⌒`つ(´Д` )_人__) ))
0830デフォルトの名無しさん NGNG
>>1
今VBの方をDLしてみたんだけど、面白かったYO!
0831ヒッキー@プログラミング ◆hky/PGis NGNG
>>829
がーん(´ρ`)
>>830
ども、ありがとうございます!
これからもがんばって作っていきます
0832デフォルトの名無しさんNGNG
>>1が帰ってきた!帰ってきた!名前をハンカクにして帰ってきた!

折れもC勉強しようかと思うんだけど、
コンパイラなどどれがいい?

便乗 保守 呼込 質問 揚
0833デフォルトの名無しさんNGNG
俺が熱を出している間に帰ってくるとは・・・(w
0834ヒッキ-@プログラミング ◆hky/PGis NGNG
>>832
どもー。
Cですかー。漏れはWindows派の人間なのでやっぱVCが
(・∀・)イイと思うんですが、もし挫折してしまったら
投資がモターイナイので、フリーのLSI-C試食版などどうでしょうか?
DOS環境に限られますが、勉強ならちょうど良いんではないかと。

構造体・配列・ファイル管理などができるようになってきたら、
gccかボーランドのコンパイラに移行すればまた無料でできます。
0835  NGNG
男ならだまってGCCだ。
環境がWINDOWS、LINUX、FREEBSD、SUNOS、、、その他いかなる環境でも
男はだまってG・C・C!!!!!!!!!!!!!!!!!
0836ヒッキ-@プログラミング ◆hky/PGis NGNG
今、ゲームボーイアドバンス用のGCC使ってるんですが、
インラインアセンブラのところでエラー出すんですが何ででしょう…。

あと、makeコマンドでコンパイル→リンクする時も
なぜかエラーが…。

設定の仕方がよくわかりません。タスケテ
0837デフォルトの名無しさんNGNG
>>836
とりあえずエラーメッセージを Copy & Paste しろ。
0838デフォルトの名無しさんNGNG
今初めっからココまで読んだけど、1は>>466でもの凄く良いこと言ってる。
466で考えたことはずっと忘れないように。

> 結論としては、僕的にはコンピュータを内部まで知らなくても、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
>>837
アセンブラのとこのエラーはこんな感じです…。
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 NGNG
>>837
Makeの時のエラーは、

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
Command not foundてことは、sh.exeがそもそも無いか、pathが通って無いんじゃない??
自信無いのでsage
0843デフォルトの名無しさんNGNG
>>840
gccのインラインアセンブラの書式じゃないから。
0844デフォルトの名無しさんNGNG
>>841
cygwinインストールした?
0845ヒッキ-@プログラミング ◆hky/PGis NGNG
>>842
うーん、一応PATHに足したつもりなんですが…
>>843
まじすか?がーん。
まずgccの使い方をもっと覚えた方がいいですよね…
>>844
cygintl.dll cygwin1.dll
っていうファイルは、zipに一緒に入ってたので
入れました。
0846844NGNG
PATHに何を足したの?
DLLだけじゃなくて、cygwin上の開発環境入れたらかなり大量に入るはずなんだけど。
0847ヒッキ-@プログラミング ◆hky/PGis NGNG
>>846
cygwinってコンパイラとは別に用意しないといけないんでしょうか?
pathにはC:\devkitadv\binっていうのを足してます。
devkitadvっていうのがGBA用のgccみたいです。
0848デフォルトの名無しさんNGNG
で、そこにsh.exeってある?
ちなみにmake.exeはそこにあるわけ?
0849ヒッキ-@プログラミング ◆hky/PGis NGNG
ありました。
0850デフォルトの名無しさんNGNG
そのsh.exeをダブルクリックすると、DOS窓が開いて実行するはずだけど、

mount [ENTER]
mount -s [ENTER]

ってタイプするとなんて出て来る?
0851ヒッキ-@プログラミング ◆hky/PGis NGNG
$ mount
mount: not found
$ mount -s
mount: not found
0852デフォルトの名無しさんNGNG
/bin/shがないっつってんだから無論そうか。

pwd [ENTER]
./mount [ENTER]
./mount -s [ENTER]

だとどうよ?
0853ヒッキ-@プログラミング ◆hky/PGis NGNG
cygwinのサイト逝って、インストールしてみました…。
で、cygwinのbashからmakeしたらうまく逝きました…。
>>852さんどうもありがとうゴザイマス。
0854デフォルトの名無しさんNGNG
昨日このスレを見つけて最初から読んでたが、
またプログラムやりたくなったよ。
頑張れー>>1
0855デフォルトの名無しさんNGNG
841の時点でメイクファイルの中に
SHELL=sh
って書いたらたぶん解決してたと思う。
853で普通のcygwinとアドバンス開発環境が同居することになったようだけど、
無用な混乱が起こるような気がします。
PATHの設定とmountの状態でわけわからんくなる可能性がありますぜ。
0856ヒッキ-@プログラミング ◆hky/PGis NGNG
>>838
Javaってそういえばどこでも同じコードで動くんですよね。
でもシステム内部をいじるようなプログラムができないっぽい
ですね。やっぱこれからはWebベースのプログラムでないと
駄目なんでしょうか?C#もJavaっぽいし

Webのプログラムができなくてもいいから、いろんなシステム上で
動くコードが書けたら良いとおもうんですが…。
そういえばWindowsのコードって中間コードなんでしょうか?
それともx86系に依存したコードですか?……って調べてみます(わら

>ざっと1のVBのソース見た限りでは、プログラムが実行する処理を順番に書いてるだけだよね。
>VC版ブロック崩しはブロック、パドルなんかを別ファイルに分けてるから、その辺考え始めてると思う。
ファイルを、どこで線を引いて分けるかというのはとても
難しいですねー。とりあえず見た目に違うもので分けました…。

>ブロックに対しても、パドルに対しても、ボールに対しても「表示しろ」と命令すれば
>しかるべき位置にしかるべき表示をしてくれるとすれば、理にかなってると思わない?
そうですよね。
違うところは画像へのポインタと、座標だけですもんね。

>#俺も昔ゲーム作って、今の1と全く同じようなファイルの分け方してた(ワラ
安心しました(藁
やっぱそういう部分も考えないと良くなっていかないですねー。
今までは、ただ動けば(・∀・)イイという感じでプログラムしてました。
後で読めないソースや、再利用できないようなものを書くというのは
あまり良い事ではないですね。勉強になります。

>こういうとき一枚ラップ用の関数を定義して、例えば表示ならDraw()の中で
>実装依存の関数BltToBufを呼び出したりすると、プログラムが読みやすくなる。
この概念はすごい難しいです…。
いろいろ考えを巡らせてみましたが、中身の若干の変更で
他へ移植できるような書き方はなかなか思い付かないです…。
でも、うまくまとまってから作ったら、動きの把握しやすい
ソースになりそうですね。

後、少し疑問に思うことがあるのですが、ソース中の関数が、
WinAPIか自作の関数か分からなくなるときがあるので、
自作の関数に接頭文字を付けようと思いましたが、
全てに付けるにはあまりキレイじゃないし、読み分けするには
どうしようかと思っています。
もう一つ、staticな関数なんですが、他のファイルに公開する
関数と見分けるのがややこしいので、見やすくしたいと思うのですが、
どういう書き方が考えられるでしょうか。
僕的には、staticな関数は1段Tabしてから書いたらどうかと思っています。
そういう書き方は読みやすいですか?
(ソースの最後に、staticだけかためて書くというのも考えましたが、
 機能別に書いていくと、ソースの途中に書いた方が良い場合もあったので…
 もしかしてこっちの方が読みやすいでしょうか?)

最後に…レス忘れてました(;´Д`)すいません…
0857ヒッキ-@プログラミング ◆hky/PGis NGNG
>>854
おー、どもです!
プログラム、やっぱおもろいですよー。
がんばります!

>>855
がーん、まじですか?
後でインストしたcygwinにはパスが通っていないのか、
なぜかアドバンス開発環境のsh.exeからcygwinのコマンドが
実行できないんですよねー。うーん。
makeファイルからコンパイルするとき、イチイチcygwinから
cdで移動して、実行してました。
一回、SHELL=sh書いてみます。さんきうです!
0858デフォルトの名無しさんNGNG
>>856
WinAPI かどうかはそのうち覚えるから心配すんな。
でもまぁ自作関数にプレフィクスをつけるのは勧めとくよ。
少なくとも目立つ関数にはな。
関数の static 化はあんまり考えなくていーんじゃねーの。
そこまできっちり考えて作る必要なし。
0859デフォルトの名無しさんNGNG
>>856
> いろいろ考えを巡らせてみましたが、中身の若干の変更で
> 他へ移植できるような書き方はなかなか思い付かないです…。
Win32 only だが

 表示 GDI, DirectX7
 入力 User32.lib (Win32 標準), DirectInput8
 サウンド mci, DirectAudio8

組み合わせ可能なコードとかなら手元にあるぞ。C++ だけど。

> WinAPI かどうかはそのうち覚えるから心配すんな。
俺は C++ で書いてるから、Win32 API にはグローバルスコープを示す :: を
つけるようにしてる。
0860838NGNG
>>856
一段落ついたらクラスの使い方を覚えるといいよ。
ファイル単位でデータをstaticにしたり関数をstaticにして
スコープを分ける代わりに、クラスを使うと、同じように
データと関数を1セットにまとめることができて、
publicとprivateのキーワードで外部公開するかしないかを選択できる。

>後、少し疑問に思うことがあるのですが、ソース中の関数が、
>WinAPIか自作の関数か分からなくなるときがあるので、
これはクラス(クラススコープ)の導入で解決する。
いま問題になるのは、Win32APIも自作の関数もグローバルなレベルにあるから。
クラスのメンバ関数はそのクラスに属するから、例えばパドルクラスを作れば

Paddle paddle;
paddle.Init();

というように、Init関数はパドルを初期化するんだぜ、ってのが明快になる。
同様に bar.Init() ってのがあっても混乱することはない。

今、PaddleInit() って関数名は、「パドルを初期化する」ものだから、
Paddleという接頭辞によってInitの対象を限定してることになる。
よって方向性は間違ってない。
関数をグローバルスコープにして接頭辞をつけて対処するのは誤り。

>関数の書き方
関数の実装はとりあえずヘッダに書いた順に並べてる。
ここは個人で見やすいようにしておけばいいと思う。
他のファイルから呼び出すときは、ヘッダファイルだけ見れば分かるから。
編集の時はVC++のクラスビューア(だっけ?)で関数名クリックすればジャンプするでしょ。
もしくはヘッダで関数名を右クリックして定義位置を表示。

あと、ソースの書き方は綺麗で好感が持てます。
0861デフォルトの名無しさんNGNG
>>860
> 関数をグローバルスコープにして接頭辞をつけて対処するのは誤り。
誤りってことはないやね。確かに C++ で書くなら接頭辞不要だけど、C の場合には
プリフィクスをつけるのは一般的。

Win32API なら wave*, mci* とか UNIX のカーネルなら pmap_*, arp_* など実例は
多数。
0862ヒッキ-@プログラミング ◆hky/PGis NGNG
>>855
SHELL=sh でうまく逝きました!
やたら苦労したので、やたら嬉しいです。どもども!

>>858
まだきっちり考えなければ把握できないほどの
規模でもなかったですね…。
よく出てくる関数は目立つ名前にしようかなーと思います。

>>859
GDI→DirectDrawは、だいたい予想つくんですが、
mci→DirectAudioっていうのは想像するのが難しいです…。
どこまで分解したらいいかとか、どういう機能があるかとかを
知らないといけませんね…。

グローバルスコープの::って、左に何か付けるんでしょうか?
右にはAPIの名前ですよね?
0863ヒッキ-@プログラミング ◆hky/PGis NGNG
>>860
クラス覚えたら、整理しやすくなりそうですね。
Javaの本ちょこっと読んだんですが、継承やら
多態やらムズカシそうなので理解しないうちに
置いてました…。

Paddle paddle;
paddle.Init();
こういう書き方はすごい見やすいですねー。

また疑問が湧いてきたんですが、パドルの実体を
作るのって、メインループのあるファイルの中で
いいんでしょうか?

>関数の実装はとりあえずヘッダに書いた順に並べてる。
ほおほ、やっぱヘッダの順番と中身の順番が違うかったら
ややこしいですよね。
やっぱ、関数の機能の説明などのコメントは、ヘッダの方に
入れた方がいいですか?

>もしくはヘッダで関数名を右クリックして定義位置を表示。
あ、そんな機能あるんですか!?(;´Д`)

>あと、ソースの書き方は綺麗で好感が持てます。
ありがとうございます。
実際、仕事に逝った時に役に立てるようにもっと
いろいろ書き方考えてみます。

>>861
時と場合によって使い分けるのがいいんですね。
何かに固執して、他の場所で臨機応変に対応できない
ようにならないように気をつけます。
0864デフォルトの名無しさんNGNG
>>862
> グローバルスコープの::って、左に何か付けるんでしょうか?
グローバルスコープにある識別子(変数や関数名、enum 値)にアクセスする場合
には、何もつけません。

  ::CoInitialize(NULL);

みたいに書けば OK。

C だと名前はグローバルスコープ以外には置けませんが、C++ だと namespace
やクラスに閉じ込めることが出来ます。

namespace Block
{
  enum { PADDLE_PLAYER1, PADDLE_PLAYER2 };
}

たとえばこんな感じに書くと enum 値は Block 名前空間に属することになるので


 Blcok::PADDLE_PLAYER1

と書いてアクセスできます。所属する名前空間が異なれば、同じ識別子があって
も衝突せずに併用できます。

あと、特定の名前空間の識別子を選択的、あるいはまとめて現在のスコープに
導入する方法 (using namespace) があるので、実際にはそれを使うことが多い。
0865838NGNG
>>861
誤り、は言い過ぎた。実例上げてくれたとおり。
自分で関数定義するとき、かつクラスや名前空間が使えるとき、
という条件のつもりで書いた。

>>863
>パドルの実体を作るのって、メインループのあるファイルの中で
>いいんでしょうか?
でいいよ。使うところで作る。
他にはゲーム進行を行うクラスを定義して、そのメンバとして
パドル、ボール、ブロックを持たせるやり方も考えられる。

>やっぱ、関数の機能の説明などのコメントは、ヘッダの方に
>入れた方がいいですか?
両方に同じ説明(短文)を書いてる。実装の方にはコードの修正日も。
上手い人の書き方を参考にして、自分がいいと思う書き方でやればいいと思うよ。

複数人で作業する環境だったら、コメントはこう書け、みたいな
規約が決まってるかもしれない。
0866デフォルトの名無しさんNGNG
>>865
> 実装の方にはコードの修正日も。
それはバージョン管理ツール入れて、バージョン管理ツールにお任せが良いと
思われ。

私はバージョン管理は CVS、コメントは doxygen で出力できるように Javadoc
形式で入れてる。
0867デフォルトの名無しさんNGNG
10年前に作ったことある。
同時に三つのブロックに当たったときの動作どうする?
漏れのプログラムの場合、そのまま突き抜けるような
動作になっちまって・・
0868ヒッキ-@プログラミング ◆hky/PGis NGNG
>>864
>::CoInitialize(NULL);
>みたいに書けば OK。
ほおほ、そういう書き方があるんですねー。

ネームスペースっていうのは初めて聞きました…。
そんな便利な機能があったとは。

>あと、特定の名前空間の識別子を選択的、あるいはまとめて現在のスコープに
>導入する方法 (using namespace) があるので、実際にはそれを使うことが多い。
?なんか滅茶苦茶ムズカシいんですけど…(わら
using namespaceっていうのは手法のことでしょうか?
それともライブラリみたいなものですか?

>>865
>他にはゲーム進行を行うクラスを定義して、そのメンバとして
>パドル、ボール、ブロックを持たせるやり方も考えられる。
おお、そういう事も考えられるんですね。
なんか、目に見えるものばっかりをクラスに定義しようと
考えてました…。
クラスにクラスを持たせるっていう時は、継承させるんでしょうか?
それとも、実体をクラス内に持たせるという事ができるんでしょうか?

>両方に同じ説明(短文)を書いてる。実装の方にはコードの修正日も。
その方法なら修正時に、実装部かヘッダーか、
どちらを見られても対応できますね。
コードの修正日ってやっぱ必要なんでしょうか?

>上手い人の書き方を参考にして、自分がいいと思う書き方でやればいいと思うよ。
ですね。いろいろ見回って勉強します。

>複数人で作業する環境だったら、コメントはこう書け、みたいな
>規約が決まってるかもしれない。
複数人でやった事ないですけど、そういうルールって
結構重要っぽいですね。

>>866
バージョン管理ツールって、よく聞くんですが、
どういうソフトなんでしょうか?イメージできない…。

>>867
僕のやつも、2つほど一緒に当たると、突き抜けてしまいます(わら
ボールの近くのブロック全て検知して、同時に当たったときは、
進む方向に対してOR演算とかしたらうまく逝きそうな予感…
0869デフォルトの名無しさんNGNG
>>868
> ?なんか滅茶苦茶ムズカシいんですけど…(わら
「名前空間」とか使ってる単語が難しいだけで、別に実際に使うのは難しくないって。

namespace Paddle
{
  using namespace Ball;
  // こうすると namespace Ball の中にある名前を、修飾 Ball:: なしで
  // 参照できる

  using std::for_each;
  // こうすると namespace std にある for_each だけを、修飾 std:: なしで
  // 参照できる
}

こんな感じ。
0870ヒッキ-@プログラミング ◆hky/PGis NGNG
>>869
そういうのって、関数の引数に指定したりできるんですか?
function(namespace Paddle)みたいに…。
今のところ、enumのパワーアップ版みたいなイメージしてます。

あと、例えばBallには、数値を持たせることはできますか?
0871デフォルトの名無しさんNGNG
Del坊なのですが、このスレに参加してよいですか?>1さん
ひまになったんでなんかゲーム作ろうと思って。
0872ヒッキ-@プログラミング ◆hky/PGis NGNG
>>871
ういういー。
っていうか、ここは2chなので、漏れに人の考えを
制限する権利が無いんですよね。どぞご自由に。
0873デフォルトの名無しさんNGNG
838です。
>>868
クラスにする目安は、意味的、役割的にまとめる価値があるもの。
管理役として、マネージャっていう職があるのと同じ。

クラスを継承するか、所持するかは、例えば
 トヨタ車とホンダ車など各社の車を表すのに「車」クラスを継承させる
 車の「ハンドル」や「タイヤ」は車が所持する
と考えれば分かりやすいかな。

クラスにクラスを持たせるのはこんな感じ。
Class Paddle {}
Class Ball {}

Class Manager {
 Paddle paddle;
 Ball ball;
}

>コードの修正日
いつ書いたコードか分かるのは便利。
過去に書いたコードと比較して、スキルレベルの確認ができるから。
0874ヒッキ-@プログラミング ◆hky/PGis NGNG
>>873
>クラスにする目安は、意味的、役割的にまとめる価値があるもの。
>管理役として、マネージャっていう職があるのと同じ。
そういうとらえ方なんですねー。
なんか誤解してました…。

>トヨタ車とホンダ車など各社の車を表すのに「車」クラスを継承させる
>車の「ハンドル」や「タイヤ」は車が所持する
おおお、イメージばっちりです!
すごく分かりました。ありがとうございます。

>いつ書いたコードか分かるのは便利。
>過去に書いたコードと比較して、スキルレベルの確認ができるから。
ほおほ、たしかにそうですよね。
僕も修正日とか書くように心がけようと思います。
0875ヒッキ-@プログラミング ◆hky/PGis NGNG
保守…

最近、ブロック崩し作ってませんでした…。
GBAにはまりまくりです。
0876デフォルトの名無しさんNGNG
俺は見ているぞ
0877デフォルトの名無しさんNGNG
漏れも見ているぞ! たまに……な(ニヤソ)
0878デフォルトの名無しさんNGNG
応援sage
0879デフォルトの名無しさんNGNG
俺も見てるぞ。俺もなんか作ろっと。
0880デフォルトの名無しさんNGNG
俺も作ったけど、うまくいかないよ!
0881デフォルトの名無しさんNGNG
あげよう
0882デフォルトの名無しさんNGNG
ブロック崩しはローラーみたいな入力装置がないとだめだよ。
マウスや、ましてやキーボードなんかじゃまったく遊べない。

何か新機軸のアイデアでもあれば別だけど、、、
0883デフォルトの名無しさんNGNG
ホイールボタンをローラー代わりに使うとか。
0884デフォルトの名無しさんNGNG
>>883
それだ!
マウスホイールならいっそ画面を90度回転させるとか。
自機の移動は縦で。
0885デフォルトの名無しさんNGNG
>884
それって昔のテニスじゃ・・・
0886デフォルトの名無しさんNGNG
ホイールじゃ細かい移動ができんぞ
0887デフォルトの名無しさんNGNG
では、大まかな動きでもいいように球をでかくしてみよう
自機の10倍くらいに
0888 NGNG
でかすぎだよ!
0889ヒッキ-@プログラミング ◆hky/PGis NGNG
ひさびさあげ
http://www.geocities.co.jp/SiliconValley/2530/car.lzh

GBAで連打するゲーム作ったんで、よろしければ
やってみて頂きたいなぁと。
まだ完成度低いですけど…。
0890デフォルトの名無しさんNGNG
ゲームボーイないからできないや
0891デフォルトの名無しさんNGNG
http://www.emuhq.com/vboy

これでできると思われ。
自分はできました(感動した)。
0892ヒッキ-@プログラミング ◆hky/PGis NGNG
>>890
がーn
>>891
お、どもです!
やっぱやってくれる人がいると、すごい嬉しいっす。

今、F-ZEROの地面みたいな画面はどうやって描くか
考え中です。回転の式をうまく使えばできるかなぁとか…
でも、あんなグリグリ動かしたら処理落ちしそうな気もするし…。
あと、回転した後の図形の、当たり判定っていったい
どうするんでしょう。当たり判定の位置を決めるにも、
毎フレーム回転させないといけないんでしょうか。
0893デフォルトの名無しさんNGNG
>>892
当たり判定は平面2次元。表示だけ斜めから見てパースつける。イジョ
0894ヒッキ-@プログラミング ◆hky/PGis NGNG
あ、当たり判定って2次元でいけるんですねー。
って、よく考えたらそうかも…。道を誤るところでした(;´Д`)

パースって、歪み方がイマイチ想像できないんですが…
うーん、CGの本読んでみます。ありがとうございました。
0895デフォルトの名無しさんNGNG
>894
F-ZEROとかの2軸回転はメガデモ系のサイトで調べるといいと思うよ。
基本的な考え方はそれでわかるかと。
0896ヒッキ-@プログラミング ◆hky/PGis NGNG
>>895
ほおほお。メガデモ系ですか。
処理的には2軸回転を使うんですねー。
検索してみます。ありがとうございます。
0897ヒッキ-@プログラミング ◆hky/PGis NGNG
http://www.hh.iij4u.or.jp/~peto/2DCG/2d_2rot.html
…ようやく発見しますた(;´Д`)
0898デフォルトの名無しさんNGNG
>897
良かったな
てかこのスレだいぶ廃れてきたような気がするのぉ…
0899デフォルトの名無しさんNGNG
あわてず騒がずマイペースでだな。
0900ヒッキ-@プログラミング ◆hky/PGis NGNG
たしかに人がいなくなってしまいました…。
教えて頂いたことを、すぐにコードに反映させる
ような感じで作っていけばよかったような…。
ブロック崩しも、しばらくやってませんし…。

VCで作るんだったら、クラス化する方法を
ある程度覚えてからの方が良いような気がして、
現状のまま作る事に、ちょっと気が重くなっていました。

それから2軸回転、難しくてまだ把握できません…。
0901デフォルトの名無しさんNGNG
>900
考え方は2Dの画像回転と変わらないよ。逆に写像してライン引くって感じかな。
思いっきりそれを解説したメガデモ系サイトのコンテンツをローカルに保存した
のがあるんだけど…。
0902ヒッキ-@プログラミング ◆hky/PGis NGNG
>>901
ほおほ…2Dの回転と同じですか。
なんか、ひらめきそうなので一回VBで作ってみようと思います。
>897のサイトで、なんとかがんばろうと思います。どもです。
0903デフォルトの名無しさんNGNG
>>889のやつってエミュじゃないとできないの?
このまえGBA買ってきたからGBAでやれたらなーって思って。

ところでGBA用のコンパイラってどこか置いてあるの?
できれば無料のところを紹介してほしいなぁ。

クレクレ君でスマソ。こんな地下にあったらスレが進んでるかどうかわからないよー(;´д`)
0904デフォルトの名無しさんNGNG
age
0905デフォルトの名無しさんNGNG
>>903です。。。
リロードしたらあげられてた…。
0906ヒッキ-@プログラミング ◆hky/PGis NGNG
>>903
実機で実行するには、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
>>906
さんくすですー
さすがに「ヒッキー」だけあってレスが早いですね(w


もう残すところ95レスとなりました、新スレ立てるなら、URLはっといてね。
0908デフォルトの名無しさんNGNG
ブロック崩しなんか、ガキのときにBASICで作ったよ。
というか、そんなもの、APIなんか使う必要性ないだろう。
VBだったら、VB6.0の評価版(無料)でもダウンロードしてやれば十分。
でも、プログラムのことがわかりかけた最初のころに、
いろいろ作りだすのが楽しいんだよな、と昔を思い出したりする。
0909デフォルトの名無しさんNGNG
API使わずに…(以下略)
0910デフォルトの名無しさんNGNG
クス
0911デフォルトの名無しさんNGNG
ゲラゲラ
0912ヒッキ-@プログラミング ◆hky/PGis NGNG
アヒャ
0913デフォルトの名無しさんNGNG
>912
F-ZERO出来たか?w
0914ヒッキ-@プログラミング ◆hky/PGis NGNG
実は、ようやく”2軸回転”の意味がわかったところです(;´Д`)
何が2軸なのか、わかりませんでした…

DIBで、実験中です。
0915デフォルトの名無しさんNGNG
>914
おう。そりゃヨカタ。
マリオカート@2ちゃんキャラで一つタノムw
0916デフォルトの名無しさんNGNG
名称:モナーカート (ださ藁)
0917ヒッキ-@プログラミング ◆hky/PGis NGNG
http://www.geocities.co.jp/SiliconValley/2530/rotate2.zip
今のところ、こんな感じです。
まだゲームまで、程遠いような…
0918デフォルトの名無しさんNGNG
>917
動かしてみた。マップチップみたいにもなってるしいいんでねぇか?
そろそろVBを卒…w
0919ヒッキ-@プログラミング ◆hky/PGis NGNG
>>918
 お、どもです。
 VB、なんとなくやりやすいんですよ。

 VCは、MFCを使えないので、GUIのフレームを作るのが
 めんどくさかったり…。
 Formをリソースで作って、それを管理すればいいんですけどね…。
0920デフォルトの名無しさんNGNG
>919
まぁ,サンプル程度ならVBでもいいかも知れん…。
ぬるま湯ばかりでもイカンよw
0921デフォルトの名無しさんNGNG
某スレでA列車で逝こうプロジェクト発動中
今のところVBなので1さんもいかが
http://game.2ch.net/test/read.cgi/game/961407432/
0922デフォルトの名無しさんNGNG
(´ー`).。o○( VB・・・けっこう高いんだろな。 )
       ( 家にコンパイラないんだよな。 )
0923デフォルトの名無しさんNGNG
(´ー`).。o○( VBよりC系をやった方がいいと思うな。)
        (コンパイラ無料のがたくさんあるし。)
0924デフォルトの名無しさんNGNG
>>922
VB.NETでよければコンパイラだけは無料であるぞ。
http://www.microsoft.net/japan/msdn/netframework/downloads/sdk.asp
.NETやるならC#のほうを薦めるけど。
0925デフォルトの名無しさんNGNG
(´ー`).。o○( Cは使えるけど、>>921はVBみたいなんだな )
       ( ちょっと興味があるんだなぁ……         )
       ( 家は通信回線遅いし、雑誌の付録でも探そ… )
0926デフォルトの名無しさんNGNG
VCはタダで手に入らないかなぁ。。。
正直買おうか迷ってる。
0927デフォルトの名無しさんNGNG
WinMX(ワラ
0928デフォルトの名無しさんNGNG
>>926
だから.NET Framework SDK(以下略
0929ヒッキー@プログラミング ◆hky/PGis NGNG
http://www.geocities.co.jp/SiliconValley/2530/rotate2-2.zip

なんか、しばらく凹んでました…。

今回ちょっと奥行き感を出してみました。
あと、速度を上げる為に視点の回転機能を外しました。
0930デフォルトの名無しさんNGNG
>>928
VCもあるんですか。ありがとう。
0931デフォルトの名無しさんNGNG
>929
おう。凹んでないでガンバレ。明るく逝こうw

次は地面回転と3Dスプライト(ビルボードって言った方がイイカ?)だな。
速度は…前のもサクサクダタのでワカラン・・・
0932デフォルトの名無しさんNGNG
保守
0933デフォルトの名無しさんNGNG
>>1の掲示板のほうが発展して・
0934デフォルトの名無しさんNGNG
age
0935デフォルトの名無しさんNGNG
age
0936デフォルトの名無しさんNGNG
二ヶ月差保守上げ萌え〜(w
0937デフォルトの名無しさんNGNG
あげ
0938デフォルトの名無しさんNGNG
>>929
ひきプロたん(;´Д`)ハァハァ
0939デフォルトの名無しさんNGNG
ちなみにヒキ板から来ますた
普段とは考えられないひきプロたんに萌え
0940(-_-)さんNGNG
(-_-)
(∩∩)
0941(-_-)さんNGNG
http://www.geocities.co.jp/SiliconValley/2530/
0942デフォルトの名無しさんNGNG
いやはや、ハタチでブロック崩しが作れるなんて、すんごい天才に違いない!!!!w
ひきプロHP GOGOGO!!
http://www.geocities.co.jp/SiliconValley/2530/
0943デフォルトの名無しさんNGNG
>>903 VisualBOYというGBAエミュがありますよ。
0944デフォルトの名無しさんNGNG
VisualBoyAdvance、最新版出たばっかだよね。
0945to:sageNGNG
>>711
>>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デフォルトの名無しさんNGNG
ぁぁ,何かを勘違いしていた...
ageてしまた. スマソ.
0947デフォルトの名無しさんNGNG
>>945
setbccとかを使えば設定は楽だよ。
0948945NGNG
>>947

まぁ,
hp.vector.co.jp/authors/VA017148/pages/cpad.html

を使うのが一番楽かも.
0949デフォルトの名無しさんNGNG
>>945
まだこのスレをお気に入りに入れている俺もアレかも試練が、レスありがと。

結局 Borland C++ 5.5.1 にしますた。
当時はirvineなんて知らなくてがんばって落としたけど(w
もうすぐCATVがくるんで、ソレまでのんびりCの勉強をしてます。

|尚,BCCはきちんとreadme読んで, bcc32.cfg と ilink32.cfgを設定しなきゃ
|ならないので注意.
|あとは autoexec.bat いじるなり, マイコンピュータのプロパティ, 詳細で
|環境変数をいじるなりすれば, OK.
googleで出てきた設定ツールを使ったので案外すんなりできた。

がんがって、いまbcc32のコンパイルのオプションと、
リンクの方法を勉強中です...

#雑談スマソ
0950デフォルトの名無しさんNGNG
ぐぁ、ageてしまった・・・ゴメソ、ム板の皆さん。
0951aaNGNG
VBでブロック崩しなんか簡単だよ
正直、APIを使わなくてもできる。

使うのはフィールドとなるピクチャーとシェイプ(図形)
だけでいい。
0952デフォルトの名無しさんNGNG
場の雰囲気を読めないバカがいるな
0953C++使いNGNG
>>951 マジで??
それってVB最強じゃん!
0954デフォルトの名無しさんNGNG
VB最強伝説急浮上とともに
このスレも急浮上。
0955デフォルトの名無しさんNGNG
>>1 はもういないのかな?
0956デフォルトの名無しさんNGNG
空気の読めない俺とともに
このスレも急浮上。

>>955
>>1の掲示板にいたよ。
0957デフォルトの名無しさんNGNG
場の雰囲気が良く分からんが。

p: ピクチャボックス 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
>>957
雰囲気の読めない君は7行スレに行きなさい
0959デフォルトの名無しさんNGNG
>>952

>>949?
>>950どっち?
0960952NGNG
951だな
0961デフォルトの名無しさんNGNG
ほしゅ
0962デフォルトの名無しさんNGNG
chottoshita HOSHU.
0963ひきプロNGNG
http://hiki-puro.s16.xrea.com/hiki-game/test001.lzh
またVBでゲーム作ろうとしてます、どうでしょか
0964(-_-)さんNGNG
ボンバーマンオンラインのやりすぎ(・A・)イクナイ
0965(-_-)さんNGNG
どうやらルータ越しでは難しいようだな
出来るのかもしれないが、分かる限りで設定してみた感じでは無理だった・・・・
0966(-_-)さんNGNG
まだ大丈夫だろうと思いつつ
一応保守
0967(-_-)さんNGNG
補珠
0968(-_-)さんNGNG
http://life.2ch.net/test/read.cgi/hikky/1031400138/
なかなか良い感じに進んでいるようです・・・
こんな勝手な事して怒られたりしないだろうか、と思いつつ、
いつも通り保守
0969(-_-)さんNGNG
そうでもないよ・・・
0970鍋田保NGNG
    ∧ ∧         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ̄ ̄( ゚Д゚) ̄ ̄|   <  ぼく1000取り王の鍋田保!
|\⌒⌒⌒⌒⌒⌒\   \
|  \           \    ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\  |⌒⌒⌒⌒⌒⌒|
  \ |_______|
0971鍋田保NGNG
|.  ____ │  また鍋田保が1000とるのかー
| /    | |│   
|./      | |│  ∧_∧
[______.|_|│  (´∀` )__
| _|__|_i‐┴-、(σ、、⊂ヽ_)
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|__)||
                  | ̄ ̄)
                  | ||
0972鍋田保NGNG
    ,.r ''"´ ̄``''‐\     !::::::::::ィ::ハ:::;::::::::::::::::::::::::::!     /
   /:::::::::::::::;;:::::::::::::::::\   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
 ..........,.....,ri  /' l i........................   i. < 感  保 >         ,ヘ 
:::::::::://::/' |:::/  | '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
   . 。o O (鍋田保がまた1000取るんだよね)
  ,. -- 、
.,:',ィ;ノ、!;::':,
.i::l'O Oi::i
.l::ト、.ヮ,.ノ::!     
⊂ ̄ ̄~⊃    
/    \    
|〜〜〜〜|    
|〜〜〜〜|    
\    ./
0975デフォルトの名無しさんNGNG
999しか取れないじゃん(藁
0976デフォルトの名無しさんNGNG
とっととアク禁食らえよハゲ
0977鍋田保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鍋田保NGNG
      l::::レl/``   '´l:! |::|       
  
0981鍋田保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デフォルトの名無しさんNGNG
連続投稿規制中
0983デフォルトの名無しさんNGNG
こんなアホよりこっちのがすごかった
http://gamble.2ch.net/test/read.cgi/keiba/1019217537/l50
0984鍋田保NGNG
     r ⌒ヽ
     (´ ⌒`) ポッポー !
         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デフォルトの名無しさんNGNG
鍋田保はまた1000取れないのか(藁
0990デフォルトの名無しさんNGNG
シンショウヒッキー鍋田○は氏んでくだちい。
0991鍋田保NGNG
          /::::::::::::::::::::::::
         /:::::::/::/::ヽ::i:::::::
         /::::/::/l:/  |::|_!::i:  このスレも鍋田保が1000だ…  
        l::::レl/``   '´l:! |::|       
        |::::|  ┃  ┃  ゙i:!
          |:::j.  ┃  ┃
       |::/
       |〈    __    ∪|
       |:::ヽ.  L...__)    |:
       |:::::::::゙ヽ、    _,、-'゙|:
       |:::::::::|i::::i::フ|"´   |::
       |:::::::::||:/ /|    |::
       .!:i::::::|  /__---/|::::
        〉ト、::| /   /   |::::
       r' | ヾ! / /  ト//
0992鍋田保NGNG
      /~⌒~⌒⌒~ヽ、
     /          )      ♪
     (  /~⌒⌒⌒ヽ )
     ( ξ    、  , |ノ
  ♪  (6ξ--―●-●|
      ヽ      ) ‥ )  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       /\   ー=_ノ  < よう♪鍋田保が1000だぜ
       |∪    ∧)     \________________
      (( |    \    ♪
0993デフォルトの名無しさんNGNG
 
0994デフォルトの名無しさんNGNG
             
0995鍋田保NGNG
     r ⌒ヽ
     (´ ⌒`) ポッポー !
         l l
 カタカタ ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     (・∀・#)< また鍋田保が1000だあ!
   _| ̄ ̄||_)_\__________
 /旦|――||// /|
 | ̄ ̄ ̄ ̄ ̄| ̄| . |
 |_____|三|/
0996鍋田保NGNG
               ┌┐                                鍋鍋鍋
    人          ││                              鍋\  鍋\
   ノ二\  ナ ゝゝ   V                 鍋鍋鍋        鍋\     鍋\
     /   / 乙 つ  O               鍋\   鍋\      鍋\       鍋\
                  鍋鍋鍋        鍋\     鍋\    鍋\       鍋\
                 鍋\   鍋\      鍋\      鍋\    鍋\        鍋\
       鍋鍋\     鍋\     鍋\    鍋\       鍋\   鍋\        鍋\
        鍋\    鍋\      鍋\    鍋\       鍋\    鍋\       鍋\
        鍋\    鍋\      鍋\    鍋\      鍋\    鍋\     鍋\
       鍋\    鍋\       鍋\    鍋\      鍋\      鍋\    鍋\
       鍋\    鍋\      鍋\    鍋\     鍋\        鍋鍋鍋 \
      鍋\     鍋\      鍋\      鍋\   鍋\           \\
      鍋\     鍋\     鍋\        鍋鍋鍋 \
     鍋\      鍋\   鍋\           \\\
     鍋\        鍋鍋鍋 \                              ┌┐ ┌┐
    鍋\          \\\      ┣━┳┃┃      ┃          ││ ││
   鍋鍋鍋\                      ┃   ┃┃┃ ┣┓ ━╋ ━╋  V   V
   \\\\                     ┛     ━┛ ┃   ┏┫ ┏┫  O  O
0997デフォルトの名無しさんNGNG
1000取った奴は氏ねやゴルァ
0998鍋田保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    | 

09991000!NGNG
げと〜〜〜〜
1000イカ臭い童貞鍋田保は氏んでね。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:i;;;;;'、      :::::::::/:::
   `-、               `ー'''/`'ー''ー、__;;;;;;;_、-‐'''''"";;;;;;;;_,,,,,,、-‐‐‐‐‐‐--、,,,,/ヽ    :::::::::::ノ :::
     ヽ,               ヽ、 i.  `、 ヽー、;;;;;;;;;_、-‐''"´  ::::::       ::::::~`ヽ、,,、、-‐'''"::::
       ヽ               ヽ, '、、 ヽ '、 `、_         ::::       ::::::::::/:::::::
       ヽ::               `''"ヽ i `、 ヽ`'ー、        ::::::      ::::::/::
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。