せまい部屋

web/gameエンジニアのweblog

Fitbit AltaHR買った

最近時間にゆとりがあるので早寝早起き、健康志向を目指すべくここ数年話題のアクティビティトラッカーを使ってみることにしました。同僚の人が使っていたのもあってこの手のプロダクトといえばFitbitみたいな印象があったのですが、いざ調べてみるとGarminエプソンからも引けをとらない商品が出ているみたいです。
どのアクティビティトラッカーでも割りと計測できる項目というのは似通っていて、各社のどのモデルを購入するかで防水防塵や心拍測定、GPS搭載等が異なります。今回自分のケースでは、歩数計、心拍数、睡眠トラッキング、たまにランニングという用途で検討した結果AltaHRを買いました。

AltaHR

www.fitbit.com

商品到着時の充電は僅かで、電池残量が少なすぎたのか原因は不明ですが初回連携のペアリング時に「ディスプレイ上に表示される4桁のコードを入力してください」がアプリ上では指示されましたが、本体側には何も表示されませんでした。時は21世紀ですが困ったらリブートの法則に従い再起動して連携してみると難なく連携でき事なきを得ました。ちなみに再起動には充電ケーブルを接続した上でUSB側についているハードボタンを適当な間隔で3回押すというテクが必要になります。パッケージと中身はapple製品にも通ずる簡素なやつで、謎の分厚い説明書とかはありません。

f:id:takoji3:20180226101451j:plain f:id:takoji3:20180226101604j:plain

専用の連携アプリを利用して手始めに2,3時間使用してみると歩数、移動距離と心拍数もしっかり取れているようで前評判通りの機能を発揮しているようでした。睡眠管理がしっかり動くのかどうか今後検証してみたいと思います。

f:id:takoji3:20180226134655p:plain

週1回〜はランニングするようにしていてGPS内蔵モデルなら経路までしっかり記録できるわけですがアクティブなランナーでもないのであくまで健康志向なデータが残せればよいかという結論で今回のAltaHR購入となりました。一応スマホを持ち運んで一緒に走れば経路も残せるような感じがしているので、下調べどおり満足できる機能群ではありそうです。
最新モデルのIonicも目を引く感じでしたが、如何せん健康に気を使ってみようかなーという自分のようなビギナーユーザーには価格がネック…機能はもちろんGPSも搭載。問答無用ですべてを活動計測していく強い気持ちなら手を出してみたい一品という感じがしました。
向こうしばらくは早2年を経過しているiPhone6sのバッテリーが芳しい性能を発揮できていないので、常時Bluetoothオンにするような運用体制で充電難民にならないか経過観察していきます。

ロサンゼルス&サンフランシスコ街歩きと観光

諸事情により2018年2月はまるっとオフになったこともあり、予てから一度行ってみたかったアメリカ西海岸らへんに行ってみることにした。一応末端とはいえエンジニアとして生きているので単純にその本場みたいなところを訪れてみたかったという理由。当初1月末出発で考えていたが現職の込み入った某により2月頭〜半ばの計11日間になった。サンフランシスコを中心に予定を立てたが、折角そのあたりに行くので有名所の観光も兼ねてロスにも訪れるというプランで動いた。気が向くままに街歩きをしたいのもあって通常のパッケージツアーには乗らず個人で航空券その他を手配。宿はAirbnb、移動に困ったときはUber or Lyftも使ってみようという今風な作戦を考えた。

ロサンゼルス

初日

アメリカへはロサンゼルスから入ることにした故かどうか、今回は羽田出発で、最近は国際線がどんどん飛んでいるらしい。USまでは賞味10時間overのフライトになるため成田だとただでさえ辛い空港までの旅路をある程度は楽に行ける。ターミナルの規模は小さかったが2~3Fフロアに日本風な橋がかかっていた。

f:id:takoji3:20180204145516j:plain

長旅を終えるとJST深夜のタイミングでPST午前10時みたいな感じでもろ時差ぼけする。ただついたら付いたで「あ〜これがアメリカか〜」みたいなテンションで楽しい感じになれた。ロサンゼルスではダウンタウン近辺、ハリウッド、サンタモニカの3箇所を適当に回れればほぼほぼ満足みたいな感じだった。空港を含めこれらは比較的移動可能な近場にあるので適当に目星をつけた。

f:id:takoji3:20180205061436j:plain

Airbnb

いい感じのホテル取るよりは安いというのとあわよくばホストと英語の実践兼ねて喋れればという考えで民泊サービスを利用してみた。実際ただの家or部屋を借りて宿とするだけだが、現地の生活場所を借りるということでなんだか楽しかった。よくある風呂トイレ共用の個室だったので他のゲストも普通にウロウロしていた。ステイ先は物件によっては若干の不便さがある場合もあるが、個人的には何より現地感をお手軽に味わえる良いサービスだと思う。適度に都市部に近い位置でも1泊6,7000円で最低限満足する部屋はある。条件を譲ればユースホステルのような感じで2,3000円、ゴージャス()な部屋なら1,2万〜とピンきり。今回の部屋は3泊したが計1.7万程度。国が広いせいか部屋も家も広い。

f:id:takoji3:20180205104434j:plain

www.airbnb.com

ハリウッドの山の上

ドルビー・シアターとか観光どころは適当に回ったので言及はさておき、有名な看板の裏側まで登ってきた。webで調べる感じ結構道を間違える説があるらしいが、T字路でアジア系の現地人に全力で裏から看板が見たいならこっちと教えてもらった。撮影スポットではなく頂上に行きたいので Mt Lee はこっちと書いてある方に進みましょう。

f:id:takoji3:20180208030259j:plain

サンタモニカ

海辺の街🚢これも有名な観光地なので特に言及しないけど、GTA5で出てきてる桟橋と遊園地がそのままあったのが印象的だった。砂浜からの夕日というオシャンティー以外の何物でもない光景も見てきた。

f:id:takoji3:20180207102543j:plain

サンフランシスコ

街歩き

ついにきたかーというテンションで全力で歩いていたが、都心部は坂が多くて起伏がすごい。ゴールデンゲートブリッジやアルカトラズ島にも足を運んで完全にただの観光客と化してたが折角なので行かないと損なので歩きまくった。

f:id:takoji3:20180209040846j:plain

ユニオンスクエア近くのAppleストアは日本と同じくごった返していた。いわゆるお膝元店ぽいのでなかなか盛況。もちろん品揃えは何も変わらなくて逆にそれがアップル製品の凄さなのかという考え方もあるが、盛況なのはHomePodの発売が重なっていたせいかもしれない。

f:id:takoji3:20180210113915j:plain

シリコンバレー

今回一番行きたかった場所という意味ではやはりシリコンバレーらへんを実際訪れるというところ。Facebookスタンフォード大学GoogleApple他が選択肢としてあるけどちょうど土曜になってしまって本来の感じではないのと各現地ショップも営業してないのでGoogleとコンピューター博物館に訪れた。カルトレイン移動すれば車はなくても割りと簡潔に到着できる。SanAntonio駅から歩いて30~40分程度で到着した気がする。本社のGoogleplex敷地内は、テーマカラーのベンチやらビーチバレーコートやら同じく観光客のような人たちも多数来ていて1民間企業なのかこれはというスケールだった。しっかりドロイドくんたちが屯し闊歩する様を収めてきた。

f:id:takoji3:20180211041005j:plain f:id:takoji3:20180211044039j:plain f:id:takoji3:20180211044703j:plain f:id:takoji3:20180211051201j:plain

コンピューター博物館は数学者の発明から現代のコンピューターまで歴史を追って見た。単純に面白いのと、英語でも説明を頑張って読んでいたせいか午後から閉館まで滞在できてしまった。ざっくりした興味の自分でもこの有様なので、興味のある方は1日いれると思う。

f:id:takoji3:20180211055715j:plain

その他

最後はヨセミテ国立公園を歩いてエルキャピタンを拝見したり、帰国便の国際線ターミナルに迷い泣く泣く気合で延泊したりしていた。注文や適当なやり取りにも慣れ始めていたので、多少アクシデンタルな方が一人旅ぽくてよかったとも言えるかもしれない。

まとめ

今回はまとまった時間が取れることになったので盛大に時間とお金を放出してアメリカに飛びやりたいことを体験してきた。海外に出るのはリフレッシュも含めやはり楽しいのでまたぜひとも実践したいところだが次回はもはやいつになるか不明なのが悲しいところ。雰囲気や気候は日本より遥かに良いと感じているのでいつかまた戻ってきたいと希望しつつ、ここがソフトウェアの最先端なのだなーと感慨深い感じで歩いていて楽しかった。エンジニアとしてこの地に立てると嬉しいだろうなという考えは頭の片隅に置きつつ、この晴れやかな精神を忘れず今後共精進する所存。

UE4のNetwork Profilerさわりまで

※導入+αです

最近も4.17がリリースされのりにのってるゲームエンジン界隈もといUnrealEngineですが、ここ数ヶ月ネットワーク絡みのマルチプレイゲームを作ってるお陰もありNetwork Profiler機能を使ってみました。

docs.unrealengine.com

モチベーションはシンプルにパフォーマンス改善につながれば良いですし、自分の開発しているゲームがどれだけのネットワークIOがありそうなものか指標として知るのは大事ですねというところです。導入自体は公式ドキュメントの通りなので特になにもありません。今回は簡潔なサンプルでどういう数値が出て来るか見てみたいと思います。

準備

適当に挙動が見たいのでデフォの人型Pawnを使います。AnimStarterPackにあるUe4ASP_Characterをそのまま流用して、入力部分はキーボードで動かせるようによしなに調整。

f:id:takoji3:20170813210021p:plain

f:id:takoji3:20170813210112p:plain

何もない空間にAnimationStarterPackのHumanを2窓で2人出現させてみます。Replicationの設定は基本特に変更せずローカルなので特段何もなくきれいな感じです。この段階でCrouchingが同期されてないようでしたが今回はスルーです。

f:id:takoji3:20170813211602g:plain

実践

ひとまず何も考えずプロファイリングします。公式通りに netprofile enablenetprofile disable で適当な期間実行してログファイルが生成されたらNetworkProfiler.exeで開きます。

f:id:takoji3:20170813212558p:plain

f:id:takoji3:20170813212813p:plain

パラメータ自体はたくさん出力されていて便利そうですが実際どのあたりを見るといいんでしょうか…ゲームのほうを変えてみます。ホストからはスポーンと同時に各クライアントでプリントするような雑なRPC呼び出しをやります。これでいくらかプロファイル内容が変わると変化が出るので嬉しいですね。

f:id:takoji3:20170813213432p:plain

グラフの前にこれまた一例としてOutgoing Bandwidth Bytes/sGame Socket Send Bytes/s でフィルタして、1回目と定期的にRPC呼び出しした2回目を貼ってみます。

f:id:takoji3:20170813215512p:plain

f:id:takoji3:20170813215523p:plain

ざっくりですが双方とも帯域幅2kくらいオーダーが上がってる感じしますかね。個々のアクターのRPC呼び出し等細かいこともできるぽいのでもっと突っ込んでいくともう少しはネットワークがボトルネックになる場合の検証ができそうです。数値を視覚化することはできますが、実際改善に結び付けるのは大変そうな感じもしました。

まとめ

UE4のネットワーク回りはより効率的なReplicationの設定やRPC呼び出しの参考設計が足りず、自分の場合どうしても力押しで完成させる部分がでてきてしまいました。リッチなエフェクトや表現が作りやすい分ゲームとしてのボトルネックはそちら側である場合が多いかもしれませんが、特にネットワーク通信がゲームの肝になる場合は今回のようにきっちりした数値をとって検証、考察していくことが大事だと感じます。

UE4は用意されてる機能が多岐にわたるため裏の動作もよくわからず行った今回の数値も信憑性は微妙かもしれません。サンプルプロジェクトのMultiplayerShootoutと同様の状態で、ホストをlisten状態にして実際に接続するような形だとまた異なる結果がでるかもしれません。ですが、試行錯誤の手段が増えるという事で効果的に利用していけるとよいかと思います。