Arduino

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

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

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

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

Arduino(1)ArduinoとAVR

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

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

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

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

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

プチコン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つのスプライトが...
プチコン講座

プチコン3号 22日目 SmileBASICでOOP(5)クラスオブジェクトの使い方

前回のサンプルで、シューティングゲームにおける自機、および自機の弾の処理をOOP風に記述してみました。今回は同じシューティングゲームでの敵機と敵の弾の処理をOOP風に記述してみます。敵機の動作は、・画面上端にランダムに出現・真下へ向かって移...
プチコン講座

プチコン3号 21日目 SmileBASICでOOP(4)サンプル

前回までで、オブジェクト指向(風)プログラミングに必要な関数は一通りそろいましたので、使い方をサンプルでお見せします。例題は・スライドパッドで自機移動・Aボタンで弾発射という、作りかけのシューティングゲームみたいなものです。プチコン3号本体...