2013年11月20日水曜日

GE2ストーリー攻略記念かきこ

たまにはあらぬほうに走ってもいいじゃないですかー

というわけで全部攻略した。

【近接編】
出てくるボスに対して武器種を選ぶ感じ。基本は獣剣でホールド。
・ロングのクロガネ系(BA:ゼロスタンス/対象MOB:何でも)
・バスターのクロガネ系(BA:C.C系/対象MOB:ウロヴォロス系、ヴィーナス)
・ハンマー系(BA:ブーストラッシュ系/対象MOB:カムラン系、クアドリガ系、まれにグボ系)
・獣剣 陽→ホールド付(BA:□ボタン4段系/対象MOB:上記ハンマー系以外の大概のMOB)
・ショートのクロガネ系(BA:何でも/対象MOB:零号神機兵)

寸評:攻撃するだけならクロガネ系だけで十二分。スピアだけはスタイルに合わなかった。

【銃形態】
長くなりそうなので一番下に書く

【防具】
状況に応じて盾のスキルを使い分ける。特に必要がないと感じたらオウガテイル盾。
・オウガテイルの盾(スキル:アイテム効果↑)
・イェン・ツィーのバックラー(スキル:隠密集団スキル)
・ラーヴァナの盾(スキル:節約)

寸評:タワーの出番がなかった。隠密集団スキルまじ便利。

【制御ユニット】
・ソルジャー(序盤攻略)
・ディフェンダー(序盤・中盤攻略)
・アノマロ(ホールド中と併せて)
・スラッシャー(イケイケの時)

寸評:ディフェンダーがとても優秀だった。アノマロはホールド武器と組み合わせると吉。

【強化パーツ】
・弾受け渡しバースト化(メリット:任意でバースト可能)
・スタミナ強化(メリット:スタミナの減りが激しいから)
・近接強化A(メリット:コンボマスター付与)
・調合キットA(メリット:オウガテイル盾を持っていけない時)
・体力強化A(メリット:体力増強剤を買えない時)

寸評:弾受け渡しでの任意のバースト化が非常に便利。

【リンクサポートデバイス】
・被ダメ↓5~10

寸評:NPCの被ダメ↓2~5と自分の被ダメ↓5~10の組み合わせはガチ。

【連れてくNPC】
・キグルミ・・・言葉がいらないほど優秀。リンクバースト多目。回復弾まで撃ってくれる。
・ナナ・・・タフ。銃をあまり使わない。ハンマーを使う時に併せて連れて行く。回復が速い。
・シエル・・・正確な射撃が魅力。MOBのHPの状態がわかる。リンクバースト多目。回復が遅い。
・ギルバート・・・戦場では空気。攻撃力上昇スキルが魅力。回復が遅い。
・コウタ・・・ウロヴォロスのときに連れて行く。MOBのヘイト稼ぎで有能。
・エミール・・・ハンマーで騎士道が必要な時に連れて行く。
・カノン・・・撃たれたい時に連れて行く。
※他の人はそれほど実感が湧くほど連れて行ってない

寸評:NPCの特性を掴んだ上でのメンバー選択が大事。キグルミが最強。

ここから銃形態編。
先に寸評を示す。
攻略だけに限ればクロガネのブラストで十二分。
2周目はスナイパーやアサルト、ショットガンを使ってみたい。
レーザーの出番がない。というか必要性を感じなかった。

アサルトだとドローバックで任意で後退できるのが魅力。
スピアを選ぶと銃の如何に関わらず任意で後退が可能なのでおもしろそうだと思う。

というわけで持ってく弾の内容。ブラストでしか作ってません。

・モグラ
用途:捕食しに行ったMOBを釣れる
寸評:優秀。まれに当たらないことがあるので立ち位置を変えてみる。
op:14
【ボタンを押したら】S装飾弾丸:直進/極短【垂直-90】
□【1が地形に衝突時】S装飾弾丸:直進/短【垂直+65】
□□【2の自然消滅時】M制御:敵の方を向く/生存時間普通【】
□□□【3の自然消滅時】S装飾レーザー:直進/長【】
□□□□【4が何かに衝突時】S弾丸:直進/極短【】

