Programming CGデザイナーにオススメする学ぶべきプログラミング言語は?

CGデザイナーにオススメする学ぶべきプログラミング言語は?

what_programming_languages_should_i_learn_topimage

近年プログラミング学習の需要が高くなっています。

CGデザインの業務に携わる現場でも、その需要は益々高くなりプログラミングが分かる人と分からない人(敢えて分かる分からないと書きました)で、今後大きな開きが出てくると思われます。

そしてプログラミングが学べるプログラミングスクールもリアル又はオンライン共に増加し、CMに有名人を起用するなど活況をみせています。

そこで少し気になるのは、

プログラミングスクールの数は凄く増えたのに、学べる内容に偏りがあるのではないか?

という事。

需要と供給の問題なので仕方ないのですが、多くのプログラミングスクールの学習内容が

Webページ・ウェブサイト・Webアプリケーションの制作

に偏りすぎなのではないか。


CGデザイナーとしてプログラミングを学ぼうとプログラミングスクールに入学したのに望んだ内容では無かったとしたら。

そこでこの記事では、CGデザイナーが学習するべきプログラミング言語をプログラミングスクールで学習する事を念頭に紹介したいと思います。

このブログで推す学ぶべきプログラミング言語は絶対的にPythonなのですが、CGデザインの業務で活用出来るプログラミング言語は他にもあります。

プログラミングスクールで学習できる人気のプログラミング言語

javascript
PHP
HTML/CSS
Python
Unity/C#

は、CGデザイナーの業務にも有効なプログラミング言語なのか、どのように活用できるのかを紹介します。


CGデザイナーでも「C/C++ をバリバリに使いこなしてるぜ」という方もいますし、CG制作ソフトウェアのプラグインを作成するにはC/C++の知識が必要になります。しかしCGデザイナーが初めに学習するプログラミング言語なのかを考えると、学習しやすく業務で使える場面も多い他のプログラミング言語を優先するべきだと思います。


javascript

Webページ・Webサイト・Webアプリケーションの制作には必須のプログラミング言語です。

Web系に強いのは勿論なのですが、JavaScriptは習得しやすいプログラミング言語だからなのか、他にも様々なアプリ・サービスのスクリプト言語として採用されています。

そしてCGデザイナーにとってJavaScriptを学ぶべき最大の理由は、なんと言っても

Photoshopを始めとしたAdobe製品をコントロールできるスクリプト言語

である事。

「Photoshopで繰り返しの処理するならアクションでしょ」
そうです、縮尺を変更するとか、特定の形式で保存するとか、単純な処理を一律に行うだけならアクションで可能です。

でも、このファイルは〇〇だからこの形式で、このファイルは△△だから別の形式で保存みたいな条件をつけた処理はアクションでは出来ません。

複雑な画像処理をしたり、外部のファイルを読み込んでテキストの内容を反映させたりと、JavaScriptでスクリプトを書くことでPhotoshopや他のAdobe製品の可能性も更に広がります。


GUIのセットも備わっているので、独自のツールを作る事も出来ます。

photoshop_javascript_gui

学習のハードルも低く、比較的覚えやすいので、PhotoshopやIllustratorを使っているなら、是非とも習得して欲しいプログラミング言語です。

その他のJavaScript活用場面

Google Apps Script

GmailやスプレッドシートなどGoogleのサービスを連携したり、自動化したりなどが可能なスクリプトプラットフォーム。

JavaScriptをベースにしたスクリプト言語なので、JavaScriptを習得していれば導入しやすいスクリプトだと思います。


Windows Script Host(WSH)

WindowsOSでテキストファイルに記述して実行できるスクリプト環境。

例えば「Windows内で大量のファイルを適切な場所に移動したい」等があれば、簡単なプログラムを書いて処理する事ができます。

WSHはVBScript又はJScriptのどちらかのスクリプト言語で記述できますが、JavaScriptを習得していればJScriptで書くことは難しくありません。

PHP

Webアプリ制作に使われるプログラミング言語。

このブログを運営しているWordPressもPHPで動いています。

