Ascensionな日々


Ascension: Chronicle of the Godslayer - Playdek

相も変わらずAscensionに興じる日々。

現時点での実力はCPUレベル2と対戦して勝率五分くらい。
ドロー系のカードをつなげてコンボを決める楽しさがようやく分かってきた。

デッキ内のRune、Power収集効率のバランスを考えるのが楽しい&難しい。
基本的にはドロー系のカードとConstructs回収をメイン戦略に据えつつ、手札によって引くカードを変えていく、というざっくりとした戦略でやってます。

あとこのゲームやってて、一つ気になってることがある。
それはCPUレベルに3があるのかどうか。
上の写真右上のCPUアイコン脇についてるバーがCPUレベルを示している。
これ、明らかに3段階までいきそうな感じがするんだけど、どうタッチしても写真の状態にしかならない。
プレイしてくうちにアンロックされるとかなのかしら?

カードゲームアプリAscensionにハマる


Ascension: Chronicle of the Godslayer - Playdek

iPhoneアプリのカードゲーム「Ascension」をインストールしてみたんだけど、これがなかなか面白い。
普段カードゲームはやらない(10年以上前にポケモンカード集めてたくらい)んだけど久々にハマってしまった。

このゲームの良いところは1プレイが短く、気軽にプレイ出来ること。
iPhoneアプリらしく1プレイ10分くらいで遊べるので、暇つぶしにちょうど良い。

それとこのカードゲーム、「デッキ構築型」というジャンルのゲームになっていて、ゲームの進行と同時に自分のデッキを構築する、というちょっと変わったルールになっている。既存のカードゲームだとデッキ構築やらカード収集やら前準備がやたら面倒なイメージだったけど、このゲームにはそれが無い。

オンラインでの対戦機能も搭載してるので長く楽しめそうな予感。

iOSアプリ開発のお勉強

iPhoneアプリ開発のお勉強中。本読んだり、AppleのDevガイド読んだり。
本は2冊購入した。設計指針用に”iPhoneアプリ設計の極意”を、実装方法の勉強用に”iPhone SDK アプリケーション開発ガイド”を買ってみた。

勉強してく中で気にかかった点。
本が最新バージョンのXcodeに対応していないので、旧バージョンの部分と新バージョンの差分を自分で埋めてく必要があるのがちょい面倒だったこと。本選ぶ時にもうちょっと考えるべきだった。。
あとはObjective-Cで使われてる用語が独特で、ちょっと面食らった。例えばJavaでいうinterfaceがprotocolと呼ばれてたり(厳密に言うと両者は違うらしいけど)、処理を呼び出されるオブジェクトのことをレシーバーと呼んだり、など。他の言語でオブジェクト指向勉強しててもそこら辺の対応関係覚える必要ありそう。

Macbook Air買いました。

もう一ヶ月くらい前になるのですが、Macbook Air(13inch)を購入しました。

購入動機は3つくらいあって、

1.ノートPCが一台欲しかった
 自分は比較的自宅のリビングに居る時間が長いのだけれど、そこにPCが無くて不便だったので。ノートPCが一台あれば家のどこでもブラウジングやら開発やらが出来るかなと。あと出先に持ってく用途にも使いたいなと。

2.Mac PCに触れてみたかった
 iPhone使ってるうちにMacに興味が湧いてきた。iOSみたいな分かりやすい、奇麗なUIがデスクトップPC上でどのように表現されてるのかを体験してみたいという欲求から。

3.iOSアプリを作ってみたかった
 これも上の理由と似たようなものなのだけれど。iPhoneアプリに触れるうち、自分も何か作ってみたくなった。Processingの延長でCGやら画像処理関連のアプリとか作りたい。

これまでのところ取り立てて不満もなく、軽快に動作してます。
現在はAppleのDeveloper用ドキュメント読んだりXcode触ったりしながら勉強中の身。
あとはいつDev登録するか。。

Metaball

Metaballを実装してみた。

とりあえず動いてはいるけどまだ速度に問題あり。
ということで、数増やせなかったり、ArrayListで取り扱えなかったりでダイナミックに生成、消滅させたりするのはムリそう。。

ただ、単純な実装でも割とキレイに映るのでスクリーンセーバーにしてみてもいいかも。

IR visualizer(IRremote用)

最近ちょいと思うところがあり、先日購入したArduino使って学習リモコンを鋭意制作中。
リモコン受信機やら赤外線LEDやらを揃えて作成しているのだけど、一つ問題が。

受信した信号をチェックするために、Arduinoがシリアルで吐き出した赤外線ON/OFF時間の数値列を眺めるというやり方をとっているんだけどこれが非常に分かりづらい。

ということでProcessing使って赤外線信号のビジュアライザ作ってみた。
これを使えばリモコン信号の比較が比較的容易に可能になるかなと。

実効画面はこんな感じ↓

シリアルで受信したデータを使ってONを赤、OFFを白で示してます。
縦に4つまで並べられて、5回目以降はまた一番上から上書きされます。

ただし、Arduino用の赤外線リモコンライブラリIRremoteが吐き出したデータ形式にしか対応していないので応用範囲はかなり狭い。。

OpenProcessingで遊ぶ

OpenProcessingというサイトのアカウントを取得して、ちょっと前からちょこちょこ遊んでます。

OpenProcessingはProcessingのスケッチをアップしたり共有したりするサイト。
前に紹介したHasCanvasよりも機能が豊富。
投稿されてるスケッチもなかなかハイレベルで、ぼーっと見てるだけでも時間を潰せてしまう。

OpenProcessing上でコーディングすることも出来るのでProcessingをちょこっと試してみたいという人にもオススメ。

※自分もいくつかアップしていたりするのでコチラもよろしくお願いします。

Arduino UNOメモ

Arduino UNOについて調べたことメモ。

Arduino UNOには前代のArduino Duemilanoveからハードウェア上の大きな変更点がある。
それはUSBシリアル変換用のICがFTDIの専用チップからATmeaga8U2というUSBモジュール搭載のAVRマイコンになった点。

これによって
・スケッチ(Arduinoに書きこむプログラム)の転送速度がアップした
・ATmega8U2のファームを書き換えることでArduinoをUSBデバイスとして利用可能
となったらしい(参考リンク)。

USBデバイスの開発は未経験なのでちょっと興味がある。
結構面倒な手順を踏まないとできないようなので敷居は高いかもだけど機会があったら試してみたい。

Arduino買った

Arduino UNOを買いました。

とりあえず最新版のIDEダウンロードして、シリアル通信のテストを終えたところ。

ArduinoはAVRマイコンを積んだオープンソースハードウェアのマイコンボード。
自分は大学時代に組み込み関連(Atmel AVR)を触った経験があるんだけど、久しぶりに電子工作するべく購入した次第。

個人的に思う(多分一般的にもそう思われてるだろう)Arduinoのいいところは

・安い(1台3000円くらい)
・プログラムの書き込みがラク、すごくラク
・ドキュメントを探し出すのが比較的簡単

といったところ。

とにもかくにも敷居の低さが売りなので、気になった人は是非一度試してみるのが吉かと。

Blogopolisから学ぶ計算幾何

gihyo.jpの「Blogopolisから学ぶ計算幾何」という1年半くらい前の連載記事を見つけたんだけどこれがかなりアツい。
線分の交差判定、凸多角形の交差判定、ボロノイ図の作成といったトピックについて丁寧な説明とjavaのソースがセットで提供されている。

ソースがjavaということでprocessingとの親和性も高そう(というかまるまるそのまま移植できそう)。