Share this project

Done

Share this project

Done
A tool providing a new generation of bulky one-click normal maps from 2D sprites like pixel art for dynamic lighting effects in games.
A tool providing a new generation of bulky one-click normal maps from 2D sprites like pixel art for dynamic lighting effects in games.
A tool providing a new generation of bulky one-click normal maps from 2D sprites like pixel art for dynamic lighting effects in games.
467 backers pledged $16,255 to help bring this project to life.

About this project

Sprite DLight - Instant normal maps for 2D graphics project video thumbnail
Replay with sound
Play with
sound

Sprite DLight - Instant normal maps for 2D graphics

$16,255

467

Sprite DLight can be backed via Paypal here!

                        

Re-Rendering

"Super Aged Warriors Alpha 2 HD Turbo Special", ©2014 AlbertoV (DYA Games), re-rendered for different environments with the normal map and lighting of Sprite DLight
"Super Aged Warriors Alpha 2 HD Turbo Special", ©2014 AlbertoV (DYA Games), re-rendered for different environments with the normal map and lighting of Sprite DLight

Artistic control

A few quick & dirty adjustments to the shading of the orb and the beard lead to a remarkable improvement in the normal map
A few quick & dirty adjustments to the shading of the orb and the beard lead to a remarkable improvement in the normal map

Click here for the full Stretch Goal update!

Thanksgiving gift: Sprite sheet animation preview feature for the Pro version

"Selen Run Animation" from the game "Timespinner", ©2014 Lunar Ray Games, animated dynamic lighting preview of the sprite sheet in Sprite DLight
"Selen Run Animation" from the game "Timespinner", ©2014 Lunar Ray Games, animated dynamic lighting preview of the sprite sheet in Sprite DLight

1. Open a sprite
2. Press a button.
3. Save the generated normal map. Done!

Left: "Ghost Pizza", ©2010-2014 AlbertoV (DYA Games) - Right: Surface normals generated by Sprite DLight
Left: "Ghost Pizza", ©2010-2014 AlbertoV (DYA Games) - Right: Surface normals generated by Sprite DLight

While pixel art and 2D games are far from dead, modern techniques like normal mapping are just about to find their way into 2D games, because they make it easy to use beautiful and atmospheric dynamic lighting effects.

Dynamic lighting preview of Sprite DLight
Dynamic lighting preview of Sprite DLight

So why haven't we seen a lot of 2D games make use of this so far?
Simply because the process of creating consistent normal maps has been too complicated and costly, especially for animated art.

This is where Sprite DLight comes in:

The tool does all the work for you in a matter of seconds. Without any effort.

How is Sprite DLight different from existing normal map generators?

There are two kinds of normal map generating tools available:

  • Common bump mapping tools/plugins:
    They can create nice effects for textures, but they tend to mess up edges and are simply unable to create a voluminous normal map from a sprite.
  • Lightmap-combining normal map generators:
    They can produce normal maps of a very good quality, depending on the skill of the artist who draws the required 2-5 lighting profiles. However, providing the tool with multiple hand drawn versions of each sprite is time-consuming and requires some artistic knowledge.

Finn Morgan made a huge step by bringing dynamic lighting in reach of 2D game developers with his amazing Sprite Lamp, which allows for dynamic lighting in a hand painted look by combining differently shaded images of the subject, drawn by an artist.

But what if we want to use normal maps for all characters and objects of a game?

Sprite DLight is a quick and easy solution.

No drawing needed, just press a button and have the normal map created from the original sprite!

Sprite sheet "Leina Jump Animation" from Renegade Death, © 2015 developed by Enthrean Guardian and Hinocyber, blending into the normal map generated by Sprite DLight
Sprite sheet "Leina Jump Animation" from Renegade Death, © 2015 developed by Enthrean Guardian and Hinocyber, blending into the normal map generated by Sprite DLight

For Sprite DLight, generating a normal map from a sprite sheet of multiple animation frames is an easy job.

Calculating the normals takes almost no time and results in a uniform shading for all frames.

Dynamic lighting preview of Sprite DLight
Dynamic lighting preview of Sprite DLight

With various fine-tuning options, the generated maps can be adjusted to fit the individual look of the input image and its desired three dimensional representation.