CGデザイナーがPHPを学ぶ事によって請けられれる直接的な恩恵は正直あまり無いです。

筆者の使い方だけで言えば、全く知らないより触りだけでも覚えておくと、助かるという感じですね。

実際の業務では、家や車、椅子やテーブルなど制作したアセットの詳細情報をWebブラウザで閲覧する、チーム内の情報共有の環境構築などに使用しています。

つまり実際のモデルデータ等に関わる事ではなく、チーム内の情報共有や管理業務に関わる業務で学習する価値があると言えます。

社内用のwebサーバーは好きなプログラミング言語で書けるCGIを扱える環境になってるとは限りません。

でもPHPであれば、CGIに比べて使える環境である場合が多いのでCGIの為にプログラミング言語を学習するくらいならPHPを習得するべきだと思います。

Webブラウザを使った管理方法を考慮するならPHPは無視できませんし、管理業務に関わるならPHPは学習するに足るプログラミング言語でしょう。

社外に向けたサイトではなく、あくまでもチームメンバー閲覧用なので必要な情報さえ扱えればよく、複雑で高度な技術もそれほど必要ないかと。

HTML/CSS

webブラウザで情報を閲覧するのなら HTML/CSS も合わせて学習する事も考慮するべきでしょう。

  • HTML はwebブラウザに表示する為のマークアップ言語
  • CSS は表示される際の体裁を整える為のスタイルシート

HTMLを知らないとPHPも書きようが無いですし、いくら社内用・チームメンバー用としても、情報が閲覧しづらくては勿体ない。

頑張ってPHPを覚えてWebブラウザで情報共有できるようにしたのに、
「観にくい・使いにくい」等の理由で使われない事が無いように、チームメンバー閲覧用であっても、体裁を整える事は大事です

HTML/CSSはプログラミング言語ではありませんが、Webブラウザを使って管理・情報閲覧 をするならPHP・CGI と共に学習する事をオススメします。

Python

Pythonの特徴・長所として

  • 少ないコードでプログラムが書ける
  • ライブラリが豊富

などがよく挙げれます。

読みやすいコード・誰が書いても同じ様なコードになる、高度で便利なライブラリが豊富、統計処理などの計算が得意で機械学習をするなら …

みたいな事がよく書かれます。

確かにその通りで間違いないのですが、筆者がPythonをCGデザイナーが学ぶべきプログラミング言語だとする理由は、

プログラミング言語のなかでも学習が容易である事と、

MAYA
3dsMax
blender
CINEMA 4D


などの3DCGツールが、スクリプト言語としてPythonに対応してるから。

MAYAのスクリプトエディター
MAYAのスクリプトエディターでPythonを開いています。

元々MAYAには「MEL」、3dsMAXには「maxScript」という独自のスクリプト言語が備わっていますが、Pythonが扱える事により、外部ツールとの連携が容易になったり、Pythonの便利なライブラリを使えたり、C/C++の知識がなければ扱えなかったプラグインがPythonでも可能になったりと良い事尽くめなのですが、何よりも重要なのは、

Python一つを覚えたら、他のアプリケーションも扱える 

事にあります。

Pythonの豊富なライブラリ等を使い様々なアプリケーションを操作できるようになると

  • Excelのファイルを扱えるライブラリを使ってExcelのデータと、MAYAデータを連携させる。
  • PhotoshopをPythonで操作できるようにして、PhotoshopとMAYAを連携する。

なんて事も容易にできます。

CGデザインの業務に限りませんが、何かしらの操作は 繰り返し・反復 の場合が多く、その操作を自動化するだけで作業効率は劇的に改善され、そして人為的なミスも無くなります。

Pythonで簡単にスクリプトを書くだけで、それが出来てしまうのなら学習しないのは損。

プログラミング言語の中でも習得が比較的簡単、便利なライブラリが豊富で、ちょっとした面倒な作業も簡単なスクリプトで処理できる。

CGデザインの開発環境を効率的にする目的でプログラミングを学習したいならPythonをオススメします。

C#

CGデザイナーにオススメするプログラミング言語として選ぶべきか少し迷いましたが、学びやすさでチョイスしました。

