2012年8月11日土曜日

4面完成

4面が完成。
割とゴチャゴチャしたステージになりました。
一定距離を保って箱を打つと、アイテムジャラジャラみたいな感じです。
難易度はほど良い感じ。

あとは今週中に5面完成すれば良いなぁ・・・。
そういえば、説明書とかってAndroidだと、Windowsみたいにドキュメント(Readme.txt)を付属する習慣が無いから、やっぱり、チュートリアル的なものを作らなければ駄目かな?と、今さら考え始めました。
しかし、言語フリーで作るのは結構大変そうかも。
基本、ゲーム画面中には、単語レベルの英語以外は入れたくないと思っています。
例えば、基本的な操作系であれば、
1. Touch -> Fire and Move
2. Not touch -> Charge
3. Fill & Touch -> Laser
ぐらいが、言語を用いる上限になるイメージ。

今、ふと、「リプレイの機能を使ってそれを流しながら上記の単語レベルの説明入れていけば良いんじゃないか?」というナイスな考えを思いつきました。ちょっと面倒くさそうですが、そういう部分には力を入れた方が良さそうな気がしないでもないです。

動く開発環境

今日購入したUltraBook(になるのか?)のAspireV3にAndroidビルド環境の構築が完了。
もちろん、Windowsの開発環境(Visual C++ Express 2010 & DirectX-SDK)も構築済み。
これで、ノート環境ですべての開発ができるようになりました。

Androidのビルド環境の構築手順が、自宅マシンに構築したときと若干変わっていたので、構築手順をメモっておきます。なお、青字部分は、SonyのWalkman Zシリーズをデバッグ機として使う場合の設定です。

■SDKを使うための手順
①JDKを入手してインストール
②システム環境変数JAVA_HOMEにインストール先パスを指定
③システム環境変数PATHに%JAVA_HOME%\binを追記
④Android-SDKの入手してインストール(※C:\android\sdkにインストールした前提で説明)
⑤システム環境変数PATHにC:\android\sdk\platform-toolsを追記
⑥システム環境変数PATHにC:\android\sdk\toolsを追記
⑦SDK Managerを起動し、以下のパッケージをインストール
- Android SDK Tools
- Android SDK Platform-tools
- Android 2.3.3 (API level 10) の SDK-Platform
- Google USB driver
⑧Apache-antを入手(※C:\android\antにインストールした前提で説明)
⑨システム環境変数PATHにC:\android\ant\binを追記

■Zシリーズを使うための手順
⑩C:\android\sdk\extras\google\usb_driver\android_winusb.infをメモ帳で開く
[Google.NTx86]と[Google.NTamd64]に以下の行を追加。
%CompositeAdbInterface% = USB_Install, USB\VID_054C&PID_0691&MI_01
⑪以下のコマンドを実行
echo 054c > "%SystemDrive%%HomePath%\.android\adb_usb.ini"
⑫Zシリーズをパソコンに接続
⑬デバイスマネージャを開き、警告マークが付いているZシリーズのアイコン部分を右クリックして、デバイスドライバを選択(探索パスには、C:\android\sdk\extras\google\usb_driverを指定)

■NDKを使うための手順
⑭cygwinを入手してインストール
※自宅環境のディスクから持ってきたディレクトリを使ったので、どのパッケージを入れたかは忘れました
⑮システム環境変数HOST_AWKに/usr/bin/gawkを設定
⑯NDKを入手してインストール(※C:\android\ndkにインストールした前提で説明)
⑰システム環境変数PATHにC:\android\ndkを追記
⑱システム環境変数NDK_ROOTにC:\android\ndkを設定

以上です。
ちなみにEclipseは入れてません。
コマンドラインとテキストエディタのみで作業する方が楽なので。
Javaでガッツリと書く場合は、入れた方がよいです。
(私の場合、Javaコードは全体の1%未満なので、Eclipseを使わない方が楽)

新PC導入

AcerのAspire V3 V3-571-H54C/Kという機種を導入。
http://kakaku.com/item/K0000378324/

普通の家電量販店で39,800円でした。
スペック的には、
・OS: Windows 7 Home Premium x64
・CPU: Core i5 2450M 2.5GHz x 2way x Hyper-Threading
・Memory: 4GB
・HDD: 320GB
4万切っててこれだけあれば十分過ぎるぐらい。

GPUはIntelのオンボードのもので、現状自宅で使っているPC(オンボード版のGeForce)よりも若干スコアが落ちる程度。(エクスペリエンス・インデックスで評価点を確認したところ4.7ぐらい)
ただ、CPU性能の評価は、倍以上。(7.0ぐらい)

