ブラウザでプレイ可能な LEGO Island
(isle.pizza)- 1997年のPCゲーム LEGO Island が、インストール不要でブラウザ上で動作する完全移植版として公開され、古いWindowsゲームを最新デバイスでそのまま遊べる
- この移植版は、バイト単位で原作を再現した LEGO Island decompilation と、Windows依存を取り除いたポータブル版を基盤としている
- 最新ブラウザとWebAssemblyマルチスレッドが必要で、初回起動は約 25MB のストリーミング後に開始し、オフラインインストールでは約 550MB を使用する
- キーボード・マウス、ゲームパッド、タッチスクリーンに対応し、Configureメニューで操作、言語、解像度、オフラインプレイなどの実行条件を調整できる
- 原作の中核ゲームプレイを維持しつつ、ワイドスクリーン、4K、バグ修正、拡張、セーブ編集、マルチプレイといった現代的な機能を追加しているのが特徴
ブラウザ移植版の基盤
- LEGO Island は、1997年のオリジナルPCゲームをブラウザですぐにプレイできるようにした再実装版
- 実装には Emscripten とWebAssemblyが使われており、最新デバイスで追加インストールなしに動作するよう構成されている
- このプロジェクトは LEGO Island decompilation をベースにしている
- このデコンパイルプロジェクトは、元のソースコードを完全かつバイト精度で再構成している
- その後 portable version が作られ、グラフィック、オーディオ、入力、設定などのWindows依存が最新のクロスプラットフォーム代替実装に置き換えられた
- 現在、LEGO Island は Windows、Linux、macOS、iOS、Android、Nintendo Switch、PlayStation Vita、Web を含む 10以上のプラットフォーム で動作する
- ブラウザ版は、オリジナルの Interleaf ストリーミングコード を使い、1997年のCD-ROMのようにコンテンツを段階的に読み込む
- プロジェクトはまだ 活発に開発中 のため、一部バグが残っている可能性がある
動作環境と操作方式
- 実行には、WebAssembly マルチスレッド をサポートする最新ブラウザが必要
- 対応ブラウザと最低バージョンは以下の通り
- Chrome 95以降
- Firefox 92以降
- Edge 95以降
- Safari 15.4以降
- iOS では iOS 18以降が推奨される
- 入力方式は Configure ページで調整できる
- Keyboard & Mouse: 矢印キーまたはWASDを使うデスクトップ操作
- Gamepad: アナログスティックとD-padを使うコントローラー対応
- Touch Screen: モバイル向けのタッチ操作方式を選択可能
- ゲームパッド対応範囲はブラウザによって異なる場合がある
ロード、オーディオ、セーブ
- 初回ロードでは約 25MB のデータをストリーミングする
- 拡張機能を有効にすると、さらに多くのデータを受信する場合がある
- 初期ロードには安定したインターネット接続が推奨される
- オフラインプレイは Configure メニューからゲーム全体のファイルをインストールして利用できる
- 必要容量は約 550MB
- ブラウザがユーザー操作前の音声再生をブロックする場合があり、音が出ないときはアニメーションイントロの mute アイコン をクリックする必要がある
- 進行状況は自動保存される
- 確実に保存するには、Infocenter に戻って exit door を使いメインメニューへ戻る必要がある
- タブをすぐ閉じる場合でも “best effort” で保存を試みるが、常に保証されるわけではない
原作互換性とパフォーマンス調整
- この移植版は、1997年のオリジナルPCゲームの 完全移植 であり、中核ゲームプレイは同一
- 開始前に Configure ページで複数言語を選択できる
- 英語は 1.0 と 1.1 の両バージョンを選択可能
- 追加の改善機能も含まれている
- ワイドスクリーンに対応
- 操作方式が改善されている
- デコンパイルプロジェクト由来の多数のバグ修正が反映されている
- ディスプレイの最大解像度で実行できる
- 4K 動作も可能
- パフォーマンスが不安定な場合は、他のブラウザタブを閉じてメモリを確保し、ハードウェアアクセラレーションを使用することが推奨される
- モバイルでは省電力モードでないことを確認する必要がある
- 遅延がある場合は Configure で解像度を下げられる
新機能と高度な機能
- マルチプレイモードでは公開または非公開の島を作成し、最大 16人 がリアルタイムで LEGO Island を一緒に探索できる
- Scene Player は、300本以上のオリジナル LEGO Island アニメーションを再生制御や共有リンク付きで閲覧できる
- Nick Brick's Memories は、マルチプレイ内で原作ゲーム中のアニメーションを他プレイヤーと再演し、memories として収集する機能
- Discord ログインにより、Cloud Sync、memories、マルチプレイ機能を有効化できる
- Cloud Sync は、ログイン時にセーブデータと設定をデバイス間で自動バックアップする
- クラッシュレポート用オーバーレイは、問題発生時に診断情報を取得してレポートを送信できる
- Save Editor はブラウザ上でセーブファイルを閲覧・編集できる
- プレイヤー名、キャラクター、ハイスコアを変更できる
- 編集機能は複数のゲーム要素を扱う
- Sky Color Editor: 島の空のグラデーション色を編集する
- Vehicle Part Editor: 車両パーツと色を3Dプレビューで変更する
- Vehicle Texture Editor: 既定プリセットまたはアップロード画像で車両テクスチャを変更する
- Actor Editor: 66体のゲームアクターの帽子、色、雰囲気、音、動作をアニメーション付き3Dキャラクタープレビューで編集する
- Plant Editor: 81種類の島の植物のバリエーション、色、雰囲気、音、動作を確認・変更する
- Building Editor: 島の建物のバリエーション、音、動作を3Dプレビューで変更する
- 開発者や上級ユーザー向けの Debug menu もある
- LEGO Island ロゴを5回タップすると OGEL mode が開く
- 位置移動、act 切り替え、アニメーション再生といったデバッグ機能にアクセスできる
拡張とレンダリング改善
- 拡張システムにより、コミュニティ制作コンテンツや改造が可能になる
- 提供される拡張と改善には以下が含まれる
- HD Textures: ビジュアルを改善する
- HD Music: 高音質オーディオを提供する
- Extended Bad Ending FMV: カットされていないベータ版アニメーションを表示する
- Widescreen backgrounds: ワイドディスプレイで3Dの端を除去する
- SI Loader: コミュニティコンテンツや改造向けの拡張システム
- レンダリングとグラフィック機能も追加されている
- WebGL レンダリングに対応
- WebGL がないデバイスではソフトウェアレンダラーの代替経路を使用する
- OpenGL ES 2.0/3.0 レンダラーを提供する
- 32ビットカラーに対応
- MSAA アンチエイリアシングを利用できる
- anisotropic filtering を適用できる
- フルスクリーンモードに対応
- 各種バグ修正とパフォーマンス改善も反映されている
- WebGL ドライバー互換性問題が修正されている
- Firefox のプライベートブラウジングモードでも正常動作する
- タッチ座標変換の問題が修正されている
- ViewLODList のメモリリークが修正されている
- GPU mesh アップロードが VBO により改善されている
- backface culling が有効化されている
- SIMD 最適化された z-buffer clearing が適用されている
関連資料とソース
- LEGO Island Decompilation: オリジナルゲームをリバースエンジニアリングした中核オープンソースプロジェクト
- LEGO Island, Portable Version: Web移植版の直接の基盤となるクロスプラットフォーム版
- isle.pizza Frontend: このWebサイトのフロントエンドソースコード
- LEGO Island Rebuilder: 1997年のオリジナルPC版をパッチ適用・モッディングするランチャーとツール
- SIEdit: オリジナルゲームの
.siスクリプトとリソースファイルを閲覧・編集するツール群 - The Making of LEGO Island: A Documentary: MattKC による LEGO Island 開発ドキュメンタリー
- LEGO Island Wiki: ファン運営の LEGO Island 情報と研究資料
- Project Island High Quality Music: メイン作曲家 Lorin Nelson が復元した LEGO Island サウンドトラックの高音質再デジタル化資料
まだコメントはありません。