Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

PNGTuber Plus

Get more out of your png tubing experience. · By kaiakairos

Eyes

A topic by Saizou created Nov 24, 2023 Views: 508 Replies: 1
Viewing posts 1 to 2

Hey everyone,

i have one Question, my Model does have Two sets of Eyes, is it possible to make them NOT blink at the same time? Like implement some kind of Delay? I tried everything but couldn't figure it out yet.

Thanks!

There's (currently) no way to implement an animation delay "naturally," but you could probably fake it by using sprite sheets.

If you put one set of eyes on a sprite sheet and animate it using the animation features, then they could blink out of sync. I'd recommend trying 50-60 frames of the eyes being open, then 1 frame of the eyes closed, and set the animation speed to around 60 or so. That should get the speed of the blink to be about the same as the pre-programmed blink.

It's kinda convoluted to set up, but this is the best work-around I've found for what you're describing. If you try to do this in just 2 frames (open and closed) and use the animation speed function to make the blink, then your model is either gonna blink too fast, or hold their blink too long. Since you can't tell the program to hold on a single frame, you need those "dummy" frames to kill time between "blinking" and "not blinking." The more you have, the slower the blink will occur. The less, the faster.


[Example of an eye sprite sheet with 38 open eyes + 1 closed eye. In my tests, this amount was still kinda fast for my tastes, so I recommend you use more open eye frames than this, but do whatever works for you.]

Of course, if you do it that way, then the two sets of eyes will almost never blink right after the other since the built-in blink is random and the sprite sheet is on a regular cycle, so it's not really adding a "delay" so much as it is that they're just blinking at different rates. But maybe that'll work for you. 

If you really want to them to always blink one after another, then you can put both sets of eyes on sprite sheets, and just change where you put the "blink frame" in the sequence for one of the sets (maybe 3 or 5 frames ahead or behind the other). Either method is going to have at least one set of eyes that blinks on a cycle, so it's mostly a matter of if you'd prefer them to be coordinated or not.

[Left: Using 2 sets of sprite sheets, Right: 1 sprite sheet (top set) and 1 built-in-blink (bottom set)]

Notice how in the combined method (right), the sprite sheet eyes blink several times before the built-in-blink eyes blink once. Even with more frames to slow the rate of the blink on the sprite sheet eyes, this will probably still be a normal occurrence in practice, but try to experiment and see what works for you.

Hopefully that helps.