ゲーム業界のTA（テクニカルアーティスト）の紹介とそれになるためにやっておくといいこと

ゲーム業界目指している専門学生の1,2年生のデザイナーやプログラマー向けの何か参考になればいいなという記事
一般的な業界の用語はいっぱい出すので分からない用語があったら逐一調べてください

# 自己紹介
21さい　男　専門学校4年　ゲームのデザイン専攻（映像系ではない）
高校＞専門＞内定頂いた

# テクニカルアーティストってなんだよ
テクニカルアーティスト、略してTA
デザイナーでもありプログラマーでもある、さいきょう

テクニカルアーティストの分野はでかい
3Dモデリング、2Dアート、リギング、アニメーション、シェーダー、エフェクト、VFX、パイプライン作成などを中心に作業の効率化（ツール作成）とかゲームエンジンでいい感じのグラフィックを作る
あとは容量の削減だったり表現の提案だったりをするらしい

ぜんぶやれ


## どういう人に向いてる？
プログラミングもデザインもできる（興味がある）やつ
自分から進んで新しい技術とかツールとかを学びに行く姿勢があるやつ
効率化に興味があるやつ
周りの人間とコミュニケーションできるやつ
パソコンと仲がいいやつ

一応クリエイターなんだから創作意欲は欲しい
## 全部できないとダメ？

そんなことはない　
リギング、アニメーションに強いテクニカルアーティストや、シェーダーやエフェクトに強いテクニカルアーティストなどがいてちゃんと分かれてる
このテクニカルアーティストの定義のデカさは「テクニカルアーティスト定義デカすぎ問題」としてオラの中で有名

ただ共通するのはプログラミングもデザインもある程度できないとダメ

## どれくらいできないとダメそう？
プログラミングは1言語を深く習得したい　自信を持ってこれ使えますって言えるやつ
1個覚えれば他の言語習得はつぶしがききます
ゲーム系なら
- Python Mayaでつかえる　Blenderでもつかえる　他にもつかえる
- C++ Unreal Engineで使える　他にも汎用性高い
- C# Unityで最強になれる
- JavaScript Adobe系アプリで使える

-汎用性の壁-

- HLSL シェーダーやりたいなら一通り覚えましょう
- MEL Mayaでのみ使える　リガー志望でMayaがメインならこれだけでもいい
- HScript Houdiniでのみ使える　HScriptが使える＝Houdiniが使える


Web,IT系じゃないのでJavaとかRubyとかはやらなくていいです　
デザイン分野は
3Dモデリング、2Dアート、リギング、アニメーション、シェーダー、エフェクト、VFX
これのうちどれかをメインでやりつつメインの作業をどうやって効率化していくか、プログラムで楽になりそうな部分はどこかを考え、必要ならツールを作ってみてください（そういったツールがTAのポートフォリオに乗せられる）

目標としてはどちらかの分野だけでも就活で戦えるレベルまでスキルを伸ばすのが理想です
必ずしも両方に精通してなくても大丈夫っぽいです

多分そんな感じでいけます

## お前なにやったん？
オラはUnity触りまくったのでC#がつよくなりました
学校の課題やってたらいつのまにか3D系の知識ついてました
なのでシェーダー（マテリアル）を中心にやりつつもエフェクト作ったりポストプロセス作ったりしてました
そのあと他の人の話要望聞いたりしてC++でMayaのプラグイン作りました
3年のグループ制作はいっぱい頑張りました
あと去年(2022年)の8月にStableDiffusionが公開されたからそっからAIイラストやってた
そしたらいつのまにか就活始まってた
地道に就活してたら受かった

## 気をつけておくポイント

学校でのグループ制作　大事　面接でも聞かれる　
シェーダーやライティングや、ファイル管理ツールなどを担当するとテクニカルアーティストっぽい（でもなかなかできない）

「なんでプログラマー（デザイナー）にならなかったか？」という質問に答えられるようにしておく
デザイナーの要望を聞いてツールを作成できるようにデザイナーの友達がいるとよい（プログラマーで周りにデザイナーがいないなら一人でデザイナークラスに通うぐらいの気概はみせろ）

