I think some videos would be useful for
explaining the Displayed Text properties in Godot,
so I decided to use Godot's movie maker mode to
record a video of this simple script which increases
the visible_characters
value from 0 to
its maximum value every frame:
extends RichTextLabel
func _ready() -> void:
= 0
visible_characters
func _process(_delta: float) -> void:
+= 1 visible_characters
I am using the movie maker mode to record the
video, so it doesn't matter that the implementation
in _process
is frame-dependent, since
the movie maker will lock the frame rate when
recording the movie.
The VC_CHARS_BEFORE_SHAPING
value
causes the text to "jump" to the next line when
there isn't enough space and the first line of the
text moves further and further up the screen as more
text is displayed:
The VC_CHARS_AFTER_SHAPING
value
causes the text to always appear in the right
place:
As an additional note, all of the Displayed Text properties take BBCode into account, so it will always be displayed properly:
Godot's movie maker produces .avi
files which are kind of big, so I transcoded the
videos to h264 .mp4
files using
ffmpeg
(see Stack
Overflow. I wanted them to be the exact same
length, so I added -t 10
to take the
first ten seconds of each video (see Stack
Overflow). I also didn't want there to be an
audio track, since there is no audio in the
recording, so I used -map 0 -map -0:a:0
to drop the audio track (see Stack
Overflow.
The full command I used is:
ffmpeg -i recording.avi -vcodec libx264 -t 10 -map 0 -map -0:a:0 recording.mp4