马尼姆滚动字幕

来源:爱酷猪责编:网络时间:2024-10-20 16:07:43

它本身只封装了数学相关的几何图形和一些基本的动画。因此,在制作视频时,需要进一步封装更复杂的动画,以满足视频的要求。最近做的一个视频,公式推导较多,所以封装了一个滚动字幕的组件。

代码封装

核心代码如下:

马尼姆滚动字幕

# -*-coding: utf-8 -*-from manim import *class text_displayer: '''字幕替换包''' def __init__( self, sc: Scene, arr, start_position=UP * 3, display_length=1, buff=0.5 ) - None: ''' 初始化参数--------- sc 绘制字幕的场景arr 字幕列表,列表类型start_position 字幕起始位置,默认位置向上UP*3 display_length 最大显示字幕行数,如果超出隐藏最早的行,并相应地移动其他行。每行字幕间隔的位置buff ''' self.sc=sc # 当前场景self.text_arr=arr # 所有文本self.start_position: int=start_position # 显示起始位置self.text_arr=arr # 所有文本self.start_position: int=start_position # 显示起始位置self.text_arr=arr display_length: int=display_length # 最大显示行数self.buff=buff # 每行文本之间的间隔self.cur_index: int=0 # 当前索引def next(self) - bool: if self.cur_index=len(self. text_arr ): return False # 是否需要上移if self.cur_index=self.display_length: # 已达到显示最大值# 清除第一层文字self.sc.play(FadeOut(self.text_arr[self .cur_index - self.display_length ])) # 将现有文本向上移动for i in range(self.display_length - 1, 0, -1): self.sc.play( self.text_arr[self.cur_index - i].animate .move_to( self.start_position + DOWN * (self.display_length - 1 - i) * self.buff ) ) # 显示当前行d=self.cur_index //self.display_length if d==0: self.sc.play( Write( self.text_arr[ self.cur_index].shift( self.start_position - UP * self.buff * self.cur_index ) ) ) else: self.sc.play( Write( self.text_arr[self.cur_index].shift( self .start_position - UP * self .buff * (self.display_length - 1) ) ) ) self.cur_index +=1 return True 整体比较简单。通过初始化函数__init__设置相关参数,然后不断调用next()方法显示字幕,直到返回False。

测试效果

测试代码如下:

马尼姆滚动字幕

# -*-coding: utf-8 -*-from manim import *class 示例(场景): def 构造(self): arr=[ Text('第一行', color=RED), Text('第二行' , color=YELLOW), Text('第三行', color=BLUE), Text('第四行', color=RED), Text('第五行', color=YELLOW), Text('第六行', color=BLUE ), Text('第七行', color=RED), Text('第八行', color=YELLOW), ] # 最多显示一行td=text_displayer(self, arr, start_position=UP, display_length=1) #最多显示三行# td=text_displayer(self, arr, start_position=UP, display_length=3) while td.next(): 通过最多显示一行的效果如下:

最多显示三行的效果:

用户评论

鹿叹

Manim的滚动字幕让我玩得过瘾!画面流畅,特效酷炫,完全沉浸感满分。

    有18位网友表示赞同!

浮殇年华

Manim做的滚动字幕太吸引人了,每一刻都不想错过任何细节。

    有20位网友表示赞同!

玻璃渣子

玩这游戏的时候,看着滚动动画都是一种享受,视觉冲击力满满。

    有15位网友表示赞同!

惯例

Manim的滚动字幕做得这么细腻,音效跟画面同步得让人惊叹。

    有15位网友表示赞同!

淡抹丶悲伤

一打开Manim的游戏,那流水般的滚动字幕简直就是视觉盛宴啊!

    有11位网友表示赞同!

在哪跌倒こ就在哪躺下

这游戏的滚动效果太有魅力了,每次滚动都是精心设计。

    有12位网友表示赞同!

凉话刺骨

Manim之滚动字幕让我体验到了游戏艺术的魅力,完美到无暇挑剔。

    有17位网友表示赞同!

孤败

玩Manim时最吸引我的就是那滑动流畅的动画效果,简直让人欲罢不能!

    有5位网友表示赞同!

你身上有刺,别扎我

在Manim里沉浸的时候,那滚动的字幕就像星空下的点点星光一样令人着迷。

    有17位网友表示赞同!

糖果控

我都被Manim的动画效果圈粉了,尤其是那滚动效果,美得让我不想离开屏幕啊!

    有9位网友表示赞同!

不浪漫罪名

玩这款Manim游戏感觉就是在体验一场视觉和音乐盛宴,滚动字幕好到没话说。

    有18位网友表示赞同!

断桥残雪

Manim的滚动效果不仅让人眼前一亮,还给人带来了极高的游戏沉浸感。

    有14位网友表示赞同!

?娘子汉

每次看Manim的游戏滚动字幕都让我惊叹于其精致和细腻,绝对是高水准的艺术品。

    有16位网友表示赞同!

慑人的傲气

在Manim的世界里滑动那令人眩目的滚动画面,就像是进入了梦境一般,美妙绝伦。

    有6位网友表示赞同!

秘密

这游戏的动画效果太赞了,特别是那个流畅的滚动字幕,真的让人心跳加速。

    有7位网友表示赞同!

ゞ香草可樂ゞ草莓布丁

Manim让人沉浸的滚动字幕不只是视觉上的享受,更是让人对细节赞叹不已的艺术成就。

    有15位网友表示赞同!

一个人的荒凉

每一次滚动都像是打开了新世界的大门,Manim的游戏艺术真是高水准到不能再高了。

    有13位网友表示赞同!

寂莫

滑动在Manim充满魅力的动画中感觉时间都静止了,尤其是在那优美的滚动字幕下更显得深邃深远。

    有7位网友表示赞同!

江山策

Manim用滚动字幕展现出来的美让我感叹不已,这个游戏的艺术性无可挑剔。

    有15位网友表示赞同!

你是梦遥不可及

每一次玩Manism都是对视觉美学的一次欣赏。那些滚动的字符就像是跳动在屏幕上的生命,让人不禁反复回味。

    有16位网友表示赞同!

猜你喜欢
最新游戏更多
热门专题更多
最新资讯更多