Skip to content

Add software-rendered Cube Runner demo - #375

Draft
wysaid wants to merge 1 commit into
masterfrom
demo/cube-runner
Draft

Add software-rendered Cube Runner demo#375
wysaid wants to merge 1 commit into
masterfrom
demo/cube-runner

Conversation

@wysaid

@wysaid wysaid commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add a self-contained Cube Runner game under demo/
  • render a curved 12-lane tunnel, obstacles, player, lighting, fog, and HUD entirely on the CPU
  • include eight obstacle/stage patterns, collision handling, scoring, lives, pause, and restart controls
  • keep the demo asset-free and compact enough for a 640 x 480 window
  • include a headless build mode so the same renderer can produce deterministic validation frames

Motivation

This demonstrates how XEGE can host a small 3D game without requiring a hardware-accelerated backend. The software rasterizer uses filled triangles, a depth buffer, fog, and lightweight face shading, making it useful both as a playable demo and as a reference for CPU-rendered 3D effects.

Controls

  • A / D or arrow keys: steer around the tunnel
  • P: pause or resume
  • R: restart
  • Esc: exit

Validation

  • MinGW Release build of game_cube_runner
  • MinGW Release build of the complete demos target
  • MinGW Release default all-target build
  • native headless build with -Wall -Wextra -Wpedantic
  • headless runtime validation with AddressSanitizer and UndefinedBehaviorSanitizer
  • deterministic 640 x 480 render inspected visually

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 6dfb0b6f-fa9b-4ccb-94b4-a302e595c31a

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch demo/cube-runner

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants