百鬼無双
制作中 (修士1年6月から)自分が今作れる最高の手触りを追求して制作しているゲームです。
LEARNING & FEEDBACK
カメラの制御と3Dアクションの工夫 コヨーテタイムやローリング条件、壁走りの向きなどなど、様々な工夫をしています。 また、設計も武器、敵、ミッション、プレイヤーの挙動に拡張性を持たせるようにしています。
Game Developer
大学1年生から様々なゲームを作っています!プログラマー志望です!
ゲーム開発全体の醍醐味は、想像したことを実際に具現化できること!
プログラマーの醍醐味は、手触りを良くして当初の期待を超えるところ!
プログラマー志望ですが、開発中に出てくる課題を良いアイディアで解決するところも大好きです!
自分が今作れる最高の手触りを追求して制作しているゲームです。
カメラの制御と3Dアクションの工夫 コヨーテタイムやローリング条件、壁走りの向きなどなど、様々な工夫をしています。 また、設計も武器、敵、ミッション、プレイヤーの挙動に拡張性を持たせるようにしています。
Steamでの商業リリースを前提に開発中の、闇工場シミュレーションゲームです。 「実際に売れるクオリティ」と「収益化」を明確な目標として設定しています。ゲーム性は『Repo』や『Peak』のような協力プレイ作品を参考とし、友達と悪事をはたらいているようなマルチプレイ体験を目指しています。
マルチプレイ機能とUEへの挑戦 UEでの開発、マルチプレイ機能の実装、Steamでリリースすることにも興味があったため、全部まとめて挑戦することにしました。 学習と平行して開発を進めることは大変です。それでも『アイテム』や『調査員』には拡張性を持たせるような設計を考えたり、 マルチプレイに対応するためにペイロード構造体などを作ったりと、独学ですが工夫しながら開発しています。
BitSummit GameJamにて制作した3Dメカアクションゲーム。 東京の学生混成チーム(6名)で開発を行い、**ゲームデザイン賞(ゲームジャム内)**を受賞しました。
チーム開発とUXの追求 企画・実装の大部分を担当。チーム開発特有のコミュニケーションの難しさを経験しつつ、それを乗り越えて受賞できたことは大きな自信になりました。 実装の工夫として、すべての敵が一塊になって追ってこないように、プログラムを作成しました。これによって大勢の敵に周囲を囲まれる体験を提供できました。(エルデンリング、バイオハザードの実装の工夫を参考にした) また、企画についても、GameJamのテーマであった「OverPower」にあった良いリスクとリターンのある企画ができたと思います。ただ、難易度調整と手触りには課題が残りました。
Google PlayおよびUnityRoomにて公開中の、連鎖爆発で設計図を強化する新感覚パズルアクションゲームです。 「デザインが統一された、一つの完成されたアプリ」をリリースすることを目標に開発しました。鉱石以外のドット絵を自分で書きましたが、アセットのありがたみをしみじみと感じました…
モバイルアプリのリリース 企画・開発だけでなく、Google Play Consoleでのリリース手順、Firebaseを用いたランキング機能の実装、広告機能の実装までを一貫して経験しました。 企画段階では共同制作者と議論を重ねましたが、最終的に「連鎖」というコアメカニクスを基にリリースまで完遂しました。この開発時から設計という概念を初めて知り、共同制作者であるサークルの先輩から教えていただきながら作りました。 しかし、最終的にはコードの設計自体はひどい出来になってしまいました。ただ、この失敗を基に成長も出来たと感じています。
要件に合わせて、基本的に企画から開発まで一貫して行います。 エンターテインメント目的のゲームだけでなく、社会課題の解決や教育などを目的とした「ゲーミフィケーション」の開発を行っている会社です。
顧客視点とアジャイルな開発プロセス 「作りたいものを作る」のではなく、「クライアントやユーザーの課題を解決する」という視点での開発スキルを磨いています。 週次でのフィードバックサイクルを通じて、様々なバックグラウンドを持つ人たちから様々な意見をもらえることは非常に勉強になります。
メタバースプラットフォームClusterのイベント向けに制作。 新しい開発環境(Cluster Creator Kit)の習得を兼ねて挑戦し、**ユースクリエイター賞 奨励賞**を受賞しました。
リソースマネジメントとスコープ調整 3週間という短期間かつ未知のツールでの開発だったため、当初の企画から「コアとなる面白さ」以外を大胆に削ぎ落とす判断を行いました。 限られたリソース内で最大限の品質を出すための取捨選択の経験は、その後の開発進行において大きな糧となっています。
「タスクを完了できないと罰ゲームが発生する」というゲーミフィケーション要素を取り入れたTo-Doアプリです。 大学の授業課題として4か月間、企画・設計・実装・テストの全工程を行いました。 全7チーム中、コンセプトの独自性と実装力が評価され「殊勲賞」を受賞しました。
Androidネイティブ開発とチームマネジメント 始めて使う言語(Kotlin)を用いていきなりアプリを1つ完成させることは挑戦的でした。 他のチームメンバーとどのように進めていけばいいかを相談しながら、リードプログラマとして、Gitを用いたチーム開発フローの構築や、タスクを分割して各々の状況に合わせたタスク振り分けを行いました。
分身サバイバーの反省を生かし、スコアを競う形式にし、短い時間でどんどん成長していくゲームを作ろうとしました。
Unity1Weekで高評価作品に載せたい 分身サバイバーの反省を生かした作品を作ることで高評価作品になることを目指しました。 しかし、上手くいかなかった。自分が思う、失敗した要因としては、予想を裏切るような何かがなく、想像の範囲内に収まってしまった。
サバイバル系ゲームにどのような追加要素があったら面白いかを考え作ってみた作品です。
リスクリターンをただ作ればいいってもんじゃないのか プレイヤーを分身させるほど攻撃力が高くなるが、分身すると当たり判定がでかくなるというリスクリターンがある。 ただ、この増やすタイミングの意思決定に明確に「ここ」っていうタイミングがないことが問題だと思っている。 当初は、あと少しで倒せるのに逃げて行ってしまうというときに増やすというイメージだったが、敵が多すぎたか、 その敵を倒すことでどれほどの報酬がもらえるのかという期待感が分かりずらいことが原因に思える。 もっとボスみたいなフェーズを作ってもよかったな。あと難易度調整が相変わらず難しい…
Unity1Week(お題:「あい」)への参加作品です。 画面上を動き回る大量の図形の中から、自分の操作(回転・加速)に同期して動く「自分(I)」を素早く見つけ出すゲームです。 ゲシュタルト崩壊のような視覚的感覚を利用し、シンプルながら「アハ体験」を感じられるゲームシステムをデザインしました。
短期間でのコアメカニクス検証 他にやるべきことがあった中での1週間という短い期間で何ができるかを考え、面白さの核を最小限のリソースで表現するための考え方の学びがありました。
Unity1Week(お題:「ない」)参加作品。「シンプルな操作で最大限の面白さを」をテーマに制作。 短期間で、設計パターンの学習にフォーカスして開発しました。
設計思想(MVPパターン)の実践 これまで自己流だったコード構造を見直し、MVP(Model-View-Presenter)パターンとUniRx(リアクティブプログラミング)を導入。 これにより、ロジックと描画の責務が分離され、コードの可読性と保守性が向上したように思えます。
大学の文化祭(むつめ祭)展示用に制作したランゲーム。 ターゲットを「小学生」に絞り、説明不要で直感的に楽しめるゲームデザインを目指しました。
ターゲットユーザーに合わせたUI/UX設計 「操作しているだけで楽しい」を目指し、犬の挙動制御と物理演算による挙動を組み合わせました。 座標管理と物理演算のハイブリッド実装を行うことで、バグを抑えつつコミカルな動きを実現。実際の展示で子供たちが熱中して遊んでくれる様子から、ターゲット分析と実装のすり合わせの重要性を学びました。
宇宙空間でのFPSシューティングゲーム。 企画性よりも「FPSのシステムを自作する」という技術的な挑戦を主軸に置いたプロジェクトです。
3Dアクションの基礎実装力 FPS特有のカメラワーク、射撃ロジック、3Dモデルの自作など、ゲームを構成する要素をすべて一から実装しました。 既存のFPSゲームにある「当たり前の操作感」がいかに高度な調整の上に成り立っているかを痛感し、その後の「ゲームの手触りへの意識」を持つきっかけとなった作品です。
サイコロの出目によって挙動が変わるランアクションゲーム。 クッキーランのようなランゲームに一工夫入れて面白くすることを目指しました。
物理演算とロジックの使い分け 物理演算(Physics)に頼りすぎた結果、挙動が不安定になる課題に直面しました。 この失敗から、「確実な動作が必要な部分はロジック(座標計算)で管理し、演出部分のみ物理演算を使う」という実装の鉄則を学びました。また、難易度調整の難しさを肌で感じた経験でもあります。
初めて制作した3Dゲーム。「デジタルめんこ」での読み合いをコンセプトにした対戦ゲームです。 2人対戦(ローカル)およびCOM戦を実装しました。
「体験」のデジタル化の難しさ ソーシャルゲームにはまっていた時期で、色々なキャラクターが能力を持っていてみたいなのが好きでした。 「めんこを叩きつける」というアナログな感覚を、ボタン操作やマウス入力でもっとうまく表現するべきというフィードバックをいただきました。 このときはどうすればいいか分からなかったが、この時にもっと早く「ゲームの手触り」へこだわりが持てたら良かったな。
初めて完成させた作品。「比(Ratio)」をテーマにした直感型パズルRPG。 Listを使わずに(知らなかった)作ったくらい、とにかくまず自分のイメージを形にしたいというがむしゃらな気持ちがあったことが懐かしい。
ゲームメカニクスの検証 とにかく直感的に深く考えずに遊べて、爽快感があるゲームを目指した。 しかし、「比」という言葉が説明に入ると途端に難しそうに感じてしまうと遊んでもらったときに感じた。 正確にはわからないが、視覚的に今どのくらいの比であるかを風船みたいな演出で見せればもっとわかりやすかったなとあとで思った。
技術力向上のために読んだ本と、そこからの学び
C#実践開発手法。SOLID原則やデザインパターンをを学びました。大学3年生のときに先輩に勧められて呼んだが、完全に理解していない。時間があるときに読み直したい。
バイト先がゲーミフィケーションを活用しているため、勉強のために読んでみた。人間の欲求に関して言語化されていて、言われてみると確かにという発見が多かった。
研究室に入る前に何かきっかけになるものがあればいいと思い、読んでみた。結局、今の研究の内容はAIとは関係ないが、AIの実際の活用例をしれて勉強になった。
プログラマーになるなら必ず読んでおくべき本を調べて読んだ。特にコメントの役割や一度に1つのタスクという考え方をできるだけ意識するようにしている。
現在学習中、または次に読む予定の技術書
実例から学ぶゲームメカニクスを勉強中。
ゲーム開発特有のデザインパターン(State, Component, Flyweightなど)を体系的に学習したい。
3Dプログラミングに必須となる線形代数を、ゲーム実装の視点から再学習したい。
レベルデザインについて学んだことがなかったので読んでみたい。
メモリ管理や高速化など、コンソールゲーム開発に近い低レイヤーな知識を吸収したい。
C++を中心とした、バグを生みにくくパフォーマンスの高いコード設計を学習したい。
趣味
プレイするのも作るのも大好きです。インディーゲームからAAAタイトルまで、ジャンルを問わず様々なゲームを遊びます!分析しながら遊べたらいいのだけど、いつの間にかゲームの世界に引き込まれてしまう(笑)。
特に、予想をいい意味で裏切られるストーリー展開や、特徴的なキャラクター設定が好きな要素です!ヒロアカ、ナルト、ブラッククローバーみたいな王道のジャンプ系が一番好き。
ゲーム実況の配信が好きです!編集が入っていないプレイヤーのリアルな反応を見れるのがいいと思っています!特におにやさんが好き^^