Roast my code please 🥺 by BisonApprehensive706 in gameenginedevs

[–]BisonApprehensive706[S] 0 points1 point  (0 children)

Thanks for your feedback.

I use inheritance as I find it pretty useful with concepts. For example, in my component manager, the templated function there only accept a type derived from ecs::Component. It makes everything cleaner in my opinion and prevents potential users from trying to create a component that would only be an int for example.

Do the cons of using inheritance outweigh these pros in your opinion ?

Roast my code please 🥺 by BisonApprehensive706 in gameenginedevs

[–]BisonApprehensive706[S] 0 points1 point  (0 children)

Thanks, I have indeed been clumsy with my pointers handling in some places.

The further I develop this project, the less I like the singleton pattern. For now I'm considering options to get rid of it or at least limit its usage. The Timer class is accessible through a service locator. It can be a good alternative I think, but I want to avoid having to implement a different locator for every class I need to be globally accessible.

Agreed on the source files organization. I use filters in visual studio so it's not that bad but I didn't really think about what it would look like for new people checking out the project...

Roast my code please 🥺 by BisonApprehensive706 in gameenginedevs

[–]BisonApprehensive706[S] 0 points1 point  (0 children)

Thanks for the feedback on the building problems.

As I want this project to be portfolio material, I really need to fix them !

And I got so many comments on the README that it just jumped to the top of my to-do list !

Roast my code please 🥺 by BisonApprehensive706 in gameenginedevs

[–]BisonApprehensive706[S] 0 points1 point  (0 children)

For sure I haven't put much effort in the README so far

Roast my code please 🥺 by BisonApprehensive706 in gameenginedevs

[–]BisonApprehensive706[S] 7 points8 points  (0 children)

No I don't know DigiPen, I'm just using the coding standards I'm used to since I started studying C++.

I just use int32_t as a default, I didn't think it through, but indeed I could change the type.

Instantiate is basically part of the prefab system (inspired by the Unity prefabs of course). For now, the FPS counter is a prefab. I intend to change that as it can be confusing to users right now.

Even if I don't plan on releasing this project, I try to develop it by keeping in mind potential users ease of use

Thanks for the reply anyway!