サブマシンとしては申し分ない程度のスペックだと思います。
まぁ、私は今後コレをメインマシンにする訳ですが。
しかし、HDDの熱排出の位置が左側というのは何とかなりませんかね・・・
私はマウスを左手で使う(※利き手は右手です)ので、暖かい風が当たります。

あとは、環境構築がだるい。。。
主に、Android系の開発環境の構築がだるい。。。

2012年8月10日金曜日

電源失念

今日から夏休みなので帰省したのですが、ノートPCのアダプタを自宅に忘れるとか。。。
アダプタだけ買おうか、この際だから、メインマシンとして使えるレベルのウルトラブックを買ってしまおうか、迷いどころです。
自宅メインマシンは、atom機だから、Android用の開発機としては大分厳しいと思っていたところ。メインマシンには、acerのAspire RevoというPCを使ってますが、GPU はそこそこ速いけど、CPU は開発機として使うには無謀なレベルです。

Windows 用のCコンパイラをコマンドラインで使う作業がメインなので、基本的に問題ありません(SHOT04のフルビルドがだいたい10秒弱で終わります)が、cygwinでgccを使ってスマホ用の共有ライブラリをフルビルドするのにはだいたい1分強ぐらいかかります。
ちなみに、apkモジュールは、Eclipce を使わず、コマンドラインでantとかをバッチで叩いて作ってますが、それにも署名などを含めて1分ぐらいかかります。

最新のウルトラブックなら、大分改善されるはずだし、何より、自宅でも出先でも、使いなれた普段の環境で作業できるのが魅力的な気がしています。

やはり、Windows版が本丸

Android用のゲーム開発を開始してそろそろ半年ぐらい。
しかし、端末毎の仕様差が想像以上に激しいので、やはりAndroid版でのモノ作りは色々と厳しい。
設備投資を惜しまず、最初はiPhone向けで作るのが吉だった感が否めません。
私が一番気にしている問題(VSYNCの端末差)は、Android4.1でようやく解消されるようなので、Android版の開発はそれを待ってからやるべきだったんじゃないかと。あと、Android4.0で地雷(SurfaceViewの大幅な性能デグレード問題)を踏みましたし。

ですが、今開発中のSTGの本丸プラットフォームは、Windows版。
要は、Android版やiPhone版というのは客寄せパンダ的な位置づけのつもり。
やはり、STGはタブレットや電話機のようなチマチマとした画面ではなく、大画面でやりたいので。
しかも、今回は縦画面のフルスクリーン対応。
23型ぐらいのワイドディスプレイを縦置きにしてプレイすれば、ゲームセンターと同じ迫力で楽しめます。

Androidと仕様を合わせる都合上、入力装置にマウスを使うのがちょっとアレですが。
シューターは伝統に囚われる人が多いから、最初は抵抗があるかもしれません。
ただ、STG用の入力機器としては、セイミツ工業のアケステ以上にマウスの方が向いているかも。
アケステよりも精密な動きができるので。

2012年8月9日木曜日

Music room

開発中のSTGのオマケで付ける音楽の試聴機能を、かっこいい感じにしてみました。
とはいえ、こういうオマケ部分にあまり力を入れたくないから、VGS Chiptune musicからの流用ですが。

せっかく、めずらしい方法で音楽を鳴らしているので、そのことを実感していただくために。
開発中のSTGは私が独自に設計した波形メモリ音源VGS(VideoGameSound)をソフトウェアエミュレーションする方式で音楽を鳴らしています。(VGSは私の脳内にしかないので、実在しません)

言うほど難しいことはやっていませんが、こういうやり方で音楽を鳴らしているゲームといえば、エミュレータ類を除けば洞窟物語(あと、イカちゃん?)ぐらいしか思い浮かばない。結構簡単に作れるし、アプリの容量も抑えられるし、凝らなければ処理性能もかなり速い(VGSの場合、ネットブックでもサクサク動きました)ので、もっとやっている人が居ても不思議はないんですがね。
ついでに、自作音源なら、自分のやりたい範囲で好きなようにハードウェア仕様を弄れるから楽しい。

2012年8月6日月曜日

作曲のやり方

色々なサイトで紹介されていますが、トニックとドミナントがうんたらかんたら・・・といった眠たい話しをしている方が多い(眠たい話しならWikipediaで十分です)ので、私流の作曲術の勉強方法を記しておきます。

