技術情報を探すときには原典(一次ソース)が大事です【ゲーム作り】
このブログではUnityに関する知識やTipsを発信していますが、だんだんと多くの人が見てくれるようになってきて感謝しております。
ブログを書くときにはなるべく間違ったことを言わないようにUnityのマニュアルやスクリプトリファレンスを参考にしながら実際に動かしてみてからまとめるようにしています。特にサンプルコードを載せる場合は実行してテストしてからでないと恐ろしくて載せられません(笑)
こうしたブログなどの情報は「二次ソース」という扱いです。ここから着想を得るという意味では有用ですが、やはりちゃんと理解するなら「一次ソース」をあたるのがベスト。
二次ソースには一次ソース(原典)に対する解釈が含まれているため、必ずしも一次ソースの情報を余すところなく取り入れているわけではないんですよね。まずは一次ソース(原典)をあたるようにすると、情報を取り入れていく核のようなものが出来上がっていきます。
原典(一次ソース)が大事
私は元々理系の研究室にいました。レーザーを使った原子分光を研究していて、実験をするのと同時に論文をしこたま読んでいました。自分の通っていた大学の図書館だけではなく、別の大学の図書館に通って論文を複写させてもらって読みあさっていたりもして、今考えれば真面目にやっていたように見えますね(友達と飲み歩いていた記憶から目をそらしつつ)
このとき先輩から教わったのが「参考文献の参考文献までチェックすべし」という言葉でした。
自分が参考とした書籍や論文も、その情報の出どころとなる書籍や論文があるわけで、どんな情報をもとに書かれているのかを知ることに意味があります。理系の場合だと実験結果などを引用することが多いですが、文系だと解釈を付け加えて議論を発展させていくことが多いようですね(文系の友達から聞きました)
二次ソースは、一次ソース(原典)に対する解釈が含まれています。解釈が含まれずに一次ソースの情報そのままだと単なる転載になってしまうので、一次ソースを見た人の考えを表した解釈は大切な情報です。
例えばUnityの使い方の一次ソース
例えばUnityのゲーム開発のテクニックなどを記載した技術ブログは多々あります。以前おすすめを絞りに絞って並べた記事も書いたのでよかったらこちらもご覧ください。(長くなってもいいから追加しちゃおうかなーとも思ってます)
こうした技術ブログでは、著者の経験に基づいた解釈が含まれています。その解釈が生まれた原典をあたることで、同じ原典を見たとしても、あなた独自のテクニックを生み出すことができます。
というのも、あなたの経験はあなただけのものですから、解釈も異なってきますからね。
Unityでゲーム開発をしている際、「Unityの使い方」という観点ではUnityが公式で出しているドキュメントが原典になります。
その原典をもとに、「こうした使い方ができるのでは」「こういうのもいいのでは」と独自の解釈を加えて情報を発信しているのが本やブログだったりします。
さらに視点を広げる
「ゲーム開発」という点まで視点を広げると、Unityのマニュアルは原典という扱いではなく、ゲーム開発のベストプラクティスを解釈した二次ソースという扱いになります。
ベストプラクティスとは「こうやったらうまくいったよ!」という情報をまとめたもので、いい感じにゲームを作っていける考え方をソフトウェアの機能として盛り込んだのがUnityのゲームエンジンです。それを解説しているマニュアルなので、ベストプラクティスに対するUnity社の解釈をもとに製品を作っているわけです。
このように、視点を変えると一次ソースだと思っていたものでも、さらに元になった情報があるかもしれません。
大事なのは、ある情報に触れたときに「この情報のもとになったものは何か?」という視点を持つことです。
情報の切り分け
原典となる情報、解釈された情報を切り分けることで、「自分だったらこうできるかも」と自分でテクニックを生み出すための力になります。原点となる情報はルール、解釈された情報は実例とも言えるかもしれません。ルールを知っていれば、いくらでも実例を生み出すことができます。
人間が法則性を理解するためには、ルールと実例が必要です。例えば「=で結んだ左辺と右辺は等しい」というルールがあったとします。このルールだけ見てもなんのこっちゃとなりますが、例として
- 1 + 1 = 2
- 1 + 3 = 4
- 2 + 4 = 6
という式の例を挙げていくことで,実例としてルールに当てはめていくことができます。
技術ブログの情報はこの実例にあたります。Unityのマニュアル、Unityのソフトウェアを使ってできることをルールとして、そこからブログ著者の経験を元に実例を生み出しているんですね。
このブログでは、技術ブログの情報は知識を深掘りするために使い、知識体系全体を知るためにはマニュアル、本、チュートリアルなどを活用しよう、とお伝えしていますが、ルールと実例の考え方に基づいたものだったりします。
情報は使う場面に合わせる
マニュアル、本、チュートリアル、技術ブログなど、ゲーム作りの知識を得るための手段はたくさんあります。大切なのは、そその特性に合わせて今の自分に必要なものを取り入れることです。
私は風来のシレンが大好きなので「使えるものは何でも使う」というスタンスです。なのでついつい「全部使えばいいじゃん?」なんて無茶なことをいうこともありますが、「今自分はルールと実例のどちらを必要としているのか」と問いかけて情報を探すようにしています。
ゲーム作り全体のことを知りたいならUnityのマニュアルを全体的に眺めたりしますし、なんなら普段使っているのとは別のゲームエンジンですがUnreal Engine 4のマニュアルを眺めることもあります。ゲーム開発というくくりでどんな技術があるかを知ることで、自分の発想が広がっていきますからね。
そうした発想を形にしていく上で、サンプルコードなどを参照したいときに技術ブログを参考にしています。まず書かれたコードが動く環境を用意して、手打ちで写経してコードの内容を理解しながら動かしてみて、そこから自分のやりたいことを実現するコードに変換していく、という流れです。
一次ソースだから良い、二次ソースだから悪いということは全くなく、使う場面に合わせて情報を取り入れる経路を選択することで学習効果を高めることができます。
まとめ
今の自分はルールと実例のどちらを知る必要があるのか、それに合わせて情報を取り入れる経路を選択しましょう。ルールを知りたいなら一次ソース(原典)をあたるのが大切ですし、そのルールを使った実例、応用例を知りたいのなら二次ソースを探してみると自分が実現したいことの手がかりになるはずです。
技術習得という意味では一次ソースの情報は本当に大切なので、意識して原典を探すようにしてみると強くなれます。
ゲーム開発の攻略チャートを作りました!
-
前の記事
技術を習得する時には俯瞰的な視点が持てると強い【ゲーム作り】 2020.09.19
-
次の記事
【Unity】コルーチンの待ち時間の考え方【フレームで待つか時間で待つか】 2020.09.21
コメントを書く