ARTICLE【Unity】Bloom(ブルーム)を使いこなすと世界が変わるHOMEプロフィールスキルセットスキルセット「技術ブログをやってるんだし、せっかくならスキルセットを載せたら?」と、ふと思い立ったので、自分を振り返りつつスキルセットをまとめました。Unityを使ってゲーム開発をしているし、どうせやるならとスキルセットを確認できるゲームをWebGLでビルドしました。クリックするとロードが始まります。Opera)とそれ以外(Safariなど)では見え方が変わります。スマートフォンではカクカクになるので、できればPCでご覧ください。クレジット上のゲーム内ではマルセさん作成の『にゃしぃフォント改二』を使わせていただきました。ありがとうございます。「todoって誰やねん」とお思いのそこのあなた、よかったら私のプロフィールもご覧ください。エクスプラボプロフィールhttps://ekulabo.com/profiletodoのプロフィールUnityの隅々までつつく研究家(自称)/Unityアセットデベロッパー/Unityを使ったスマホアプリデベロッパーtodoは私の苗字の轟から。地元ではたくさんの轟さんがいるのですが、東京にいた頃は会う人みんなに「珍しいですね!」と言われていまし...ざっくり言うと、Unityを使ってスマホアプリ開発やUnityのアセット開発をしているフリーランスのデベロッパーです。「この人何ができるんだろう?」って部分が分かるようにこのスキルセットを作ってみました。スキルのレベルについてゲーム内でもそうですが、スキルのレベルについては以下の目安で設定しています。その道のプロレベルレベル4とレベル5の間がかなり離れているような気もしますが、大体の目安なのでこれでいきます。スキルセットゲーム内ではレベルを表示するだけだったので、具体的に何をやったか、何ができるかを補足しつつスキルセットをまとめます。IT全般IT業界の会社で働いた後、フリーランスになりました。プログラミング案件はそこまで多くなく、パッケージソフトウェアの導入やリプレースなどをやってました。ITのプロジェクトの進め方については、胃が痛い思いをたくさんしたので身にしみています。開発に関しては会社でというよりは趣味でやっていたところが大きいです。Unityでの開発はそれ自体がゲームみたいで楽しいですね。触って何かを作ったことがあるプログラミング言語は以下のものがあります。Javaスキルレベル:★★★☆☆Android向けにアプリを1本リリースしました。作ったのはゲームっぽく勉強時間を管理できるアプリです。オブジェクト指向はJavaで学びました。C#スキルレベル:★★★★☆これはUnityで使っています。スマホ向けアプリを2本リリースし、Unity用のEditor拡張アセットを2つ販売しています。このブログでもチュートリアルを作成したので、初心者向けに教えることができます。毎日のようにこんにちはする言語なので、多分これが一番慣れていると思います。会社にいたときに使いました。JVM上でPythonが使えるスクリプト言語です。超ざっくり言うとJavaのライブラリを使えるPython。Javaアプリケーションのカスタマイズ部分をJythonで実装しました。VBAスキルレベル:★★★☆☆これも会社にいたときに。自分の業務効率改善にも使いましたし、導入したパッケージとお客さんが業務で使うExcelシートをつなぐ部分を作ったりも。使う自作レーザー電源の制御部分でマイコンを使っていて、その制御部分をC言語で実装しました。いってもググって見つけたサンプルをカスタマイズしただけなので、「できる!」と胸を張って言いにくい部分でもあります。余談ですが、C言語に慣れるために「苦しんで覚えるC言語」という本を研究室に持ち込んでいたら後輩から「えっ......todoさんってそういう......(察し)」みたいに言われました。いや、たまたま図書館にあったのがこれだっただけだからね?FORTRANスキルレベル:★★★☆☆これも大学時代に使いました。惑星の軌道計算のシミュレーション、レーザーの周波数に関して強度分布のシミュレーションをするときにFORTRANを使っていたんです。科学分野の計算だとシンプルで扱いやすい印象の言語です。会社で先輩に「何かプログラミング言語触ったことある?」と聞かれて「FORTRANを使ったことがあります」と言ったら「フォwwwーwwwトwwwラwwwwンwww」とめっちゃ草生やされた思い出。Swiftスキルレベル:★★☆☆☆Unityを使っている息抜きに使いました。3DダンジョンRPGの原型をSwiftで作ったので、多少は触れます。Maker』を作りました。Storeで公開しています。このアセットでどのようなダンジョンが作れるのか雰囲気を掴んでもらえればと思い、デモシーンをWebGL向けにビルドしました。「こういうダンジョ...PHPスキルレベル:★★☆☆☆ブログのテンプレート作成や、カスタマイズで使っています。今振り返ればテンプレート作成なんて無茶、よくやったなぁ......。ブログ構築・運営スキルレベル:★★★☆☆フリーランスになった直後は色々と試行錯誤していたので、ブログ運営にも手を出していました。なんだかんだ5個ぐらい立ち上げたので流れはつかめたと思います。その経験もあってか、この技術ブログを作ることができました。リソース準備、リリースまで一通り経験しました。スキルのカテゴリについてはUnityのマニュアルを参考に分けています。ゲームデザインスキルレベル:★★★★☆ゲームデザインはゲームのコンセプトや雰囲気、ルールの設計部分のつもりで分けています。初心者に向けて、どんなことを決める必要があるか、ユーザにどんな部分を楽しんで欲しいのか、などのコンセプト部分の決め方は教えられます。設計スキルレベル:★★★★☆こちらは実装部分の設計を意図しています。どんな機能を使って振る舞いを表現するのか、その実装方法はどうするのか、などの部分ですね。テストスキルレベル:★★★★☆ゲームデザイン、設計で決めた振る舞いが意図した通りに表現されているかのテストは得意です。会社にいた頃からテストケースの作成は血反吐を吐くレベルでやってましたので(白目)個人的にはテストが一番大事だと思います。ユーザの体験に直結する部分ですものね。初心者向けに、設計とテストの対応、テストの合格基準をどう決めるかなども教えられます。会社にいた頃からトラブルシューティングは得意でした(白目)全体の流れを理解して、本来はこうなるべきだけど今はこうなってる、とか、エラーの出力元を追って原因を突き止める、というのは得意です。......書いていて思いましたが、基本事項でしたね。基本を押さえているということでひとつ。グラフィック作成デザイナーですとは口が裂けても言えませんが、PhotoshopやIllustratorは一通り扱えます。Photoshopスキルレベル:★★★☆☆Unityで使う画像リソースの作成、ブログのアイキャッチ画像の作成など、ほぼ毎日のように使っています。レイヤースタイルで飾りつけしていくのが好きです。Illustratorスキルレベル:★★★☆☆こちらもUnityで使う画像リソースの作成で使っています。画面サイズに合わせて複数の画像が必要な場合はこちらを使っていることが多いです。リリーススキルレベル:★★★★☆iOS/Androidアプリのリリース、WebGLでのリリースなら経験ありです。これらのプラットフォームであれば一通り初心者にも教えることができます。PS4やXBOX、Steamあたりは残念ながらリリース未経験なので、これから勉強します。動画作成PV作成や、チュートリアル動画の作成ができます。このブログでも例えばカメラワークのチュートリアルで動画を作成しました。Unityのカメラワーク初級編https://ekulabo.com/camera-work-essentialsゲームの見た目に関わる部分として、カメラワークが挙げられます。この記事ではカメラワークの種類を紹介するとともに、Unityで実装する場合はどうなるのか、実例付きでまとめています。Effectsを使っていて、こちらは長さの調整や音入れがメインです。Effectsを使っています。Unityでパーティクルを使うときにも考え方を応用できるので、これはやってて良かったと思います。アセット管理Unity内でアセットファイルを管理する際の方法についてです。AssetBundleスキルレベル:★★☆☆☆できるけど使わないで済むならそれで済ませたい機能。ネットワーク経由でAssetBundleをダウンロードして......みたいなことはリリースしたアプリの中では実装していないのでレベル2です。Systemスキルレベル:★★★☆☆まだ正式リリースされていないパッケージのスキルというのも変な感じですが、Preview版のパッケージを使ってアプリを1本リリースしました。正式版が出たら速攻でキャッチアップします。2Dスキルレベル:★★★★☆2Dのアプリを1本リリースしています。スプライトの設定やアニメーションの設定、コライダーの実装など、一通りできます。初心者向けに2Dゲームの作り方を教えることもできます。グラフィクスUnityでグラフィクスに関する技能です。GIの使い分け、プラットフォームのパフォーマンスに応じたライティングの調整、Probeを使って動くオブジェクトへのライティングの反映など、一通りのことができます。カメラスキルレベル:★★★★☆Unity内でカメラを扱うときに、現実で使われるカメラワークをベースに扱うことができます。映画などのカメラワークにはそれぞれ表現したい意図があり、意図に合わせたカメラワークの選択ができます。このブログでチュートリアルを作ったので、初心者の方にも教えることができます。Unityのカメラワーク初級編https://ekulabo.com/camera-work-essentialsゲームの見た目に関わる部分として、カメラワークが挙げられます。この記事ではカメラワークの種類を紹介するとともに、Unityで実装する場合はどうなるのか、実例付きでまとめています。マテリアルスキルレベル:★★★☆☆オブジェクトにテクスチャを貼って、ノーマルマップでデコボコ感を出して、必要に応じて発光させて......と一通りのことはできます。マテリアルとシェーダーについては知れば知るほど奥深いもので、なかなか自信を持って「できる!」と言いにくい部分でもあります。シェーダースキルレベル:★★☆☆☆マテリアルと同様に奥深さを感じてレベル2です。「コンピュートシェーダーについて説明してください」と言われたら詰まるレベル。GPU上で処理させます、なんてのはまだ実装したことがありません。自分でシェーダースクリプトを1から書くことはできず、既存のStandardShaderをベースにカスタマイズするくらいが関の山。Forgeのアセットを使ってシェーダーを作っちゃうことが多いです。Effectsを使ってることもあり、ある程度触ることができます。物理エンジンスキルレベル:★★★★☆3Dオブジェクトの物理的な運動や、衝突について一通り扱うことができます。このブログでも物理エンジンを使った初心者向けチュートリアルを作成したので、教えることができます。記事についてもRigidbodyやColliderについては解説記事を作成してあります。スクリプトUnityではC#を使って処理を実装しています。ゲーム用スクリプトスキルレベル:★★★★☆ゲーム内の処理を一通り実装できます。メッセージシステムを使ってオブジェクト間でメッセージのやり取りをしたり、コルーチンでゲーム内の処理を制御したり、デバッグしやすいようにメッセージを出力したり......とこれも基本事項でした。基本的なことはできます。Editor拡張スキルレベル:★★★★☆Editor拡張スクリプトを使ってアセットを2つ販売しています。3DダンジョンRPGを作れるEditor拡張は個人的にお気に入り。Storeで公開しています。このアセットでどのようなダンジョンが作れるのか雰囲気を掴んでもらえればと思い、デモシーンをWebGL向けにビルドしました。「こういうダンジョ...Excelで作成したデータをUnityに取り込んで、ScriptableObjectを使ってデータを保持する、なんてことも得意です。同時に多人数が遊べるようなゲームはまだ作ったことがありません。オンラインでランキングを登録するゲームはスマホアプリ向けにリリースしました。これは下の方で別枠にしています。外部のサーバ等と通信するゲームについては、先述のランキング登録をするゲームを作りました。マルチプレイヤーを実装するためのネットワーキングという意味ではまだ触れていないこともあるため、レベル2にしています。オーディオオーディオに関する技術です。管理スキルレベル:★★★☆☆Unity内でオーディオを管理するのはできます。オレオレサウンドマネージャを作って音声管理をしたりもしました。CRIWAREなどのミドルウェアは扱ったことがありません。作成スキルレベル:★☆☆☆☆オーディオファイルを作る方はあまり......。大学時代にバンドを組んでライブをやったり、コード理論などを勉強したりもしましたが、ゲーム音楽として使えるかと言うと......。趣味レベルなのでレベル1にしています。アニメーションスキルレベル:★★★☆☆3Dオブジェクトのアニメーション、2Dのアニメーションの両方ができます。3Dに関してはBlenderなどのモデリングソフトの中でアニメーションを作成し、UnityではAnimationControllerで制御するのがメインですね。UIのアニメーションをスクリプト内から定義することもできます。iTweenを使って実装したこともありますし、コルーチンで自作アニメーションを作ることもあります。タイムラインスキルレベル:★★★☆☆カメラの動き、キャラクターの動きをタイムラインで制御し、ゲームのオープニングとして使いました。カメラワークと組み合わせて考えることで、意図した演出を作ることができます。UIスキルレベル:★★★★☆テキストや画像の表示、ボタンの配置と制御、パーツのレイアウトなど、一通りのことができます。アニメーションの部分でもちょっと触れましたが、UI自体をアニメーションさせることも好きです。今回スキルセットをまとめるにあたって「そういえば使ってなかったなー」と気付きました。Unityの使い始めの頃にナビゲーション機能に触れてそのままになっていたような......。何かゲームを作ってレベル上げします。Adsを組み込みました。リワード広告を使って、広告を見たかどうかによって処理を分けることができます。興味はあるけどまだ手を出せていないスキル。デバイスを準備しないとなぁ......。オススメがあれば教えてください。アセットストアへの公開アセットのリリーススキルレベル:★★★★☆Unityのアセットを3つ販売しています。作成から販売までのプロセスは人に伝えることができます。オンラインランキングGameSparksスキルレベル:★★★☆☆GameSparksが提供するクラウドのバックエンドサービスを使ってオンラインランキングの機能を実装しました。スキルセットについては以上です。細かく分野を分けたのでそれに応じて振り返りもできました。(物理)の教員免許まさかの教員免許。民間企業に就職したのよね。教育という意味ではUnityのトレーニングに関して「教えるのが得意です」と言えるかも。このブログでも初心者向けチュートリアルの記事を作成したりもしたので、教材開発が特に好きです。色彩検定(1級)まさかの色彩検定。多くの人にとって見やすいゲームとなるようなユニバーサルデザインを意識して画面の配色を調整できます。あとは画面内の配色などから、表現したい雰囲気と色彩が合っているかなども確認できます。カラーコーディネーター検定1級(商品色彩)まさかのカラーコーディネーター。商品色彩はプロダクトデザインに関する分野です。物理的な商品に比重が置かれていますが、木材や石材の種類についても触れているので、テクスチャを作成する際の参考になっています。商品を置く店舗空間での照明についても触れており、Unityでライティングを調整する際にも役立っています。私があなたに貢献できることこれらのスキルを使ってあなたに貢献できるのは、Unityのトレーニング、Unityを使った開発サポートです。あなたが頭の中に思い描いているゲームを作るためのお手伝いをします。このブログのサービス内容としてまとめてみたので、ぜひご覧くださいな。エクスプラボサービス内容https://ekulabo.com/serviceエクスプラボはフリーランスのゲーム開発者兼Unityアセット開発者であるtodoが運営するブログです。todoのプロフィールについてはこちらからご覧ください。スキルセットについてはこちら。WordPress.。