No I haven't seen that. The update is made in LateUpdate so it is done prior to the next frame after the current frame has already been drawn. Are you perhaps targeting high frame rates with your project and the code isn't optimized enough to keep up? I haven't tested the build on games running say, at 240 FPS...
DirePixel
Creator of
Recent community posts
Yeah that would be a Unity limitation if I am understanding correctly. Just to be sure I would retrace your steps. If you switch back to the Unity default sprite-shader material, does the mask work? If not it might be your implementation of the mask, otherwise I'm sure it's nothing that can't be fixed. It usually can with a little bit of Googling or reaching out to the community through their Discord or forums.
So this really depends on how you are managing your spritesheets. I personally find it easiest to merge p1, p2, p3, p4, etc. into a single spritesheet. If you don't follow that method then you really need to follow 2 steps.
1) You need to call the SetTexture method of every PaperDoll script on the character to change to the appropriate directory where your combat sprites are located.
2) Then you would need to call a SetTexture on your tool A / tool B folders to change to the appropriate tool, directory, etc. before finally enabling your tool layer(s) until the end of the animation before disabling them again.
However, if you merge the different animations into a single spritesheet you can forgo step 1 and move on with step 2. How you use the paperdoll is really up to you, it isn't meant to be a end all be all solution, and will in the end still require some problem solving on your part to incorporate it into your own project the way you need it. Using the weapons/tools requires quite a bit of finesse and micromanagement that extends beyond PaperDoll.
P.S. - It should be worth pointing out that due to the unique usage of the tool spritesheets, these layers will likely not be part of the paperdoll as children, and instead will simply be a GameObject containing a SpriteRenderer and Animator component attached to the character that you then hide/unhide the tool and call the needed animation as appropriate.
Yes, and not just that but you also need to have the same number of sprites in all your spritesheets. So if for example, you have a tool renderer, and there is a frame where that tool does not need to be rendered because the character would be standing in front of it for example (if facing up). You still need to slice the sprite for that empty sprite regardless. If that makes sense :P Glad you got it figured out though!
It can be easily tailored to use the farmer sprite system. It was originally designed for Mana Seed's first character base, so the preconfigured options may not work. You would have to have a very basic knowledge of creating materials from shaders and using ShaderGraph. After that you can generate and configure materials in just a few minutes. I use this with the farmer base myself, with just a few tweaks.
Hello! Great asset btw, but in the later versions of Unity (mine 2022.3.13f1) they include 2D extras and won't allow you to remove it due to dependencies. If you import this it generates duplicate script errors and you can't use the pre-generated Unity rule tiles that you included. If you try to pick through and remove the duplicates included in your asset, by the time you get to no warnings or errors, the included rule tiles no longer function. If you cannot resolve this can you at least provide a rule tile setup guide to recreate them?
Yes, but I want to make sure you have a smooth experience if you choose to purchase. If you do purchase, let me know how those scripts work for you, I may update Paper Doll to include them. I know my opinion may be biased, but for an asset like Mana Seed, this paper doll will make your life a million times easier. Mana Seed is almost unwieldly without it lol, which is why I made it. All the tools I've made I consider essential to stress free Mana Seed game development (Mana Seed Shaders for Unity, Paper Doll, Mana Seed Tools). Together, these tools are a power house. I wish you the best of luck and thank you for your consideration. :)
This is a tricky situation, you are both correct and incorrect. So, essentially look at it this way, the Paper Doll is using the frame numbers of the base animation (the character). Since there are no breaks in the base animation, this would require some creativity on your part to achieve in terms of extending the base spritesheet to allow for your scenario to play out. In the end, I feel it would be a dramatic waste of time and resources on your part to achieve. Instead, I would suggest a much simpler solution to approaching the problem, that being a scripted animation helper. Put in animation events at the points where the object must be rendered in front or changed to render behind again. Have a script on your TLA & TLB layers that accept these events and change the sorting layer or Y position of the renderer accordingly (if using custom sort order of (0, 1, 0) on your render pipeline - recommended). But still, use Paper Doll for all the layers, including tool a & b as normal!
I haven't double-checked these scripts, I just wrote them for you in pastebin. So they might require some tweaking. Give these a try to resolve your issue. Hope this helps!
So with these, just attached CharacterAnimationHelper to your BaseRenderer. Point the animation events in your animation at the OnRenderToolABehind. OnRenderToolBBehind, OnRenderToolAFront, and RenderToolBFront. Then you'll attach ToolRendererHelper to both Tool A & Tool B layers. Lastly, with your Base Layer selected, point the Unity Events firing from the Character Animation Helper script to your Tool A & Tool B layer as appropriate. Again, you may have to adjust the scripts a little for syntax and logical errors, but they are very simple scripts so even a rookie could handle it. :)
Alright, I figured it out. The problem isn't with the tool, it's the layout of your output folder. In your output folder you MUST have the folders 0bot, 1out, 2clo, 3fac, 4har, 5hat, 6tla, and 7tlb. If you remove those folders it will generate this error upon trying to save the packed image file. The layout of your input folder doesn't matter, you can use the original file structure included in Seliel's zip files, or throw just the .png files in there and it will work just fine. But in the output folder, you MUST have those folders present that I mentioned.