What else can be done with Sprite DLight?

The most important ability is of course easy and fast generation of the assets required to implement dynamic lighting in 2D games, based on standard 2D art.
But there are some more neat things you can do with the tool.

Remakes/Mods of classical games
Sprite DLight helps you to do an atmospheric remake of your favourite retro game by simply processing the original sprites.
Unfortunately, I cannot show an example here due to copyright issues, but I can say that sprites in the style of Metal Slug or classical console games look amazing with normal maps.

Skeletal animation & dynamic lighting
You can also use normal mapping in combination with skeletal animation by generating a normal map for the body parts of a character.

Top left: Body parts of "Leutnant", © 2014 Philipp Lauthner, Bottom left: normal map generated by Sprite DLight from a slightly modified version of the original sprite, Right: shader preview in Jonas' Spine Shader
Top left: Body parts of "Leutnant", © 2014 Philipp Lauthner, Bottom left: normal map generated by Sprite DLight from a slightly modified version of the original sprite, Right: shader preview in Jonas' Spine Shader

Pre-rendering
Even if the game engine you are working with does not support the use of shaders, you can still use normal maps generated by Sprite DLight to pre-render your game assets under various lighting conditions for different environments.

"Squirrel", ©2010-2014 AlbertoV (DYA Games), normal map generated by Sprite DLight and different lighting applied in the Sprite Lamp shader
"Squirrel", ©2010-2014 AlbertoV (DYA Games), normal map generated by Sprite DLight and different lighting applied in the Sprite Lamp shader

Asset generation for textures
Another use of Sprite DLight is the generation of normal maps, depth maps, ambient occlusion maps and specularity maps for textures. Using the enhancement options, you can create a voluminous normal map from a simple photograph of a surface.

Tileable normal, depth, ambient occlusion (pro) and specularity maps (pro) generated by Sprite DLight from a texture based on a photograph of a stone surface
Tileable normal, depth, ambient occlusion (pro) and specularity maps (pro) generated by Sprite DLight from a texture based on a photograph of a stone surface
Correct blending (pro)

When working with textures, it can be desirable to combine multiple normal maps.
A common practice is to do this by blending layers in an image editing software via overlays, which does not always produce satisfying results.
Sprite DLight combines up to five normal maps in a mathematically correct way, where the intensity of each map can be adjusted.

Blending of multiple normal maps: the detail texture is blended with 50% opacity on top of the base map (pro feature)
Blending of multiple normal maps: the detail texture is blended with 50% opacity on top of the base map (pro feature)

Sprite DLight will be available for Windows, Mac and Linux systems.

Beta testing is scheduled to start shortly after the end of the campaign. 

Most modern engines, particularly 3D engines like Unity, already support normal map shaders and for a few additional engines, there are already some enthusiastic developers working on shaders to integrate with Sprite DLight's normal maps.

While Sprite DLight mainly concentrates on the former artistic part of dynamic lighting, the creation of assets, I am working on a list, containing links to forum discussions related to shader integration, as well as tutorials and approaches by other people, to provide a starting point for the integration of dynamic lighting with various game engines.

Engine integration link list

How does the presence or absence of shading affect the normals?

In most cases, the artwork you will use already has some kind of shading.

This is fine for Sprite DLight and helps to give the shapes more volume.

There are some cases where extreme shading can result in steps, but the tool provides fine tuning options to smoothen out most irregularities.

If your art mainly features flat shapes, which is often the case when using vector art or very simple pixel art, the resulting normal map will still be bulky, because the shape recognition automatically produces blunt surfaces, which can be furtherly enhanced with a volume boost slider.

While there is some kind of magic involved with Sprite DLights normal map generation algorithms, the quality of the generated map certainly depends on the input image.

Sometimes, you will end up with small discontinuities, such as the eyes of a character being represented as two "dimples" in the normal map, if they were dark areas surrounded by lighter colors in the original image.
Usually, this is not critical to the overall look, but if you want the normal maps to be absolutely perfect, it can be countered with simple adjustments to a copy of the original sprite, which can then be used as the input image for Sprite DLight.
This is very easy to do, however I will provide a tutorial on it.

For optimal results, the background should consist of one plain color (JPG artifacts result in poor normal maps) and drop shadows should be removed.

