Ten steps for making an "epic battle scene"
Well, there are many methods, but here's mine that only requires freely available software (as Unity) plus free assets (as freesound.org), a 2D graphic software (like ProCreate) and a video editor like iMovie:
Before you start: Think about what "choreography" you roughly would like to have and at what time points. It doesn't have to be too precise, but on the level of "spaceship A flies to around there, shoots about here, then gets attacked by spaceship B after that flew in from the right, A turns around, shoots back, spaceship B is hid and backs up" etc. You may make a storyboard for that if it's too complex. (I didn't take an written notes.)
Step 1: Draw foreground and background separately in ProCreate. Ideally, they are both not entirely separated: there is, e.g., a semi-transparent reflexion on the car window in the foreground. This will glue both parts together better. For the background, I have actually used a photo that I made and Clip2Comic (a free App), but of course also in this case some after work is needed to make it look better.
Step 2: Make a new scene in Unity with the spaceships. (Make sure none of them is anywhere greenish.) One of the models is a free Unity asset, the other one (the flying saucers) can have been made quite easily from spheres. Set the main camera's "clear flags" as "solid colors" and pick a bright bluish green. Then do the animations in the animation window (chose position and rotation parameters of the ship to be animated, set keyframes, press the red record button and adjust for each keyframe the parameters of the ship by dragging and rotating it in position. Intermediate steps will then be automatically calculated.)
Step 3: Find the Recording Window (a challenge, as it is well hidden, as you can see here!)
Step 4: Record the video with the green background into a file.
Step 5: Now switch to iMovie (or some other video editor). Put the background image first, then add the animation in the greenscreen mode. Export the video.
Step 6: Import the result into a new video project, add the foreground (with transparencies). Export the video once more.
Step 7: Special effects! Lasers! Explosions! - Draw the laser beams in Procreate, also the explosion clouds. The big fire explosion was a free asset from the web (see game info for the source) where the color has been inverted with a simple iMovie filter.
Step 8: Superimpose these drawings and videos in yet a new iMovie project onto the existing video. This involves a lot of fiddling around, as you have to position them right. Add "Ken Burns" effects to make them move along with the spaceship while visible. (Since they are visible only briefly, the linear movement of Ken Burns effect is sufficient to approximate the curved movement of the ships.) - Remark: Of course adding the foreground after the special effects would have been smarter, but in my case, fortunately it didn't matter.
Step 9: Add sound effects. For the explosion sounds, I piled freely several different explosion sounds on top of each other, all free assets (C.0) from freesounds.org. Export the complete video.
Step 10: Add the video to the game. We want to have a background music that starts already before the video plays. That music is simply played with the renpy command "play music". Usually, that music would stop when a movie starts playing. We don't want this to happen, but we can deactivate this stopping with the following modified video playing command:
$ renpy.movie_cutscene(filename, stop_music=False)One final hint: many players accidentally skip videos by pressing space or clicking the mouse. You can prevent that by turning on a screen that blocks these keys. I allow only ESC to skip then. Here's my complete code for that:
label showmovie_wo_music(filename):
show screen my_scr
$ renpy.movie_cutscene(filename, stop_music=False)
hide screen my_scr
return