Archive

Posts Tagged ‘game’

gbaプログラミング | ビットマップモードの初期化

August 16th, 2011 No comments

ずいぶん久しぶりに書く気がする…

最近、会社で勧められてGBAプログラミングを始めました
懐かしのGameBoyAdvanceです
GBAは開発環境が無料で用意できるので、コンソールゲーム開発入門にうってつけらしいです

以下は矩形を表示してカーソルキーで動かすプログラムです
おまじないだらけですね

#include <gba.h>

#define  VideoBuffer   (u16*)0x6000000
void WaitForVsync()
{
  while (*(volatile u16*)0x4000006 >= 160) {};
  while (*(volatile u16*)0x4000006 <  160) {};
}
void Mode3PutPixel(u16 x, u16 y, u16 col)
{
  u16* ScreenBuffer     = VideoBuffer;
  ScreenBuffer[y*240+x] = col;
}
void Mode3DrawBox(u16 sx, u16 sy, u16 ex, u16 ey, u16 col)
{
  u16 x, y;
  for(y=sy; y<ey; y++)
    for(x=sx; x<ex; x++)
      Mode3PutPixel(x, y, col);
}
int main()
{
  SetMode(MODE_3 | BG2_ENABLE);
  u16 col = RGB5(255,0,0);
  u32 dummy ALIGN(4);
  int x = 0;
  int y = 0;
  for(;;)
  {
    WaitForVsync();
    int ox = x,oy = y;
    if( !(REG_KEYINPUT & KEY_UP)    ) y--;
    if( !(REG_KEYINPUT & KEY_DOWN)  ) y++;
    if( !(REG_KEYINPUT & KEY_LEFT)  ) x--;
    if( !(REG_KEYINPUT & KEY_RIGHT) ) x++;
    if (ox != x || oy != y) {
      CpuSet((u32)&dummy, (u32)VideoBuffer, ((240*160*2) / 4) | (1<<26) | (1<<24));
    }
    Mode3DrawBox(x, y, x+20, y+20, col);
  }
}

ビットマップモードの画面クリア方法が分からなくて嵌ってました
Mode3PutPixelで1pxずつ塗りつぶしていくと全然間に合わず、チラついてしまいます
そこで、CpuSetというGBAのBIOS命令を使って処理させたらチラツキなく画面を更新出来ました(エミュレータ上では)
まぁ、sprite使えやって話なんでしょうが…

環境構築などはGBA develop Wikiを、
今回のCpuSetはゲームボーイアドバンス 実験室のコードを参考にしました
wikiの方のチュートリアルで適当なmain.cにコピペすればmake出来ると思います

Tags: , ,

黄金の太陽 漆黒なる夜明け をクリア

November 11th, 2010 No comments

ネタバレ含む?

久しぶりにゲーム買って最後までプレイした
GBA版は全てクリア済み
よくも悪くも相変わらず、だった
ストーリーは基本お子様向けなので微妙だったけど、ジンや召喚のシステムはよく出来てると思う
戦闘バランスが悪くてそれが生かしきれてないのが残念な感じ
基本、強敵に会ったら控えメンバーで全てのジンをスタンバイにして召喚しまくってからメインパーティで殴れば余裕
テイルズのアナゴみたいに召喚なんかの行動に対する強烈なカウンターとかあってもいいのではないか
技が強すぎて大半の攻撃系エナジーがわざわざ使いたくなるほどじゃないというのも悲しい
中盤以降の雑魚戦は何も考えずに通常攻撃を連打してた

ジンは全72匹中67匹獲得、フィールドエンカウントタイプを取り逃しまくった感じ
ラスボスだけ異常にそれまでのボスより強くてビビった

最後がものすごく続編匂わせてるのも相変わらずで、多分次も買うと思う
ただ、移動にルーラ的なものがないのが頂けない
終盤に世界中を移動することになっても移動手段が船のみってアホか
次回作は多分空を飛べると思うので期待

なんとなく最終パーティと装備を載せておく
LVは全員47でした
終盤、装備が整うと攻撃エナジーが霞んで連打ゲーに変化する

・ムート(カオスナイト)
ソルブレード
ミスリルの服
イージスの盾
武者兜
ホバーグリーブ

・テリー(カオスナイト)
エクスカリバー
バルキリーメイル
ミラーシールド
シノビのハチガネ
シルバーグリーブ

・ステラ(スーパービースト)
闇装備
ユェリアンの指輪

・カリス(ウィザード)
マサムネ
神秘のローブ
エールバングル
ミスリルサークル
ボーロリング

Tags:

久々にゲーム

May 16th, 2010 No comments

最近全くゲームをやっていなかったので探すことに
Valveという会社が運営しているSteamというサービスに興味があったので入れてみた
Steamというのはゲームソフト専門のネットショップのようなもので、
専用のクライアントから検索してダウンロード・インストールを自動でやってくれるというサービス
早速ストアを見てみるとPortalという有名なゲームが5/24まで無料ということだったので早速インストールした
英語版かなーと思ったらしっかり日本語字幕が入ってて安心した

その他、人気作もパッケージで買うより全然安いのでその辺気にならない人にはお勧めのサービスです
Civ5も先行予約が始まっていてUS $49.99とのことです
海外の会社が運営しているサービスなのでまだまだ日本語化されているソフトは少ないですが、
無料のデモ版もいくつかあるのでそれなりに遊べると思います
こういうのに日本の企業ももっと参加すれば面白いのになー

Tags:

TGS2009

September 26th, 2009 No comments

幕張メッセで東京ゲームショウ2009が開催されています
今日、バイト先の先輩と一緒に行ってきました!

試遊した中ではMetalGearSolid PeaceWalkerがダントツに面白かったですね
不覚にもPSP Goを買いたくなってしまいました
物販では何も買わなかったのですが、色々と非売品を入手できたので十分です

他にもPS3やXBOX360の新作をいくつか見てきましたが、
どれも面白そうで意外と最新世代ゲームも賑わってきているな、と感じました
中でもLOST PLANET2、FRONT MISSION EVOLVED、Halo: Reachが面白そうでした
困ったことに、どのハードにも魅力的なタイトルが必ず1つはあって、
今度何か最新のゲーム機を買おうかと思っている自分としては悩んでしまいます
据え置きは揃えなければならないものが多いので携帯機にしようかと思ったのですが…
中々どうして据え置きも面白そうなんですよね…;
とりあえずPSP Goの様子を見て決めようと思います

写真を何枚か撮ったので上げておきます
Flickr: Your stuff tagged with tgs09
twitter’s fotolife – MGSと一緒に欲しい
twitter’s fotolife – バイオハザードの新作
twitter’s fotolife – セガの新作
twitter’s fotolife – なんて神々しい…

Tags: