tatsumack blog

エンジニアによる雑記です

「ゲームプログラマになる前に覚えておきたい技術」を読んだ

ゲームプログラマになる前に覚えておきたい技術

ゲームプログラマになる前に覚えておきたい技術

学生時代に3Dゲームを開発する授業があり、その際の参考図書として購入していた本。
去年、サーバーサイドエンジニアからモバイルゲームのクライアントエンジニアに転向するにあたり、もう一度読み直してみた。

いくつかのサンプルゲームの開発を通じて、ゲーム開発に必要なスキルを広範囲に渡って解説しており、ゲーム開発に必要な技術の全体像を掴むのに最適な本だと思う。C++、2D・3Dグラフィクス、シーケンス遷移、衝突処理、サウンド、データ構造・アルゴリズム、マルチスレッド処理と多岐に渡る技術領域を取り上げている。800ページ超の大作だが、説明が丁寧かつ語り口調ベースなので、比較的すらすら読める。ゲーム開発に対する筆者の哲学を所々で語っているのも良かった。

なお、タイトルからは初心者向けの本のように見えるが、C++でのコーディング経験があって、CPUやメモリが何をやっているのかがざっくりイメージできるような方が対象になると思う。

2016年振り返り

🍻を飲みながら雑に振り返っておく。

マネージャー

エンジニア組織のマネージャーになった。模索しながら手探りでやっていたが、振り返ると、メンバーの育成やモチベーションコントロールに意識が取られすぎて、組織がどうあるべきか、組織がどういう方向に進むかを示して引っ張るようなアクションが弱かったように思う。

反省点は多いが、チャレンジングなアサインをしたメンバーがしっかり成果出して成長する姿を見ることができたのは良かった。組織に漂っていた閉塞感を打破しようと、攻めのアサインを行うことを心がけた。組織にとってやはり一定の新陳代謝が必要だと思うので、来年もこれは心がけたい。

バイルネイティブゲームのクライアントエンジニア

主戦場をwebからモバイルネイティブに移した。プログラミング言語的にはPerlJavaScriptから、C++をメインに扱うようになった。メモリ管理面倒だなーと思う一方で、それも含めてCPUの気持ちになってコードを書くのが楽しい。低レイヤをもっと知りたい欲が出てきたし、自作コンパイラ作ってみたいと思うようになった。

筋肉

一念発起して、筋トレを始めた。腹筋も割れてきたし、痩せたし、仕事のパフォーマンスも上がった気がするので、良いこと尽くしだ。

来年やりたいこと

  • OSSへのコントリビュート
  • 英語
  • Rust
  • 自作コンパイラ
  • グラフィックAPI
  • 読んだ本の感想をブログに書く

 

来年は20代最後だし、悔いのない1年にしたい。

 

 

うっすら腹筋が割れるまでにやったこと

この記事は 筋肉 Advent Calendar 2016 8日目の記事です。
qiita.com

腹筋を割るために、3ヶ月前から色々やってきたので、いったんまとめておきたいと思い、筋肉Advent Calendarに参加しました。ダイエットが主目的の筋肉ビギナーによる記事なので、筋肉ガチ勢の皆様におかれましては、赤子の成長を見守るような優しい眼差しで見ていただけると幸いです。

なぜ腹筋を割りたいと思ったのか

社会人になってからゆるゆると体重が増え続け、ゆるふわボディになっている事実から目を背けていたのですが、1年程前に娘が産まれてから家族で写真を撮る機会が増え、ふっくらした自分の顔を見る度に、そろそろ痩せねばと思うようになりました。また、30歳がそろそろ迫ってきて、「20代のうちにやり残したことがないか」ということを最近よく考えるのですが、肉体的にもまだまだいけるうちに腹筋を割っておきたいと思うようになったのがきっかけです。

これまで

元々ダイエット目的で1年前くらいからランニングは続けていたのですが、見た目の変化が特になく、ランニングだけではダメなのだと悟り、3ヶ月前に方針転換をしました。

腹筋を割るための方針

・なるべく低コストで
以前、ジムの回数券を購入して使い切らずに期限が過ぎてしまった苦い思い出があるので、筋トレを習慣化できるようになるまで、なるべく低コストで行うことにしました。

・脂肪を落とす
腹筋の上を覆っている脂肪を落とさない限りは、割れた腹筋が見えてきません。筋トレだけではなく有酸素運動も組み合わせて、脂肪を落としていくことにしました。

・腹筋以外の筋肉も鍛える
リバウンドしにくい体にするために、腹筋以外の筋肉も鍛えることで基礎代謝を上げようと考えました。なるべく大きい筋肉を鍛えた方が良いと思ったので、胸筋を鍛えることにしました。*1

やったこと

・腹筋ローラー
器具を使わずに自分の体重だけで行うトレーニングでは負荷が物足りなく感じたのと、970円と安かったので、腹筋ローラーを買ってみました。

膝をつけてコロコロしているだけでも負荷が高く、最初のうちは数回だけでもしっかり筋肉痛になりました。ただし、腹筋上部には効くのですが、やり方が悪いのか、腹筋下部と横(腹斜筋)にはあまり効きません。腹筋下部と横は、別の自重のトレーニングをしています。

筋トレは超回復を考えると2日ほど間隔を空けた方が良いと聞きますが、筋トレの習慣をつけたかったので、筋肉痛がひどい日以外はほぼ毎日やっています。今は15回×3セットくらいを目安に取り組んでいます。

簡単に分解・組み立てができるし、比較的軽いので、海外旅行に行った際にも持っていきました。

・プッシュアップバー
自重の腕立て伏せだと手首が痛いときがあったのと、こちらも1200円程度と安かったので買ってみました。

トータルフィットネス(TotalFitness) プッシュアップバー  STT020

トータルフィットネス(TotalFitness) プッシュアップバー STT020

手首も痛くならないし、深く沈み込めるのでしっかり胸筋に効かせることができます。
今は15回×2~3セットを目安に取り組んでいます。

・ランニング
平日に5kmを2回、休日に10kmを2回程度走っています。ランニングもただ走るだけだと苦痛なので、楽しく続けられるために色々と自分なりに工夫をしています。

①良いランニングコースを見つけること。以前は5kmも走ると飽きてしまっていたのですが、2ヶ月ほど前に良いランニングコースを見つけてから10km走れるようになりました。特に、走っていて飽きないような景色が自分の中では重要な要素でした。あと、他にもランニングしている人がいるようなコースだと、自分も負けじと頑張ろうと思えます。

②10kmも走っていると1時間近く脳内が暇なので、ポッドキャストを聞きながら走っています。主に Rebuild - Podcast by Tatsuhiko Miyagawa を聞いていて、「ランニングのときにしかrebuild.fmを聞いてはいけない」という制約を自分に課すことで、新しいエピソードが配信されたときにはランニングを待ち遠しく思うようになりました。rebuild駆動ランニングです。

NIKE+ RUN CLUB というアプリで、ランニングした際のログを取っています。走り終わった後に走行距離や消費したカロリーを見て、悦に浸っています。

Nike+ Run Club

Nike+ Run Club

  • Nike, Inc
  • ヘルスケア/フィットネス
  • 無料


プロテインを飲む
鍛えた筋肉に適切な栄養を届けるために、プロテインを飲むようにしています。プロテインにも色々と種類はあるようですが、まずはAmazonで一番人気だった「ザバス ホエイプロテイン100」を飲むことにしました。

ザバス ホエイプロテイン100 ココア味【50食分】 1,050g

ザバス ホエイプロテイン100 ココア味【50食分】 1,050g

プロテインはあまり美味しくないイメージがあったのですが、このザバスプロテインのココア味は美味しく飲めています。
値段は、近所のドラッグストアやいくつかのサイトと比較したのですが、Amazonの定期便で買うのが一番安かったです。Amazon定期便は1回だけの購入も可能なので、迷っている人も定期便で購入するのをオススメします。

・平日断酒
社会人になってから、毎日ビールを1~2杯飲むのが習慣になってしまっていました。アルコールの摂取によって肝臓に負荷をかけてしまうと、脂肪の分解を妨げてしまうと聞いたので、平日はなるべく飲まず、週末だけ飲むようにしました。ビールを飲みたいなーと思う夜も、プロテインを飲むと満足してしまうことが多く、ビールを飲まなくてもいいやと思えるようになったので、平日断酒がうまく続いています。

結果

写真を載せる勇気はないのですが、腹筋がうっすら割れてきました。胸も以前はぷるぷるでしたが、それなりに胸筋がついてきています。体重は3kg落ち、体脂肪率は10%を切り、9.5%前後になりました。久々に会う人にも痩せたねと言われるようになり、割りと満足のいく結果が出ています。

一方、一度に複数のことを始めたので、何が効果的だったのかはよく分かっていないです。特に、プロテインは本当に効果的なのか、ビールは本当にダイエットの敵なのか、は今後きちんと検証したいと思っています。来年の筋肉Advent Calendarで結果報告ができると良いですね。

最後に

筋トレはやればやるほど、見た目の変化だったり、体重や体脂肪率といった数値の変化が表れてくるので、RPGのレベル上げみたいな感覚で楽しく取り組むことができています。また、ランニングや筋トレはストレス発散にもなっていて、精神衛生上にも非常に良いです。エンジニアという職業柄、脳に負荷をかけることが多いですが、筋トレやランニングをすることで、一旦頭の中がリセットされてすっきりします。

この記事が腹筋を割りたいと思っている筋肉ビギナーの方に、少しでもお役に立てば幸いです。

*1:大きい筋肉というと、太ももの裏の筋肉を鍛えることも考えましたが、自重トレーニングだと負荷が物足りなかったのと、ランニングである程度鍛えられるだろうと思い、今回はスコープから外しました。

WORK RULES! (ワーク・ルールズ) を読んだ感想

今週、ちまちまと「WORK RULES! (ワーク・ルールズ)」 を読んだ。

ワーク・ルールズ!―君の生き方とリーダーシップを変える

ワーク・ルールズ!―君の生き方とリーダーシップを変える


Googleの人事トップのラズロ・ボックという方が、Googleでの採用・育成・評価について語っている。
Laszlo Bock - Wikipedia

500ページを超えるボリュームでGoogleの人事の仕組みについて細部まで記述してあり、非常に読み応えがあった。超巨大組織になったGoogleだが、創業当初からのGoogleカルチャーを守るための組織作りを知ることができる。

最近話題になった「心理的安全性」というGoogleの記事と、同じようなエピソードが本書にも書かれていた。
gendai.ismedia.jp

特に自分にとっては、マネジメントの観点がいくつか印象に残っている。
・スタッフの創造性を解き放つために、社員への権限委譲を積極的に行う。ステータスシンボルをなくす。
・意思決定は、組織の出来る限り下位のレベルでやるべき。収集がつかないときのみ、上のレベルで意思決定をする。
・地位に伴う指揮統制の衝動と闘う。その衝動は、管理することで役立っているという幻想と、スタッフの能力に対する信頼の欠如から来ている。

強烈なリーダーシップで周囲を指揮・命令するのではなく、いわゆる支援型のリーダー(サーヴァントリーダー*1であるべきという話だった。
以前のrebuild.fm*2で、「ビジョンを提示しないリーダーには結局人はついてこないので、サーヴァントリーダーは一概に良いとは言えない」という議論があったが、Googleに関して言えば、ビジョンが現場スタッフにも浸透しているからこそ、支援型のリーダーが活きてくるのではないかと思った。
(「権限委譲しているからこそ、現場スタッフにもビジョンが浸透する」という説もある気がする)

また、全体を通して、ABテストや統計知識を用いて人事施策を評価するエピソードが随所にあり、人事組織においても徹底的な分析を行う姿勢が印象的だった。

本書は人事トップの視点だったので、ぜひ現場スタッフの視点の話も聞いてみたいところ。