Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing examples (good first issue!) #561

Open
4 tasks
rasky opened this issue May 28, 2024 · 4 comments
Open
4 tasks

Missing examples (good first issue!) #561

rasky opened this issue May 28, 2024 · 4 comments
Labels
good first issue Help libdragon contributing this

Comments

@rasky
Copy link
Collaborator

rasky commented May 28, 2024

If you want to help libdragon, both the trunk and preview branches are missing work on the examples that should be updated to either migrate them to the new modern APIs (like rdpq) or even rewritten / changed to totally new examples.

This is a list of things we would like to have, but feel free to experiment in these ares:

  • Remove all deprecations warnings from existing examples
  • New example: minimal 2D game loop (eg: one sprite driven by the controller that can collect coins). Max 200 lines of code (keep it simple!)
  • New example: minimal initial menu of a game. A background with a logo, a simple 2/3 level menu with eg: audio settings, and a simple navigation with the controller. If possible, background music. Max 200 lines of code
  • New example: simple model64 mesh viewer. Allow to browse models from ROM or SD (or at least, switch between them with L/R for instance), display the current model self-rotating on the screen, allow to switch between animations in the mesh using a simple onscreen text.

For all the examples, please make sure to either use original assets made by you, or assets licensed under CC0 or similar no-attribution license.

@rasky rasky added the good first issue Help libdragon contributing this label May 28, 2024
@rasky rasky pinned this issue May 28, 2024
@ghost
Copy link

ghost commented May 28, 2024

I have a first attempt on the minimal 2D game loop here: https://github.com/kannoneer/libdragon/blob/gameloop/examples/gameloop/gameloop.c

I didn't submit a PR because a spritesheet didn't work with flipped rects due to #562

@rasky
Copy link
Collaborator Author

rasky commented Jun 19, 2024

I didn't submit a PR because a spritesheet didn't work with flipped rects due to #562

This is fixed in the preview branch now

@zk-tarts
Copy link

Hi! If I am wanting to try out making of one these examples, (lets say the mesh viewer), should I be forking from the trunk branch or the preview branch?

I'm brand new to this project so I am interested in creating some kind of example to help learn my way around this code.
Thanks!

@rasky
Copy link
Collaborator Author

rasky commented Jan 27, 2025

Hi! If I am wanting to try out making of one these examples, (lets say the mesh viewer), should I be forking from the trunk branch or the preview branch?
I'm brand new to this project so I am interested in creating some kind of example to help learn my way around this code.

For the model viewer, you have to use preview. Otherwise, you could use trunk. Either works anyway: if you send to preview, it will land on trunk when the feature it depends on are stabilized.
Thanks1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Help libdragon contributing this
Projects
None yet
Development

No branches or pull requests

2 participants