Not the breakout clone but I've got animated sprites to work in SFML.

Also, I forgot that I have the hashtag featured in my profile and I haven't used it, so here you go.

I've added projectiles that the player can shoot. I was originally just going to make a simple maze game but I got carried away after getting a hand with SFML.

I've added exit tiles. It just ends the game because I don't have it programmed to have multiple levels yet.

So it turns out that I can't have multiple levels without major reconstruction of the code. C# spoiled me with it's lack of import/include statements and Python was dynamically typed which meant I didn't have to declare the object type right away, so now I have to deal with avoiding recursive includes.

Ugh!

Got a second level. I learned that if you just include a blank class definition of a dependency in the header file and then include the actual header of the dependency in the source file, then you can avoid recursive includes.

gamedev 

Now there are three levels, all of which are derivatives of each other.

gamedev 

Got a camera to work. It's manual but if I plan to actually finish this game, I would probably have it scroll based on the player's position and movement. You can also see that there are tiles outside of the camera bounds. Those were left in by mistake.

SFML has a built in camera called sf::View. It's pretty weird. I'm used to having a 2D camera origin being at the top-left corner just like sprites, but the origin is actually in the center which is something I need to get used to.

I mean, it's kind of justified because it also has support for rotation and zooming (things I have never used). I'm just used to implementing my own camera system and just drawing sprites based off of their positions and the camera offsets, but that not an option here because sprites are automatically drawn based on their position (no manually drawing here).

Follow

gamedev 

>sprites are automatically drawn based on their position (no manually drawing here).

Probably should clarify that. Sprites are manually drawn by calling the sf::RenderWindow.draw() method. It's just that sprites automatically have a set position and you can only draw based on that.

· · Web · 0 · 0 · 0
Sign in to participate in the conversation
Game Liberty Mastodon

Mainly gaming/nerd instance for people who value free speech. Everyone is welcome.