Jump to content

Multiple objects slowing down computer. Transparent mode?


Recommended Posts

I'm curious if there's another mode, possibly an "outline mode" for the objects you put in and animate. I'm having to do most of my animation with sprites turned off because it's eating up my CPU to display several detailed .png limbs openly.

By the way, I have to say I love this program despite the minor problems I'm having. Keep up the great work, this tool is phenomenal and I can see you guys have put your everything into it. Big fan here.

Link to comment
Share on other sites

  • 3 weeks later...

I just mailed you a project, from aftermathcomics@gmail.com

Granted, this is rather large - 89 different layers, so I understand if this is above the acceptable threshold for Spriter. I sent you two zips, one with the project and normal assets, and one with the project and hollowed-out assets. For the hollowed-out ones I went into photoshop and erased everything but the outlines of all 89 layers so that it would decrease the information onscreen by a large percentage, but it didn't help.

I'd definitely love to reiterate an "outline" mode that reduced all on-screen information of the assets, allowing more to be there before slowdown. Right now I'm unable to "play" an animation in Spriter, and when I attempt to create a bone, or assign .pngs to bones, or move anything, there's a severe lag making it close to impossible to make progress.

Also, I realize it may be my computer as well.

My specs:

P0pzpsy.png

Link to comment
Share on other sites

Lol don't say obviously. It wasn't obvious to me and I did it haha. Also, the sprite was a boss character that had multiple chains and four hands with bones for almost every link and moving part. Excessive, yeah, but the animation will be spectacular assuming I can conquer this somehow.

Something else I thought of: In photoshop, I use a script (plugin) that automatically saves all the layers as separate .pngs for me, however each layer is as wide and tall as the entire photoshop image itself. Now I don't know anything about alpha-whatever you were saying, but if erasing information didn't help the on-screen lag, is it possible the sheer amount of negative space around each layer is adding to the slowdown?

For example, If I have layer for a mere index finger, but 99% is unused space (which comes up invisible/transparent in Spriter), is that information still present and affecting the slowdown?

Link to comment
Share on other sites

Unused spaces could cause performance problems in extreme cases like rendering them tens of thousands of times, but I think your problem is mostly caused by switching textures.

Switching texture is a slow and costly operation, having 89 layers means switching texture 89 times per entity, that is quite huge.

Using a texture atlas will help a lot by merging everything into one big texture, thus no texture switching is needed.

Link to comment
Share on other sites

You will always be switching textures, it's a part under every engines. You can't avoid it, but you can minimize it.

Most 2D engine are structured that it can render multiple images to the screen with one call to the GPU, as long as the environment (the image file to render, shaders, etc...) does not change. This is called batch rendering. So every time the environment has changed (you want to render a different image file), the engine have to stop rendering, setup the new environment, and then resume rendering. This interrupt is very costly, my computer can only handle a few hundred of these before FPS drop below 60.

Imagine your work is to copy some pages from books in the library. Your order will instruct you to copy from a book at once. You receive your order, drive to the library, borrow that book, drive home, copy the designated pages with your ultra fast copier. than you check your next order, borrow another one, and so on.

In today's computer world rendering the pixels(copying pages) is fast, but switching texture (borrowing books) is slow. Modifications could be made so you can borrow multiple books at once, but then your order become more complex to execute, and you certainly can't borrow the whole library at once. Also everything must be done in order, so A-> B -> A still count as three switches, even two of it is same.

So in your case, you drive 89 times to the library to borrow 89 one-paged books. All your time are wasted to commuting.

Texture atlas is combining those 89 pages into one book, so you can borrow once and do everything. Sometimes the book will get too heavy so you'll need two or more, but it is still better than 89.

I don't own a pro license so I don't know how the texture atlas generating pipeline is (or even if it is completed yet). But you should look into how to do it in your engine. Texture atlas is a must if you really need 89 layers.

Link to comment
Share on other sites

@ Cloak 'n Dagger,

Yes, having massive amounts of clear (unused pixels) around the images will definately hurt performance. I don't trim super tight around my "layers" when I export for use in Spriter...I leave a little room all the way wround for in case I end up wanting to tweak the image after I've started using it in Spriter.... but thats just maybe a 5 to 10 percent empty border. I recommend this approach.

cheers,

Mike at BrashMonkey

Link to comment
Share on other sites

  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...