Skip to main content
We no longer support Internet Explorer. Please upgrade your browser to improve your experience. Find out more.

Jarek Majewski: ‘Game development is hard, prepare for a lot of work and don’t be discouraged easily’

We recently caught up with Jarek ‘MindJar’ Majewski to talk game design and how the Affinity apps fit into his workflow…
Who is Mindjar?

Hello, my name is Jarek Majewski and Mindjar is my (for now) one-man company.

I’ve done many things in the past—all of them were art or graphic design related. I was doing illustrations, print design, compositing, and video commercials, websites, and app interface design but none of the things brings me more satisfaction than developing games, so no matter what I start doing, I always go back to it.

I do everything from game design and art, to programming and sound design. I only leave composing music to professionals, because of my exceptional lack of talent in this field.

Making games gives you almost godly power—you are creating whole worlds with their own set of rules, story, and characters. It gives me so much satisfaction and this is why I love it so much.

To create these worlds, I use mainly three tools—Affinity Suite, Unity 3D and Spine 2D for animation.

How did you find out about the Affinity apps?

When dealing with digital art, most artists started with Adobe products which was how I started, but I wanted something better—in terms of pricing, performance, and interface. I’ve tried to switch to other software for many years, but there was always something missing.

From time-to-time I’ve searched the internet for similar software, but with no luck. Then one day I bought a new shiny iMac and discovered Affinity Designer, which was the only app from Serif back then.

I immediately fell in love with it—it was good-looking, fast and responsive, with many features and an intuitive interface.

Now I have both Affinity Designer and Photo in all three versions—Mac, Windows and iPad.

Tell us about your latest project, Ultimate Action Hero!

Ultimate Action Hero is 2D platformer and shooter game made in Unity. You play as a stuntman who desperately needs the money and takes a job in a film studio as a stunt double of a famous action movie star who apparently doesn’t do his own stunts.

One part of the game lets you wander around the movie studio, talk with the crew, do some chores that other studio employees are afraid of, or explore the secrets of the building and its residents.

But then you stand on the stage in the spotlight in front of cameras. The director shouts famous: “Lights, Camera, Action!” and you are transported in the middle of a movie scene. Now you’re an action hero—you punch, kick, shoot, blow things up and do other things right from action movies.

You can be all the iconic badass movie characters and replay your favourite action scenes.

All of that in a colourful setting and with the accompaniment of synthwave music from NIGHTRUN87, MikeOST, and Biodrive.

Game promotional banner at Szlamfest 3. My music artists - MikeOST (left), NIGHTRUN87 (right) and me in the middle.
Which tools or features are the ones that stand out to you with Affinity and is there anything you’d like to see added in?

I fell in love with the fluidity of the Affinity apps, the ease of use of vector tools and overall experience. The consistency of Affinity apps is another major plus, the way you can flawlessly switch between them to use another workflow.

It’s great that almost every change can be done in a non-destructive way. You can come back and tweak some aspects later. This is important when making art for games because game design is based on constant iteration.

The same goes for vector shapes—there are plenty of them and you can change their parameters whenever you want. Shapes like Donut, Star or Cog are a quick way to prototype objects and they can be changed easily later.

I can go on and on describing all the features I use, but there are some things I really miss:

  • Vector brushes. I mean 100% vector brushes which could be converted to outlines.
  • The pattern making feature. Games use a lot of tile-based assets and repeating textures. It would be nice if Affinity supported the creation and use of seamless vector patterns. Right now you can get around that using symbols, but it’s not exactly intuitive. It would be nice if there was an option for an object which is partially off the canvas to extend it to the opposite side of the canvas. And using vector patterns for fill would be a cherry on top :)
  • Deformation. I’d like to see some deformation/warp for vector or group layers. Something similar to the live perspective filter, but more robust. Sometimes you have to deform some object a bit to make some variety.
  • Live Asset Library. Designing games require me to make a lot of mockup screens and to reuse and share assets between different affinity files. I’d love to see more robust assets and symbols integration. For example, if I change the look of the window on the building in one file, the changes are shared with other files using that same window object. Or for example when making UI—changes made to the button in the Assets Library propagate to all the files that are using this button.
  • Better integration with Unity. Unity is one of the most popular game engines and there are a lot of developers using Unity+Affinity combo. Right now exporting PNGs from Affinity to Unity is pretty good, but I’d like to see an easier affinity to Unity 2D animation workflow. Something similar to Spine 2D integration.

On top of that, I’m also looking forward to some animation/VFX/compositing app added to the Affinity Suite :)

I think that’s all. Affinity apps have many features and there are only minor quirks that keep the app from reaching perfection.

What is your philosophy of game design?

When designing Ultimate Action Hero I wanted to bring true platforming to the side-scrolling shooter genre. Sure, there are many 2D shooters with platforming elements, but the platforming parts aren’t too expanded and demanding. I was wondering what would happen if you give a gun to Super Mario, Super Meat Boy or Rayman?

Ultimate Action Hero has a cartoony look but it first started as pixel art. It didn’t survive very long though, there are too many pixel art games now and for me, it’s a bit like taking the easy route. We have high definition screens now, so why waste those precious pixels displaying pixelated graphics?

I’ve chosen to use the pixel art rules such as limited use of colours or clear shapes and build upon that. I went into vector art. Affinity Designer was the perfect app for that.

I’ve started making assets for the game the same way I would use pixel art—limiting the use of colours and drawing clear, simple shapes. I was pleased with the results. I’ve called this approach HD Pixel Art.

Pixel Bus
Vector Bus

