NormalPainter : Paint normal maps using joysticks or pen tilt as normal direction (Free + Open Source)

Hello there! Introducing NormalPainter, an image editor I made for handpainting normal maps. You can control which normal direction you want to paint by pointing your joystick or graphical tablet pen in the correct direction. This makes it much easier to pain normal maps instead of having to sample the direction everytime. There is other features such as pinning which let’s you choose the direction with even less work. Check the video for a quick showcase:

It sure is a very specialized software. Handpainting normal maps is not something you have to do in most scenarios (generating them is often more convenient). If you are looking to make a 2D cartoonish game with dynamic lighting (like mine!) I think it’s very useful. At least it was useful to us in the development of our last big update.

The software is entirely free and open source.


Source code:

That’s actually a pretty cool bit of software!

1 Like

Nice tool, thanks for sharing!
Your MakerKing game is very impressive too.

Great to see it’s still possible for a small two-man team to publish innovative and polished games in java. If you had your time again, would you have chosen Unity or not?
1 Like

Thank you very much!

For a project like MakerKing, I’m not sure Unity would have been better. It is a very specialized game with very specialized needs. I find that most of my time has been spent doing things that would not have been much faster in Unity (player stats, leaderboards, level sharing system, multiplayer server, very custom UI for level editor and mob editor etc.) Java sure has it’s disadvantages, the biggest one that I can’t do on console easily with it but as far as engine features goes, my project is too custom to be easy to do with big engines. Engines like Unity are made to build conventional games, if you make a Maker-type game like mine or Mario Maker, you’ll end up running into problems that require custom solution, so using Unity or not will not change much.

But if I were to start it all over again, I’d probably build my engine in C++ or another native language (D? Rust?) so that it’s easier to port everywhere. Unity could be an option but I really like custom engines.

1 Like

That’s really interesting, thanks for your reply.
Yes the monster-construction and multiplayer features are quite amazing and cool.
I’ve heard that many game artists are very proficient and productive using Unity and Unreal which can be a major advantage in art-heavy games.
I saw this guy build an impressive diablo-like game in Unreal engine and was shocked at his productivity. It’s amazing how easily he was able to leverage existing art and animation assets:

Yes I have to admit 3D is a very good reason to use Unity or Unreal. Since I’m in 2D I don’t need as much engine features. Nice video, it sure looks very cool!

1 Like