amethyst / amethyst/rfcs

[RFC] Prototyping speed improvements

Open
#18 31 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
32
Forks
10
PR merge metrics
No merged PRs in 30d

Description

## Problem
Prototyping in amethyst is slow.

100 lines of code seems to be the minimum to make the smallest of game. While its not a lot, it definitely is more than necessary.

## Source
I'm taking https://github.com/amethyst/amethyst/blob/develop/examples/sphere/main.rs as a model
Lack of good defaults for generic types.
Imports
Lack of handle_event utils for simple cases -> Quit on any key, quit on some key, is key pressed.

## Propositions
>Lack of good defaults for generic types.

Adding sensible defaults as type alias for generics.
1) Add a default.rs file.
2) Make a DefaultSomething type alias with a default consistent with the others.
3) Export the module default.

Example:
amethyst_input/src/default.rs
```
type DefaultInputHandler = InputHandler
```

>Imports

Expand the prelude to include as many common types as possible. I'm not too sure how much this slows down compile time when using the prelude, but I do have performance degradation in one of my project where I was using only preludes.

>Lack of handle_event utils for simple cases -> Quit on any key, quit on some key, is key pressed.

I already implemented it inside of a custom project, currently debating if this should be inside of the engine.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.