Going vector allowed me to make artworks that are easily scalable. The same graphic could be used in-game and in print materials like t-shirts or banners. It leads to more consistency—things you see on a poster are the same assets used in-game, just scaled up! Also, everything I make is recyclable—I can easily reuse shapes, change colours and make more variety in objects in less time.

In the non-technical aspects, I want to make my game to look good in motion, be fluid and fun to play and entertaining to watch. I think I’ve achieved that, but that you’ll have to check for yourself when the game comes out.

What advice would you give to aspiring game developers?

Ultimate Action Hero was born long ago—I made the first sketches in 2010. I abandoned the project because I thought I’m lacking the skills to be able to finish it. Knowing back then what I know now I would go and start making this game anyway.

My first advice for people who want to start developing games is that you should start even if you’re not feeling ready. You’re never ready. There will be always something blocking you from starting—there will be always a new skill to learn, a new tutorial to watch.

Game development is changing rapidly, so there will always be new knowledge. Every month brings new technology. Just learn the basics and start despite fear and doubts. You will learn, grow and become an export along the way.

For your first project keep the scope as small as possible. Just focus on finishing your first game and don’t feel discouraged if your game fails or something goes wrong. There will always be some setbacks and you rarely make something huge for the first time. See what was good, and what needs improvement.

Game Development is hard, prepare for a lot of work and don’t be discouraged easily.

Last advice, maybe the most important one—believe in yourself and your game. Confidence in what I do allows me to be where I am now.

My game won the second prize in the Unity 2D Challenge—I considered not to participate in this contest, but a few days before the deadline I thought to myself ‘if I don’t do it, I’ll regret the wasted opportunity’. I managed to finish the game demo and submit it a couple of hours before the deadline. It was worth it, and the prize gave me another reason to continue working on the Ultimate Action Hero.

So have faith, be confident and confront your game with the world as soon as possible. The results may surprise you. And in the worst-case scenario, you’ll avoid wasting time working on something that sucks :)

What is your workflow for creating animated graphics for games and which apps do you use?

I always start the analog way—with pencil and paper. There’s something very natural in using pencil that lets me bring my ideas to life easier. Then I just take a picture of the sketch and move it to Affinity.

For Ultimate Action Hero I’m using Affinity Designer. I move the sketch layer to front, set its blending mode to Multiply and lock it. That way I can always see my drawing. Then I just use the pen tool to trace the sketch—I try to keep the shapes as simple as possible and use flat colours. I use symbols a lot, to duplicate objects when making small repeating elements like bricks or to make a seamless pattern or texture.

Creating the Janitor character in Affinity Designer

The finished object is added to the Assets Library—that way I can reuse it in other files when doing mockups of locations. To use objects in Unity I just switch to Export Persona and select layers I want to use. This is a great time saver and when I want to change something it makes updating sprites in Unity a breeze.

When I want to make animated 2D characters I use a similar workflow, just keep one character per file. I use Export persona the same way, but this time I use Spine JSON option in Batch Builder. When I open this JSON file in Spine 2D my character is imported into Spine with all the body parts in place and ready to be rigged and animated. It’s just that easy.

Office scene created in Affinity Designer
The same room but this time in Unity with added effects.

There are also smaller animated elements—I use Unity’s 2D animation for that. The workflow, in that case, isn’t perfect, but it’s a rather new feature and maybe it’ll get better with time. Unity’s 2D animation works best with PSD importer which imports PSB (don’t ask me why it’s called PSD importer) files into Unity and makes them ready to be rigged and animated. PSB files are very similar to PSD, but allows for larger image sizes. But Affinity doesn’t support PSB! Don’t worry, you can just export PSD and change the file extension to PSB. It’s a bit annoying, but it works. This way has another small inconvenience—all the parts need to be flattened before importing.

But after importing the file into Unity every layer is set in place and ready to be rigged just as in Spine.

What are the biggest challenges for you in designing a game?

When making a game as a solo developer You have to wear a lot of hats—you have to be a game designer, programmer, artist, take care of marketing and business side of things. It’s hard to juggle all of this and sometimes the progress is stalled because of that.

Games are the most advanced and complex of all the mediums. You can have a story like in a book, music and moving pictures like in the movies, but also there’s another dimension—interactivity. When designing a game you need to always consider the game rules, player interactions, their choices. There are always some things that you can’t predict when designing aspects of your game.

In terms of art, You have to always choose between the best quality of the image and it’s size—some devices have limited memory and graphics is one of the first parts when considering optimisation.

What is a typical day for you?

Besides working on my game, I always want to learn a new thing every day—if it’s programming, audio or animation. When it comes to developing games it’s a constant learning process—I’m learning while developing games because there are always new challenges and You have to find ways to overcome them.

I’m making a game about action heroes, so I try to rewatch some of the movies I’ve seen in the past or see some new ones.

Physical activity is also important so I do it every day: some pushups or jogging gives me a boost of energy to work.

Every Saturday on social media there’s a tradition of #screenshotsaturday—game developers from around the world are publishing snippets of their games. I’m taking part in this too, working on a few seconds clip of my game and it’s new features.

When and where can we buy your game?

The game is still very early in development so I don’t have an exact release date yet. I’m also looking to get the funding for further development so it also depends on that. But you can look for it on PC, Nintendo Switch and maybe other platforms too.

Finally, what are your top five games of all time?

In no particular order:

  • Half-Life 2
  • Halo series (parts made by Bungie)
  • Oddworld series, mainly the Oddworld: Stranger’s Wrath
  • Castlevania: Symphony of the Night
  • Final Fantasy VII

You can keep up to date with developements on Jarek’s website, follow him on Twitter and Facebook or join him on Discord.