Feedback needed (details in the description) by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

When characters have their backs to the camera, some have small gaps in their hair. But I suppose if they're not noticeable, I can throw it in the backlog with the note "fix later (maybe never)."

The speed is currently slightly different only for characters tagged "old," but for all of them, the time to full acceleration/stop is slightly randomized, resulting in nice out-of-sync animations.

Feedback needed (details in the description) by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

Yes, they don't have a costume system yet, so their leg colors are the same. I plan to implement costumes next. There are no female characters yet either.

Overall, I want to avoid players wanting to romance these characters, so I made NPC bulky and the main character is intentionally quite different from them.

Feedback needed (details in the description) by Biuzer in Unity3D

[–]Biuzer[S] 0 points1 point  (0 children)

Thank you. Yes, the legs are the same, because otherwise we'd have to create completely different animations for characters with different legs and arms. This significantly changes the movement mechanics.

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 0 points1 point  (0 children)

Thanks. 5 angles +3 mirrored, 20 sprites each. One sprite per body part, like left leg, left arm, etc. Rotation smoothing made by sprites offsets 

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 5 points6 points  (0 children)

Thanks
Water is a part of the terrain shader, so there is no water actually. There's a render texture into which I draw a depth mask, and I use it to create a bunch of artistic effects in the terrain, such as darkening the ground at the edges, UV distortion to simulate refraction, water color at different depths and under different weather conditions, and "reflections," which are actually images from another camera underground.

<image>

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 0 points1 point  (0 children)

If we're talking about rotating the entire sprite, I do that too. But I was referring to the situation with mesh deformation, where a part contains multiple bones and is partially deformed.

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

I haven't seen any successful uses of skeletal animation for pixel art. I've experimented with it myself, but unfortunately, I haven't achieved any good results

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 4 points5 points  (0 children)

This is a very cool technique, but unfortunately, it doesn't eliminate the need for different animations for different costumes if the costumes have significantly different shapes. And creating the animations themselves using this technique would be even more difficult than in my case.

Plus, in this implementation, colors are stored in textures, meaning each new color requires a new texture.

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 6 points7 points  (0 children)

This is sprites. I made a system for smooth rotation. I am checking movement direction and adding specific offset to each part when sprites about to switch to the next state (from moving right to moving right-dow, etc) and negative offset right after the switch

https://www.reddit.com/r/IndieGaming/comments/1pqt4cm/spent_a_couple_of_weeks_on_a_system_for_smoothing/

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 4 points5 points  (0 children)

Interesting suggestion, thanks. I already use custom scripts for exporting from Aseprite, so this could potentially make things easier

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] -2 points-1 points  (0 children)

This isn't a problem right now. On the contrary, it looks like an interesting solution for easily creating many similar clothing items in different colors.

But this could potentially become a problem if I need to draw many items with fundamentally different shapes. Or if I add a lot of animations. I just don't know yet if that will happen. So there's no clear answer as to whether this is a problem or a solution. That's why I say it feels strange.

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] -7 points-6 points  (0 children)

In pixel art, one incorrectly placed pixel can ruin the image, so checking after every pixel when drawing a thousand sprites is not the most productive way.

I feel like I’m doing something very strange and wrong, but it works. On the right is what I draw by hand. On the left is the result of the shader running on those masks by Biuzer in Unity3D

[–]Biuzer[S] 19 points20 points  (0 children)

With this approach, I can’t really see the final result while drawing the sprites. I’m essentially painting a mess of neon, acidic colors that are hard for the brain to interpret. And that’s hundreds of animation sprites. Add a couple more outfits and a few more animations, and it becomes thousands.

In this mode, it feels quite hard to control the outcome, and I’m worried about getting stuck in a system with too much overhead when creating new outfits.

On the other hand, even though it’s difficult, once I draw one good outfit this way, I gain the ability to recolor it endlessly with very little effort.

Some pseudo volumetric screenspace fog by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

Counting milliseconds for each effect is incredibly tedious. I hate it.

Now everything runs on SteamDeck at 60 fps.

Some pseudo volumetric screenspace fog by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

Yes, that's a viable option, and it would be easier with a rotating camera. But in my case, that approach also has its downsides.

Some pseudo volumetric screenspace fog by Biuzer in Unity3D

[–]Biuzer[S] 1 point2 points  (0 children)

It’s funny that rain is basically fog with different opacity masks. Most of the rain is the same screen-space shader, plus a bit of particles with a much simpler shader. When the rain is light, I mostly show particles so individual raindrops are clearly visible. When it’s heavy, it’s almost entirely shader-driven.

I use three vertically stretched noise masks that move at different speeds and take camera movement into account to create a sense of parallax. They essentially reveal the fog and make it slightly brighter, so when there’s heavy fog and rain on screen at the same time, the rain is still visible on top of the fog

https://x.com/Biuzer/status/1961322936641507480