BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기2600th/Kinema
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Kinema is a browser-native third-person gameplay lab built with TypeScript, Three.js, Rapier, Tone.js, and Vite. It combines a WebGPU-first runtime, a compatibility WebGL path, and an in-browser level editor so developers can prototype mechanics, iterate on content, and validate rendering behavior in one codebase.README 전문 보기 ↗Kinema is a browser-native third-person gameplay lab built with TypeScript, Three.js, Rapier, Tone.js, and Vite. It combines a WebGPU-first runtime, a compatibility WebGL path, and an in-browser level editor so developers can prototype mechanics, iterate on content, and validate rendering behavior in one codebase.
Why this repo is worth opening:
| Target Arena | VFX Showcase |
|---|---|
| Color-coded challenge bay with collectible routing, target stacks, and arena-style readability. | Showcase bay highlighting the project's stylized effects language and feature-station presentation. |
| Goal | Kinema gives you |
|---|---|
| Prototype a third-person controller | Character movement, jumping, crouching, ladders, ropes, camera follow, and interaction-ready physics |
| Build browser-based gameplay systems | Runtime systems for checkpoints, hazards, collectibles, prompts, debug tooling, and more |
| Explore rendering and graphics tradeoffs | WebGPU-first rendering, WebGL fallback, graphics profiles, post-processing, HDR environments, and debug controls |
| Create or test level-editing workflows | An in-browser editor with brushes, gizmos, hierarchy, inspector, undo/redo, GLB import, and play-test mode |
| Validate real-world compatibility | Keyboard and mouse, gamepad, mobile touch controls, and Safari/Apple compatibility coverage |
| Study a modular game architecture | Clear domains for gameplay, rendering, input, editor, systems, UI, and tests |
F1, place geometry, and play-test with Ctrl+P or Cmd+P.?forceWebGL=1 and compare behavior.flowchart LR
A["npm ci"] --> B["npm run dev"]
B --> C["Open the main menu"]
C --> D["Play the showcase"]
C --> E["Create a level"]
E --> F["Place brushes or import GLBs"]
F --> G["Play-test with Ctrl/Cmd + P"]
D --> H["Jump to a station or review spawn"]
| Area | Highlights |
|---|---|
| Gameplay | Character controller, checkpoints, hazards, collectibles, doors, ropes, and grab/carry/throw interactions |
| Vehicles | Driveable car and hover drone |
| World | Procedural showcase corridor with 14 feature stations |
| Editor | Brush placement, GLB import, transform gizmo, undo/redo, save/load, and play-test mode |
| Rendering | WebGPU-first renderer, WebGL fallback, graphics profiles, post-processing, HDR environments |
| Input | Keyboard and mouse, gamepad, and mobile touch controls |
| Tooling | Vitest unit tests, Playwright browser tests, and Biome linting |
npm ci
npm run dev
Open http://127.0.0.1:5173.
Play to load the procedural showcase.F1 to open the editor.Ctrl+P or Cmd+P in the editor to play-test.` to open the debug panel.| Command | What it does |
|---|---|
npm run dev | Start the local Vite dev server |
npm run build | Type-check and create the production build in dist/ |
npm run preview | Preview the production build locally |
npm run test | Run Vitest unit tests in src/**/*.test.ts |
npm run test:watch | Run Vitest in watch mode |
npm run lint | Run Biome checks on src/ |
npm run lint:fix | Apply Biome fixes on src/ |
npx playwright test | Run Playwright browser coverage from tests/ |
Install the Playwright browser once with:
npx playwright install chromium
Append these to your local dev URL when you want a faster repro:
| Path | Use it for |
|---|---|
/ | Normal startup through the main menu |
/?station=vehicles | Jump straight into one showcase station |
/?station=vfx | Isolate rendering and particle-heavy content |
/?spawn=overviewMid | Load the procedural showcase from a review spawn |
/?forceWebGL=1 | Force the compatibility renderer |
/?experimentalRenderer=1 | Opt Safari into the experimental renderer for debugging |
In dev builds, window.__KINEMA__ exposes helpers used by tests and debugging flows, including player state, teleports, vehicle inspection, graphics profile toggles, and input simulation helpers.
flowchart TD
A["src/main.ts"] --> B["Bootstrap renderer, physics, input, audio, and menus"]
B --> C["src/Game.ts"]
C --> D["Runtime systems"]
C --> E["LevelManager"]
C --> F["UI and menu flow"]
E --> G["Procedural showcase"]
E --> H["Direct station loads"]
E --> I["Saved and editor levels"]
F --> J["Main menu, settings, help"]
F --> K["Lazy-loaded editor"]
| Path | Responsibility |
|---|---|
src/core/ | Shared types, constants, event bus, settings, and the fixed-step game loop |
src/character/ | Player controller, locomotion modes, and FSM states |
src/interaction/ | Focus detection and interactables such as doors, ropes, vehicles, and throwable objects |
src/vehicle/ | Car and drone controllers plus vehicle orchestration |
src/level/ | Procedural showcase layout, level loading, lighting, checkpoints, and asset loading |
src/editor/ | In-browser level editor, brushes, tools, panels, and serialization |
src/renderer/ | Renderer bootstrapping, profiles, post-processing, and compatibility behavior |
src/ui/ | HUD, loading states, menus, and debug panel |
src/systems/ | Runtime feature systems registered by src/Game.ts |
public/assets/ | Models, HDR environments, LUTs, sprites, and other static assets |
tests/ | Playwright browser coverage and screenshot-oriented verification |
Path aliases are configured in tsconfig.json and vite.config.ts for @core, @character, @level, @renderer, @editor, and the other top-level domains under src/.
| If you want to change... | Start here |
|---|---|
| Movement tuning or physics feel | src/core/constants.ts, src/character/, and src/physics/ |
| Procedural showcase layout | src/level/ShowcaseLayout.ts and src/level/ProceduralBuilder.ts |
| Runtime feature systems | src/systems/ and registration in src/Game.ts |
| Rendering or post-processing | src/renderer/ |
| Editor behavior or tools | src/editor/ and src/editor/tools/ |
| UI, menus, and HUD | src/ui/ |
| Interactables | src/interaction/interactables/ |
| Vehicles | src/vehicle/ |
Use this as the standard pre-merge pass:
npm run test
npm run lint
npm run build
npx playwright test
Notes:
playwright.config.ts.*.test.ts.tests/ is especially useful for procedural loads, controls, mobile layouts, and rendering regressions.| Input | Action |
|---|---|
W A S D | Move |
| Mouse | Look |
Space | Jump |
Shift | Sprint or vehicle boost |
F | Interact, grab, or enter/exit vehicles |
C / Left Ctrl | Crouch or handbrake |
Escape | Pause menu |
` | Debug panel |
F1 | Toggle editor |
Use the in-app Help menu for the full control reference, including rope, vehicle, gamepad, and mobile touch mappings.
public/assets/models/.Released under the MIT License. Copyright (c) 2026 Pranshul Chandhok.