私たちおさかな日和は、「北海道の魚介類の魅力を伝える」をテーマに発足し、活動を続けてきました。今回、デジタル水族館をつくるという非常に大きなテーマをSECさんからいただきました。
メンバーの中には今回メインで使用しているUnityを扱えるメンバーが数名しかいない中で、日々いろいろな壁につまづきながらも学び、少しずつ形にしてきました。私たちはこの挑戦に大きな意義を感じています。
まだまだ拙いプロダクトに思われるかもしれませんが、「水産の街・函館」を地域の子どもたちが自慢に思えるきっかけを与えられる可能性があると信じています。
これからも、私たちの挑戦を見守っていただけると幸いです。
— おさかな日和

子どもたちの夢が泳ぐ、
対話と学びの巨大デジタル水族館。
デジタル水族館で 教育 × 楽しさ × 美しさ を提供する
おさかな日和の新プロジェクト
発見と興味喚起
カメラが子どもを認識し、ディスプレイ側からやさしく話しかけることで、自然に足を止めてもらう導線をつくります。
AIとの対話
「将来の夢は何?」といった問いかけから会話を始め、子どもの言葉を引き出して体験の中心に据えます。
夢の放流体験
ヒアリングした夢を魚に託し、巨大スクリーンの水槽へ放流するアニメーションで、記憶に残る演出を実現します。
タッチして学ぶ
水槽内を泳ぐ魚に直接触れることで、その魚の生態や情報を学べる、遊びと学びがつながる体験にします。
Mission
「おもしろい!」で海を大好きに。
Vision
楽しく学べる「海の教育ゲーム」をつくる。
Value
アーキテクチャの完全分離
認識や制御を担うPythonバックエンドと、描画や演出を担うUnityフロントエンドを分離しています。
リアルタイム通信
PythonとUnityをWebSocketで接続し、双方向で状態をやり取りします。
高度なAI技術
Python側で人物検出・追跡、Whisperを使った音声認識、会話制御、状態管理を行います。
大規模描画とインタラクション
Unity側ではBoidsアルゴリズムを用い、数千から1万匹規模の魚群を描画します。
地域性のあるコンテンツ
5〜10種の地域魚種を優先して採用し、土地の魅力を学びに変えます。
front-end
back-end
dev tools
水槽の魚は「Boids(ボイド)」というアルゴリズムで群れを表現しています。全体を指示するリーダーはいません。1匹1匹が近くの仲間だけを見て、次の3つのシンプルなルールに従うだけで、自然でリアルな群れの動きが生まれます。
Separation
分離
仲間に近づきすぎたら離れる。ぶつからないための距離を保ちます。
Alignment
整列
近くの仲間と泳ぐ向きをそろえ、同じ方向へ進みます。
Cohesion
結合
群れの中心(仲間の平均位置)へ向かって集まります。
実際の水槽では、この3ルールに加えて「水槽の壁からの反発」や「最低遊泳速度」なども組み合わせ、より自然な泳ぎに調整しています。
おさかな日和
開発チーム
株式会社SEC
協力・提供
デジタル水族館をベースに、子供たちが体験型で楽しめるミニゲームを数年間かけて搭載予定です。
初年度:絵魚(えぎょ)
絵魚をモチーフにしたコンテンツを開発中です。
海や生き物に「まだ興味を持っていない」子供たち。触れる・育てるといった体験を通じて、海を「自分ごと」として好きになることを目指します。
小学生とその家族
「これだけの数の魚を滑らかに動かすのは想像以上に大変で、Boidsのパラメータ調整に何度もつまずきました。描画負荷と自然な動きの両立を、手を動かしながら学べました。」
「PythonとUnityをWebSocketでつなぐ部分は最初まったく動かず苦労しました。非同期処理やデータの受け渡しを、エラーと向き合いながら理解できたのが大きな収穫です。」
「音声認識や人物検出は、名前は知っていても触ったことのない技術ばかりでした。動くものに組み込んで初めて、実運用の難しさと面白さが分かりました。」
「認識から描画まで役割を分けて連携させる構成そのものが勉強になりました。一人では作れないものを、チームで少しずつ形にする経験ができました。」
子どもたちの夢を魚に乗せて泳がせることで、
遊びながら地域の魚と海のことを学べる、
対話型の巨大デジタル水族館を目指します。