bevyengine / bevyengine/bevy

Support for developing MacOS Screensavers

Open
#20,467 0 comments 1 reaction 0 assignees View on GitHub
A-Cross-Cutting C-Feature D-Complex O-MacOS S-Needs-Design
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## What problem does this solve or what need does it fill?

Bevy would be an excellent platform to build screensavers for MacOS.

Supporting screensavers requires building a special bundle. Building bundles containing Bevy apps is commonly done. However this API requires that the executable must expose a special Objective-C class. That class has a few hooks and the OS effectively runs its own event loop.

## What solution would you like?

I'd like a way to implement this Objective-C API in a Bevy executable. Or, if that's not feasible, build a Bevy app as a library that can be called from an Objective-C stub executable.

## What alternative(s) have you considered?

I've looked around and can't find anything. Unfortunately, the Screensaver API does not let the application make its own window. This rules out most simple options I could think of.

## Additional context

The Screensaver API can be found [here](https://developer.apple.com/documentation/screensaver).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.