Skip to content

Commit

Permalink
added introduction slide to episode 3
Browse files Browse the repository at this point in the history
  • Loading branch information
martawleklinska committed Jul 15, 2024
1 parent 2994c34 commit babf402
Show file tree
Hide file tree
Showing 7 changed files with 72 additions and 16 deletions.
Binary file added data/sound/episode3/slide1-0.mp3
Binary file not shown.
Binary file added data/sound/episode3/slide1-1.mp3
Binary file not shown.
Binary file added data/sound/episode3/slide1-2.mp3
Binary file not shown.
Binary file added data/sound/episode3/slide1-3.mp3
Binary file not shown.
31 changes: 15 additions & 16 deletions zkmarek/video/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from manim import Scene, config
from manimpango import register_font
from presentation import Presentation
from zkmarek.video.utils import get_slides_from_names, get_deck_name
from slides.cec.addition import Addition as CECAddition
from slides.cec.negation import Negation as CECNegation
from slides.cec.operations import Operations as CECOperations
Expand All @@ -12,28 +13,17 @@
from slides.ec.negation import Negation as ECNegation
from slides.equation import EquationSlide
from zkmarek.video.slides.common.code_slide import CodeSlide

from zkmarek.video.slides.common.subscribe import Subscribe
from zkmarek.video.slides.common.tex_slide import TexSlide
from zkmarek.video.slides.credits import Credits
from zkmarek.video.slides.ec.addition_to_infinity import AdditionToInfinity
from zkmarek.video.slides.ec.digital_signature_interface import (
DigitalSignatureInterface,
)
from zkmarek.video.slides.ec.digital_signature_interface import DigitalSignatureInterface
from zkmarek.video.slides.ec.double_and_add import DoubleAndAdd
from zkmarek.video.slides.ec.operations import Operations
from zkmarek.video.slides.ec.scalar_mulitplication import ScalarMultiplication
from zkmarek.video.slides.ec.signature import Signature
from zkmarek.video.slides.ec.standards import Standards
from zkmarek.video.slides.ec.subgroups import Subgroups
from zkmarek.video.slides.episode3.KZG import KZG
from zkmarek.video.slides.episode3.PCS import PolynomialCommitment
from zkmarek.video.slides.episode3.verkle import Verkle
from zkmarek.video.slides.episode3.ceremony import Ceremony
from zkmarek.video.slides.episode3.ceremony_verification import CeremonyVerification
from zkmarek.video.slides.episode3.ceremony_verification_2 import CeremonyVerification2
from zkmarek.video.slides.episode3.pairing import Pairing
from zkmarek.video.slides.episode3.trusted_setup import TrustedSetup
from zkmarek.video.slides.eth.ecrecover import ECRecoverSlide
from zkmarek.video.slides.eth.ethereum_transaction import EthereumTransaction
from zkmarek.video.slides.teaser.ecrecover import ECRecoverSlideTeaser
Expand All @@ -47,7 +37,6 @@
from zkmarek.video.slides.teaser.zkps_title import ZKPSTitle
from zkmarek.video.slides.teaser_reference import TeaserReference
from zkmarek.video.slides.wallet import WalletSlide
from zkmarek.video.utils import get_slides_from_names, get_deck_name
from zkmarek.video.slides.episode2.schnorr import SchnorrSlide
from zkmarek.video.slides.episode2.previously import PreviouslyOn
from zkmarek.video.slides.episode2.support import Sponsored
Expand All @@ -61,6 +50,15 @@
from zkmarek.video.slides.teaser3.intuition import Intuition
from zkmarek.video.slides.teaser3.credits import Credits as CreditsT3
from zkmarek.video.slides.teaser3.e2_reference import TitleSlide as E2Reference
from zkmarek.video.slides.episode3.KZG import KZG
from zkmarek.video.slides.episode3.PCS import PolynomialCommitment
from zkmarek.video.slides.episode3.verkle import Verkle
from zkmarek.video.slides.episode3.ceremony import Ceremony
from zkmarek.video.slides.episode3.ceremony_verification import CeremonyVerification
from zkmarek.video.slides.episode3.ceremony_verification_2 import CeremonyVerification2
from zkmarek.video.slides.episode3.pairing import Pairing
from zkmarek.video.slides.episode3.trusted_setup import TrustedSetup
from zkmarek.video.slides.episode3.introduction import Introduction

