なぜ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は難易度とシャッフルを実装した、後は出来上がりまでの動いた回数記録すればゲームになりそうです
0022名前は開発中のものです。
2010/09/23(木) 09:43:27ID:lxuZ5/eI>>21
簡単にはいかないでしょうね。
作り直すぐらいの覚悟は必要でしょう。
私も.NETで何か簡単なモノでも挑戦してみようかな?
002310
2010/09/23(木) 21:44:41ID:g/9awED09pzl難易度と回数いれて完成!
ttp://gmdev.xrea.jp/st/up/128.zip
実行は上下左右の矢印キーのみ
こうやってVBの地位を上げていかんと扱い低いままっしょw
>>22さん是非是非何かお願いします私は.NETとかあまり意識せずに作ってますのでソースはひどいですが何もしないよりましかなw
0024名前は開発中のものです。
2010/09/25(土) 12:14:33ID:+R682GnI0025名前は開発中のものです。
2010/09/25(土) 17:34:06ID:2hRmDCIoC系の言語にかなわない部分もあるが、それは、かなり高レベルでの話である。
だから、トップクラスのCプログラマーに言われるのは仕方ないが、
まだ未熟なCプログラマーにVB使ってるってだけでバカにされるのは面白くない。
それにゲームの場合は、開発言語よりも、ゲームデザインやバランスの方が、
ずっと重要だ。私個人としては、一人でゲーム作るなら、むしろVBの方が
作りやすいと思う。
0026名前は開発中のものです。
2010/09/25(土) 17:37:01ID:bxNjJ7gc自分でこう言ってるのに言語に執着してるのはあなたじゃないの?
0027名前は開発中のものです。
2010/09/25(土) 17:43:04ID:E35+Unat定義が面倒なのと処理が遅いのに目をつぶれば
0028名前は開発中のものです。
2010/09/25(土) 19:12:05ID:2hRmDCIoこっちも何も言わねーよ!
002910
2010/09/25(土) 20:41:05ID:crViLJs/何も作れない奴が暴れてるwwww
0030名前は開発中のものです。
2010/09/25(土) 22:43:46ID:Qknj2owV0031名前は開発中のものです。
2010/09/26(日) 03:34:02ID:GFJo5D040032名前は開発中のものです。
2010/09/26(日) 06:27:29ID:+vY3rXO9私が>21で上げたシューティングは、初代ペンテアムの133MHzで開発
したモノでした。今では考えられない低スペックですね。当時は、いろいろ工夫して、
どうにか遊べるモノにするのがやっとでした。現在のPCスペックは当時からみて、
かなり余裕ができました。はっぴぃしゅーたーは、VBではかなり快適に動く
シューティングなので、システム的に工夫してる部分も含めて、まだ遊んでいない人には、
プレイしてみてほしいな。VB6の底力を見せた一作です。
ttp://www.vector.co.jp/soft/winnt/game/se485994.html
さてと、VB2010インストール完了。そろそろ始めますか。
0033名前は開発中のものです。
2010/09/26(日) 08:01:01ID:XaisDtzW0034名前は開発中のものです。
2010/09/26(日) 15:16:09ID:pHl3M3noVB6のプロジェクトが開けない!!あわててVB2005をインストールして
やっと開けた。VB2010はアップグレードウィザード使えないのか。
0035名前は開発中のものです。
2010/09/26(日) 15:42:46ID:lHMdYKpV0036名前は開発中のものです。
2010/09/26(日) 16:33:09ID:bCTQVsvX0037名前は開発中のものです。
2010/09/26(日) 16:42:20ID:lHMdYKpV秀丸エディタに Visual Basic 用の設定ってのがあって。
それを使っている人が結構いるんだろうかと思った次第。
0038名前は開発中のものです。
2010/09/26(日) 18:18:07ID:yrNBgQjDベーマガ。懐かしい。
0039名前は開発中のものです。
2010/10/28(木) 19:11:57ID:CaT0QWGNVB2005用の簡単なシューティング作成用のサンプルを作りました。
多くのモジュールはVB6からアップグレードしてちょっと修正しただけなので、
汎用モジュールとしての動作保証は、まったくできません。
本気にせず、遊びだと思って、ちょっとやってみたら、あとは軽くスルーしてくださいね。
ttp://homepage1.nifty.com/shifu2/DL/shsmp.zip
0040名前は開発中のものです。
2010/12/20(月) 20:55:09ID:42vhvFVBずいぶんたったけど、反応も無いし、このスレも死んだかな?
19と39のダウンロードは終了しました。
希望があれば、また上げてもいいですが、このスレ、もう誰もいなくなった?
0041名前は開発中のものです。
2010/12/20(月) 20:58:45ID:tSn6WWlU0042名前は開発中のものです。
2010/12/20(月) 21:20:38ID:QFc2zBmUaとbがVariant型になるクソ仕様
0043名前は開発中のものです。
2010/12/20(月) 22:05:03ID:QsiEEriEint* a, b, c;
だとb,cがポインタにならないクソ仕様だろ。
0044名前は開発中のものです。
2010/12/21(火) 16:29:02ID:7aHXn5Mmnetになったら空気になった
0045名前は開発中のものです。
2010/12/26(日) 03:25:06ID:B2L0EVS5スレタイのようになった。
0046名前は開発中のものです。
2010/12/26(日) 12:05:56ID:8A6DD09t0047名前は開発中のものです。
2010/12/27(月) 15:44:36ID:9UN6YrZoみんなどの言語から勉強した?
0048名前は開発中のものです。
2010/12/27(月) 18:44:43ID:LIM8ha7O0049名前は開発中のものです。
2010/12/27(月) 21:08:46ID:bA4XTyqA0050名前は開発中のものです。
2010/12/27(月) 22:36:53ID:vMdaH+Uh0051名前は開発中のものです。
2010/12/27(月) 22:37:50ID:1hBCR7zC変数名は6文字までとか、信じられないような制限がついていた
0052名前は開発中のものです。
2010/12/28(火) 10:19:44ID:ZYps5wHoアセンブラから入ったヒトいますか?
0053名前は開発中のものです。
2010/12/28(火) 20:05:48ID:CR+nQygy0054名前は開発中のものです。
2010/12/28(火) 21:16:07ID:jveC8Oi5昔のBASICは実質2文字だったぞ
0055名前は開発中のものです。
2010/12/28(火) 21:17:38ID:jveC8Oi58biit時代のゲームはアセンブラが多いよ
0056名前は開発中のものです。
2010/12/29(水) 09:41:22ID:WjGcI1fEから、アセンブラが一番速い。当時のゲームプログラマはアセンブラ必須だった。
Cで作るようになったのはPSぐらいから。PCではもう少し早くCが出てきていたな。
詳しくは知らないが、Basicにアセンブラを埋め込むことができたから、
それでゲームを作ってる人もいたようだ。
0057名前は開発中のものです。
2010/12/29(水) 12:37:55ID:BgkkN7Fc0058名前は開発中のものです。
2010/12/29(水) 13:15:37ID:WjGcI1fE0059名前は開発中のものです。
2010/12/29(水) 14:19:08ID:g7boaeVbそれ以降のOSで「ランタイムが不要」なのか「ランタイムは必要だがデフォルトでインストールされてる」なのかは……どっち?
0060名前は開発中のものです。
2010/12/29(水) 14:25:44ID:SyxT+0YU自分でインストールした記憶があるんだが…
0061名前は開発中のものです。
2010/12/29(水) 14:41:53ID:7lpfQaczそんなことないと思うが・・・。
0062名前は開発中のものです。
2010/12/29(水) 14:45:08ID:WjGcI1fEちゃんと動いたよ。
0063名前は開発中のものです。
2010/12/29(水) 20:15:16ID:gI8zZWVx0064アジェグ4倍 ◆4xAJeG.COM
2010/12/29(水) 20:19:25ID:yC9qsouwXPはVB6のランタイムが標準になったんだよ、たしか。
5で作っておけば、やり方次第でEXEひとつだけのアプリが作れた。
0065名前は開発中のものです。
2010/12/29(水) 21:00:08ID:gI8zZWVxそいや、9x 系で 5 のランタイムをインストールした覚えがない。
したのは 4 と 6 だけだね。5 だけ入ってるのかな、なるほど。
0066名前は開発中のものです。
2010/12/29(水) 21:01:39ID:7lpfQacz0067名前は開発中のものです。
2010/12/31(金) 10:25:03ID:Ic5d420KDXライブラリなどのライブラリのソースを眺めてごらん。
インラインで使われてることがまだまだ多いよ。
0068名前は開発中のものです。
2011/01/09(日) 13:38:15ID:elzioAqQプログラミングの敷居を一気に下げた。
誰でもチャレンジしやすくなるってのは重要なことだ。
0069名前は開発中のものです。
2011/01/09(日) 15:51:41ID:sJZnrOWG先日もAPIでフォント作って表示しようとしただけで、どえらい苦労した。
.NETでは「APIは使うな」と言っているようにしか思えん。
そこらへんもVB6から.NETへの移行に失敗した原因だと思う。
マルチスレッドの為に仕方無く移行してるけど…VB6は偉大だったに同感。
C#のユーザーさんは、C#でのAPIの使い勝手をどう思っているのかな?
0070名前は開発中のものです。
2011/01/09(日) 15:53:13ID:JEyWLqfJ0071名前は開発中のものです。
2011/01/09(日) 21:46:35ID:ue/9A4420072名前は開発中のものです。
2011/01/09(日) 23:14:35ID:uGWJcVdy0073名前は開発中のものです。
2011/01/10(月) 16:04:30ID:teMdwB66わりと自動でやってくれる(爆弾つきだけど…)など地味にいいところも残って
いたりする。特に大文字小文字…は目が悪い人でもフォントサイズ大きく
しなくていいから作業画面が広く使えて便利。
0074名前は開発中のものです。
2011/01/10(月) 16:08:49ID:kcT+hn5Mあそこまで変わると、自然とC#への移行になっちゃう。
まあ、それを意図してたのかもしれないけど、量産プログラマの多くは
Java案件の方に行ってしまったのではなかろうか。
Webアプリ化の流れと重なったし。
0075名前は開発中のものです。
2011/01/10(月) 16:12:22ID:AguL7c+y0076名前は開発中のものです。
2011/01/10(月) 16:25:16ID:rkPxQGkrまぁ大文字と小文字で別変数を作る訳でもないんだけどね。
あと文字列の結合やらエスケープやらコメントアウトやら制御構文やらBasicのはなんか違和感ある。
Basic使い慣れた人にはいいんだろうけどね。
C#、C++、Java、Javascript、Action script、Perl、PHPと似たような感じなのにVBだけ全然違うから、たまに使うときに戸惑う。
0077名前は開発中のものです。
2011/01/10(月) 16:31:43ID:GZNIEdmC複数行コメントアウトってできたっけ?
0078名前は開発中のものです。
2011/01/10(月) 16:55:34ID:teMdwB66できないと思う。ただ選択した複数行全部にシングルクォートをつけるボタンと、
同じように複数行のシングルクォートを一斉に外すボタンがツールバーにある。
0079名前は開発中のものです。
2011/01/10(月) 17:02:10ID:teMdwB66多くの言語がCをベースに考えられたから似たんだろうね。
Basic は、Cより古いから似てないんだろう。
これからできるであろう言語も基本C系のプログラマが考えるだろうから、
Cに似た構文になると思う。
0080名前は開発中のものです。
2011/01/10(月) 21:07:48ID:7lIEv4140081名前は開発中のものです。
2011/01/11(火) 14:03:18ID:ca2BG/qSだったハードウェアレベルの処理を高級言語で可能にした事。…C++ではオブジェクト指向
を導入して最強の言語になったが、C#やJavaでは、ポインタの排除(または制限)、
オブジェクトの多重継承も無くなるなど、むしろ弱体化している。
話は突然変わるが、VBは入門用の言語としては、一定の価値はある。…が、
問題は次のステップへの移行である。VB6時代には、VBも上級者になると
APIをどんどん使うので、ポインタなどは自然に身に付く。そこからVC++
に進む事も可能だった。
だが、.netになってAPIは使わなくなり、VC++へのハードルは高くなった。
C#への移行は楽だが、同じフレームワークで動作する限り、性能的なメリットは少ない。
やっぱ前の方が良かった。VB7.0とか出ないかな。
0082アジェグ4倍 ◆4xAJeG.COM
2011/01/11(火) 17:55:44ID:Pftqt+rI最強になるんだろうね。
■ このスレッドは過去ログ倉庫に格納されています