Skip to content

ukonpower/OREngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

394 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OREngine

OREngine (オーアールエンジン) は WebGL 製の軽量 3D エンジンです。64KB Intro Demo の制作を目的としており、TypeScript で実装されています。

OREngine screen shot

特徴

  • コンポーネントベースの柔軟なアーキテクチャ
  • Vite を用いた高速ビルドシステム
  • React との統合や Blender 連携に対応

インストール

1. サブモジュールと依存パッケージの取得

packages/glpower は git submodule として提供されています。このサブモジュールを含む依存パッケージ一式を取得するため、以下のコマンドを実行します。

npm run init

2. ShaderMinifier の準備

Shader_Minifier を取得し、実行ファイルへのパスを通してください。

Windows

ShaderMinifier をインストール後、Path を設定します。

macOS

shader_minifier.exe/Documents/application/shader_minifier/shader_minifier.exe に配置し、Mono をインストールします。

brew install mono

実行

npm run dev

ビルド

重要: ビルドやテストを行う前に一度 npm run init を実行してサブモジュール(packages/glpower など)を初期化してください。

npm run build

デモ公開 (GitHub Pages)

main または master へ push すると https://<user>.github.io/<repo>/ にデプロイされます。develop ブランチは https://<user>.github.io/<repo>/develop/、プルリクエストは https://<user>.github.io/<repo>/pr-<番号>/ にそれぞれ配置されます。ワークフローの設定は .github/workflows/pages.yml にあります。

デモ用のビルドでは ShaderMinifier をスキップしているため、SKIP_SHADER_MINIFIER=true が環境変数として渡されます。将来的に Storybook を追加した場合は public/storybook 以下に成果物を配置することで同じ仕組みでデプロイできます。

テスト

ビルドと同様に、事前に npm run init を実行してサブモジュールを初期化しておく必要があります。

npm run test

ドキュメント

アーキテクチャの詳細やセットアップ手順、Blender との連携方法などは docs ディレクトリにまとめています。

クレジット

ビルドサイズを 64KB 以下に抑えるにあたり、以下のツールに多大な助力をいただきました。 作者の皆さまに心より感謝いたします。

ライセンス

このプロジェクトは MIT License の下で公開されています。

About

オレオレWebGL 3Dエンジン for 64KB Intro

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors