Implement a parser for the new sprite format
Contributing to the new renderer:
The renderer interface is defined in headers, with the main class in libopenage/renderer/renderer.h.
A good place to start looking is libopenage/renderer/tests.cpp, which presents a sample usage of the renderer. To run the test, after compiling Openage do ./run test -vd renderer.tests.renderer_demo 0.
Required knowledge:
- Reading a file and parsing a regular language
- You need to be familiar with how animations can be drawn from texture atlases.
What to modify:
- The new sprite format is defined in this doc. A parser for it should be implemented in
libopenage/renderer/resources, using the existingTexture2d..classes to store the actual data. The sprite could be stored in a class such asSprite2dAnimated. - A test for drawing animations with these sprites should be added to
libopenage/renderer/tests.cpp, e.g. as test number1. The animation timing logic should not be added to the renderer itself, but rather implemented on top of it. - Documentation should be added to every new header and existing documentation updated to reflect changes.
I would like to do this contribution.
@Montx feel free to ask on IRC/Matrix about anything you might need.
Please include the documentation draft in the pull request so it becomes official (as doc/media/sprites.md).
Sorry guys I thought I could pick this one up but I am on a mac and I can't update it to Mojave yet. So there are some functions on the game that are not supported by High Sierra. Currently I don't have my windows setup, and I can't mess with this mac, since it's not mine :/ Really frustrated with this, I could not find any work around. I hope I can still do some contributions in the future. Will continue to try and get a workaround.
I think I can handle this one. I've implemented SpriteSheet parsing and animation in MonoGame before. Just need to smash through those Windows build errors. 😝
@Firearrow5235 I attached a yaml-File for appveyor that should help you setting up your own pipeline. You still need to change the file extension and change some stuff inside. But openage should be building fine with this on windows. So you don't need to smash through those build errors. ;-)
How can I contribute to this project? please let me know.
@Aakash10-Coder You could read a bit through our contribution guide. Also I would recommend to pass by in the developers chat to figure out with the other people what can be done. :-)