なぜVBは扱いが低いのか
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2010/09/14(火) 02:49:56ID:czSliofv0002名前は開発中のものです。
2010/09/14(火) 05:21:31ID:WlEbFNOI0003名前は開発中のものです。
2010/09/14(火) 18:40:13ID:ipnOU/rx0004名前は開発中のものです。
2010/09/14(火) 22:48:07ID:B4IG625bうちの会社の人が機械連動でVB動かして、速度上げると動かないとか言ってた
アナログの高速反応に対応するには厳しいだろって(ry
0005名前は開発中のものです。
2010/09/18(土) 05:48:18ID:wagE6s3t元々敷居が低い事を狙って使い始めた連中が多いので、「動けば良いや」というレベルに留まりがち。
その上、凝った事をやろうとするとそこらの言語よりも数倍苦労しなくちゃならない。
フォームにコントロールを配置して記述していくという武器を取り上げられる事になる。
もちろんフォームを使ってゲームを作る事もできるものの、そもそも Windows GUI はゲーム向きじゃない。
結果的にそれらのゲームは見た目もしょぼく、操作性も悪いという烙印を押される事になってしまう。
0006名前は開発中のものです。
2010/09/18(土) 08:57:02ID:dUyYjQsJDirectXでアクションやシューティングとなると、VBでやるのはマゾ行為でしかないな。
0007名前は開発中のものです。
2010/09/18(土) 09:59:14ID:zX/pNeib0008名前は開発中のものです。
2010/09/18(土) 10:00:27ID:zX/pNeibVB と記述した場合、今でも VB.NET じゃなくて VB6 以前を指すのかなぁ
0009名前は開発中のものです。
2010/09/18(土) 13:22:59ID:5vuWqU8UVCだって、C++のランタイムとMFCのDLLを合わせただけでも、結構なサイズなんだけど、静的リンクしてたりアーカイブ同梱で勝手にインスコするから、素人は気づかないだけ。
あと、ゲーム云々に関して言えば、VB5までは、DXが標準で使えなかったけど、VB6以降は普通に使える。
パフォーマンス的にも、2000年代に入って、ポリゴンの頂点計算とかハードにやらせるようになってからは、よほど限界ギリギリの領域でもない限り、C++で書くのと大差なんてなかったよ。
使う奴が少ないのは、単に参考資料が殆どないから誰も使わない、というだけ。
0010名前は開発中のものです。
2010/09/18(土) 14:08:42ID:A4GUH+kVとりあえず課題スレにある15パズルから作ろうとおもたけどいきなりは大変なので9パズルに挑戦な
んで、下記はピースの動きのコード下にしか動かんけど、いい感じだフォームとピクチャーボックスでいける
Sub picDown()
Dim nowX As Integer = PictureBox1.Left
Dim nowHeight As Integer = PictureBox1.Height
Dim newY As Integer = PictureBox1.Top + nowHeight
Dim idouY As Integer = nowHeight / 6
For i As Integer = 1 To 6
PictureBox1.Top += idouY
Threading.Thread.Sleep(10)
Me.Refresh()
Next
PictureBox1.Top = newY
Me.Refresh()
End Sub
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If (e.KeyData = Windows.Forms.Keys.Down) Then
'MsgBox("↓", MsgBoxStyle.Information, "Form1_KeyDown")
picDown()
End If
End Sub
Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
MsgBox(e.KeyChar, MsgBoxStyle.Information, "Form1_KeyPress")
End Sub
0011名前は開発中のものです。
2010/09/18(土) 19:25:55ID:eXol6kqohttp://yuzuru.2ch.net/test/read.cgi/gamestg/1206538342/779
> 779 名前:名無しさん@弾いっぱい[] 投稿日:2010/09/15(水) 13:08:43 ID:9cI7/JLI0
> PCEでもMDでもSFCでもないが、それっぽい(昭和っぽい)画面の
> ゲームがある。
> はっぴぃしゅーたーVB6
> ttp://homepage1.nifty.com/shifu2/main.html
> なんとなくPCE版究極タイガーやガンヘッドあたりを参考に作ったようだ。
> PC用だが、試しにやってみるといいかも?
これ、ソースが公開されていればもっと良かったのにとか身勝手な事を言ってみる。
Visual Basic でシューティングとはなかなか頑張ってるね。
0012名前は開発中のものです。
2010/09/18(土) 20:00:19ID:A4GUH+kVちょっと進歩したぜ!あぁ>>11さんオイラシューティング苦手だから無理な
ちょっとソース長くなったからここに貼らないほうがいいかな
どこかUPローダーない?
001310
2010/09/18(土) 20:12:18ID:A4GUH+kVhttp://gmdev.xrea.jp/st/up/125.txt
とりあえず、上下移動ができるようになった
キモはピクチャーボックスオブジェクトを配列にいれて処理してるとこだな
こりゃ楽勝だぜ
0014名前は開発中のものです。
2010/09/19(日) 00:16:04ID:DdCJ+ie2そこまで原始的じゃなかったかw
001510
2010/09/19(日) 01:04:51ID:9fB8MUem終了判定いれてみた
Sub EndOfGame()
For i As Integer = 1 To 9
If Not (obPicsWin(i).Name = obPics(i).Name) Then
Label1.Text += ":No"
Exit Sub
End If
Next
Label1.Text += ":End"
End Sub
キモは配列に正解を入れておくとこだぜLOAD処理でやってる
これで最初のならびに達したかどうかがわかるぜ!
ReDim obPics(10), obPicsWin(10)
obPics(1) = PictureBox1
obPics(2) = PictureBox2
obPics(3) = PictureBox3
obPics(4) = PictureBox4
obPics(5) = PictureBox5
obPics(6) = PictureBox6
obPics(7) = PictureBox7
obPics(8) = PictureBox8
obPics(9) = PictureBox9
For i As Integer = 1 To 9
obPicsWin(i) = obPics(i)
Next
既にゲームぽいけどもっと進化させるぜ
001610
2010/09/19(日) 15:06:33ID:9fB8MUemちょっと工夫して画像を自分で設定できるようにしてる
んで画像読み込んでコピーするまで出来た!フォームとピクチャボックス2つとダイアログ1つで簡単にできる
これ組み込んだら完成だな
次のがコピーのコードだ、結構厄介だったぞ
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim img = New Bitmap(PictureBox1.Image)
'PictureBox1のGraphicsオブジェクトの作成
Dim g As Graphics = PictureBox2.CreateGraphics()
'元の画像の(10,10)-(100,100)の部分を切り取って表示する
'座標(0,0)に表示し、単位をピクセルとする
Dim rect As New Rectangle(PictureBox2.Top, PictureBox2.Left, PictureBox2.Width, PictureBox2.Height)
g.DrawImage(img, 0, 0, rect, GraphicsUnit.Pixel)
Dim newBMP As Bitmap = img.Clone(rect, img.PixelFormat)
PictureBox2.Image = newBMP.Clone
'Graphicsオブジェクトを破棄
g.Dispose()
End Sub
001710
2010/09/20(月) 01:23:14ID:tt0g1Jskちょっといい感じになったのでソースアップ
画像)http://gmdev.xrea.jp/st/up/126.bmp
ソース)http://gmdev.xrea.jp/st/up/127.zip
TOOLはVS2008のVB2008
起動してそのままでも動くけど、背景を選択してBMP画像選んでくだちい
ピース部分だけカラーであとは白黒になります
で動かして、元の場所になると全部カラー表示します
(背景が小さいとエラー起こすのは愛嬌
無駄ゲ処理とかミスとか修正したから結構遊べるお!
キモはほとんどWebから見つけたソースってとこだなw
楽勝
0018名前は開発中のものです。
2010/09/20(月) 21:49:16ID:NsfXsaz0はっぴぃしゅーたーVB6 を作ったモノです。
自分のゲーム名でぐぐったらここに出てしまいました。
ソースの公開は不可能ではありませんが、コード量が膨大で、
まず初見でいやになります。
クラスモジュールだけで87個です。いやになったでしょ。
VB6とVB.netではポインタの扱いが違うので
.net開発者がみてもあまり参考になりませんし、私も.netは素人です。
ゲームの基本的な事は相談に乗れるとおもうので、>11のホームページにある
メールアドレスから相談してもらってかまいませんよ。
0019名前は開発中のものです。
2010/09/21(火) 14:10:35ID:Pi94IK3Aはっぴぃしゅーたーの代わりに、昔作った簡単なシューティングの
ソースをあげました。参考にしてください。
ttp://homepage1.nifty.com/shifu2/DL/SH.zip
古いプログラムなのでウエイト3万くらいかけないと速すぎて遊べませんよ。
ウエイトに234567と入力すると無敵モードになります。
これはその昔、私がマイコンベーシックマガジンに投稿したものに、
多少手を加えたものです。
0020名前は開発中のものです。
2010/09/21(火) 15:00:53ID:JVxXVz/kわわ、これはすごい。
私は Visual Basic ってもう扱ってなくてインストールもしてなかったりなんですが、
こういうサンプルがあれば何か色々応用できそうですね!
また Visual Basic 触ってみようかな〜。
002110
2010/09/23(木) 01:35:59ID:g/9awED0>>19ダウンしました!S藤さん、すごいお!こういうのあると触発されちゃう
いまVB2008にうpぐれどしたけど、さすがにそのままじゃ動かん><
ちょっと動くようにしてみる
9pzlは難易度とシャッフルを実装した、後は出来上がりまでの動いた回数記録すればゲームになりそうです
■ このスレッドは過去ログ倉庫に格納されています