ブログランキング ドット ネット

ブログランキング ドット ネット



ブログ情報

5467位 UP

素人がゲームプログラム作成に挑戦

ゲームを買うお金がないから、ゲームを作るというゲームに挑戦!言語はVisual BasicをメインにC++、C#、Javaは参考程度

コンピュータ プログラミング

ランキング
対象 総合 カテゴリ別 サブカテゴリ別
本日 5467位 229位 27位
前日 5589位 230位 25位

このブログのエントリランキングヘ


最近のエントリ

00:21
11/23

ゲームアルゴリズムレシピ

はじめてゲームを作る人向けに書かれたアルゴリズムの本です。よくあるゲームプログラミングの本はCやC++などをすでにできる人を対象にしていたりして、基礎的なところを飛ばして書いています。この本は初心者を対象としていますので、比較的易しい分類になるかと。ただし、言語はなぜかJavaScriptです。JavaScriptならブラウザさえインストールされていたら実行することができますからネェ・・・。まぁ、言語なんかどうでもよく...

18:27
11/18

マップチップ その5

今回はキャラクタの移動範囲を制御するプログラムを作成していきます。制御しなければならない条件としては以下のようなものがあげられます。画面外に移動しようとしたとき川に移動しようとしたとき海に移動しようとしたときこの条件の中で一番考えやすいのが画面外に移動することを禁止する処理でしょうか。ということで、まずはこの制御から組み込んでいきます。今までのフォームの大きさは640×480で、キャラクタなどのマッ...

23:36
11/17

マップチップ その4

マップチップ その3で作成したキャラクタクラスをマップチップ その2で作成したフォームクラスに組み込んでいきます。キャラクタクラスは移動アニメーションなど描画位置の計算処理が含まれます。これはゲームループの中で行われる作業になるため、ゲーム時間を渡してあげるようにしておかなければなりません。将来的にみていくと、ゲーム時間はキャラクタ以外にも利用することが考えられるため、すべてのクラスを管理する...

23:30
11/17

マップチップ その3

今回はマップチップ その2の続きで、キャラクタクラスを作成し、合体していきます。キャラクタクラスの元になるのはアニメーション その7までに作ったフォームです。このフォームクラスの中にあるキャラクタに関する部分だけを取り出してしまえばキャラクタクラスの出来上がりです。Public Class CharaClass  Enum Direction    down = 0 '前向き    up = 1 '後ろ向き    left = 2 '左向き    right = 3 ...

01:21
11/15

タイトルバー非表示でフォームを移動

ゲームとはちょっと関係がありませんが、プログラムを作っていて悩んだことのメモです。フォームのFormBorderStyleプロパティをnoneにすればタイトルバーと枠線が非表示になります。これはこれでデザイン的に付箋みたいな感じでありなんですが、タイトルバーが非表示になっているとフォームをドラッグしてデスクトップ上を移動させることができないわけです。タイトルバーを表示させるためにはスタイルをnone以外にするしかな...

23:45
11/13

マップチップ その2

マップチップ その1で作成したマップにキャラクタを合体させることが目的となったわけですが、マップ作成用のプログラムとキャラクタのプログラムをまとめて書いてしまうとごちゃごちゃになってしまいよく分からないものとなってしまいます。そこで、まず役割分担を行ってあげなければなりません。役割分担といえば、やっぱりクラス化ですね。今回はフォームクラスとマップクラス、キャラクタクラスの3つのクラスで役割分担...

21:09
10/14

入門 はじめてのオブジェクト指向設計

VB2005でも2008でも本格的にプログラミングをやっていくために避けて通れないのがオブジェクト指向という壁です。 オブジェクト指向の概念についてはそこら辺の本を読めばどれも同じように書いています。 概念はなんとなくわかる。 でも、いざやろうとするとどこから手をつけていいのか分からないし、参考になるようなサンプルもない。 これが現状です。 C++やJavaならサンプルがあったりしますが、VBになるとまったくという...

23:33
10/3

Game graphics designドット絵キャラの描き方

ゲームを作成するならやはり画像ファイルは必要になります。 もちろん、インターネット上に存在するフリー素材を集めてもできます。 ですが、インターネット上の素材はそのサイトでの目的にあわせて作られたものであり、 自分が作ろうと考えているゲームには合わない場合もあります。 RPGゲーム用のキャラクターなんかは数多く公開されていますが、 格闘ゲームとか倉庫番のような特殊な画像はなかなか見つかりません。 そう...

23:27
10/1

マップチップ その1

キャラクターの移動は前回まででできましたので、今回は背景に挑戦です。 通常RPGゲームの背景は一枚の絵ではなく、小さなブロックを組み合わせて一枚の絵を作成しています。 今回はこれにチャレンジします。 といっても、デザイン力はありませんから、グラフィックはシンプルで。 イメージとしては、緑が芝、茶色が土、薄橙を砂漠、青を海、水色を川、濃い紫を毒沼とします。 これをRectangle構造体にいれて、マップの配列...

22:33
8/31

アニメーション その7