・集中
用途:貫通属性の弾を撃ちたい時
寸評:あれば安心。もっと短時間で高威力なものを作りたい。
op:33
【ボタンを押したら】S弾丸:直進/短【】
□【1が敵に衝突時】M球:敵に貼りつく/生存時間短【BB充填】
□□【2の発生から0.2秒】M弾丸:直進/極短【BB減衰緩和】
□□【2の発生から0.5秒】M弾丸:直進/極短【BB減衰緩和】
□□【2の発生から1秒】M弾丸:直進/極短【BB減衰緩和】
□□【2の自然消滅時】M弾丸:直進/極短【BB減衰緩和】

・落下傘
用途:上空からの撃ち落し用
寸評:あれば安心。もっと短時間で高威力なものを作りたい。
op:57
【ボタンを押したら】S装飾弾丸:直進/短【垂直+76】
□【1の自然消滅時】M制御:敵の方を向く/生存時間短【垂直-100】
□□【2の発生から0.2秒】L弾丸:強ホーミング/全方向【BB抗重力弾】
□□□【3が敵に衝突時】M球:敵に貼りつく/生存時間短【BB充填】
□□□□【4の発生から0.2秒】M弾丸:直進/極短【BB減衰緩和】
□□□□□【5が敵に衝突時】M弾丸:直進/極短【BB減衰緩和】
□□□□【4の発生から0.5秒】M弾丸:直進/極短【BB減衰緩和】
□□□□【4の発生から1秒】M弾丸:直進/極短【BB減衰緩和】

・くっつきBOMB
用途:破砕が必要な時
寸評:あれば安心。破砕ダメージの安定化。改良の余地あり。
op:99
【ボタンを押したら】S弾丸:直進/短【】
□【1が敵に衝突時】M爆発:爆発/通常【BB減衰緩和】
□【1が敵に衝突時】M制御:その場で停止/生存時間短【】
□□【3の発生から0.2秒】M球:敵に貼りつく/生存時間短【】
□□□【4が敵に衝突時】M爆発:爆発/通常【BB減衰緩和】
□□□【4が敵に衝突時】M制御:その場で停止/生存時間短【】
□□□□【6の発生から0.2秒】M球:敵に貼りつく/生存時間短【】
□□□□□【7が敵に衝突時】M爆発/爆発/通常【BB減衰緩和】

・384
用途:MOBの体力をごっそり削りたい時
寸評:装飾レーザーで爆発の「発生点」を少し前に出してるイメージだが合っているか不明。
op:384
【ボタンを押したら】S弾丸:直進/短【】
□【1が敵に衝突時】M球:敵に貼りつく/生存時間極長【BB充填】
□□【2の自然消滅時】S装飾レーザー:直進/極短【】
□□□【3と同時に】LL爆発:爆発/通常【BB減衰緩和】
□□□【3と同時に】LL爆発:爆発/通常【BB減衰緩和】

2013年11月7日木曜日

javaで{}で括られたステートメントってなぁに?

TextureViewで参考にしてるコードで{}で括られてるステートメントを見かけました。

はて?これってなんだろうね。

if文とかwhileとかclassとかmethodとかって{}で括られてるのはよく見ますね。
でもコード中に単体で{}で括られてるのってあんまり見たことがなかった。

で、調べました。
これはブロックステートメントというものです。
コンパイル単位で見た場合、このブロックステートメントを使うと一つの処理単位として見なすそうです。

私見ですが、アトミックということなのかな?

最初は慣れなかったけど、なるほどこれを使うとどこからどこまでが1単位なのかわかりますね。
無名クラスならぬ無名メソッドみたいな感じかな。

2013年11月6日水曜日

4.4のテーマが変わった

づらーっと4.4の変更点を眺めました。
sdkにあるkitkatの紹介文

タイトルの内容に触れる前に個人的に注目した内容を簡単にご紹介。

注目したのは、
『Translucent system UI styling』
『Audio monitoring』

『Translucent system UI styling』は呼んで字の如し、
statusbarが透明になったよ、とのこと。
これはきれい。画像を見ると、statusbarにあるアイテムの色は白で表現されてますね。
機械色な感じが払拭されましたね。

