見出し画像

[はじめてゲームプログラミング] あたまノードンを使用しスコアを表示させる

任天堂Switchの「ナビつき! つくってわかる はじめてゲームプログラミング」
あたまノードンを使用したスコア表示を作り方についての説明です。

あたまノードンは、スコア表示や残り時間など、特定のエリアに固定で何かを表示したい時に使用します。


あたまノードンを軸に、複数の直方体を連結させ、固定エリアを表示

スコアエリアの表示方法は、あたまノードンを軸に、複数の見えない直方体を連結させて、固定エリア(スコアエリア)を表示させていく仕組みとなりますが、この時、連結する面がポイントとなってきますので連結の仕方も合わせて説明していきます。

あたまノードンを使用したスコアエリアの実装イメージ

あたまノードンの設定方法は直感的にわかりにくいのですが、イメージとしては以下図のようにプログラミングしていきます。

作り方

連結の仕方をおさらいしながらスコアエリアの作り方を整理していきます。

1.あたまノードンの背面に見えない直方体を連結していく

最初に、あたまノードンと青色の直方体(縦長)を連結させます。

背面、前面に連結する場合は、Z-(前面)、Z+(背面)で連結

あたまノードンの背面に直方体を連結していきたいので、あたまノードンの背面(Z+)に、青色の直方体の前面(Z-)をくっつけるイメージです。

Zの連結は、正面から見ると連結イメージが付きにくいので、横から見ると連結イメージが付きやすいです。以下図の通りとなります。

あたまノードン

あたまノードンはどのエリアに配置しても固定で中央に配置されるイメージ

青色の直方体

青色の直方体とあたまノードンを連結する

<連結面>
じぶんの連結面 Z- (前面):青色の直方体
連結先の面 Z+(背面):あたまノードン

<ふるまい >
みえる:OFF
当たる:OFF
動く:ON 
こわれる:OFF
こわす:OFF

<おおきさ>
X:1.00m
Y:3.00m
Z:1.00m

縦長の直方体を作りたいのでYを大きめに設定します。
大きさについては実際のゲーム画面を見ながら微調整していきますので、上記のサイズは変更してOKです。

位置を調整する時には、ふるまい「みえる」にすると確認しやすい

表示位置を確認する上で、ふるまい「みえる」はONにしておいた方が確認しやすいので、スコアの表示までができたら、最後にふるまい「みえる」OFFにした方が良いかと思います。

ふるまい「動く」をOFFにしてしまうと表示が変になってしまうので、表示が上手くいかない場合はこの辺りを見直してみましょう。 

連結のイメージはサイズの異なる直方体を用意し、いろいろな連結面で試してみると慣れてくるかと思います。

2.青色の直方体(縦長)と紫色の直方体(横長)を連結する

上面、下面に連結する場合は、Y+(上面)、Y-(下面)で連結

青色の直方体(縦長)と紫色の直方体(横長)を連結したいので、連結する面は、Y+(上面)、Y-(下面)で連結していきます。

紫色の直方体

紫色の直方体と青色の直方体を連結する

<連結面>
じぶんの連結面 Y- (下面):紫色の直方体(横長)
連結先の面 Y+(上面):青色の直方体(縦長)

紫色の直方体(横長)の下面に、青色の直方体(縦長)の上面を引っ付けるようなイメージです。

<ふるまい >
みえる:OFF
当たる:OFF
動く:ON 
こわれる:OFF
こわす:OFF

<おおきさ>
X:5.00m
Y:0.50m
Z:1.00m

横長の直方体を作りたいのでXを大きめに設定します。
大きさについては実際のゲーム画面を見ながら微調整していきますので、上記のサイズは変更してOKです。

3.紫色の直方体(横長)と緑色の数つきモノノードン(スコア用)を連結する

左面、右面に連結する場合は、X-(左面)、X+(右面)で連結

紫色の直方体(横長)と緑色の直方体(スコア用)を連結したいので、連結する面は、X-(左面)、X+(右面)で連結していきます。

数つきモノノードン

数つきモノノードンと紫色の直方体を連結する

<連結面>
じぶんの連結面 X+(右面):紫色の直方体(横長)
連結先の面 X-(左面):青色の直方体(縦長)

<ふるまい >
みえる:OFF
当たる:OFF
動く:ON 
こわれる:OFF
こわす:OFF

<表示方向>
Z-(正面手前)

<おおきさ>
X:1.50m
Y:0.80m
Z:0.80m

大きさについては実際のゲーム画面を見ながら微調整していきますので、上記のサイズは変更してOKです。

おわりに

数つきモノノードンに表示する処理については割愛しますが、以上でスコアエリアの作成については完了です!

最後まで読んで頂きありがとうございました!
プログラミングの参考になれば嬉しいです!

この記事が気に入ったらサポートをしてみませんか?