アニメーション その6で押された方向に移動するプログラムを作成しました。 今回は入力された方向に一歩だけ進むように改造していきます。 一歩というのは32×32の画像であれば32ピクセルになります。 32ピクセル動くまでアニメーションさせて32ピクセル動いたらアニメーションを止めればいいわけです。 ということは、画像が32ピクセル動いたかどうかで判定する必要が出てきます。 この条件式は、 ①今の場所を記録して移動...

00:24
8/30

アニメーション その6

アニメーション その5で右へ移動するプログラムを作成しました。 このプログラムはカーソルキーと連動させていませんのでどの方向キーを入力しても右にしか移動しませんでした。 今回は押されたカーソルキーの方向へ画像を移動させるプログラムを作成していきます。 移動速度を(32,0)とすることにより、右へ移動したのであれば、(-32,0)にすれば左、(0、-32)なら上、(0,32)なら下に移動します。 後は方向キーを押し...

23:57
8/29

アニメーション その5

アニメーション その4で方向キーによるアニメーションパターンの変更ができるようになりました。 今度は同じ位置に表示するのではなく画像を移動させるプログラムを作成していきます。 画像を移動させるために必要となるデータには、画像を表示させている場所情報となる座標があります。 今まではDrawImage(img,0,0,…)というように(0,0)座標を画像表示位置としていました。 これをプログラムにより変化させれば移動アニ...

17:48
8/26

Bitmapの作成における問題

今までのプログラムでは画像ファイルをファイル名で指定して読み込む方法を利用してきました。 とりあえず見せかけ動いているので何にも問題はないと思っていましたが、よく見てみると32×32で表示させているはずなのになんか大きくなっていました。 ←勝手に拡大されてる ←本来のサイズ(32×32) 今までのプログラムでの画像の読込み方法は↓です。 Dim img As Bitmap = New Bitmap("C:\anime6.bmp") この方法を使うと画像サ...

23:09
8/25

パズルゲームアルゴリズムマニアックス

パズルゲームアルゴリズムマニアックス この本はよくあるパズルゲームのポイントとなるところをC++を利用してまとめた本です。 パズルゲームにおいて必要となる動かす、落とす、くっつけるといったアルゴリズムは言語が違っていても参考にできます。 この本の考え方を利用すれば倉庫番やテトリス、ぷよぷよなどのゲームを自分で作れるはず。

17:48
8/25

アニメーション その4

アニメーション その3で1枚の画像から一部分だけを表示する方法を紹介しました。 今回は、キャラクターのスプライトを前後左右で表示させることをやっていきます。 まず、今回使用する画像は以下のようなやつです。 ドット絵でも書けるならそれを使いたいんですが、ドット絵は書いたことがないので文字だけ。 今回の画像1枚には向きとアニメーションパターンが含まれています。 これを分割して2次元配列に保存しておきま...

01:00
8/25

アニメーション その3

アニメーション その2で画像の切り替えを時間を元に行うように作成しました。 時間を元にっていうのは、Paintメソッドを何回実行しても1秒なら1秒にっていう意味です。 実際のRPGゲームなどではキャラクターのアニメーションは上下左右の4パターンそれぞれに4種類のアニメーションを用意しています。 つまり、画像ファイルは16必要になるわけです。 これらをバラバラに管理していくのは非効率です。 実際のC++などで作られ...

01:03
8/23

アニメーション その2

アニメーション その1の続きです。 その1では超高速アニメーションになってしまっていた画像切り替えですが、Timerコントロールを使わずStopwatchクラスを使います。 なぜ、Timerを使わないのか・・・このStopwatchクラスの方が細かい時間を計ることができるみたいだからです。 実際、VBの参考サイトで紹介したプログラミング☆簡単レシピってところのインベーダーゲームなんかでもStopwatchクラスを使っています。 今回やりた...

18:03
8/22

アニメーション その1

RPGゲームのキャラクターのアニメーションを考えていきます。 2Dのゲームではキャラクターは上下左右の4方向を向きます。 ということは、4つの画像があればよいということになります。 で、キー入力された方向の画像を表示するだけでできあがりです。 今回はそっちではなく、キャラクターが止まっているときでもその場で足ふみをしているようなアニメーションを作ります。 例として以下の4つの画像を切り替えて表示してい...

23:03
8/21

画像ファイルの透明化 その2

画像を透明化するMakeTransparentメソッドですが、どうやら引数を無しでも使うことができるようです。 今まで紹介したのは背景色を指定するやり方でしたが、引数無しで利用すると画像の左下の1ピクセルの色が背景色として自動的に指定されるみたいです。 ということは、背景色を透明化するのであれば、Color構造体の記述は省略することができて、中抜きをするのであればColor構造体に記述が必要になるってことでしょうか。 ...

17:57
8/21

画像の透明化サンプル

画像の透明化の方法は画像ファイルの透明化で紹介したようにすればできます。 今回はこれを実際にサンプルで紹介しておきます。 まず、適当な画像ファイルを用意しておきます。 (↓これはJPEGファイルにしていますが、実際はBMPファイルの方がベターです) 黒い背景と青の円が描かれている画像ですね。 これをフォームに表示させます。 Public Class Form1   Dim img As Bitmap = New Bitmap("c:\clear.bmp")   Public...

前へ 6 - 25 次へ

衆議院総選挙 関連エントリ

おすすめブログ

本日のブログ

新着ブログ

新着エントリ