ここ2ヶ月ほど、あまりスクリプトの勉強をやる気力がない。
家庭でも仕事でも忙しく、時として明け方近くまで仕事が続いたりしたのでやる時間がなかったというのもあるが、もし本当にやる気があればたとえ一日10分でも時間を作ってやっていたはずなので、単なるいいわけにしかならない。
まったくサボっていたわけではなく、十分に時間があるときには、チュートリアルを見たりしていた。
しかしながら、なにか漠然とした壁を感じ、気力を高めることができない。
何を感じているのか、明確にしたいと思い、以前のエントリ「スクリプティング学習における第二の壁」を読み直して、考えてみた。
第一の壁は、自分的には突破したと思っている。
しかしながら、現時点では第二の壁が立ちはだかっていると感じる。
第一の壁ほど大きくはないのだが、第一の壁と違って漠然としていてつかみ所がない感じがする。
シニアに課題をもらっている間は、かなりやる気がでたのだが、新たな課題も用意されておらずw
自分で道を見つけるしかない状態だ。
その道を見つけるために、チュートリアルを読んだり、他の人の書いたスクリプトを解析しようとしたが、いずれも目的のずれ、現時点の段階の低さから来る理解力不足を感じてパットした解決策にはなっていなかった。
第一の壁、以前は、このようなときに、いろいろなコマンドを試しながら最低限必要なものを見つけて壁を崩すことができた。
現段階では、アルゴリズムで遊ぶ必要があるのではないかと思う。
数学で言えば、足し算、引き算を終え、かけ算、割り算をする段階で、方程式は早すぎる。
しかし最低限必要なものが、経験のない初心者でしかも自習となれば全く見えてこない。
もしかしたら、自分の専門分野(エフェクト)に関連するスクリプトに絞ってやればいいのかもと思ったが、それも的を得ない。
部分的に自分の段階よりもはるかに高度なことをしらなくていはいけない部分が出てくる。
また覚えなくてはいけないこと(ノード・アトリビュート、コマンド)が非常に多い。
また、ここ二ヶ月ほどは、いろいろなチュートリアルを見たり、人の書いたスクリプトを読み解こうとしたが、やはり目的が明確でなくては、ただ漠然とやることになり、集中力に欠ける。
これでは、スパルタ教育的にスキルをアップしようとする、既存のやり方と変わりない。
もっと基本的な部分のアルゴリズム。
たとえば、パーティクルをならべる。そこへオブジェクトを配置するといった一つの手順。
こういった応用がきく基本のスクリプトを現時点ではたくさん練習した方がいいように思う。
しかしながら、それらがどんなものであるのか、見えてこない。
ある程度、スクリプトの経験がある人でないと、幅広く使える基本且つ普遍的なアルゴリズムを抽出して課題とするのはむずかしい。
しかし、この段階を、スムースに通り抜けるにはこの基本となるアルゴリズムをいくつか練習し習得する必要があるのも事実。
独学で、しかも初心者がその課題を自分でみつける手段をみつける必要がある。
--------------------
どうすればよいのか?!
いろいろなスクリプトの構造を解析、想像して、そこにある共通項を見つけ出し、それを異なる方法で同じような結果を出す物をためしてみるのがよいのか?
共通する普遍的アルゴリズムが、どういった機能や目的を持った物かを見つけ、他のアルゴリズムに置き換えることができるのかといったことを検討することは有効な気がする。
この段階では、自習よりも本当に経験者のアドバイス、もしくは同レベルで同じような勉強をしている人が必要だなと特に感じる。
これを超えれば、自分でいろいろと目的に合わせたスクリプトを苦労しながらでも楽しみながら、作れるようになるのだろう。
--------------------
こうして考えを書き出してみると、なんとも子供の言語教育ににている。
ボキャブラリが先か文法が先か?悩むところだが。
あらゆる事が同時に起きてくる。
これはすべての言語学習に共通することなのだろう。
プログラミング言語という人工言語でもそれは例外ではない。
ボキャブラリを増やす必要はある。
単語を理解するときは、その概念をしっかりと把握する必要がある。
そして、文法に関しても簡単な絵本からはじめて文章をならっていく。
当然わからない単語が含まれていることもある。
しかし単語単体の学習と併せて、文章を学習するときに出てきた単語も明確にしていくことでボキャブラリを増加させつつ、それを文章と関連づけ、かつどのような状況で使うべきかを理解することができる。
よくある大人の学習では、文章や単語がどのような状況でどのように使われるのかをあまり重視せず、単語と文章の学習を別々にしているような気がする。
(自分だけかもしれないが。。。。)
--------------------
たとえば、
パーティクルとオブジェクトの位置、回転情報の関連づけ。
オブジェクトの配置。
サーフェイス上にオブジェクトを配置し、サーフェイスにくっついたままになる。
時間の経過に従った変化。
距離にしたがった変化
0 件のコメント:
コメントを投稿