ハクソク

世界を動かす技術を、日本語で。

Voxile: 独自のエンジンとプログラミング言語で作られたレイトレーシングゲーム

概要

Voxileは、VoxRay Gamesによる革新的なサバイバルクラフトゲームであり、自社開発エンジンと独自言語Lobsterを採用。
THE BUILDER’S UPDATEによって最大規模のアップデートが実施。
高精細なレイトレーシング協力マルチプレイなど、先進的な機能を搭載。
開発者Wouter van Oortmerssenの豊富な経験と技術力が結集。
Steamでデモ版公開中、期間限定で40%オフ。

VoxileとTHE BUILDER’S UPDATEの特徴

  • Voxile協力プレイ対応レイトレーシング採用のマイクロボクセルサバイバルクラフトゲーム
  • THE BUILDER’S UPDATEで最大規模の機能追加・改善
  • Steamデモ版が公開中、3月9日まで40%オフ
  • 最新情報はVoxRay Games Discord Channelで発信

開発者Wouter van Oortmerssenの経歴と技術

  • Wouter van Oortmerssenは独自エンジン・独自言語LobsterでVoxileを開発
  • Amiga Inc.、Crytek(Cryengine)、Maxis(SimCity)、Gearbox(Borderlands 2)、Google(Web AssemblyやFlatBuffers設計)などで活躍
  • 9つのプログラミング言語(Amiga E、FALSE、Bla、Aardappel、WadC、SHEEP、CubesScript、CryScript、Restructor)を設計
  • Lobsterは10番目の言語で、ゲームの高速プロトタイピングを実現
  • オープンソース活動や教育にも積極的に貢献

Lobsterエンジンの特徴と利点

  • LobsterエンジンはC++の90%を置き換え、残りはリーフノードで利用
  • 超高速コンパイル低遅延起動時間(2秒未満)を実現
  • 静的型付けと高速起動を両立
  • 柔軟なプロトタイピングと独自アーキテクチャ設計が可能
  • ほとんどのコード変更でC++部分に触れる必要なし

Voxileのゲームデザインとコア機能

  • 3Dボリュームワールド:全てが構築・破壊可能なマイクロボクセル世界
  • 高性能レイトレーシング:ダイナミックシャドウ、グローバルイルミネーション、反射などを自動生成
  • 協力マルチプレイ:リアルタイム・永続的なワールド編集と破壊
  • クエスト・インベントリシステム:RPG的な進行やアップグレードを提供
  • タクティルな戦闘:近接武器や遠距離武器での重厚なダメージ表現、敵もボクセルベースで損傷
  • UGC・モッディング:レゴ感覚でカスタムアセット作成、Prefab資産の再利用が容易

ワールドとビジュアルの多様性

  • Dead Water SlumsThe Police StationThe Floating Snow Biomeなど多彩なワールド
  • Prefab資産は将来のレベルデザインやMod制作に再利用可能(LittleBIGPlanet的発想)

今後の可能性とコミュニティ

  • AIやプロシージャル生成機能の追加も将来的に期待
  • 開発者自らが言語・エンジン・ゲームを一貫してコントロールできる強み
  • Steamでの購入支援Discord参加でコミュニティに貢献可能

まとめとおすすめ

  • Voxileは唯一無二のテクノロジーとゲーム体験を提供
  • 無料デモ版で体験可能、気に入ったら40%オフ期間中の購入推奨
  • コミュニティ参加や開発者支援も歓迎

Hackerたちの意見