『Audio monitoring』。これが個人的にはいいなーと感じました。
画像を見ていただけるとよくわかると思いますが、
イコイライザ(音の波形をグラフ化したもの)が表示されています。
今までもイコイライザの機能はありました。
が、見た目がちょっとアレだったので結局自作ということになっていました。
しかし、今回のイコイライザはきれいですねー。このまま使えそうです。

では、冒頭のタイトルに戻りましょう。
そうなんです。テーマが変わりました。
特にセレクターについては押さえておいたほうがいいでしょう。
今までは青(ライトブルー)でした。
今回からは黒白調になりました。
青だと他のアプリの色と競合しやすいからやめますねということらしい。
ソースはどっかで見かけたはずだけど、今手元にないのでとりあえずここまで。
探しておきますね。
ありました。
google+のAndroid Development - Japan(日本の Android 開発者のための公式コミュニティです)の中で、

 "Android Design in Action: New in Android 4.4" の概要を 日本語でまとめました。
というコメント?(記事?)があります。
リンク
この中で解説されています。


2013年11月3日日曜日

勉強中なう

TextureViewを扱うのに色々と勉強しています。

以下、参考にしているサイト様

・eaglesakuraの技術ブログ
-SurfaceTextureでMediaPlayerやカメラ映像をOpenGLテクスチャとして使う場合の注意点
-GLTextureViewを公開しました

・dalinaum / TextureViewDemo
-googleplay
-github

・SDKにある4.0のTextureViewと4.4にあるTextureView
・SDKにある4.0のGLSurfaceView

目指してる仕様
イベントがあった時にrunnableをぽんぽん投げ込んで処理する。

課題
回転などでViewが破棄されるときの処理。
onPause時の処理。たぶんwait,notifyでなんとかなりそう。
AcivityなりFragmentが終了するときの処理。

textureviewをじっくり眺めてみた

GLSurfaceViewのが楽じゃね?というのが素直な感想。

あぁしよう、こうしようと追加追加してるうちに、どんどんGLSurfaceViewに近づいている。
GLSurfaceViewとTextureViewの違いって、カメラとか動画とかの関連付けが楽なだけな気がする。

sdkの中にある両方のソースを見比べてみると納得していただけると思う。
実用レベルで見た場合、GLSurfaceViewの方が穴が少ない。
TextureViewでやるとどうしてもオレオレな管理になってしまう。

TextureViewは何もない代わりに非常に汎用性が高いけど、落とし穴も多い。
GLSurfaceViewはシステム側でめんどうな設定をしてくれている。が、それ以上はできない。

んーでも、やりたいことはListViewの中でのほうだからTextureView使わないといけない。
がんばろう。

2013年11月2日土曜日

android4.4が来ましたー

きましたねー4.4

様々なところで解説が出ています。
読むのが楽しみですねー

そんなわけでtextureviewの4.4版と4.0版を比較して読んでみました。
勉強になるわー。なるほどねー。

2013年11月1日金曜日

chromeのwindowが2枚復元された

たまたまPCをスリープにしようとして間違えてシャットダウンした。
シャットダウンを押してからやっちまったーと思った。

chromeって最後に開いているwindowが復元される。開いていたタブも。
なので、調査用から閉じてしまうとせっかく見つけてきたwebページが履歴のほうにいってしまい、
再度開くのがめんどいのなんの。

しょんぼりしながらPcを再度つけて、chromeを開いたらwindowが2枚表示された。
なんぞこれ?
バックアップから復元うんぬんというメッセージも見受けられなかった。
表示状態で電源オフだとデフォルトでそうなってるのか?

んーでも、電源切るときはちゃんと閉じた方がいいよね。

サーフェイスが関連付けられてるという前提の下で組んでみる。

必要なのは共通のGLのインスタンス。
drawの部分をrunnableにしてonSurfaceTextureAvailableで処理。
textureの有効無効をonSurfaceTextureUpdatedで書いてみる。

たぶんrunnableの実装はdrawに必要なパラメーターを渡して処理を依頼する感じ。
glコンテキストはsurfaceを通して使う感じかな。
surface,width,height
addしたtexureviewの幅や高さの設定もここかな?

TextureViewのHardwareLayer getHardwareLayer()

中でテクスチャーの初期設定やってるんじゃなかろうか。