Giter Site home page Giter Site logo

bevy-jam-5's Introduction

bevy-jam-5

Entry for said game jam (not much effort put in, mostly a test of itch.io CI from a template among build testing).

Below is the README for the template that was used to create this repository.


bevy_quickstart

Brought to you by the Bevy Jam working group.

Bevy Quickstart

This template is a great way to get started on a new Bevy game—especially for a game jam!

Start with a basic project structure and CI / CD that can deploy to itch.io.

You can try this template in your web browser!

Don't want to read through the whole README? @ChristopherBiscardi made a video on how to use the template from start to finish:

A video tutorial for bevy_quickstart

Prerequisites

We assume that you know how to use Bevy already and have seen the official Quick Start Guide.

Create a new game

Install cargo-generate and run the following commands:

cargo generate TheBevyFlock/bevy_quickstart --branch cargo-generate

git branch --move main

Then create a GitHub repository and push your local repository to it.

This template can also be set up manually.

Navigate to the top of this GitHub repository and select Use this template > Create a new repository:

UI demonstration

Clone your new Github repository to a local repository and push a commit with the following changes:

  • Delete LICENSE, README, and docs/ files.

  • Search for and replace instances of bevy_quickstart with the name of your project.

  • Adjust the env variables in .github/workflows/release.yaml.

Write your game

The best way to get started is to play around with what you find in src/game/.

This template comes with a basic project structure that you may find useful:

| Path | Description |

|------------------------------------------|-------------------------------------------------------|

| src/lib.rs | App setup |

| src/screen/ | Splash screen, title screen, playing screen, etc. |

| src/game/ | Game mechanics & content (replace with your own code) |

| src/ui/ | Reusable UI widgets & theming |

| src/dev_tools.rs | Dev tools for dev builds |

Feel free to move things around however you want, though.

If you are new to Bevy, the patterns used in this template may look a bit weird at first glance.

See our Design Document for more information on how we structured the code and why.

[!Tip]

Be sure to check out the 3rd-party tools we recommend!

Run your game

Running your game locally is very simple:

  • Use cargo run to run a native dev build.

  • Use trunk serve to run a web dev build.

If you're using VS Code, this template comes with a .vscode/tasks.json file.

Run release builds
  • Use cargo run --profile release-native --no-default-features to run a native release build.

  • Use trunk serve --release --no-default-features to run a web release build.

<summary>(Optional) Improve your compile times</summary>

.cargo/config_fast_builds.toml contains documentation on how to set up your environment to improve compile times.

After you've fiddled with it, rename it to .cargo/config.toml to enable it.

Release your game

This template uses GitHub workflows to run tests and build releases.

See Workflows for more information.

Known Issues

There are some known issues in Bevy that require some arcane workarounds.

To keep this template simple, we have opted not to include those workarounds.

You can read about them in the Known Issues document.

License

The source code in this repository is licensed under any of the following at your option:

We hold no patent rights to anything presented in this repository.

Credits

The assets in this repository are all 3rd-party. See the credits screen for more information.

bevy-jam-5's People

Contributors

mikkelens avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.