Arduino

Arduino(5) ブロック崩しを作ってみる(2)

前回に続き、今回はブロック崩しのメインとなる、ブロックとボールの衝突処理を実装します。 まずブロックの画面上での配置です。 画面は30×40に分割します。これは前回書いたとおりです。 描画のとき以外は、全てこの30×40の座標系の上で...
Arduino

Arduino(4) ブロック崩しを作ってみる(1)

Arduinoでカラー液晶に表示ができるようになったので、ゲームを作ってみたいと思います。 といっても、ArduinoはCPUパワーもありませんし、描画はLCDのコントローラ任せなので、こちらも期待できません。 というわけで、比較的...
Arduino

Arduino(3)続・カラーLCDを接続してみる

前回はArduino UNOにaitendoの2.4インチカラーLCD「UL024TF」を接続し、表示ができることを確認しました。 UL024TFには、このほかにmicroSDカードインタフェースとタッチパネルが組み込まれています。こ...
Arduino

Arduino(2)カラーLCDを接続してみる

今回はArduino UNOにカラー液晶パネルを接続して、まずは表示ができることを確認してみます。 液晶パネルは、aitendoで1480円(税別)で購入できる「UL024TF」というカラーLCDシールドを使います。 この製品は、A...
Arduino

Arduino(1)ArduinoとAVR

このところ、プチコンにもちょっと飽きてきましたので、唐突ですがこれからしばらく、Arduino(アルドゥイーノ)をいじってみることにします。 Arduinoは、元来は教育用のマイコンボードです。 様々なバリエーションがありますが、最もポピュ...
プチコン講座

プチコン3号 32日目 球を描く(2)

今回は、前回の続きで、上の画面のような前回よりもリアルな球を描いてみます。 前回は球を正面から光で照らした場合の陰影を描画しました。 しかし、球を正面から光で照らすシーンは、日常ではあまり出会いません。 もっとも一般的なのは、満月でしょう...
プチコン講座

プチコン3号 31日目 球を描く(1)

前回紹介したレイトレーシングの手法は、時間がかかりすぎるのでゲームの画像表示に使うには向いていません。 今回は、球を一つだけ、レイトレーシングよりも高速に描画するプログラムを作ってみます。 上の画面が実行結果で、直径170ピクセルの球を0...
プチコン講座

プチコン3号 30日目 レイトレーシングでCGを描いてみる

今回は、コンピュータグラフィックスの古典的な手法であるレイトレーシング法のプログラムを紹介します。 これは、下記のリンク先にある、"Tiny Raytracer"というJavaScriptで書かれたプログラムをプチコン3号用に書き直したも...
プチコン講座

プチコン3号 29日目 擬似3D(6) 迷路の中を動く敵を隠面消去つきで描画する

前回は隠面消去のアルゴリズムを使って迷路の壁を表示しました。 しかし、表示できるものが壁だけでは寂しいですね。 今回は前回のプログラムを拡張して、3D迷路の中に敵を表示しました。 これで、11日目の迷路探検ゲームの3D版ができます。 今回...
プチコン講座

プチコン3号 28日目 擬似3D(5) 隠面消去

前回、ワイヤーフレームで3D空間を表現しましたが、今回からは11日目で作成した迷路探検ゲームの3D版を作ってみます。 プチコン3号 11日目 当たり判定を追加して迷路探検ゲーム完成!: 楽しくやろう。 前回のプログラムでは、...
プチコン講座

プチコン3号 27日目 擬似3D(4) 背景をワイヤーフレームで描く

前回、前々回とスプライトを使った擬似3D表示のプログラムを作ってきました。 しかし2Dのゲームと比べると背景が簡素になってしまいます。 2DではBGやスプライトを使用することができますが、どちらも回転と拡大しか行えません。 擬似3D表示で...
プチコン講座

プチコン3号 26日目 擬似3D(3) 一人称視点・三人称視点

今回は前回のプログラムのバリエーションとして、視点がスクリーンより手前にある場合、およびスクリーンより奥にある場合のプログラムを作ってみます。 前者はいわゆるFPS(First Person Shooting)ゲーム、後者はRPGなどキャ...
プチコン講座

プチコン3号 25日目 擬似3D(2) 視点の移動

今回は、3次元の空間の中を視点が動くプログラムを作ってみます。 上の画面が今回の最終形です。 視点をスライドパッドで前後左右に移動し、十字キー上下で上下に移動し、L・Rボタンで左右に回転します。 物体のほうは水平面上に格子状に等間隔に並べ...
プチコン講座

プチコン3号 24日目 擬似3D(1) 遠近感の表現

今回からオブジェクト指向はいったんお休みにして、3次元グラフィックスを扱います。 といっても、まずは映画のCGのような本格的なものではなく、スプライトの拡大・縮小を使った疑似3Dについて考えます。 プチコン3号では、スプライトの拡大・縮小を...
プチコン講座

プチコン3号 23日目 シューティングゲームの当たり判定とマスク値設定

前回までに、自機と自機の弾、敵機と敵の弾をそれぞれ生成・更新できるようになりました。 今回は当たり判定を追加します。 当たり判定はSPHITSP命令で行えます。 この命令は以前にも11日目に迷路ゲームで使用しました。 このときは、2つのスプ...