Tips128

スリットアニメーション
出典: フリー百科事典『ウィキペディア(Wikipedia)』

新しいスリットアニメーション制作手法の提案
謝 維亜

ゲームサイエンス (渡辺研)
卒論集など


『逆引き大全』をテキストにお気楽な勉強を進めていても飽きてくる。 
https://scratch.mit.edu/ の注目のプロジェクトにスリットアニメーションが挙げられていたので、中を見た。
フローチャートでコマンドを紐づけして、整理しないと、なんでそのコマンドが必要なのかがなかなか直観的にはわからない。

フローチャートを書く能力はプログラマーにとって必須スキルであり、優秀なプログラマーになるための第一歩です。なぜなら、フローチャートの有無、もしくはフローチャートの内容次第で出来上がるプログラムの品質に大きな差が出るためです。だからこそ、若手プログラマーやSE教育の場で必ず登場するのです。
若手プログラマー保存版!フローチャート徹底解説と作成カンニングペーパー  2016.11.08
IT Koala Navi価値ある情報でIT経営をサポートするとことん優しいITメディア 記事カテゴリー・探す 導入事例検索サイト

なるほど。
フローチャートで整理してなお、言語化してみる。
期間を示す「During」「While」「For」の違い
Hapa英会話

👆を若干の参考にしつつ
『マウスをクリックしたら、スプライトが左右反転する』を実現したいとき
とりあえず、段差は順序を表わし(付番済み。)、順序の上の文は下の文を制御する。副詞も急ぎ適当。二重ループを用いる。(順序と段差を利用すると、)チャート記号の「ループ」と「条件分岐」を「条件分岐」(ひとつ)に整理できるような気がする。

 1 while〈〉               {roop1}
  2 till〈マウスをクリック〉                      {roop2}
   3 [左右反転する]

これをSCRATCHで書くと

 1[₍90₎度に向ける]              【動き】
 1[回転方法を₍左右のみ₎にする]      【動き】
 1 ずっと               【制御】
  2 〈マウスが押された〉まで待つ   【制御】
   3 [(₍向き₎+₍180₎)度に向ける]     【動き】【演算】【動き】
   3 [₍0.1₎秒待つ]         【制御】

になるみたい。
このとき、最期の[0.1秒待つ]を入れておかないと、クリックの仕方によってはマシンが「(クリックを)連続して押している」と判断するので、0.1秒程度の制動時間を見込んで置くと、対応がスムーズになってうまくゆくよう。どこに置いても大丈夫だけれど、この位置が一番安定しているように思う。
フローチャートを知るだけで(ごく簡単な動作でも)見通しが随分よくなる。
二重ループは複文っぽく、場合分け(case文)は重文っぽい。

markovproperty.hatenadiary.com


何を勉強するのも大変だ