(Solved) Cutscenes: video vs. in-engine?

Started by Laura Hunt, Mon 17/06/2019 10:19:33

Previous topic - Next topic

Laura Hunt

Hey once more, everybody.

Brainstorming with the artist of the game I'm currently working on, the topic of intro and ending cutscenes naturally came up at some point. For both of us it would probably be easier if he creates the intro cutscene/animation himself and dumps it directly to video, but I was wondering if there are any caveats to this except of course, for the potential large file size.

Our game is 320x200 in a very blocky pixel-art style, so my fear is that the video will not look as crisp because of video compression, especially when blown up at say 4x or 6x, or that it will simply "feel" different than it would if we did everything in-engine.

So I guess what I'm asking for here is mostly your subjective opinions. Have you used video for cutscenes in your own games? Did you like the results? Or is it better to buckle up and script the whole thing, if only for visual consistency?

Cassiebsg

I guess it all depends on how your cutscene will be.
If it'll happen in a BG you already have in game and all you are going to add to it as some characters interacting/talking etc, then script it. If on the other hand you'll be doing camera angles/zoom, close ups, and complicated stuff, then a video might look better.

As for compression you decide the quality of it, and can even test it to see what happens and how you like it or not.
I've seen several games using video, and never had a problem with consistency...
There are those who believe that life here began out there...

VampireWombat

Depending on what software/methods the animation is made, it could be exported as an animated gif and then imported into AGS and then animated. I did this for a space ship crash scene for my March MAGS game.

Laura Hunt

Quote from: Cassiebsg on Mon 17/06/2019 12:39:54
I guess it all depends on how your cutscene will be.
If it'll happen in a BG you already have in game and all you are going to add to it as some characters interacting/talking etc, then script it. If on the other hand you'll be doing camera angles/zoom, close ups, and complicated stuff, then a video might look better.

The problem is that given what we have in mind, I don't think I'll be able to even script it the way we want to unless I switch to AGS 3.5.0 with its new camera controls including the possibility to zoom out, which is why I posted in the new Beta thread. Our idea implies some camera movements that might be more of a hassle than they're worth...

Quote from: VampireWombat on Mon 17/06/2019 12:58:09
Depending on what software/methods the animation is made, it could be exported as an animated gif and then imported into AGS and then animated. I did this for a space ship crash scene for my March MAGS game.

So you mean basically making the whole animation to be a full-screen-sized animated object? That's... actually a very cool idea o_O

I've never worked with animated gifs in AGS though... I guess it's as simple as importing a gif, and AGS separates it into all its frames automatically so you can then assign them to an object view?


VampireWombat

Quote from: notarobotyet on Mon 17/06/2019 13:21:42
So you mean basically making the whole animation to be a full-screen-sized animated object? That's... actually a very cool idea o_O

I've never worked with animated gifs in AGS though... I guess it's as simple as importing a gif, and AGS separates it into all its frames automatically so you can then assign them to an object view?


Yeah. It's the only way I could think of to make things work exactly as wanted. I think the Earth was a background, but not 100% sure.

And pretty much, yeah. Have to make sure the gif is the type that replaces each frame but that shouldn't be too hard.

I also have a Donkey Kong arcade animation I did last month which didn't end up being used that I could share if you wanted.

Laura Hunt

Quote from: VampireWombat on Mon 17/06/2019 13:40:04
Yeah. It's the only way I could think of to make things work exactly as wanted. I think the Earth was a background, but not 100% sure.

And pretty much, yeah. Have to make sure the gif is the type that replaces each frame but that shouldn't be too hard.

I also have a Donkey Kong arcade animation I did last month which didn't end up being used that I could share if you wanted.

No need for now, thanks, I think I have all the info I need (nod) Thanks for the idea, it didn't even cross my mind to approach it this way!



morganw

Quote from: VampireWombat on Mon 17/06/2019 13:40:04
Have to make sure the gif is the type that replaces each frame but that shouldn't be too hard.
This is quite important as the if not using AGS 3.5 the GIF decoder in the Editor is part incomplete and part broken.
<-- 3.5     3.4 -->

[imgzoom]https://user-images.githubusercontent.com/14958747/51088409-1ac19a80-1757-11e9-97aa-98779e69de7a.gif[/imgzoom]

