WW1 - No Man's Land Devlog 15 - The project is still on!
The project is still on!
It's been a ridiculously long time since my last update here. The huge reason for the delay was due to a massive shift I made: I decided to move the entire project out of Unity and build it using SDL, Open GL, and C++.
This was mainly because:
- I wanted to learn how common functionality offered to us by a game engine works under the hood, such as:
- Rendering 2D Sprites, Text, etc.
- Tilemap support
- Tileset importing
- 2D Animation support
- Dynamic scaling and repositioning of game objects when window size changes
- Asset management
- etc
- I also wanted to use the tools I built (tileset importer, tilemap editor, etc) in an actual game of my own in order to prove that they are indeed functional
- Unity was seemingly going down a shady path with their runtime fee - this has been cancelled by them since then, but this truly provided the final spark for me to embark on trying to make my own game without the aid of a game engine made by others
- I think making a game outside of a game engine, while it may take longer, can teach a programmer a lot of cool things that will be useful in their professional careers (hopefully)
The switch to SDL, OpenGL, and C++ was a bit of a process:
- I had to learn SDL - I knew nothing about how it works 1 year ago
- I had to relearn OpenGL - I dove into some of this couple years ago, but had to revisit tutorials to refresh myself
- I had to set up a SDL project that I can then create the game within - this consisted of creating a lot of supporting tools I would need, such as a 2D Animator tool, a Tileset and Tilemap editor, Spritesheet importer, etc.
- I then had to rewrite all of the C# code from Unity into C++, and as such
- While setting up the SDL project, I also wanted to ensure I can run the project on Windows and Mac, which led me to learning a bit of CMake, a popular tool in the C++ world for cross-platform development
Item 3 listed above is actually still an ongoing thing, as I am constantly running up against missing tools I need in order to easily make this game, but as of now, the original game has been completely removed from Unity and exists within an SDL project.
There's a ton of new things to show (most of them dev tools I had to create given my abandonment of Unity). To keep things digestible then, I will split this over a series of about 4-5 devlogs, finishing it off with a new devlog discussing some major reworks to the movement system, along with a brand new morale system that will allow players to launch massive charge attacks into the next trenchline with their entire army!
To get things started then, i've got some animation updates!
Finished Animations
The last time I showed these animations, they were still rough, and none of them were implemented. Here they are once again cleaned up.
These are also all in-game, but due to some of the movement system reworks, the battlefield state is currently under some deep construction, so will show those in a future devlog!
New Animations
The idle states of the troops seemed a bit dry, so I went ahead and added some idle frames for them to loop through as well:
Small peek of what the game looks like after the move
So as mentioned, I moved the game completely out of Unity and completely remade it with SDL, OpenGL, and C++. As proof, here it is running!
In the vid:
- You can see that the game knows how to auto-scale itself accordingly when the window size changes - in fact, you can set the window to any size and pillar-boxing is used to keep everything looking just right, though in the final release of the game I might set a min resolution so you can't scale the window down to a crazy small size
- You can see a couple of the devtools I had to build in order to more easily create this game, such as a simple 2D Animator, a Game Object inspector, and much more. I will dive more into each of these in my next devlogs.
- You can see the main menu fully up and running, as before
- You can see the battlefield scene, with some new UI at the top left and right corners that will be used for the new Morale system I am working on - more on this in a future devlog
Closing remarks and useful resources
In order to learn about SDL, OpenGL, and C++, I found these resources to be super helpful, for those who might be interested:
- SDL - Lazy Foo' Productions
- OpenGL - Learn OpenGL
- C++ - There are tons of great resources out there, I found these youtube channels very informative though:
- javidx9
- Has tons of great tutorials using minigames that go over some of the fundamental things all games need, like physics, the game loop, etc
- The Cherno
- Has a great tutorial series on C++, and even OpenGL
- Game engine series is also super informative for some of the basics on Game Engine development
- javidx9
Thanks for stopping by!
Will plan to do a devlog on a weekly basis from here on out as I take this game to the finish line.
In the next devlog, i'll be showing the Animation editor I had to make in order to more easily import the animations I am creating in Aseprite.
WW1 - No Man's Land
A turn based game set during WW1
Status | In development |
Author | Diego A. |
Genre | Strategy, Action |
Tags | 2D, Top-Down, Turn-Based Combat, Turn-based Strategy, War, World War I |
More posts
- WW1 - No Man's Land Devlog 1633 days ago
- WW1 - No Man's Land Devlog 14Sep 03, 2023
- WW1 - No Man's Land Devlog 13Aug 07, 2023
- WW1 - No Man's Land Devlog 12Aug 04, 2023
- WW1 - No Man's Land Devlog 11Jul 09, 2023
- WW1 - No Man's Land Devlog 10Oct 15, 2022
- WW1 - No Man's Land Devlog 9Aug 10, 2022
- WW1 - No Man's Land Devlog 8Jul 14, 2022
- WW1 - No Man's Land Devlog 7Apr 15, 2022
Comments
Log in with itch.io to leave a comment.
Great to see this project still going, look forward to future updates. Best of luck!
Thanks!