"Bodyguard", ©2010-2014 AlbertoV (DYA Games), normal, depth, ambient occlusion and specularity maps generated by Sprite DLight
"Bodyguard", ©2010-2014 AlbertoV (DYA Games), normal, depth, ambient occlusion and specularity maps generated by Sprite DLight
Sprite DLight dynamic lighting preview with normal, occlusion and specularity maps
Sprite DLight dynamic lighting preview with normal, occlusion and specularity maps

How will Sprite DLight's normal maps look for my art?

Processing a sprite with Sprite DLight is always exciting. 
"What will my game character look like with dynamic lighting?"
To share this experience, I'm planning to publish previews of user-submitted art even before the beta starts, so please feel free to send me a link to your art via the "Contact me" button on this project page.

I intend to regularly process some of the art I receive this way and to include it in public updates to establish a pool of examples for different styles.

If you would like to see normal maps generated from your sprites, please provide the copyright information and proper attribution for the submitted art and please state clearly that you are the copyright holder and agree that the provided artwork may be publicly shown in conjunction with Sprite DLight.

There's still a few bugs...

Original art from "Bugs", © 2010-2014 AlbertoV (DYA Games), normal map generated by Sprite DLight, dynamic lighting preview in Jonas' Spine Shader
Original art from "Bugs", © 2010-2014 AlbertoV (DYA Games), normal map generated by Sprite DLight, dynamic lighting preview in Jonas' Spine Shader

What you see in the video is what the tool already can do.
All major features work and I can now concentrate on polishing things up.

One of the main goals of Sprite DLight is to provide a simple and pleasant user experience, so it can be smoothly integrated into any developer's workflow.

The code now needs to be simplified and optimized in terms of performance and memory usage and I have to polish the interface and test the tool on different systems.

Some of the more trivial things like batch processing, profiles for user defined settings and drag&drop functionalities are yet to be implemented.

It has always been a dream for me to use colorful dynamic lighting on 2D characters and I am sure that some of you share this vision.

There is still some work to be done to make this tool a professional software every 2D game developer can use, and that is what I need your help for.

I will bring Sprite DLight to a releasable state regardless of whether this campaign succeeds, however, with your support, I can invest some more time to make it more professional and versatile.

Another reason for choosing Kickstarter is that I hope to find a community of sympathizers here, who can give some more feedback to make the tool the best possible.

Screenshot of "Bravery and Greed", ©2014 Theo Torregrossa &  Ivann Dimitrov, a game in development featuring dynamic lighting with normal maps generated by Sprite DLight
Screenshot of "Bravery and Greed", ©2014 Theo Torregrossa & Ivann Dimitrov, a game in development featuring dynamic lighting with normal maps generated by Sprite DLight

What happens to the raised funds?

Around 10% will be taken by Kickstarter and Amazon.
An unknown amount will be eaten by taxes.
100$ go to Steam for the Greenlight submission fee.
Most of the rest will go towards my living cost for the past and future time of development, and to hardware upgrades like additional disk space and a Mac to develop the Mac version on.

Special thanks to AlbertoV from DYA Games for creating the outstanding title sprite for Sprite DLight.

Thanks to Jonas Jelli for writing the Spine Shader Tool used in the video and on this page.

Thanks to Finn Morgan from Snake Hill Games for allowing me to use his Sprite Lamp Shader for previews in the video and on this page.

Thanks to these awesome artists and game developers who gave me the permission to use their wonderful artwork to demonstrate the tool:

Thanks to Katrin Russell for helping me out with project planning, phrasing checks and creative ideas.

Artwork and shaders used in the video and on this page

All artwork and shaders seen on this page and in the video are not part of the software and are only used for demonstration purposes to show the functionality of Sprite DLight.

As such, all art is subject to the copyright of the respective owner and the license under which it was published. 

The sprites used in the headlines are enemy sprites from "Mean Deeps", © 2010-2014 AlbertoV (DYA Games).

"Castle Scout main character" ©2014 AlbertoV (DYA Games), normal map and dynamic lighting preview of Sprite DLight
"Castle Scout main character" ©2014 AlbertoV (DYA Games), normal map and dynamic lighting preview of Sprite DLight