Also, you may find you have to preload the sprites before displaying them in order to make sure that a full sequence runs without any stuttering. If this is fullscreen and/or high resolution then I think I'd stick with an actual video (if game uses integer scaling then the pixels in the video should remain the correct shape) or the tween module + new camera system.

Laura Hunt

Wow, that's... scary. But it does give me a good reason to take the plunge and take 3.5.0 for a spin.

Quote from: morganw on Mon 17/06/2019 14:33:21
(if game uses integer scaling then the pixels in the video should remain the correct shape)

This, however, is music to my ears :)

eri0o

Use pngs instead of gif, and have each 100 on a different folder (in ags sprite viewer). Create a view and use it to animate.

I think videos in AGS use system codecs (which should be fine on win10), but there is a specific video format that ags supports anywhere - usually Khris pops up and links to a thread that talks about this, because that video format can look bad or good depending on the encoder used.

Laura Hunt

Quote from: eri0o on Mon 17/06/2019 18:24:31
Use pngs instead of gif, and have each 100 on a different folder (in ags sprite viewer). Create a view and use it to animate.

I think videos in AGS use system codecs (which should be fine on win10), but there is a specific video format that ags supports anywhere - usually Khris pops up and links to a thread that talks about this, because that video format can look bad or good depending on the encoder used.

OGV?

We talked about it today and given what morganw said, we're going with video in the end, or at least it's the first thing we're going to try. If that looks good, then problem solved. If not, then 3.5.0 it is, I guess.

Laura Hunt

Bumping up this thread just to let anybody interested (past, present or future! Who knows who will land here after a google search) that OGV seems to work wonderfully for our pixel art game. The artist put together a short .avi cutscene in the resolution of our game (320x200), I converted that video to .ogv and it looked like absolute crap in VLC when I tried scaling it up (not sharp at all, all pixelated effect was lost), but when I ran it from inside AGS, it looked absolutely pixel perfect.

Now we need to test this out with a more complex cutscene, but so far I'm fairly confident we can say that video works great for low-resolution pixel art games and that there's no visual difference between inserting a video cutscene and doing it as an animation with hundreds of frames in png (nod)

Olleh19

Quote from: eri0o on Mon 17/06/2019 18:24:31
Use pngs instead of gif, and have each 100 on a different folder (in ags sprite viewer). Create a view and use it to animate.

I think videos in AGS use system codecs (which should be fine on win10), but there is a specific video format that ags supports anywhere - usually Khris pops up and links to a thread that talks about this, because that video format can look bad or good depending on the encoder used.

Word, Pngs all the way! A lot of people actually don't know this. But you can export Pngs as a "video sequence", doesn't have to be gif's. So if you're an artist and are doing a pixelart style game "video" (just guessing here). Just tell him to do the animation in photoshop and export Png uncompressed video sequence.  :)

LimpingFish

Yeah, AGS natively supports the OGV (OGG Theora) video format, by which I mean it has support built into the engine, as opposed to looking for a codec in Windows.

I've personally found that AGS will play almost any video format, if the corresponding codec is already installed, since it looks to Windows to handle the decoding. Of course, not everybody has the same codecs installed, which is why OGV was as an "official" solution to handling video in the first place.

If I recall correctly, that is...
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Laura Hunt

Quote from: LimpingFish on Sun 13/10/2019 01:37:26
Yeah, AGS natively supports the OGV (OGG Theora) video format, by which I mean it has support built into the engine, as opposed to looking for a codec in Windows.

I've personally found that AGS will play almost any video format, if the corresponding codec is already installed, since it looks to Windows to handle the decoding. Of course, not everybody has the same codecs installed, which is why OGV was as an "official" solution to handling video in the first place.

If I recall correctly, that is...

That's great and all, but it has literally nothing to do with what I was saying XD

My original question was whether a video cutscene in a lo-res pixel art game would look as crisp as scripting the cutscene in-engine. I was concerned that video compression and smooth upscaling would affect the outcome and that there would be a noticeable visual difference between the game and the video cutscenes (as pointed out in several old threads.)

And now I'm back to the thread simply to report to anybody interested in the outcome that things worked out great using video. Like morganw predicted, edges are sharp and all pixel detail is kept intact when playing the cutscene at 2x, 3x, 4x, etc, which is great news because it's definitely more convenient to have a single 300KB video than a 500-frame animation ;)

Anyway, I think I can finally mark this thread as solved!

Slasher

All I can say is taste and try... Then decide for yourself..

SMF spam blocked by CleanTalk