Start scene single frame flicker of invisible object

In a multi-scene game, I have a “game over” message which appears when the player loses a life. Currently, I am setting Delay of zero to pulse Visibility off at the start of a scene, and when the player runs out of lives, it sends a message leading to another visibility actuator to make the “game over” text object show.
My problem is that for any new scene, there is a split second before the Delay 0 kicks in and the “game over” flashes as visible. I’ve tried turning it to “invisible” in the material settings but this just makes it never show, and also I’ve tried hiding the object (outliner => eye icon) but this doesn’t make any difference.
Is there a setting somewhere to make an object invisible for the very first tic in a scene?

physics :smiley:


press space bar :smiley:


SignFlash.blend (468 KB)

don’t ask me why its their because I have no idea how invisibility is not a object tab property…

or even maybe the logic panel, since invisible is not used in the animation pipeline?

You have to make it invisible when it is spawned, as logic is only run a frame after it appears.
So the solution is to make it invisible initially by:

  • start the game engine with blender on a keyframe where it is invisible

sdfgeoff - yes, I figured it was to do with logic kicking in one frame after the each scene begins (or moreso the effect of the first tic). I’m curious though - how do you start the game engine on a different tic? This isn’t a spawned object, neither is it one with an action… just a “game over” message to appear when player shot.
BluePrintRandom - Your example file is off topic because I’m already using the invisible / visible logic bricks and my question is more about the problem of making the object invisible on the very first tic (after the logic bricks have any effect) however your pointing out that the physics tab is where the invisible property is located is right on the mark, so:

The solution is to go to the physics tab and enable “invisible” for the object. This will mean the object starts as being invisible right from the start of the scene. Using this, I no longer need “Delay of zero ==(And)==> make invisible” at all, only the unhide ones when I need the message to appear.

Thank you both :slight_smile: