ShakeScreen Artifacts

Started by TheJBurger, Sat 25/07/2009 20:21:55

Previous topic - Next topic

TheJBurger

When I use the ShakeScreenBackground command on a vertical scrolling room (game is in Letterbox mode), it appears to artifact some of the room and carry it on the letterbox into the next room.

Here is what I mean (spoilers have been mosaic'd out):

Vertical Scrolling room with the shaking:


Next room with the artifact:


I'm not sure what exactly causes this problem (it goes away by itself eventually after several screens), but it may be related to another problem I had with shake screen here: http://www.adventuregamestudio.co.uk/yabb/index.php?topic=38029.0

Pumaman

Is this with the DX5 or D3D driver, or both?

TheJBurger

#2
This is with DX5. My game wont run on my current computer with D3D.

edit: actually, both rooms are vertically scrolling. I think the artifact may disappear when you reach a non-vertically scrolling room.

Pumaman

I tried this with a vertical scrolling room but couldn't replicate the problem.

Please make sure you're using 3.1.2 SP1 -- if not, upgrade and check if it still happens.

If it does, can you upload a sample game that demonstrates the problem?

Dualnames



Perhaps the ShakeScreenBackground goes on the next room fade-in and stops when the room fades.

Perhaps you should

Quote
You can abort any current background shake that is in progress by calling this command with the LENGTH parameter as zero.

on the room leave section
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

TheJBurger

Quote from: Pumaman on Sun 26/07/2009 15:59:18
I tried this with a vertical scrolling room but couldn't replicate the problem.

Please make sure you're using 3.1.2 SP1 -- if not, upgrade and check if it still happens.

If it does, can you upload a sample game that demonstrates the problem?

I've sent you a PM. Let me know if you got it alright.

Pumaman

Thanks.

I've investigated this and found the problem. It's a bug in AGS if you use ShakeScreenBackground to change from a shake with a larger AMOUNT to one with a smaller AMOUNT.

I'll get it fixed, but in the meantime a workaround would be to turn the shake off completely for one game loop (perhaps when entering the room?) which will update the screen, and then turn it back on with the new settings.

Creamy

#7
Hello good fellows,

Bustin' the Bastille uses a Shakescreen command near the end of the game.
It often leaves a band at the bottom of the screen, as can be seen in this video after 31:30. Using TweenShakeScreen produces the same result.

Is it linked to the big resolution of the game (1600x900) ?

Is there a workaround or should I cobble together my own shaky effect?


 

Crimson Wizard

#8
Quote from: Creamy on Thu 05/10/2017 17:47:18
Bustin' the Bastille uses a Shakescreen command near the end of the game.
It often leaves a band at the bottom of the screen, as can be seen in this video after 31:30. Using TweenShakeScreen produces the same result.

What is the version of AGS this game were using, and what was the graphics driver game was run with, if you know?
I think that's what happens when the renderer does not redraw black borders in time.

Khris

Looks like the borders at the top and bottom don't get cleared, so it kind of does happen due to the resolution, but only because it doesn't fit the standard resolution of 1920x1080.
It's of course still a bug in the engine, but it should be relatively simple to fix.

Creamy

QuoteWhat is the version of AGS this game were using, and what was the graphics driver game was run with, if you know?
The game was made with AGS 3.4.0.

Running the game with Direct3D seems to solve the problem. I should have thought about it.

Thanks for your help!
 

Crimson Wizard

Quote from: Creamy on Thu 05/10/2017 19:22:14
Running the game with Direct3D seems to solve the problem. I should have thought about it.
Well, the problem is not solved yet, this means that software driver is causing this?

Creamy

#12
The game seems to run faster with Direct3D and the bottom band is gone.
 

Crimson Wizard

Maybe not the biggest deal, but I fixed this for software driver, fix will be added to AGS 3.4.1.

Actually, I noticed that ShakeScreen never worked 100% correct with software renderer (at least since AGS 3.2.1): it was leaving a topmost strip of a picture in place instead of blackening that part when image moves down. (that too is now fixed)

SMF spam blocked by CleanTalk