config.width = 16
config.height = 9
Expand Down Expand Up @@ -180,8 +178,9 @@

EPISODE3 = [
# Intro(sound="data/sound/teaser2/slide0-0.mp3"),
# Sponsored(),
TitleSlide("Pairing"),
Sponsored(),
Introduction(),
TitleSlide("Pairing", sound="data/sound/episode3/slide1-3.mp3", wait_time=3),
Pairing(),
TitleSlide("Trusted setup"),
TrustedSetup(),
Expand Down Expand Up @@ -220,7 +219,7 @@
"E5": EPISODE5,
}

DEFAULT_DECK = "T3"
DEFAULT_DECK = "E3"


class EllipticCurves(Scene):
Expand Down
Binary file added zkmarek/video/slides/episode3/Thumb_up.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions zkmarek/video/slides/episode3/introduction.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
from manim import FadeIn, FadeOut, ImageMobject, LEFT, RIGHT, UP, DOWN, MathTex, Create, Group, MoveToTarget
from zkmarek.video.slides.common.slide_base import SlideBase
from zkmarek.video.constant import SECONDARY_COLOR
from zkmarek.video.mobjects.verkle_tree import VerkleTree

class Introduction(SlideBase):
def __init__(self):
super().__init__("Introduction to trusted setup")

def construct(self):
person = ImageMobject("zkmarek/video/slides/teaser3/person.png").scale(0.6)

self.person1 = person.copy().shift(3*LEFT)
self.person2 = person.copy().shift(3*RIGHT)
self.person3 = person.copy().shift(2*UP)
self.person4 = person.copy().shift(2*DOWN)

thumb = ImageMobject("zkmarek/video/slides/episode3/Thumb_up.png").scale(0.3)

self.thumb1 = thumb.copy().next_to(self.person1, UP+RIGHT).shift(DOWN+LEFT)
self.thumb2 = thumb.copy().next_to(self.person2, UP+RIGHT).shift(DOWN+LEFT)
self.thumb3 = thumb.copy().next_to(self.person3, UP+RIGHT).shift(DOWN+LEFT)
self.thumb4 = thumb.copy().next_to(self.person4, UP+RIGHT).shift(DOWN+LEFT)

self.tau = MathTex(r"\tau", font_size = 80, color = SECONDARY_COLOR)

self.polynomial = MathTex(r"p(x) = a_n\cdot x^n + a_{n-1}\cdot x^{n-1} + \cdots + a_1 \cdot x + a_0", font_size = 50, color = SECONDARY_COLOR).shift(DOWN)
self.polynomial1 = MathTex(r"p(\tau) = z", font_size = 50, color = SECONDARY_COLOR).next_to(self.polynomial, DOWN)

def animate_in(self, scene):
self.new_subsection(scene, "intro to tau", "data/sound/episode3/slide1-0.mp3")
scene.play(FadeIn(self.person1, self.person2, self.person3, self.person4))
scene.play(FadeIn(self.tau))
scene.play(FadeIn(self.thumb1, self.thumb2, self.thumb3, self.thumb4))

self.new_subsection(scene, "trusted setup Plonk, zk snarks", "data/sound/episode3/slide1-1.mp3")
self.person_wthumb = Group(self.person1, self.thumb1, self.person2, self.person3, self.person4, self.thumb2, self.thumb3, self.thumb4, self.tau)
self.person_wthumb.generate_target()
self.person_wthumb.target.shift(LEFT*4+UP*2.5).scale(0.2)
scene.play(MoveToTarget(self.person_wthumb))
self.animate_tree(scene)

self.new_subsection(scene, "any polynomial", "data/sound/episode3/slide1-2.mp3")
self.person_wthumb.generate_target()
self.person_wthumb.target.shift(RIGHT*2+DOWN*2).scale(2)
scene.play(MoveToTarget(self.person_wthumb))
scene.play(FadeIn(self.polynomial))
scene.play(FadeIn(self.polynomial1))

def animate_out(self, scene):
scene.play(FadeOut(self.person_wthumb, self.polynomial, self.polynomial1))

def animate_tree(self, scene):
tree = VerkleTree().scale(0.8).shift(UP*1.5)
scene.play(Create(tree))
scene.wait(3)
scene.play(FadeOut(tree))

0 comments on commit babf402

Please sign in to comment.