2012年8月29日水曜日

20120828頃の日記

R0010672

箇条書きが楽だ。書き出してみたらゲームばっかりやってた。

SIG用のホルスター買った…が

マルイの昔のガスブロのSIG P226用にDYTACのやつを。合いはとても良いんですがなんか、がしがしやってると徐々に矢印のところのストッパーのピンが飛び出してきて最終的にポロってなります。瞬着かなんかで飛び出ないようにうまいことできないか考え中。

ゲーム:SpecOps The Line やった

スンゴイ砂嵐でたいへんなことになったドバイで、ベッタベタの地獄の黙示録風のお話やる感じのサードパーソンのシューター。ロケーションとお話は良かったけどシューターとしちゃ普通って感じでした。セールで買う分にはわりとオススメ。

ゲーム:Skyrimたぶん半分ぐらいやった

カジートで弓で暗殺したり、だいぶあとになって気づいた素手攻撃補正を生かして殴ったりとかしてます。ハイフロスガーの上の方まで行った辺りで放置中。

ゲーム:Arma2ちょっとだけ触った

頭揺らされすぎて気持ち悪くなったのでそれだけ設定で切ったけど、素直に戦場を再現したゲームとしてこれはイケてる。OAのヘリミッションで折れて放置中。

これから出るゲームのやりたいやつ

リンク先はYoutube辺り。

  • MoH Warfighter:特殊部隊推しの現代戦モノシューター、エンジンはFrostbite2、マルチは前作やBF3よりさらにCoD風になったように見える。わりと面白そうだしマルチやる人がいるとイイナ。
  • CoD BO2:今度はちょい近未来に行ったBO。まあなんだかんだ面白いだろうし買う予定。
  • Hawken:メックゲーだよメックゲー。ねんまつこんなにオンラインタイトルやるつもりで大丈夫か。
  • Borderlands2:前作結局やらんかったけど2はやりたい。
  • Arma3:Arma2の正統進化版って感じですげえリソース食いそう。新しいグラボ買わなあかん……。
  • Project C.A.R.S.:NFS shiftとかやってたところが作ってるらしい、なんかスゴイ綺麗なレースゲー。一応13年リリース予定らしい。グラボ買わなその2。
  • Grid 2:前作は挙動のリアリティとカジュアルさのバランスがよかったレースゲー。コクピットビューなしらしいというのがすごい引っかかるが、まあ安くなったら買うかなぁ感。
  • Day Zのスタンドアロン版:Arma2のゾンビサバイバルなMODで人気らしいやつのスタンドアロン版が出るらしいので、出たら触りたいなーくらいの感。
  • Halo 4:安くなってからでいいかなーくらいの感。
  • BF3の大型MODもあと3発くらい残ってるよ:なんだかんだで買うとは思うけどクロスクオーターはあっという間に人いなくなったなー。

2012年8月27日月曜日

最近のAndroid開発環境(v20)は新規プロジェクトがちょっとオシャレに

Jelly Beans(4.1)登場時に行われたアップデートにより、SDK Tools及びADTが20.0.*になっておりました。ので世間からやや遅れてアップデートしたところ、新規プロジェクト作成時のウィザード及び生成されるひな形が結構変わってらっしゃったのでなんとなくまとめました。

 

新規作成時のウィザード

adt20_1

電球マークのとこにフォーカスあたってる設定項目の説明が表示されるようになっています。ほかは前もだいたい設定できた項目だった気がします。

次にアイコンの設定ができるウィザードも追加されたのですが、わりとどうでもいいので省略します。

 

adt20_2

その次にテンプレート選択画面が表示され、従来のとだいたい同じBlankActivityテンプレートとは別にMasterDetailFlowというのが選択できるようになっています。ただしMinimum Required SDKが11(=3.0、Honeycomb)未満の場合は選択できません。

 

adt20_3

BlankActivityを選択した場合、Navigation Typeがいろいろ選択できるのですが、これもMinimum Required SDKが14(4.0、ICS)未満の場合はNoneしか選択できません。使えないッスね。

 

生成されるプロジェクトのひな形について

adt20_4

ウィザードについてはよく見たら結局ランチャーアイコン選べるようになった以外大差なくねというオチだったのですが、生成されるひな形プロジェクトは結構変わっています。

ざっくりいうとマルチデバイス対応の方法についてサンプルが示されるようになったりした感じです。

 

・libs配下に問答無用でSupport Packageが追加される

Minimum Required SDKの設定内容にかかわらずv4.jarが放り込まれてきます。使ってもいないのにMainActivityに最初からimportされていて、Warningが発生しています。Androidプラットフォームの断片化問題に対する意識の高まりを感じます。

 

・最初からmenuが実装されている

 

device-2012-08-27-222634

最初からGingerbread以前(API Level 10-)とHomeycomb以降(API Level 11+)の両方でちゃんと機能するメニューが実装されています。だいたい以下の様な関係者の尽力によってこのメニューが実現しています。リソース名等はデフォルト値でプロジェクトを作成した場合のものです。

バージョン毎の見栄えの違いは、ちゃんとバージョン別にstyles.xmlが定義されていることに起因します。

- src/MainActivity

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

によってメニューを生成しています。MenuInflater自体は別に最近思いつかれた仕組みではない(API Level 1から存在)です。

- res/menu/activity_main.xml

MainActivityでメニューリソースとして指定されているやつです。個人的に見慣れなかったandroid:showAsActionというitemのパラメータは、Honeycomb以降で可能ならアクションバー上に独立して表示されたいかどうかというパラメータです。

ということで、別に新しい互換性のための仕組み使ってるとかじゃないのですが、Honeycomb以降で実行された時に救われないmenuの実装方法もあったので、コレでやってくれたらちゃんと動くよというサンプルがあるのはいいことだなとおもいました。

 

・画面サイズごとのdimens.xmlが定義されている

padding_mediumというdimenについて、large以上の場合16dp、それ以外の場合8dpで定義されています。これ自体は大したことないですが、こんな感じでマルチデバイス対応してね!という事でしょう多分。

 

・バージョンごとのstyles.xmlが定義されている

AppThemeというstyleが存在し、v10以下(Postfixなし)/v11-13(-v11)/v14以上(-v14)でそれぞれ無難なスタイルが設定されています。これも最初からマルチデバイス対応の見本が入ってくるようになったところです。

 

・このプロジェクト直下のic_launcher-web.pngというのは…

マーケットもといGoogle Playの各所で表示される用の高解像度アイコンらしいです。なんか昔apkと別個にアップしてたようなおぼろげな記憶があるけど、-web.pngて尻につけて含めておくと勝手に読んでくれるみたいな感じなのかな?