- Home /
Pixels per Unit / Pixel Perfect Shadows, possible?
I'd like to know if it'd be (reasonably) possible to have pixel-perfect shadows in Unity. To explain: Let's that we create a pixel art-based game (maybe something like Minecraft). Let's say we have 16 pixels per Unity world unit (a common size). The shadow a light creates should only either fill one pixel on a texture completely or not at all. Here is an image I created to better illustrate what I mean:
The yellow sphere is the point light and the walls have a grid to show the pixel resolution. I now next to nothing about shaders, and I assume that it would break down once angles surfaces are used, but it would still be a cool effect to have and it would eliminate the need to have projectors or integrated sprite shadows, instead being able to cast accurate, but still pixel-look retaining shadows.
Answer by jebemti · Feb 26, 2016 at 08:39 PM
Not likely.
You don't have much control over the shadow system. The closest you can get to this effect is to set the ShadowResolution to "Low Resolution" but you can forget about having sharp edge between dark and light.
Maybe for the good, since that kind of shadows would look really unnatural and might turn some players off. Smoothed out shadows might go well with pixel art style games if done well. It's often the contrast between simple textures and good graphical effects that make the style interesting.
And, since you've mentioned it Minecraft had smooth shadows too :P
Yeah, I only referenced $$anonymous$$inecraft because it also has 16-pixels-per-unit textures. Unity's built-in shadow system is probably out of the question, but maybe there exist other options... I have seen vertex-color-based shadow solutions, or the stencil shadows that are used in some top-down games (also used for line of sight).
Your answer
Follow this Question
Related Questions
2D sprite shadows onto 3D objects 0 Answers
Sprite Shading 1 Answer
Light creates distortion on mesh? 1 Answer
No shadows. 2 Answers
How come my car-objects hood doesn't cast any shadows? 1 Answer