ツールを作った時の話とかも聞かれるポイント
## お世話になる（ならない）ソフトウェア
- Windows（Mac）(Linux) 基本的にWindowsでいいよ 言語設定を英語にすると日本語でのバグが減っておすすめ
- Maya ゲーム業界の義務教育　学校の授業で言ったら国語
- Blender スカルプトするときに使う　映像系はBlenderに乗り換えたところ増えてきた
- 3DS MAX じつはやったことないです……（小声）
- Motion Builder UIが古すぎる　使うときは使う
- Adobe系(Substance Painter含む) ゲーム業界の算数　いつも大変お世話になっております。
- Houdini たかい、もっと安くしろ
- ZBrash TAにはいらない　モデリングやりたいなら買え
- EmberGen リアル系エフェクトやるならいる
- Unity ゲームが作れる神ゲー　しかも無料
- UnrealEngine 最近更新速度早くておいつけない
- Git グループ制作で使う　そんなに難しくないのに使えないデザイナーが多すぎる　日本の中学校で教えるべき
- VScode Python書くときに使うけど実はメモ帳でいい（大嘘）　特に理由がないなら使っとけ
- Visual Studio　気が付いたら入ってる
- Eclipse　いらない　Javaをやらないので
- **stable-diffusion-webui/Automatic1111**  時代はえっちなAIイラストだね
- Deepl 時代はAI翻訳だね
- ChatGPT 就活でエントリーシートやビジネスメールを書くときに使える
- Office系　あると便利
## テクニカルアーティストのいいところは？
プログラムもデザインもチョットワカルのでメンバーからの要望に対して技術的に可能かどうか、現実的にどの程度できそうかが判断できる

就活でプログラマーほどプログラムをガチらなくてもいいしデザイナーほどデザイン分野をガチらなくてもいい

プログラマーやデザイナーが各分野で80点ぐらいの作品作って勝負しているところ（みんなすごいね）に
プログラム力70点とデザイン力70点あれば可能性あるのが良い点


## 興味出たけどプログラム（デザイン）やったことない……なれそう？

4年制なら2年の夏休み前までなら全然なれる

デザイナーならまず自分が進むデザインの分野から極めた方がいい
それと同時並行でプログラミングを学習し、自分の作業にプログラミングからのアプローチを模索する。
一番いい学習方法は自分の中で「こういうの作りたいな」って思ったものを作るべき
例えばUnityで簡単なゲームを作ってみたり、MELで簡単なツールを作ってみたりするところから始めよう
C#かPythonがおススメ　日本語の情報も多い（Qiitaにもいっぱいある）
モデラー、リガー、アニメーターならMELでもいいけど MELは簡単ですぐに習得した気になるので注意
プログラム君は君の思った通りに動くんじゃなくて君が書いた通りに動きます
トライアンドエラーに慣れろ
しょーもない誤字を見落として1時間を無駄にする感覚を味わえ

プログラマーなら今すぐMaya触ってモデリングしよう
毎日**少なくとも**30分は触ろう
モデリングしたらスキニングしてアニメーションつけてUnityやUnreal Engineで動かすとテンションが上がるゾ
Mayaは毎日触ってもMaya全然分からん期が1ヶ月ぐらい続くのでそこで諦めずに触り続けるしかない
触ってたらそのうち「マヤ……あぁMayaね、俺、あいつのこと、何も分かってなかったんだよな」期に入るのでそこからMayaのツール制作に取り掛かろう
プログラマーに足りないのはデザイン系の知識なのでまずそれを補強する
何も分からない状態で触り続けるのがしんどいならチュートリアル本を買うといいと思います（チュートリアルがあるだけマシ）
こちらも簡単なゲーム作成などを目標にしてでモチベーションを上げるのがおススメ

とにかく自分の興味がある分野から知識を広げるのが大事です

## withAI
現在話題の生成AIでクリエイター界隈に衝撃が走っていますがゲーム業界も例に漏れずAIがきてどうしようどうしようとなっている感じですね（2023年5月現在）
企業がどうしてるかは分かりませんが現状の雰囲気だと製品に使いだすのは時間の問題だと思います（案だしとかにはもう使ってるとは思う）
テクニカルアーティストは新しいことに触れるのが大切なので、興味があったら色々やってみてください
また、今後もっとAIの活用の機会が増える可能性があるので常に情報をチェックしてください
触れるときに、テクニカルアーティスト的にどういうアプローチをするのかを考えて接してみてください


## さいごに
努力と積み重ねが大事なので常に勉強するつもりで頑張ってください
ポートフォリオを作るのは前例が少なくて難しいので頑張ってください
プログラムの作品とデザインの作品のどちらもあるといいよね
その他の就活対策としてFラン大学就職チャンネルでも見てください