Creating awesome GUI for you game dev tools with ImGui and SFML. Part 1.

This is the first part of tutorial about Dear ImGui (AKA ImGui) and it’ll show you how to set it up with SFML. The second part will be library agnostic and will talk about common ways of doing stuff in ImGui, some awesome widgets and some useful STL overloads.

examples_01

Different ImGui widgets (taken from ImGui’s github page)

Introduction

Having good content creation (level editor, resource editor, etc.) and debugging tools for your game is very important and can lead to productivity and creativity boost.

Here are some examples of tools I managed to make with ImGui for my game:

Level editor:

Animation editor:

(It was possible to add ability to change members of C++ objects with ImGui by doing some template magic, maybe I’ll write an article about that later!)

As you can see there’s a wide range of widgets that ImGui can provide and there are lots of other great examples of how other people use it here. Continue reading

Re:creation dev log. January-February 2016. Better art, sounds, cutscenes and more!

Just a short info for those who have never heard about my game.
Hello, my name is Elias Daler and I’m a solo developer who is making Re:creation in my free time. It’s done in C++ with SFML and Lua!

Re:creation is an action adventure game about the undead knight who wants to free undeads from the humans who use undeads as slaves or practice dummies. The unique mechanic of the game is called recreation which allows you to control dead people with your ghost gaining their abilities to solve various puzzles. Here’s an example of this puzzle.

u9cys5p

Read more about the game here.

 

Back to the dev log…

Two months have passed since the last dev log. I had lots of time to work on the game and here’s what I’ve  managed to work on.

Better art

Yet again, another graphics improvements! Change of the perspective was quite an improvement, but I’ve also realized that I can improve other stuff too.

There’s more depth to characters and surroundings, the colors are used better, etc.
There are more graphics improvements which I’ve done recently (for example, I’ve improved main hero’s sprite a lot), but I’ll show it off a bit later.

Here are some comparison screenshots!
ku1rd35
izcnoc7

There are also subtle things that made game look better!
xdywsa3

rgrbjss

Continue reading

Re:creation dev log. 2015. The most productive year yet.

It’s time to summarize what I’ve done during this year with Re:creation. It has been very good year, I’ve managed to do and learn lots of stuff.

Before I write about the stuff I’ve done I want to thank everyone who followed my progress and provided feedback. This stuff is really important for me and always keeps me motivated. With your support I never feel doubt about my game, I never want to stop making it. Thank you.

Special thanks to SFML community. It turned my dev log thread into a very cool discussion and helped me out with lots of stuff. This level of support is much more than I’ve ever expected and it’s very heartwarming.

I’ll show the most interesting stuff I’ve done and then explain some in more detail.
Some screenshots are taken at different parts of the year, so they may differ a lot!

Some gameplay gifs to get you started:



This one is my favorite gif so far. It really shows a lot of stuff I’ve made this year.

Continue reading

Re:creation dev log. April-May 2015. Recreation mechanic, archers, event system and more!

Last two months were pretty awesome. I had lots of free time and was able to implement lots of new stuff!

Recreation mechanic

Let’s start with a gameplay gif:

It’s another example of recreation mechanic.
For those who don’t know, recreation mechanic is the main mechanic in my game. When undead hero kills people, he can leave his body and control dead people with his ghost. He gains their abilities to progress through the game and solve various puzzles. But he can’t leave his body behind for a long time because he can’t carry the hammer while controlling other people. The hammer can do some stuff which normal weapons can’t. (break some floors, for example)
This hammer is very heavy so he can’t carry other weapons. So, for example, in order to shoot arrows, you need to kill archers and control them with your ghost.
He can also use his ghost to reach inaccessible areas. But this won’t be very useful if there are no corpses lying there because he won’t be able to interact with the world this way. But it has another use: you can look around and see what you have to deal with next. This will be very helpful when solving complex puzzles.

Continue reading

Re:creation dev log. March 2015. Graphics improvements, entity inheritance, improved state machines and more!

This month was great. I finally got in the flow of development and managed to get lots of things done. I worked hard to make game look better and here’s the result. Compare old screens with new screens:

October 2014

 

March 2015

Continue reading

Re:creation dev log. September 2014. Drawing art, being a solo dev, fixing bugs.

Lots of time passed since the last dev log. How’s the game? It’s doing pretty well.

Some things changed, the most notable thing is that I’ve become a solo gamedev now, because the artist abandoned the project. Every sprite you see in the latest screenshots was drawn by me.

Being solo dev is hard, very hard. I spend lots of time practicing art, drawing sprites, animating them and trying to make them as good-looking as possible without spending too much time. And I still have to do programming, scripting, designing and story writing!

Continue reading

re:Creation week #4. New graphics, chests, doors, screen transitions

Previous weeks:

This week was totally awesome!
Dmitry has redrawn lots of graphics and the game looks a lot better now.
We’ve also decided to make character proportions more realistic which is also great.
Here’s the graphics comparison

Continue reading

re:Creation dev log. Week #2 and #3. AI stuff and vacation

Week #0: Preparation

Week #1: Things are getting bigger

Week #2 and #3. AI stuff and vacation

I started to prototype the first “real” level of the game. As I was working on it, I realized all the flaws of level editor and features it lacked of. So I worked a lot on the level editor!

A lot of time was also put in optimization. Release build was always working at 60 fps without a problem, but as an object counter grew bigger and bigger Debug build started to slow down, so I decided to optimize my game a bit and now it’s running at 60 fps on Debug too. Neat.

I was also working on AI for some time. First I got NPC to go to the specified point of map.

I accidentally swapped walking animations and results were hilarious.

Continue reading