まず、楽器屋へ行って、キーボードを買ってください。
高いヤツじゃなくて良いです。(5000円ぐらいのもので全然OK)
ただし、鍵盤の数は、最低61鍵のものを選んでください。
61鍵よりも多い分には問題ありません。
60鍵以下だと、脳内補完が必要になるので大変です。

あと、楽譜屋へ言ってJ.S.Bachの2声のインヴェンションの楽譜を買ってください。
ついでに、ハノンも買った方が良いかも。
色々と種類がありますが、原典版のもの(なるべく装飾記号がついていないもの)を選んでください。
ちなみに、3声のインヴェンション(シンフォニア)は無くても良いです。
が、殆どの楽譜は、2声と3声で一冊みたいな感じだと思います。

そして、2声のインヴェンションを1曲づつ、解析⇒演奏を繰り返します。
15曲ぜんぶやってください。
ピアノを弾いたことが無い状態からやると、たぶん、普通の人なら5年ぐらい掛かります。
まず、1番を弾けるレベルになることに時間が掛かります。1番を両手でインテンポせずに適度なテンポで弾ける程度の技術が身に付けば、1曲あたり概ね1~2ヶ月程度の期間で消化できると思います。

解析の方法は、片手づつとりあえず弾いてみて、モチーフとそれ以外の場所を意識します。
モチーフを蛍光ペンでマークしたりすると良いかもしれません。
モチーフというのは、その曲の主題です。
インヴェンションの場合、概ね、右手、左手で交互にモチーフが出てくる感じです。
なお、解析については、素人が全て独断でやるのは困難なので、ググるなり、アナリーゼ本を買うなり、ピアノ教室に通うなりする必要があります。ちなみに、私はキレイなお姉さんに個人レッスンを受けたかったので、個人レッスンのピアノ教室に通いました。先生がキレイなお姉さんか否かは定かではないですが、少なくとも「お姉さん」ではなk(中略)。

なお、ピアノ教室だと演奏方法に着眼しがちですが、常に、「どうやって作曲をするのか知りたい」ということを念頭に置く必要があります。そうしないと、本来の目的と逸れてしまうかもしれません。(でも、それはそれで良いかもしれませんが)

アナリーゼは徹底的にやってください。
あと、「次の曲に進んでよいか?」の判断基準は、「暗譜でミスタッチ無く完璧に弾けるかどうか」です。
もちろん、インテンポしてはいけません。
完璧に解析できれば、嫌でも暗譜できている筈です。
暗譜ができていないようでは、とても解析できているとは言えません。
また、曲を完璧に理解していれば、緊張でもしない限りミスなんてする筈が無いです。

テンポについては、カデンツァ以外、終始一定でなければなりません(=インテンポしない)。
なお、テンポは、「思いっきり遅いパターン」、「中ぐらいのパターン」、「思いっきり速いパターン」の3パターンぐらいで弾ければ良いです。(※「思いっきり速い」とはいっても、グールドぐらいの速さで弾ける必要はありませんが)
解析がちゃんとできていれば、どんなテンポでも弾ける筈です。
ただし、技術的な限界点には個人差があるので、自己の限界を超える必要はありません。
なので、速く弾くことには拘らなくて良いです。
作曲術を学ぶ上では、インテンポせずに遅く弾く方が重要だったりするので。

概ねこんな感じです。
15曲ぜんぶ弾き終わる頃には、自然と「どうやって作曲するのか」が見えている筈です。
ちなみに、そういう私は15曲全部はやってませんが。
やったのは確か、1番、2番、4番、5番、6番、7番、8番、9版、13番、15番だけ。
それでも、「音楽ってこうやって作るんだー」という感じで見えました。

ただし、作曲の勉強らしい勉強(トニックがうんたら~かんたら~とか)は一切やっていないので、色々と間違っている可能性は否定できません。ただ、音楽なんて、それらしく聴ければそれで良いんだと思います。ですが、より厳密さを求めるのであれば、平均律クラヴィーア曲集をやる必要があります。(ただ、私は1巻の1番と2番のフーガが弾けるようになったぐらいの頃に、ピアノ演奏自体に飽きて教室を辞めましたが)

まぁ、時間が掛かるし面倒(理論よりも実践派の方向け)な方法です。
ただ、この方法の方が「作曲本」で勉強するよりも本質が見えてきます。
何より、演奏をすることに楽しみを見出すことが、作曲をする上で重要な要素なのかもしれません。
私は、演奏に楽しみを見出せ切れなかったので、作曲の腕もそれなり...

合理的ではないものを作りたい

ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...