3DCGに関わる所では、Unityが挙げられます。Unityの対応スクリプトがC#なので、Unityを扱うのであれば、C#を学習する意義は多いにあるでしょう。※javascriptも対応スクリプトですが、javascriptを知ってると覚えやすいかな?みたいな感じのUnity用javascriptと理解した方が正しいですね。

もちろん製品レベルのコードはプログラマーが担当するとしても、

  • スタッフが少人数の段階のプリプロダクション用データ作成
  • プログラマーに意図を説明する為のプロトタイプデータの作成

など開発にUnityを使っているならC#を習得しているとスムーズに話を進められます。

OSがWindowsならUnityに限らず使い所は多く、プロジェクトの開発環境自体を構築するのにも重宝します。

例として挙げると、筆者がPythonで書いたスクリプトツールをチームのメンバーに配る際、当初はPythonコードをexeファイルに変換して対処していたのですが、会社のセキュリティーツールの変更が原因なのかその方法が使えなくなり、Pythonで書いたスクリプトツールをC#で書き直して対応した事があります。

Python学習をオススメする筆者ですが、Python環境がないメンバーにスクリプトツール等を配布する場合も考慮するならC#も良い選択肢だと思います。

習得したい言語が学べるプログラミングスクール

macbookpro

プログラミングをプログラミングスクールで学ぶ際に必要な確認事項として、カリキュラムが望んだ内容なのかどうかがあります。

今回紹介したプログラミング言語は対応しているのか、習得したいプログラミング言語ではあっても内容が望んだのと違う、CGデザイナーとしてPythonの講座を取得したのに、学習内容が「機械学習/ディープ・ラーニング」だったなんて事が無いようにしっかり確認しておきたいです。

そこで共にオンラインプログラミングスクールではあるけれど、どの様な違いがあるのか、テックアカデミーと完全オンライン学習スタイルのUdemyでプログラミング言語の対応状況を確認してみようと思います。

TechAcademy [テックアカデミー]
Udemy

テックアカデミー プログラミングを基礎からしっかり学びたいなら

週2回のビデオチャットや、毎日のチャットサポート、現役プロのメンターから課題のレビューを無制限に受けられる等、マンツーマンのサポートで基礎からしっかり学習できます。

TechAcademy [テックアカデミー]

プログラミングやデザインなど沢山のコースがありますが、ユニークなのは「Python + AI」「Unity + iPhoneアプリ」のような複数のコースを受講できるお得な「セット割り」がある事。

そして通常の受講コースとは別に、1~2週間で基礎から学習できる「トレーニング」コースもあります。
HTML/CSSやPhotoshopは超短期間で習得する「トレーニング」コースです。

無料体験も行っているので、まずはこれから始めてみるのも良いと思います。
TechAcademy 無料体験

テックアカデミーの学習コース
javascriptWebデザインコース
オリジナルデザインのWebサイトを公開できるようになるコース
javascriptの他にHTML/CSSやPhotoshopを使い方などが学べます。
HTML/CSSHTML/CSSトレーニング
HTML/CSSを基礎から習得までを2週間で学べるコース
PHPオンラインブートキャンプ PHP/Laravelコース
短期間でWebサービスを開発・公開できるようになるコース
PHPのプログラミング技術の他にHTML/CSSなども学べます。
Python機械学習の基礎が学べる「Pythonコース」
短期間でPython・機械学習が学べるコース
Pythonを基礎から学び、機械学習プログラムの開発をめざします。
C# Unityコース
短期間でゲームアプリを開発出来るようになるコース
Unityの操作方法とゲームを動かす為のスクリプト、C#を学べます。

Udemy 空いた時間に自分のペースで学習するなら

Udemyは他のプログラミングスクールとは違い、購入した講座の動画を視聴して学習するスタイルです。

Udemy

学習動画は自分のペース・タイミングで何度でも視聴できるので、忙しくて時間がない人でも移動のタイミングや隙間時間などを使って学習できます。

Udemyで学習できるジャンルは多種多様でプログラミングもそのジャンル群の中の一つです。