Risks and challenges

Unfortunately, too many creative projects fail because they promise things they cannot deliver or there isn't enough material to convince people of a great vision.

I have enough faith in the success of Sprite DLight and the opportunities it brings for game developers, that I have decided not to launch the project until I can safely say that I can keep all the promises.

That is why I have taken the risk and the expenses to do most of the work before starting this campaign.

There is always a risk of hardware problems or things in the software that take more time to be fixed than I expect them to.
As Sprite DLight is not too far from a releasable state, these could only result in small delays, however, the estimated release date is calculated with a buffer to take unforeseen difficulties into account.

Just in case of something happening that would prevent me from completing the work on Sprite DLight, the source code will be made available.

Learn about accountability on Kickstarter

FAQ

  • Existing automatic normal map generators can be used to create a bump effect for a surface, but they are not able to take the overall shape of characters and objects into account.

    There are great tools that combine hand painted lighting profiles to a normal map, which can result in a better quality than those of Sprite DLight, depending on the skill of the artist, who draws the 2-5 additional images.
    For things like background art, this would probably be your best bet, but painting multiple versions of each sprite for a whole game project with animated characters can be very time-consuming.

    Last updated:
  • The integration is different for every engine.
    I am working on a list of links and tutorials to cover some of the most popular engines.
    While I am trying to get as much information as possible, I won't be able to test everything myself, so the links are more or less just a starting point and a reference to other people's work.

    http://2dee-art.blogspot.com/p/sprite-dlight.html#EngineIntegration

    Last updated:

Support this project

  1. Select this reward

    Pledge $5 or more About $5

    THANK YOU for supporting dynamic lighting in 2D games.
    I will publicly thank you in a tweet. Includes access to Sprite DLight backer updates.

    Less
    Estimated delivery
    5 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  2. Reward no longer available

    Pledge $15 or more About $15

    SPRITE DLIGHT LITE, EARLY BIRD PRICE:
    You get the Lite version of Sprite DLight, plus a Steam key if we get greenlit.
    Includes beta access, which starts shortly after the end of this campaign.
    Thanks for your early pledge.

    Less
    Estimated delivery
    Reward no longer available 30 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  3. Select this reward

    Pledge $20 or more About $20

    SPRITE DLIGHT LITE, KS BACKER PRICE:
    You get the Lite version of Sprite DLight, plus a Steam key if we get greenlit.
    Includes beta access, which starts shortly after the end of this campaign.

    Less
    Estimated delivery
    10 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  4. Reward no longer available

    Pledge $30 or more About $30

    SPRITE DLIGHT PRO, EARLY BIRD PRICE:
    You get the Pro version of Sprite DLight, plus a Steam key if we get greenlit.
    Pro features include the creation of ambient occlusion and specularity maps, the combination of multiple normal maps and a tileable texture mode.
    Includes beta access, which starts shortly after the end of this campaign.
    Thanks for your early pledge.

    Less
    Estimated delivery
    Reward no longer available 30 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  5. Select this reward

    Pledge $35 or more About $35

    SPRITE DLIGHT PRO, KS BACKER PRICE:
    You get the Pro version of Sprite DLight, plus a Steam key if we get greenlit.
    Pro features include the creation of ambient occlusion and specularity maps, the combination of multiple normal maps and a tileable texture mode.
    Includes beta access, which starts shortly after the end of this campaign.

    Less
    Estimated delivery
    364 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  6. Select this reward

    Pledge $75 or more About $75

    SPRITE DLIGHT PRO, INDIE TEAM BUNDLE:
    You get three copies of the Pro version of Sprite DLight at a slightly reduced bundle price, plus three Steam keys if we get greenlit.
    Includes beta access, which starts shortly after the end of this campaign.

    Less
    Estimated delivery
    21 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  7. Select this reward

    Pledge $160 or more About $160

    SPRITE DLIGHT PRO, DEVELOPER BUNDLE:
    You get eight copies of the Pro version of Sprite DLight at a slightly reduced bundle price, plus eight Steam keys if we get greenlit.
    Includes beta access, which starts shortly after the end of this campaign.

    Less
    Estimated delivery
    2 backers
    $
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.

Funding period

- (31 days)