본문 바로가기

과제

Manim (오픈소스 활용 및 경험에 대한 후기)

Manim을 이용하여 아래의 코드를 작성하였습니다.

 

from manimlib.imports import *

 

class SoundTest(Scene):

    CONFIG = {"include_sound": True}

    def construct(self):

        self.add_sound("sound.mp3",gain=-10)

        formula = TextMobject("H",

            "G","U","=","H","andong"," G",

            "lobal"," U","niversity"

            )

        formula.scale(1)

        self.play(Write(formula[0:4]))

        self.wait()

        self.play(

            ReplacementTransform(formula[0].copy(),formula[4]),

            ReplacementTransform(formula[1].copy(),formula[6]),

            ReplacementTransform(formula[2].copy(),formula[8]),

            run_time=3

            )

        self.wait()

        self.play(

            ReplacementTransform(formula[5].copy(),formula[5]),

            ReplacementTransform(formula[7].copy(),formula[7]),

            ReplacementTransform(formula[9].copy(),formula[9]),

            run_time=3

            )

        self.wait()

 

class MoveCamera1(ThreeDScene):

    CONFIG = {"include_sound": True}

    def construct(self):

        self.add_sound("sound.mp3",gain=-10)

        axes = ThreeDAxes()

        

        self.set_camera_orientation(phi=75 * DEGREES)

        

        text3d=TextMobject("HGU").scale(3).set_shade_in_3d(True)

        self.play(ShowCreation(text3d),ShowCreation(axes))

        self.move_camera(phi=30*DEGREES,theta=-45*DEGREES,run_time=10)

        

        text3d2=TextMobject("Handong Global University").scale(2).set_shade_in_3d(True)

        self.play(ReplacementTransform(text3d,text3d2))

        self.move_camera(phi=0,theta=-45*DEGREES,run_time=10)

        

        text3d3=TextMobject("Why not change the world").scale(2).set_shade_in_3d(True)

        self.play(ReplacementTransform(text3d2,text3d3))

        self.move_camera(phi=90,theta=-45*DEGREES,run_time=6)

        self.wait()

 

위의 코드를 

python3 -m manim 7_add_audio.py  WriteStuff -pl

command line을 통하여 실행 할 수 있습니다.

 

실행을 시키면 다음과 같은 옵션이 나옵니다.

1 또는 2를 입력하여 영상을 제작 할 수 있습니다.

 

다음은 이를 통해 만들어진 영상입니다.

        

1. HGU trasnformation

 

2. HGU Graphics

후기 및 소감.

 

간단한 코드 몇 줄을 이용하여 쉽게 멋진 영상을 작성 할 수 있었습니다.

다양한 자원을 이용하여 특정 목적을 가지는 하나의 영상제작 툴을 만든 것이 매우 신기 했습니다.

어떤 방법으로 각 프로그램들을 사용하고 연결했는지에 대해서 알아 보아야겠다고 생각했습니다.

 

이상~