Skip to content

Adds some minor touchups for Zigtoberfest showcase - #79

Open
ikskuh wants to merge 1 commit into
masterfrom
work/zigtoberfest2026
Open

ikskuh wants to merge 1 commit into
masterfrom
work/zigtoberfest2026

Conversation

@ikskuh

@ikskuh ikskuh commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Wall rendering now displays actual wall textures during regular gameplay.
    • Demo mode uses a flat color derived from each wall’s texture identifier.
  • Bug Fixes

    • Updated the default rasterizer selection to use synchronous linear rasterization, improving consistency in graphics rendering.

@coderabbitai

coderabbitai Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

Walkthrough

The default rasterizer now uses synchronous linear rendering. Dungeon wall rendering now samples textures outside demo mode and uses flat colors in demo mode.

Changes

Rendering behavior

Layer / File(s) Summary
Synchronous rasterizer default
src/kernel/components/graphics.zig
selected_rasterizer now initializes to .linear_sync.
Conditional dungeon wall rendering
src/userland/apps/dungeon/src/dungeon.zig
Wall rendering checks demo mode. It samples wall textures when enabled and otherwise uses a flat color derived from tex_id.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Feature

Merge Risk: 🟡 Moderate · up to 20684

Dungeon walls render in the wrong style for both normal and demo-mode platforms. Correct the demo-mode condition before merging.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title describes the pull request as minor touchups for the Zigtoberfest showcase. This matches the rasterizer and dungeon rendering changes, although it does not identify the specific technical up…
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch work/zigtoberfest2026

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

A rabbit sees the walls grow bright
Textures dance in pixel light
Demo mode keeps colors flat
The sync path starts where it sat
Soft paws test each rendered hue
The dungeon now draws true

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: bea699fe-bab8-428b-af47-bde416df49e3

📥 Commits

Reviewing files that changed from the base of the PR and between cd63828 and 206840b.

📒 Files selected for processing (3)
  • assets/images/wallpaper.abm
  • src/kernel/components/graphics.zig
  • src/userland/apps/dungeon/src/dungeon.zig

Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review.

else => null,
};

const use_textures = (ashet.abi.get_demo_mode() != 0);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Invert the demo-mode condition.

The current condition enables textures when demo mode is active. It also selects flat colors on non-demo platforms because get_demo_mode() returns zero there. Use == 0 so normal mode renders textures and demo mode renders flat wall colors.

Proposed fix
-        const use_textures = (ashet.abi.get_demo_mode() != 0);
+        const use_textures = (ashet.abi.get_demo_mode() == 0);
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
const use_textures = (ashet.abi.get_demo_mode() != 0);
const use_textures = (ashet.abi.get_demo_mode() == 0);

This branch has not been deployed

No deployments
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.

1 participant