2
プロフィール
顔写真
井上裕貴
性別:男
生年月日:1995 年 10 月 16 日
出身地:愛知県
趣味:ゲーム,サッカー
希望職種:プログラマー
所持資格:第一種普通自動車運転免許
日本漢字能力検定
3 級
TOEIC 公開テスト スコア 660 点
私は様々なことに興味を持ち、新しいことに挑戦することが好きです。
私はゲーム制作のプログラムリーダーでした。リーダーとして全体を見ながら、自分もプログ
ラミングをしました。コードの打ち方が分からない、どうしたら思い通りの動きができるかという疑
問は放っておかず、誰かに聞くか自分で調べるなどして吸収していきました。一度で覚えられな
くても何度もやり、しっかり自分のものにするようにしました。また、他の人が困っている部分や
問題点を見て、自分で手伝ったり、他に分かりそうな人にも相談するなどして、チームの問題解
決をしながら自分の知識を広げていきました。
他にも、ゲーム制作のプレゼンテーションの一部を担当したり、学校で管理している学生作品
を投稿する Web サイトを管理する役割を請け負いました。今後は新たな挑戦として、技能五輪全
国大会ウェブデザイン職種に参加すること、Web デザイン技能検定 3 級と基本情報技術者試験
を受ける予定です。
知らない事でも興味を持って取り組み、新しいことに挑戦し続ける推進力が私の長所です。
自己
PR
保有スキル
言語
ゲームエンジン
ツール
C/C# ActionScript2.0/3.0
HTML&CSS PHP
JavaScript jQuery
Objective-C(iOS 向けアプリ制作)
Unity
Adobe Flash Professional CS6
Xcode
Microsoft Visual Studio
Word Excel PowerPoint
4
・プロジェクト中に気をつけたこと
今回私はプログラム班のリーダーを担当しました。メンバー全員に仕事をなるべく振り続けること、自分も
作業を進めることを意識しました。
・今回初めてのチームによる制作で、さらに初めてのメンバーによる開発だったので、
① プロジェクトが始まる前にメンバーの個人制作作品を見て開発前にメンバーの技量を確認
② 企画とプログラムとグラフィックのリーダー格で事前に集まり、全体会議が進みやすいように軽い打ち
合わせをする
などして、なるべくスムーズに制作が始められるような準備をしました。
・制作期間中、報告や連絡がうまく取れない場合が怖かったので、分野ごとに班を作り、それぞれ副リーダ
ーを任命し、副リーダーと情報交換するようにしました。
↓
プログラムチーム内の人員の構造
・制作期間中、企画からの仕様書が遅れることが多々あり、プログラム内でやることがなくなるメンバーが
いることがありました。。
例えば、ボス戦の仕様書が遅れてボス戦担当者が制作に入れなかったことがあったので、その時少し詰まっ
ていた主人公の動作に関する制作に加わってもらい、なるべく手が空く人員がいなくなるように努力しまし
た。
・グラフィックからあげてもらった絵素材は、優先してゲームに挿入しました。その後すぐに実機に出して、
グラフィックに確認してもらいました。
会話画面班
ステージ班
リーダー
メイン
A(副リーダー)
C
B
E
D(副リーダー)
ギミックの作成,配置
ステージの配置,調整
画像加工etc
シナリオのテキスト配布
もらった報告の改良etc
成果物
作成途中の問題点
Player の管理
成果物の統合
問題点の報告,相談
問題点の改良
統合版の提出
・・・出す指示
・・・もらう情報
5
・CSV ファイル読み込みによるマップ作成
・CSV ファイルを読み込み、指定されたパーツを Unity 上に生成しました。
↓
開発初期のマップ
・開発初期当時、同時にBoxCollider を貼った床や壁などのパーツを Prefab 化することで、
当たり判定
まで全て自動で生成
しました。
・後々全てを自動で作ったことによるデメリットが発生しましたが、それについては後述します。
・マップについての細かい地形は企画サイドがよくわかっているので、企画にExcel での数値入力を
してもらった後データをもらい、実機に移しての細かい確認を行いました。
小さなパーツに一つずつCollider を挿入
開発途中のCSV データ
→
6
・CSV ファイル読み込みによるマップ作成
・
問題①
個々のブロックのサイズを 128px*128px で作ったが、小さすぎて作業が捗らない、
企画サイドへの負担
解決策
→ブロックのサイズを128px*128px から 512px*512px に修正し、
Excel 上で打ち込む量を
削減、作業効率を向上
させました。
↓
サイズを変更した後のCSV データ
・
問題②
ステージが大きくなると、動作に支障が出るほど重くなった
Prefab に Collider をつけて同時に自動生成していたことにより、かなりの負荷がかかっていた
↓
開発途中の
Collider 付きのブロックと、それを利用し生成したマップ
解決策
→Prefab から Collider を除き、Collider だけ手作業で貼ることで
軽量化
しました。
↓
最終段階でのマップのCollider の画像
・手作業でCollider を貼る際、細かい作業かつ時間がかかるので、Collider を貼る専門で人員を配置し、
その作業があるうちは集中できるような環境に置きました。
これを組み合わせたら…
一
つ
一
つ
が
小
さ
す
ぎ
る
!
7
・主人公(Player)について
・今作の主人公には4 つのモードがあるので、それぞれに分岐できるような仕組みを構築しました。
↓
開発初期のPlayer ステート
・しかし、これでは待機状態からの分岐のみで、待機以外の状態から別の状態に移行すると一度待機状態を
経由してからのモーション作動になってしまう。
これでは綺麗な状態遷移ができず、挙動がおかしくなるので、違うステートを作りました。
↓
Player のメインステートとジャンプ後のサブステート
・歩きモーションと靴使用時の
ジャンプモーションを
細分化し、アニメーターで管理
・杖モーションはAnyState で取得しv
どこからでも取ってこれるようにし、
スムーズにアニメーションに
入れるように調整
ジャンプ
待機状態
左歩き
右歩き
帽子使用時
杖使用時
死亡時
靴使用時
マント使用時
歩きモーション
待機状態
杖使用時
着地
ジャンプ開始
浮遊中
8
・主人公(Player)について
・アイテムの入手に伴いPlayer の外見が変わるので、enum を利用して画像を切り替えました。
・アイテムを取得するたびにPlayer の対応した子要素の数字として正しいものを選択して画像を切り替え
・数値で管理することにより、仕様変更によるアイテムの取得順序が変わった場合でもすぐに対応できるよ
うにしました。
Hierarchy 上の Player の子要素をすべて取得し、
Inspector に登録
Inspector でアイテムを
入手したときの
切り替え先を登録
アイテムを入手するたびに数字と一致した
Player 内の子要素を表示する
9
・主人公(Player)について
・ヒエラルキー上で、通常時と帽子使用時の二つの状態を作り、帽子使用時の方にもPlayer の二つのステ
ートを入れました。
↓
Player の子要素
・開発初期、横に移動しながら帽子に変身すると、横に動きながら変身してしまう、一度待機状態を経由す
るので正面を向いてから変化してしまうというという不具合が起きました。
解決策
→通常時と帽子使用時で二つの状態に分け、SetActive で変化させ、その変化中にアニメーションを
つけた。さらに変身中は動けなくすることで、不具合をなくしました。
通常時
帽子使用時
歩きモーション
待機状態
帽子使用時
歩きモーション
待機状態
帽子使用時
B
ア
ニ
メ
ー
シ
ョ
ン
を
挿
入
10
・デバッグ時の配慮
・デバッグの時期に入り、企画にもデバッグをしてもらうことがあったので、デバッグリストを作り、そこ
にバグを記入してもらいました。
↓
実際のデバッグリストの一部抜粋
・企画サイドが実機でのデバッグをやりやすいように、開発画面にデバッグのボタンを置きました。デバッ
グボタンの実装により、企画のデバッグだけでなくプログラムでのデバッグも効率が良くなりました。
デ バ ッ グ 済 の も の
はグレーに
・プロトタイプ開発時のデバッグボタン
・本制作以降のデバッグボタン
指定の前ポイントへジャンプ
指定の次ポイントへジャンプ
ステージ1 へシーンチェンジ
ステージ2 へシーンチェンジ
Boss1 ステージへシーンチェンジ
Boss2 ステージへシーンチェンジ
Boss3 ステージへシーンチェンジ
メインステージへシーンチェンジ
ジャンプ力を調整するバー
空中の横移動速度を
調整するバー
地上の横移動速度を
調整するバー
※指定のポイントとは、ゲームの進行に関わるアイテムの取得地点や、シーン移動する扉の手前など、ステ
ージ毎の重要ポイントです。スクリプトで座標を自由に指定できるようにしました。
11
Flash 作品
・ジャンル:
着せ替えシミュレーション
・使用言語:
Action Script 3.0
・開発環境:
Adobe Flash Professional CS6
・使用ツール:
Adobe Illustrator CS6
Adobe Photoshop CS6
・動作環境:
Android 端末
・制作期間:
3 週間
・制作人数:
1 人
←タイトル画面
GooglePlay 用アイコン
↓説明画面
←GooglePlay ストアにアップロードされて
います。
URL:https://play.google.com/store/apps/deta
ils?id=air.WeatherChanges
着せ替えゲーム
12
・作品概要
お昼、夕方、夜のそれぞれの景色にある様々なものを自由に動かし、天気を着せ替えて楽しもう!
意外なものが動いたり、隠れていたりするかも!?
・操作方法
画面タップで掴み、離すと置きます。
1 年生の後期末に作った、Android 端末向けを想定した作品です。プログラムだけでなくグラフィックに
もこだわりました。
どの画面でも必ず絵に何かしらの動きを付け、ユーザーに飽きさせないように配慮しました。
お昼
夜
夕方
太陽、
飛行機、
雲、家
などが
動かせる!
カラス、雲、
ランニングマン、
後ろの太陽などが
動かせる!
月、星、
UFO などが
動かせる!
さらに、家の裏には
ある動物が…!?
13
・ジャンル
:シューティング
・使用言語
:Action Script 2.0
・開発環境:
Adobe Flash Professional CS6
・使用ツール:
Adobe Photoshop CS6
・動作環境:
PC
・制作期間:
1 ヶ月半
・制作人数:
プログラマー1 人
グラフィッカー1 人
←タイトル画面
メインゲーム画面→
Web サイト掲載用アイコン
シューティングゲーム
14
・作品概要
主人公のロンが家に帰ると、3 人の弟たちがゾンビベイビーになってしまっていた!?弟を救うべ
く、ロンは立ち向かう!
ミルクタンクを狙って攻撃してくるゾンビベイビー達の攻撃をよけながら、うまく弾を当てて弟た
ちを元の姿に戻そう!
・操作方法
S キーと D キーで左右移動、ミルクタンクとロンが重なったタイミングでミルクボトルにカーソル
を合わせてクリックすると、クリックしたミルクボトルに向かって弾が発射されます。
1 年生の後期に、ジャンルがシューティングゲームのものを作るという授業で作った作品です。
ゲームのあらすじの動画をmp4 形式で用意し、外部ファイルから読み込み取り入れ、シナリオを持たせ
ました。
また、ゲームらしさを出したかったので、サウンドの導入、カウントダウン表記、負けたときの演出など
のユーザビリティを考慮しました。
ミルクタンク
ミルクボトル
ロン(Player)
敵の弾が当たった時
の表情の変化→
15
・ジャンル:
シミュレーション
・使用言語:
Action Script 2.0
・開発環境:
Adobe Flash Professional CS6
・動作環境:
PC
・制作期間:
1 ヶ月
・制作人数:
プログラマー1 人
・作品概要
数秒経つと出てくる黒点をクリックしたらクリア、できなかったら失敗の簡単なゲーム。座標をヒ
ントにがんばろう!
・操作方法
全てクリックで行います。
1 年生の前期に初めて作った作品です。出てくる座標と黒点の出てくる秒数をランダムで取得しました。
タイトル画面→
↑メインゲーム画面
↑クリア画面
シミュレーションゲーム
16
・ジャンル:
アクションゲーム
・使用言語:
Action Script 2.0
・開発環境:
Adobe Flash Professional CS6
・動作環境:
PC
・制作期間:
2 時間
・制作人数:
プログラマー1 人
・作品概要
走ってくるイノシシをかわしてゴールを目指せ!
・操作方法
キーボードの上下左右キーで移動します。
1 年生の前期に学校行事用に 2 時間で作った作品です。初心者でもコードがわかるような簡単なゲーム
にしました。
メインゲーム画面→
ゲームオーバー画面↓
↑ゲームクリア画面
アクションゲーム