そしてそれぞれのプログラミング言語に人気の講師・講座があり、好評な講座には「ベストセラー」「最高評価」などの印が表示されるので購入する際の参考になります。

評価が高いPythonの人気講座といえば「酒井潤」講師の

「現役シリコンバレーエンジニアが教えるPython3入門+応用+アメリカのシリコンバレー流コードスタイル」

でしょう。

Python3の入門から応用まで網羅したお得な内容でUdemyのベストセラー講座です。

筆者もこの講座を購入しましたが、Pythonコードの書き方だけでなくシリコンバレー仕込みの Pythonic(パイソニック)と称されるPythonらしいコードの記述方法や実務での所作まで学ぶ事ができ、とても満足な内容でした。

Udemyの評価の高い講座
javascript世界のアオキ (Akihiro Aoki)講師:
「JavaScriptをとことんやってみよう【超初心者から脱初心者へレベルアップ】【わかりやすさ重視】」
JavaScriptの基礎からはじまりWebAPI・Ajaxなどを習得する脱初心者まで導く講座
HTML/CSS村守康 講師:
「HTML5+CSS3  手を動かしてマスターする WEBデザイン/プログラミング動画講座」
html5とCSS3を使ってWEBサイトを制作するために必要なことを学ぶことに特化した講座
PHP村山雅彦 講師:
「基礎だけ学ぶ PHPプログラミング講座」
PHPプログラミングの基礎を徹底的に学習できます。
Python酒井純 講師:
「現役シリコンバレーエンジニアが教えるPython3入門+応用+アメリカのシリコンバレー流コードスタイル」
C#亀田健司 講師:
「一週間で身につくC#言語」
Unityでのゲーム開発やWebアプリなどに必要なC#プログラミングの基礎を学べます

Udemyはネットショッピングをする感覚で学習したい講座を購入して、好きなペース・タイミングで学習するスタイルなので、「知りたい」から「学習する」までのハードルが超低いオンライン学習システムです。

登録自体は無料で、購入した講座も30日以内なら返却可能なので、受講内容が望んだ内容じゃなかったとしても損はしないシステムなのが秀逸。

最後に:習得したいならプログラミングスクールで学ぶのが効率的

CGデザインの業務の中には、反復の操作が非常に多くあります。

例えば「ファイルを別のフォルダに移動する」
それだけの操作を一日の中で何回行っているかを数えたら

その時間をクリエイティブの時間に使いたい

と思うでしょう。

たったソレだけの事を簡単なスクリプトで自動化するだけで、開発環境は劇的に変わります。


今はプログラミング学習の情報が豊富で、独学で勉強する人も多いでしょう。

ただ、1から独学で始めるのは効率が悪く、続かない人も多いのではないかと思います。

プログラミング学習でつまずくのは、基礎の基礎 の段階が殆どでしょう。

初めて聞く単語がいろいろ出て来て意味がわからないし、
何より「つまらない」。

言語の学習で例えるなら

英語は独学で学習できるかもしれないけど

イタリア語、フランス語、ポルトガル語、タガログ語、

を1から独学なんて、どこから勉強したら良いの?

少なくとも英語は義務教育で習っているので基礎の基礎はクリアしてるけど、「ポルトガル語」「タガログ語」は文字を見ただけだと発音のしかたすら検討もつきません。

同じ事がプログラミング学習にも言えます。

プログラミングの基礎の基礎だけでもプログラミングスクールで学んで習得してしまえば、その後にする独学の学習効果も全然違うはず。

今回取り上げた2つのプログラミングスクールは、どちらも完全オンラインで完結するスタイルなので、物理的に教室等に通う必要がありません。

自分のペースに合わせて、短期間で効率的に学べる学習システムです。

TechAcademy [テックアカデミー]
Udemy

CGの世界も益々情報量は増大し複雑化しています。
効率的な開発環境の為にもプログラミング学習をしてみませんか?


Twitter Facebook Pocket LINE はてブ

おすすめの関連記事
コチラの記事も読まれています
あわせてよく読まれている記事