創設者のワウターは、10個のプログラミング言語を作ったりデザインを手伝ったりしてきたんだ。Voxileは彼の最新の言語、Lobsterで作られてる。ワウターはWASMやLLVMに大きく貢献していて、flatbuffersも発明したんだって。Crytek、Gearbox、Googleなど、いろんなところで働いてきたみたい。Voxileみたいなものは見たことないよ。
確かに!Wouterとの私のディスカッションをリンクしてくれてありがとう。彼のCubeエンジンやAmiga-Eの初期の作品は、今見ても素晴らしいよね。
すごくクールだね!この投稿を見てゲームをプレイしたくなったし、Lobsterもチェックしたくなったけど、リンクがなかったのが残念。Lobsterはオープンソースだよね: https://github.com/aardappel/lobster。でも、ボクセルエンジンはオープンソースじゃないみたいで、それはちょっと残念。考えてみると、そのゲームはMOD用に作られてるんだろうから、エンジン側で遊ぶ道があるかもね。
うん、今のところ下層だけがオープンソースだよ。将来的にはもっと公開する予定だけど、MODがもっと安定したらね。今はエディターにクエストや他のゲームプレイアクションを指定するための、UI駆動のミニマリスティックな言語があるよ。
美しいね。これがVelorenにあればいいのに。もしかしたら、私のマシンはグラフィックをフルに上げるスペックが足りないのかも… [1]: https://veloren.net/
私は長年Unityの開発者だけど、去年からGodotを使い始めたんだ。Godotの読み込み速度はUnityと比べて驚くほど速いよ。本当に速い。Unityに戻ったとき、流れの状態がGodotを使っているときのようには維持できなくて、常に壊されている感じがした。流れに入ることはプログラミングの美しい部分の一つなんだ。そこから引き離されると、物理的な衝撃のように感じることもある。Lobsterは最適化と速度のアイデアを新しいレベルに引き上げているみたい。流れに入るのも、維持するのももっと簡単になるはず。まずは、十分に学ぶための時間を確保しないといけないけどね!
Claudeにプロンプトを送信するたびに流れから抜け出されちゃうんだ。どうやってそれを乗り越えたの?
Lobsterについて言及してくれてありがとう。この人は言語の簡素化とデザインについて多くの教訓を学んだみたいだね。 promisingな言語に見えるし、成功を祈ってるよ。参考: https://aardappel.github.io/lobster/language_reference.html
ほんとそれ。最近のXcodeの変更で、デバイス上でのデバッグが毎回めっちゃ遅くなった。動き出したら大丈夫なんだけど、アプリを起動するたびに20秒余分にかかるのが本当に辛い。前から即座ではなかったけど、今はもうゴミみたい。
うん、今インディーゲームのプロジェクトに取り組んでて、Unityにイライラしてるから、全部Godotに移行してるところ。今日GodotでKotlinを使うことについても学んだんだけど、これが安定してることを願ってる(今のところ大丈夫そう)。私はもっと関数型のプログラミングスタイルが好きだから、C#はKotlinの5倍も冗長になっちゃうんだよね。
Lobsterって、Luaとそんなに違わない気がするけど?すごくないとは言わないけど、インタープリタから静的言語に呼び出すのが難しいってのはちょっと信じがたいな。編集:Lobsterが何かについて間違ってた(jitじゃなくてコンパイルされる可能性がある)、でも主なポイントは変わらないよ。
Voxatronで作られたMinecraftみたいに見えるね。(何百万もの壊せる小さなキューブ)そのスケールでそれを実現するのはすごく難しいことだと思う。その上、エンジンとプログラミング言語を作るなんて。この人は面白いことを言うに違いないね。
ボクセルベースの物理破壊ゲームの問題の一つは、物理が連続空間で起こるってことだね(ボクセル空間じゃなくて)。つまり、ジオメトリの一部を壊した瞬間、それをメッシュに変換して、他のメッシュモデルと同じようにシミュレーションしなきゃいけない。これがボクセルを複雑なボロノイノイズベースの破壊に見せるんだ。モデリングのワークフローやボクセルの見た目が好きならそれでいいけど、ボクセルが破壊物理に役立つって考えるのはちょっと無理があると思う。理想を言えば、ボクセル空間自体で物理を行えるようになればいいんだけど(セルオートマトンに基づく古典力学みたいに)、それは無理そうだね。
実際、GPUレイトレーシングを使うとこれは本当じゃないよ。ボクセル破壊に関わってる人たちは、どこかで気づいてると思うけど。毎回の破壊イベントの後にパフォーマンス良くメッシングするのは単純に不可能なんだ。
へへ、名前を覚えてた気がする。昔、AmigaでWouterのEプログラミング言語を使ってたんだ。結構良かったと思うよ。
ゲームがサクサク読み込まれるのは嬉しいよね(このゲームはそうだし)。それがゲームが私の時間に値するかどうかを判断する一つの基準なんだ。私がプレイするほとんどのゲームは、デスクトップからゲームを開いて20〜30秒以内にプレイできる。ゲームが速く読み込まれるためには、物を読み込む順番をしっかり計画する必要があるって素朴に思ってる。細部へのこだわりって感じがする。
ゲームのビジュアルがこんなに良いとは思ってなかった。めっちゃカッコいいね。
ロブスター言語についてだけど、新しい言語に出会ったときに最初に見るのはメモリ管理なんだ。コードでやりたいことは、データを安全かつ効率的に構築・操作することが多いから、これが重要なんだよね。ロブスターが新しい(まあ、ちょっと新しい)実用的なメモリ管理のアプローチを試みてるのを見て嬉しいし、詳細を説明したドキュメントがあるのもいいね(https://aardappel.github.io/lobster/memory_management.html)。言語の創作者がこれを重要視してるってことだし。それに、マルチスレッド環境での高速メモリ管理もサポートしてるみたいで、これは多くの言語では当たり前じゃないから、嬉しいポイントだね。