FUnity v0.5.0 をリリースしました
自作の Scratch 風教育用 Unity パッケージ「FUnity」のバージョン v0.5.0 をリリースしました。
このバージョンでは、ブロックモードの基本的な遊び心地に関わる部分を中心に調整しつつ、ブロック機能も少しずつ充実してきました。この記事では、v0.5.0 での主な変更点と、現在の進捗、今後の方針についてまとめておきます。
v0.5.0 の主な変更点
「このスプライトが押されたとき」ブロックの追加
Scratch の「イベント」カテゴリにある、
- このスプライトが押されたとき
に相当する独自 Unit を追加しました。
これにより、ブロックモードでも「キャラをクリックしたらしゃべる」「クリックしたら動き出す」などのインタラクションを簡単に作れるようになりました。ビジュアルスクリプティング(Visual Scripting)から、他のイベントブロックと同じ感覚で使えます。
Actor の向きと回転の挙動を整理
Actor の「移動する向き」と「見た目の回転」が、できるだけ Scratch に近い感覚になるように挙動を整理しました。
- 移動方向は
DirectionDeg - 見た目の回転は
RotationDeg
という内部設計は維持しつつ、次のような調整を行っています。
- SetDirection() を呼んだとき、
RotationStyle がAllAroundの Actor については、見た目の回転角 (RotationDeg) も同じ角度に同期するように変更しました。 - これにより、「○度に向ける」的なブロックで向きを変えると、その方向を向いて移動し、見た目も同じ向きに回転するという、Scratch に近い挙動になります。
- 一方で、
LeftRight/DontRotateの回転スタイルは、これまで通り「左右反転だけ」「回転なし」を維持します。
また、Actor の初期向きに関しても、「見た目は右向きなのに、移動すると上に進んでしまう」といった違和感を解消し、デフォルトで右方向に移動する形に揃えました。
ブロックモードと unityroom モードの違いをドキュメント化
FUnity には、
- ブロックモード(Scratch モード)
- unityroom モード
という 2 つの制作モードがありますが、これまで「違い」がまとまったドキュメントがありませんでした。
v0.5.0 では、
- ブロックモードと unityroom モードの用途・ステージサイズ・UI レイアウトの違い
- どちらを選ぶと良いかの簡単なガイド
を Docs/Modes/README.md に追記し、一枚で比較できるように整理しました。
特に、ブロックモードで扱う角度の仕様については、
- 0 = 上
- 90 = 右
- 180 = 下
- 270 = 左
という Scratch に近いルールをドキュメントにも明記し、実装と説明を一致させています。
細かいバグ修正・調整
その他、v0.5.0 では次のような細かい改善も行いました。
- Actor の初期向きが上方向になってしまい、MoveSteps で上に進んでしまうケースを修正。
- ActorPresenter と ActorPresenterAdapter 間の「向き」同期のタイミングを見直し、初期状態で意図しない向きに上書きされないように改善。
- モード関連の説明ドキュメントの文言修正(角度の記述ミスの修正など)。
ブロック実装の進捗
v0.5.0 時点で、Scratch 風のブロックはだいぶ揃ってきました。
特に、
- 「動き」ブロック
- 「見た目」ブロック(吹き出しなど)
- 「イベント」ブロック(緑の旗、メッセージ、スプライトクリックなど)
- 「調べる」ブロック(変数・マウス位置・当たり判定系)
- 「音」ブロック(音を鳴らす、音量・ピッチ・パンの効果など)
といったところは、FUnity 独自の Unit としてかなり実装が進んでいます。
残っているのは、
- 「背景」関連のブロック
- 「色に触れた」関連のブロック
あたりがメインになってきました。
背景ブロックが揃うと、ステージのシーン切り替えや、背景による演出がしやすくなります。 また、「色に触れた」関連のブロックは、障害物判定やゴール判定などの表現力が一気に上がるので、ゲーム性の高い作品を作るときのポイントになりそうです。
今後の方針:マイペースで育てていく
FUnity は、
- 自分の Unity スキルアップ
- 子どもたちのプログラミング学習の場づくり
- CoderDojo での教材・活動の幅を広げる
といった目的で、少しずつ育てている個人プロジェクトです。
v0.5.0 で、ブロック周りはだいぶ形になってきましたが、まだまだやりたいことはたくさんあります。
- 背景ブロック・色系ブロックの実装
- チュートリアル用のサンプルプロジェクトの整備
- unityroom モード向けのテンプレートゲーム
- ドキュメント・日本語リファレンスの充実
とはいえ、あまり急ぎすぎるとしんどくなってしまうので、
「引き続きマイペースで、でも着実に」 を合言葉に、1 つずつ積み上げていきたいと思っています。
おわりに
というわけで、今回は FUnity v0.5.0 リリースのお知らせでした。
ブロックモードの角度や向きの扱いがだいぶ素直になってきたので、 今後はもっと「ブロックで遊んでいて楽しい部分」を増やしていけたらいいなと思っています。
FUnity の開発ログや使い方は、今後もブログで少しずつ紹介していきます。 興味のある方は、ぜひ気長にお付き合いいただければうれしいです。

コメント