仮眠プログラマーのはきだめ部屋
|
このホームページではサークル「toropippi」の自作ゲームに関する情報を公開しています。他にも昔作ったプラグインの公開もしています。
スーパーフリュードランダー/SuperFluidLanderゲーム概要流体ゲー、スーパーフリュードランダーは宇宙船を操作してアイテム(レアアース)を回収し、ゴールを目指していく2Dアクションゲームです。前作のフリュードランダーの続編。LunarLander(ルナランダー)を大元のベースにしているため独特なラジコン操作や慣性があり操作になれないうちは難しいでしょう。しかし流体の見た目に関しては今までにないレベルで綺麗になっています。また、流体には温度の概念があり、高温の炎で壁を壊して前に進むことができたり、逆に冷気を浴びてダメージを受けてしまうことも。前作にも同様のギミックはありましたがより洗練させ、ステージ数も大幅に増える予定です。 流体ならではのギミックやパズル要素を活用しながら、ステージクリアを目指していこう。 ゲームの見どころ・流体ゲームとして最高レベルの精度と速度を両立させ、見た目が非常に綺麗・リアルタイムで流体を計算しているからこそ生まれるギミックや攻略方法など、独特なゲーム性 プラットフォームNintendo Switch PC(Steam)発売日2024年頃予定開発裏話開発側からの視点で頑張ったところを書きますが、一般的にゲームの宣伝にはでてこない情報です。今回前作のフリュードランダーをSwitchに移植しようということで始まったわけですが、技術的困難に対処したりそれを乗り越えたことでまた表現の幅が一気に広がりました。 例えば流体の計算については前作が192×144格子だったのに対し今回は256×144格子に増えています。これは画面サイズが4:3から16:9になったから当然なのですが、必要スペックもあがります。 一方色付きの流れる粒子がなくなりました。前作では粒子数がオプションで設定できるようになっていますが、実はこの部分が一番計算が重かったのです。この粒子をすべてなくすことで大幅に計算量を削減、なんとかSwitchで動かす目処がたちました。 しかし2つ問題があり、依然として計算が重くさらなる最適化が必要だったこと、流れる粒子がなくなったことで見た目の派手さがなくなってしまったことです。 前者はポアソン方程式の計算のRedBlack法をテンポラルブロッキングで高速化したりしなんとか25→48FPS近くまで高速化。さらに移流項と圧力項の計算を1:1から3:2へと重い部分の計算をなるべく少なくすることで52,3FPS程度まで改善することができました。さらにCPU-GPUのデータ転送に非同期通信(ノンブロッキング通信)を使用したり、float型をhalf型に精度を落としてメモリバンド幅を節約したりしてなんとか60FPSを達成しました。 後者の見た目の改善にもかなり試行錯誤しました。ブルーム効果や光芒の効果などを取り入れ(上の画像)ました。炎が光っているように見えるのは、炎の色が濃いからではなく炎の周辺に赤く光が拡散したり、線状に影ができたりすることでそう見えるのです。その両者が際立つよう白い部分(煙)も炎と一緒に移流させたりなど未だに調整が続いています。壁に法線マップを仕込み、炎の噴射で壁も明るくなるという副次的な楽しさも生まれました。 結局、スペック制限で以前の完コピ移植ができなかったことにより、プログラムを組み直した結果逆にグラフィックがパワーアップしたという不思議なことが起こっているわけです。移植ですが事実上の新作であり、フリュードランダーの後継作として完成させるつもりです。 スーパーフリュードランダー第一弾トレーラー開発履歴ver 0.3 : 2023デジゲー博で展示超並列工場ゲーム概要このゲームは3Dの自動生成されたワールド(オープンワールド)で工場ラインを構築するゲームです。Factorioに代表されるような自動化ゲーです。 まだ未完成でマイクラみたいに起伏があるわけでもなく、夜もありませんが、今後流体の要素や鉄道などの実装も検討しております。 Windows 専用PCゲームです。 ゲームのみどころGPGPUを利用した高速演算がこのゲームの売りです。マップの規模を拡大することに重くなっていくのが工場シミュレーションや自動化ゲーの宿命でしたが、そこをずっとなんとかしたいと思っていました。 このゲームのシミュレーション計算部分はすべてGPUで行なっているため、マップの規模を拡大してもGPU使用率が100%になるまで処理落ちするということがありません。 つまり超長いラインをたくさん組んでもゲームが重くなりにくいです。 「コンベアラインを敷くのが面白い」という工場ゲーの基本的プレイ欲求を、PCスペックの上限を気にすることなく遊んでほしいという狙いがあります。 さらに、コンベアラインを敷くときに自動的に障害物を避け最短経路を示すシステムを搭載しています。<これによりスパゲッティラインを組みやすく、ゲームプレイを進めていくごとにラインがぐちゃぐちゃになっていく様を見て楽しむことができます。 ゲームのすすめかたテクノロジーツリーをすべて完遂するとゲームクリアです。徐々に要求アイテムのレベルが上がっていくので、アイテムを生産するラインを組むのが大変になっていきます。 開発履歴α版 : 2021冬(C99)にて頒布ver 0.2 : 2022夏(C100)頒布 フリュードランダー宇宙船を操作し重力の弱い月面でアイテムを回収したりゴールを目指すアクションゲーム。ラジコン操作が独特な昔ながらのゲームがあり(ルナランダー)、それに流体計算による風の要素を取り入れることで、見た目も派手なゲームとなっております。前作「流体de月面着陸」のUnity移植版として作り始めたのですが、ほぼフルスクラッチで作り直してしまい、結果ゲーム性もかなり違うゲームに仕上がりました。 Windows 専用PCゲームです。 α版 : 2018年11月4日デジゲー博にて頒布 ダウンロード(Github) ver 1.0 : 2018冬(C95)完成版として頒布 ver 1.504 : 2019年5月11 Steamで無料公開 https://store.steampowered.com/app/1064950/Fluid_Lander/ ver 2.0 : 2019夏(C96)擬似四倍精度モード付き。現時点での最新版。DL版なし。コミケでしか頒布していません。 HSPCL64Ver1.0ダウンロードHSPでOpenCLを簡単に扱えるプラグイン「HSPCL64.dll」を公開します! これはHSPCL32をHSP64bitランタイム上で実行できるようにブラッシュアップしたものです。 概要OpenCLをHSPから簡単に触れるようにしたプラグインです。HSPは計算速度が遅いのが課題ですが、このプラグインがあればGPU上で計算(GPGPU)させることができ、とてつもない高速化が可能になります。 現在HSPCLシリーズは3種類あります。 ・HSPCL64 ・HSPCL32 ver2.0(HSPコンテスト2013) → HSPCL32Nへ改名 ・HSPCL32 ver4.02(youdaiさんfixバージョン) 流体 de 月面着陸2015/03/30完成ニコニコ動画 ダウンロード おそらく世界で一番流体精度の高いゲームです!(2015年完成当時) ついに完成しました! 自機の探査機は流れる流体の影響を受け、また自機の推進力を得るために噴射した流体の影響は周り巡って自分へ返ってくる、そんな見てるだけでも飽きないゲームです! ずっとこんなゲームを作りたかった! このゲームはニコニコ自作ゲームフェス5に参加しています。 パズドラルート解析GPGPU版こっちの更新が進まないままパズドラの人気が終わってしまいました。ブログのほうでこんな機能をつけて下さいとコメントしてくださった方には申し訳なく思います。気が向いたら要望を取り入れてOpenCLに移植します。 |