【はじプロ】位置を角度にノードンを攻略:つまづきやすいポイントを解説してみた

【はじプロ】つまづきやすいポイントを解説してみた(位置を角度にノードンを攻略) はじプロ解説
この記事はこんな人に読んでもらいたい
  • 位置を角度にノードンをふと見つけてしまったあなた
  • 位置を角度にノードンをどのように使えるかイメージできていないあなた
この記事を読めばこんなことがわかる
  • 位置を角度にノードンはがれんけつされたモノの位置を出力する役割
  • 角度を特定するには、3つの要素が必要
    • 座標軸
    • 基準点
    • モノの座標

お疲れ様です。YUmarunosuke(ゆうまるのすけ@YUmaru16061307)です。

今回は、「ナビつき!つくってわかる はじめてゲームプログラミング」 (はじプロ)の位置を角度にノードンの解説をします。

以前、【はじプロ】つまづきやすいポイントを解説してみた(位置センサーノードンを攻略)にて、
位置センサーノードンの解説をしました。

そして皆さん、フリープログラミングを触っていると、
「位置を角度に」というノードンを見たことはありませんか?

「位置を角度に」?どう使うんだ・・・?

と思われる方も多いのではないでしょうか?

位置を角度にノードンは、ナビつきレッスンでは説明されない高度なノードンです。

是非、この記事をご覧いただき、
位置を角度にノードンの活用法を具体的に想像してみてください。

しっかり一緒に学んでいきましょう。

位置を角度にノードンの役割とは?2つのモノの位置から角度を求める役割です

位置を角度にノードンがれんけつされたモノの位置を出力する役割を持っています。

モノの角度ってどうやって決まるのかな?

角度とは ある基準軸からの差を数値化したもの です。

まずは、モノの角度が決まる仕組みを解説します。

モノの角度を特定するために必要な3つの要素

角度を特定するには、3つの要素が必要です。

モノの角度を特定するために必要な3つの要素
  • 基準点
  • 基準軸
  • 基準点からのモノの位置

身の回りで角度をイメージしやすいモノとして、時計があります。

時計を例にとり、短針と長針の間の角度を求めたい
というシチュエーションで考えています。

角度を特定する要素1:基準点

【はじプロ】つまづきやすいポイントを解説してみた(位置センサーノードンを攻略)にて、
位置を特定する要素として、基準「」があることを説明しました。

  • 位置センサーノードンがれんけつされたモノの位置を出力する役割
  • 位置を特定するには、2つの要素が必要
    • 座標軸
    • 基準点

時計でいうと、長針・短針・秒針がつながっているところですね。

角度を求める手順において、回転する中心=基準点となります。

基準点とは、時計でいうと長針・短針・秒針がつながっているところ

角度を特定する要素2:基準軸

角度を測るためのスタート地点・ゴール地点です。

基準点と、次に説明するモノの座標をつなげることで、
基準軸を特定することができます。

角度を特定する要素3:基準点からのモノの座標

基準軸を描くには、基準点と評価点(長針・短針の先)を線でつないでやればよいです。

基準点は先程決めましたので、あとは長針・短針の先の座標がわかれば基準軸を描くことができます。

あとは、短針の基準軸から長針の基準軸が作り出す角度、
つまり、ある基準軸(短針の基準軸)からの差を求めると、
今回知りたい短針と長針の間の角度になります。

位置は 点(座標)と点 から求められるものですが、
角度は 線(軸)と線 から求められるものであることを理解しておきましょう。

モノの角度が決まる仕組み まとめ
  • 角度とは『ある基準軸からの差を数値化したもの』
  • モノの角度を特定するために必要な3つの要素
    1. 基準点
    2. 基準軸
    3. 基準点からのモノの位置

位置を角度にノードンを使ったプログラムの実演

位置を角度にノードンの解説を、実際のノードンガレージ画面を使って実演してみます。

下のようなプログラムを作ってみました。

プログラムの説明
  1. ヒトノードンの座標を位置センサーノードンが取得
  2. 位置センサーノードンが取得したX座標、Z座標を、位置を角度にノードンへ渡す
    • X軸=横方向
    • Z軸=縦方向
  3. 位置を角度にノードンが受け取った座標情報から角度を求めて、数つきモノノードンに出力

さて、先程説明した『モノの角度が決まる仕組み』に当てはめて考えてみましょう。

モノの角度が決まる仕組みに当てはめてみると・・・
  • 角度とは『ある基準軸からの差を数値化したもの』
    • [回答]数つきモノノードンが示す角度=ワールドの原点を中心とした、ワールドのX座標軸からの差
  • モノの角度を特定するために必要な3つの要素
    1. 基準点
      • [回答]ワールドの原点
    2. 基準軸
      • [回答]ワールドのX軸
      • [回答]ワールド原点~ヒトノードンに引いた軸
    3. 基準点からのモノの位置
      • [回答]ヒトノードンにれんけつした位置センサーノードンが取得した座標

これらの処理を、位置を角度にノードンを置いてつなげるだけでやってくれます。

実際に動かしてみると、下の動画のとおりになります。

位置を角度にノードンの解説まとめ

今回は、「ナビつき!つくってわかる はじめてゲームプログラミング」 (はじプロ)の位置を角度にノードンの解説をしました。

位置を角度にノードンの解説 まとめ
  • 入力された座標情報から、基準軸からの角度を求めて出力する役割
  • 角度とは『ある基準軸からの差を数値化したもの』
  • モノの角度を特定するために必要な3つの要素
    1. 基準点
    2. 基準軸
    3. 基準点からのモノの位置

前回の記事、
【はじプロ】つまづきやすいポイントを解説してみた(位置センサーノードンを攻略)
でも書きましたが、位置・角度・座標の考え方ってとてもとっつきにくいものです。

何故なら、この位置・角度・座標の考え方は、
数学における『ベクトル』や『正規座標・極座標』という概念を使っているからです。

言葉を聞くと、拒否反応・アレルギー等を示す方が多いでしょう。

しかし、ノードンをつなげていく、というとても簡単な操作に落とし込むことで、
お子さんでも簡単に位置・角度・座標を使いこなしていける。

つまり、
『ベクトル』や『正規座標・極座標』という概念を(感覚的であれ)理解する
ということにつながります。

ベクトルなんか習って何の役に立つんだろう?

と思った親御さんや指導者の方も多いのではないでしょうか?

今はゲームプログラミングに活用できていますし、音や振動の分析にも必須の知識です。
(理系の職業でしか使わないのでは?という疑問についてはごもっともです。)

楽しいゲームプログラミングを通じて、
学校で学ぶ辛い勉強も、必ず世の中で役に立つことがあるんだよ、
ということを、お子さんと一緒に感じていっていただけたらと思います。

では、次の記事までごきげんよう。

コメント

はじプロから次のステップへ
詳細をチェック!
はじプロから次のステップへ
詳細をチェック!
タイトルとURLをコピーしました