I Coded a Video Editor (and it kind of sucks)

Sdílet
Vložit
  • čas přidán 19. 05. 2024
  • I was using Manim to create animations for my latest video when I ran into a bug. This bug was very small, but caused a visual artifact that was driving me crazy. I reached out and was informed that this was a known bug, and unfortunately there is no fix. I said to myself, "Fine I'll live with it", but I couldn't. So I set out to code a video editor over my weekend, and here I am 8 months later with my shiny video editor that was an absolute pain to use to make this video. Hopefully you enjoy my overview of the process.
    Source Code: github.com/ambrosiogabe/MathA...
    Font Rasterization: • The Math Behind Font R...
    Aarthificial Video: • Animating with Code - ...
    Drawing 3D Lines: mattdesl.svbtle.com/drawing-l...
    Drawing Bezier Curves: ciechanow.ski/drawing-bezier-...
    Order Independent Transparency: casual-effects.blogspot.com/2...
    The O-Library: github.com/kkos/oniguruma
    Join the Discord: / discord
    Follow me on Twitch: / gameswthgabe
    --- Bookmarks ---
    0:00 Intro
    0:46 Write-In Animation
    3:09 Coding a Timeline
    3:41 Morphing Animations
    5:33 Audio Waveform Previews
    7:15 Adding 3D Support
    8:27 LaTeX
    10:02 Viewports and Gizmos
    10:57 Optimizing Stuff
    14:12 SVGs
    15:45 Scripting
    16:13 Code Highlighting
    --- Music ---
    All the songs are from CZcams Studio Audio Library unless noted otherwise:
    "The Curious Kitten", by Aaron Kenny
    "The Plan's Working", by Cooper Cannell
    "Quincas Moreira", by Siestita
    "Looping Ascent", by Joel Cummins
    "Tiptoes", by Myuu
    "Sprightly Pursuite", by Cooper Cannell
    "Amazing Plan", by Kevin MacLeod
    "Dreams Become Real", by Kevin MacLeod
    ---------------------------------------------------------------------
    Website: ambrosiogabe.github.io/
    Github: github.com/ambrosiogabe
    Here are some books I recommend if you want to learn about game engine development more thoroughly. I do not profit off any of these sales, these are just some books that have helped me out :)
    My Recommended Game Engine Books:
    Game Engine Architecture: www.gameenginebook.com/
    Game Physics Cookbook (Read this before the next physics book): www.amazon.com/Game-Physics-C...
    Game Physics (Ian Millington): www.amazon.com/Game-Physics-E...
    Game Programming Patterns (Free): gameprogrammingpatterns.com/
    My Recommended Beginning Game Programming Books:
    JavaScript Game Design: www.apress.com/gp/book/978143...
    My Recommended Java Books:
    Data Structures/Algorithms: www.amazon.com/Data-Structure...
    LWJGL (Free, but I haven't read this thoroughly): lwjglgamedev.gitbooks.io/3d-g...

Komentáře • 488

  • @Test-iv4pm
    @Test-iv4pm Před rokem +2513

    "I could code this in a weekend" is how it always starts

    • @Kenionatus
      @Kenionatus Před rokem +230

      We are programmers. We don't do things because they're easy, we do things because we thought they were easy!

    • @whannabi
      @whannabi Před rokem +7

      @@void6670 yeah...I guess you can add them to your portfolio at best. They still add value to some extent.

    • @Googoogagafnaf
      @Googoogagafnaf Před rokem +10

      Yea and then a weekend ends up turning into 3 years of working on a project with really messy and unmanageable code

    • @stickguy9109
      @stickguy9109 Před rokem +5

      @@Kenionatus Also because we think it's cool

    • @khaledchaib2689
      @khaledchaib2689 Před rokem

      😂😂😂😂😂

  • @ApocalypeX
    @ApocalypeX Před rokem +74

    The Programmers' Credo: we do these things not because they are easy, but because we thought they were going to be easy.

  • @abdoo89
    @abdoo89 Před rokem +1474

    Ah, the old tale. Developer uses a program. Developer finds a bug. Developer thinks "how hard could it be to recreate this program to fix the bug?".
    Gazillion years later. Developer: "WHAT HAVE I DONE?" 😂
    Joking aside, this is a very cool project. I am sure you've learned a lot from it.

    • @abdoo89
      @abdoo89 Před rokem +1

      @MacGuenther Totally agree with you. No matter how hard it might be, I learn a lot by actually embarking on a project and getting it done.

    • @abdoo89
      @abdoo89 Před rokem +1

      @MacGuenther It is all for learning at the end of the day. Now you know how to approach something like that the next time.
      Glad it worked out at the end.

    • @abdoo89
      @abdoo89 Před rokem +1

      @MacGuenther I know that feeling. Onceof the best you could ever have as a developer. 😁

    • @abdoo89
      @abdoo89 Před rokem +1

      @MacGuenther 🤣

    • @fltfathin
      @fltfathin Před rokem

      thx god for FOSS you can fix the bug by modding instead of building everything from scratch

  • @UnidayStudio
    @UnidayStudio Před rokem +208

    Subscribed. In 2015 I also found a minor bug in a game engine that I was using for fun. Today, 8 years, a major degree and a senior role in the game industry later, I'm almost finishing my own game engine as well. That's why I believe you're the real mvp for also picking this path!

    • @bloxxel64colonthree
      @bloxxel64colonthree Před rokem +2

      whats the engine called?

    • @aarohanyt7374
      @aarohanyt7374 Před rokem +2

      @@bloxxel64colonthree the channel name is uniday studio so maybe something close to that

    • @spaghettiking653
      @spaghettiking653 Před rokem +4

      @@bloxxel64colonthree I looked it up, and it looks like it's called Cave Engine.

    • @UnidayStudio
      @UnidayStudio Před rokem +1

      @@bloxxel64colonthree Cave Engine. I do have another CZcams channel in English where I show it a bit as well, since this one here is in portuguese.

    • @lysy-zn2gg
      @lysy-zn2gg Před rokem +10

      ​@@UnidayStudio Yeaaah sure:
      "Almost finishing"
      *8 years later again*
      "I only need to add few minor details and I'm done!"

  • @Agent_Ax
    @Agent_Ax Před rokem +385

    Just one suggestion I'd like to add,
    The default dark color theme of Imgui is not very appealing so before the final release I'd love to see some custom themes! Maybe color scheme following (monokai, Dracula etc)

    • @GamesWithGabe
      @GamesWithGabe  Před rokem +122

      Great suggestion! I've applied some slight style changes, but theming is something I've been wanting to add as well. I added a Github issue so I remember to implement it :)

    • @ShiroCh_ID
      @ShiroCh_ID Před rokem +2

      ah yes... the classics
      even me who kinda know how to code suffer from this curses

    • @sampathsris
      @sampathsris Před rokem +5

      Ah yes, the theme. He could do that in a weekend, I guess.

    • @grevel1376
      @grevel1376 Před rokem

      It's Darcula, not Dracula

    • @KubikDezimeter
      @KubikDezimeter Před rokem +4

      @@grevel1376 Both exist, but I believe Dracula is far more popular

  • @decstar77
    @decstar77 Před rokem +220

    Awesome stuff ! Not to worry the first 8 months of a 2 day project are always the best.

  • @user-dc9zo7ek5j
    @user-dc9zo7ek5j Před rokem +35

    Amazing. The only question I have is, did you really think it will take a weekend (2 days) to make the whole thing? If so, you should become a manager.

  • @andrewglick6279
    @andrewglick6279 Před rokem +6

    As someone who has spent weeks trying to write Textmate Grammar files (approximately 5% of the video's content), I can only imagine the pain this was to produce. Well done. I'm currently on week 2 (of nearly full days of work) of my latest "this should only take an afternoon" project.

  • @Fo4rSiLence
    @Fo4rSiLence Před rokem +59

    Ok, but, how does "Hello World!" have 9 characters? It either has 10, if we only count the letters, or it has 12, if we count special characters, like the space and the exclamation mark.

    • @ShadowaOsu
      @ShadowaOsu Před rokem +14

      Thankfully I found this comment. I knew I couldn't have been the only one who thought about this.

    • @trauma._
      @trauma._ Před rokem +3

      @@ShadowaOsu i searched too before writing that myself, cause even from just looking, there's no way that at half an "o" we're in the middle of the phrase
      also if we count the null-character of the null terminated String it's 13 characters

    • @ShadowaOsu
      @ShadowaOsu Před rokem +3

      @@trauma._ certainly, I too couldn't come up with any idea how that phrase would contain 9 characters

    • @DivSharp
      @DivSharp Před rokem +1

      Maybe he missed one "L" 😆

    • @when-do-we-get-a-block-button
      @when-do-we-get-a-block-button Před rokem

      maybe excluding repeats. "Hello World!" is 12 (with specials) and "Helo Wrd!" is 9 (removed 2 L,1 O)
      keep in mind i have no clue why that would benefit anything, it just happens to work

  • @dynpallomah5918
    @dynpallomah5918 Před rokem +113

    Your content is so underrated! Please keep doing what you've been doing, I love it.

  • @andrediego6131
    @andrediego6131 Před rokem +3

    the way he says GUI as "gooey" kills me

  • @odwn
    @odwn Před rokem +3

    this project is actually amazing, was wanting to do something along the lines of this for a while. amazing video!

  • @fluffy_tail4365
    @fluffy_tail4365 Před rokem +8

    wow this is a great project, monumental effort on your part

  • @DarkSwordsman
    @DarkSwordsman Před rokem +21

    Wow, this is really impressive. I love the way that you adapted a bunch of existing things into your program to add functionality and performance. I mainly loved the way you used VSCode themes there. This is awesome.

  • @rckeet
    @rckeet Před rokem

    this is probably one of the coolest things I've seen the past months weeks. well done, dude. it looks great !

  • @kubstoff1418
    @kubstoff1418 Před rokem +3

    That was a nice insight into the complexity of the programs we take for granted. Great video overall!

  • @roygalaasen
    @roygalaasen Před rokem +1

    This is especially cool for me to see as I have been pondering on these exact ideas myself.

  • @YuzuDrink
    @YuzuDrink Před rokem +4

    As someone who has also struggled with manim... I hope that this project lands a stable release soon! Thanks for your hard work!

  • @shohnke
    @shohnke Před rokem +1

    I admire your motivation and drive to tackle those projects. I'm still telling myself everyday to open up a pull request for this one typo in a lib I'm forced to use. So yeah. No drive here.

  • @GanerRL
    @GanerRL Před rokem +1

    Really cool stuff! I'm planning on making a big fold toolkit for editing and whatnot for myself and this helped me know some stuff to look out for

  • @rob011
    @rob011 Před rokem

    This was amazing. So stoked I came across your channel!

  • @DesertCookie
    @DesertCookie Před rokem

    I've been searching for a way to animate syntax-highlighted code for forever. This (and everything around it) looks awesome!

  • @BriarYoung
    @BriarYoung Před rokem +4

    I might actually unironically use this program for editing my videos- I'll have to try it out but thank you thank you for making this!

  • @djordjepepic1656
    @djordjepepic1656 Před rokem +1

    Great video! Was very interesting to see the journey and the problems you encountered and how you overcame them.
    There is one thing I couldn't help thinking to myself when watching the syntax highlighting part.
    There is a library called "tree-sitter" that is essentially a cross-language parser and syntax highlighter, used by github and editors like vim and neovim to provide syntax highlighting.
    I feel like this library could have made that part of the journey less painful, but was interesting to see what you did nonetheless!
    Keep it up!

  • @FridgeFucker96
    @FridgeFucker96 Před rokem +3

    Damn i can't wait for a stable release, this looks amazing!

  • @hansiallen2281
    @hansiallen2281 Před rokem +13

    Wow, that editor genuinely looks brilliant. I can't wait for a stable release and might try compiling it for myself! Loved the video as well!

  • @mikaelfoster9726
    @mikaelfoster9726 Před rokem +3

    I will never forgive you for calling a gui a gui

    • @Brahvim
      @Brahvim Před rokem

      All my teachers call it "gooey".

  • @tbc...
    @tbc... Před rokem

    Subscribed! This is much more than a weekend project! Hope to see it progress.

  • @leddoo
    @leddoo Před rokem +39

    oh, btw, treesitter is a great library for parsing "arbitrary" languages.
    maybe also the AST info could be useful for animating code?

    • @SimonBuchanNz
      @SimonBuchanNz Před rokem

      For highlighting you don't want to parse, just lex. And the language and theme definitions already exist.

    • @leddoo
      @leddoo Před rokem +1

      @@SimonBuchanNz that depends on your project's goals.
      if you prefer accuracy, you use a full parser. if you prefer "speed", you can use the regex craziness (though it's unclear whether the speed difference matters at all, you'd have to profile that).
      vscode now has semantic highlighting, where the lsp can provide extra information.
      neovim generally just uses treesitter (afaik).

    • @SimonBuchanNz
      @SimonBuchanNz Před rokem

      @@leddoo not sure what you mean by accuracy here, but syntactic highlighting doesn't need a parse tree, just a list of tokens, which means you just need a lexer, not a full parser in the traditional model. Lexer generators like FLEX pretty much are just a list of regexes, possibly with a bit of context for which to try. (along with parser generators like YACC they are not popular anymore in actual compilers because it's just not that hard to write a lexer manually - for a single language)
      Using a full parser can be useful for many other reasons, of course. It can be much better performance than interpreting a dynamic language definition, it can more easily provide semantic highlighting (eg this id is a use of a type, or a parameter, etc) and you can potentially reuse the parse for other purposes like formatting, go to definition, semantic search, etc.

    • @leddoo
      @leddoo Před rokem

      ​@@SimonBuchanNz here's an example:
      in the JSX `a = < Foo />`, the `

    • @SimonBuchanNz
      @SimonBuchanNz Před rokem

      @@leddoo that's the "context" bit I mentioned. JS already has this problem with division / regex and close brace / string templates, and the standard resolves this by having a few different targets for the lexical grammar that are appropriate for different positions in the syntactic grammar. You can handle this in a language definition by saying that you can only have a division or less than operator after things that can end an expression, like identifiers, postfix operators, or close parens/braces.

  • @GeorgeValkov
    @GeorgeValkov Před rokem

    Great work! I'm curious to see what features you've planed next.
    About your bugs: if you can make them into a reliable filter, they become a cool a feature.

  • @breadguyy
    @breadguyy Před rokem +8

    The way he says GUI made me laugh so hard 💀

    • @DisguisedParrot
      @DisguisedParrot Před rokem

      agree

    • @SimonBuchanNz
      @SimonBuchanNz Před rokem +1

      As a programmer, I've barely ever heard "gee yew eye" , it's always "gooey" .

    • @JohnAldred
      @JohnAldred Před rokem +5

      That's what programmers have called it for decades. That's how it's pronounced.

    • @k_otey
      @k_otey Před rokem

      i mean really it is a better way of saying GUI apart from the fact it sounds kinda funny

  • @pladselsker8340
    @pladselsker8340 Před rokem

    Very cool!! I respect your dedication.
    You have inspired me to go back to my own project and finish the heck out of it lol

  • @HEHEHEIAMASUPAHSTARSAGA
    @HEHEHEIAMASUPAHSTARSAGA Před rokem +59

    The funny thing is you could've totally solved your original problem by screenshotting the axes without the cube, screenshotting the axes with the cube, and fading the two images together in any editor. It seems like a cool project though, the more things like this that exist the better

    • @GabrielM01
      @GabrielM01 Před rokem +6

      he needs this to be done in a animation, the whole video is about fixing this issue in a animation software, not just a single frame, he wanted this fixed for every frame since the start of the drawing of the axes until the image was complete, without line snapping

    • @HEHEHEIAMASUPAHSTARSAGA
      @HEHEHEIAMASUPAHSTARSAGA Před rokem +6

      That exact thing can be achieved with a fade between two images

    • @GabrielM01
      @GabrielM01 Před rokem +1

      @@HEHEHEIAMASUPAHSTARSAGA so you need 2 separate images to fade together and generate one final image, okay. doing that after the animation is complete would fix the base problem, but it seems like his goal was to fix the issue in runtime in the preview window of the software he was using to make the animation, dynamically. Would he just render 2 images and fade them together in every draw call for the preview window? Seems a little heavy on the gpu

    • @HEHEHEIAMASUPAHSTARSAGA
      @HEHEHEIAMASUPAHSTARSAGA Před rokem +8

      I'm just talking about how GWG could have solved the problem if his main goal was just making the video. These kinds of software hangups happen all the time and it's a good skill to be able to solve them quickly and pragmatically. I don't want to assume what GWG's goals were though

    • @GabrielM01
      @GabrielM01 Před rokem +1

      @@HEHEHEIAMASUPAHSTARSAGA fair enough

  • @pipeliner8969
    @pipeliner8969 Před rokem +20

    Olive is a quite good open source video editor - and this was also programmed by someone who wanted to learn C++

    • @danieleccleston7928
      @danieleccleston7928 Před rokem

      Oh thats cool i want to do something similar by making an animation software but idk where to start.

    • @pipeliner8969
      @pipeliner8969 Před rokem

      @@danieleccleston7928 Animation software is so much more work compared to an editor. You could contribute to Blender and start with smaller papercuts and progress to features

    • @floenele8892
      @floenele8892 Před rokem

      I also quite like kdenlive, from my experience more feature packed but a bit less stable

  • @esra_erimez
    @esra_erimez Před rokem

    Wow, this is amazing. Well done! I'm very impressed. thank you for this video!

  • @karmagiel
    @karmagiel Před rokem

    this is so unbelievably cool! i think this was well worth the 8month you spent on this! (most people, including me, just procrastinate and have nothing to show).

  • @benonardo
    @benonardo Před rokem

    wasn't expecting another video this year, what a surprise

  • @Rajeshkr001
    @Rajeshkr001 Před rokem

    This is truly incredible..what you've created.

  • @BruceYangtek
    @BruceYangtek Před 4 měsíci

    That is a great job! And I like your story.

  • @mpa17studios93
    @mpa17studios93 Před rokem +24

    ITS FINALLY HERE!!! THE MOMENT WEVE ALL WAITED FOR LADIES AND GENTS

  • @hamol3d
    @hamol3d Před rokem

    Thank you for sharing! Fantastic stuff. Keep up the great work.

  • @zlorf_youtube
    @zlorf_youtube Před rokem +1

    "We do it not because it is easy, but because we thought it would be easy."

  • @arthank1263
    @arthank1263 Před rokem

    Mad respect!
    And I'm sorry... I'm so sorry for what you had to go through, mate!
    But hey, that's a great piece on a resume :))
    And also, you have your very own tool to do stuff with :D
    I'm editing my videos in Blender so... yeah.................

  • @ilektrokioydio
    @ilektrokioydio Před rokem +2

    Wow, this is amazing. I am pretty much a computer myself. Like, I love tech stuff, but I have no idea how to code anything past a message box in vbs and making a python script that prints a sentence, so that is really really impressive. I hope I can learn how to do this stuff one day.

  • @SamerAlhasweh
    @SamerAlhasweh Před rokem +2

    that weird text bug in the end can be turned into a feature and its quite cool actually!

  • @i5c5e5n8
    @i5c5e5n8 Před rokem

    interesting... I really like how you deep dive into solving the problems instead of using a ready made framework, when I clicked the video I thought it you would be using a ready made framework and customize it (a weekend project) ....

  • @mrshodz
    @mrshodz Před rokem

    I always love a your work. Its cool you creaeted an animation editor.

  • @SolidSt8Dj
    @SolidSt8Dj Před rokem +1

    I would love to see you completely switch to *only* this, and then tell the story of problems you run into and how you fixed them yourself rather than having to find workarounds or give up.

  • @goodvideos149
    @goodvideos149 Před rokem

    This actually looks like a good animation program. It's cool how you can transform the shapes to a different shape.

  • @programorprogrammed
    @programorprogrammed Před rokem

    Great work. Beautiful lines.

  • @lootria
    @lootria Před rokem

    looks pretty cool, gl on it in the future, but everything in the video seems to be squished slightly making almost everything look taller (noticeable on cubes and circles)

  • @mikebui5772
    @mikebui5772 Před rokem

    Very cool. You are a very underrated channel that deserves more attention.

  • @Andyzzzz501
    @Andyzzzz501 Před rokem

    This was bloody awesome!!!
    Thanks!

  • @Exilum
    @Exilum Před rokem

    This looks great! I feel like it'd be great to use alongside Resolve.

  • @yuuwa_rblx
    @yuuwa_rblx Před 11 měsíci +1

    I didn't expect to hear luau, but its cool to see it being used outside of roblox :)

  • @sid.h
    @sid.h Před rokem

    This is fantastic, you're a genius, man!

  • @tritacibo
    @tritacibo Před rokem

    Bro this is amazing!

  • @rpatros
    @rpatros Před rokem

    Great video and nice project as well. There's another open source project called Olive Video Editor which is nice but needs more savvy developers such as yourself and you can combine such feature into it, it would be tremendous.
    Look forward to see you release this editor

  • @NateLevin
    @NateLevin Před rokem +2

    Great work! I'm noticing one issue with your text renderer compared to Manim that really sticks out to me - Your renderer fades out the outlines after they are about 90% complete, while the Manim renderer keeps them there until they are filled. Also it seems like the lines go a little bit outside of the fill, which I assume just takes some complex math to fix.

  • @UliTroyo
    @UliTroyo Před rokem

    That's one fun yak you got here. Keep shaving that thing!

  • @aloeveria
    @aloeveria Před rokem

    absolutely insane project !!!

  • @emomaxd2462
    @emomaxd2462 Před rokem

    That looks amazing

  • @Often_Guy
    @Often_Guy Před rokem

    YOU WORKED REALLY HARD ON THIS! No wonder your channel had a huge hiatus for 2 entire thirds of a year!

  • @TinyMaths
    @TinyMaths Před rokem +1

    I've had the headaches already, but it's good for us new to the coding world to know that there are much bigger headaches, massive ones, to look forward to in the future 👀

  • @LucasHohmann
    @LucasHohmann Před rokem

    Been there, done that. I can't wait for your next 8 month weekend video 😂

  • @HyperFocusMarshmallow

    It’s so fun that these rabbit holes are deep. I’ve gone down many of these in the past but usually have cut the project.
    About the latex thing. I imagine the world would benefit immensely if someone were to construct a modern library rewrite of that algorithm.
    Imagine how many people must have done all the work you’ve done to get latex support in their app.

  • @antonholmberg_
    @antonholmberg_ Před rokem

    Great video and great project!

  • @StevenMartinGuitar
    @StevenMartinGuitar Před rokem

    Someone else using his alpha release editor: "Hmm, there's a bug... imma just roll my own" XD
    Top work! Would love to see more!

  • @HexOverride
    @HexOverride Před rokem +3

    You videos are eye candy!

  • @numb_vfx
    @numb_vfx Před rokem +2

    I as Graphic/ Motion Designer i would love to play around with this sometime :)

  • @pixelbogpixxelbog2090

    I really enjoyed this video. Pls more, you earned another subscriber :)

  • @conkerconk3
    @conkerconk3 Před rokem

    Man you breezed right over the timeline, i also tried to write a video editor in C# using WPF but i lost inspiration once i couldn't quite figure out how to implement a timeline. Wasn't sure how to properly deal with resizing UI elements to the right and left, same with moving them too, and dragging from row to row

    • @SimonBuchanNz
      @SimonBuchanNz Před rokem

      From the little I've used WPF I think you would need to make a custom element for the whole row to make it work well. Fortunately, the API isn't too terrible for that, but it's a decent amount of work regardless!

  • @NeZversSounds
    @NeZversSounds Před 8 měsíci

    Even though it took a good chunk of time, the end result speaks for itself.

  • @devdeckardCain
    @devdeckardCain Před rokem

    Totally didn't switch to all my other tabs looking for the Level1techs intro...

  • @dexterman6361
    @dexterman6361 Před rokem +19

    You could use LSP (language server protocol?) to do accurate syntax highlighting. Clang supports it!
    Like damn, this is a MASSIVE undertaking. You're crazy, amazing, and crazy amazing!
    I'm sure I'll learn a LOT just by going through the git history lol. The ideation, the process and whatnot!

    • @typecasto
      @typecasto Před rokem +2

      LSP is way overkill, and requires a different piece of software per language (clangd for c++, rust-analyzer for rust, etc.) They're meant for things like intellisense, refactoring, showing errors inline, etc, which wouldn't really be that useful for a video editor. To play devil's advocate, it would allow for semantic highlighting, but I still think it's not that useful for a video editor.

  • @kingding9542
    @kingding9542 Před rokem

    Congrats!

  • @____________________________v.

    *"I could code this in a weekend"* In and out, 20 minute adventure.

  • @0xggbrnr
    @0xggbrnr Před rokem

    This is amazing.

  • @NootNooter
    @NootNooter Před rokem

    This is literally awesome

  • @mikee.
    @mikee. Před rokem

    This is so sick!!

  • @IosefDzhugashvili
    @IosefDzhugashvili Před rokem

    Loved watching your problem solving. Awesome video and great demonstration of the original hacker ethic! Oh, this program is broken for my use case? Let me rewrite it! Shame the code is under a non-free license, though.

  • @atalhlla
    @atalhlla Před rokem

    “… Which I will refer to as the ‘O’ Library.” And I knew exactly which one you were talking about.

  • @ErikBongers
    @ErikBongers Před rokem

    I tried reading the manim morphing code, but couldn't understand how they (Grant) did it. So thanks for explaining it for me :)
    Also, this video contains a load of very useful info for any graphic program. I'm saving it as a reference.
    Google has a graphics library, Skia that is useful for rendering 2D stuff, but it would be difficult to integrate with all the manim functionality.
    About parsing with regex - if this turns out to be too slow, you may want to look into Tokenizers and Parsers. Admittedly, that's a hole new can of worms, but for syntax highlighting, just a Tokenizer and some minimal brute-force parsing may be enough. You could probably do this in one weekend.

    • @sycration
      @sycration Před rokem

      Skia is incredibly slow in my experience

  • @rishavpapaji5349
    @rishavpapaji5349 Před rokem

    You Both Inspires and scares me , But i like your stubbornness, it motivates me a lot

  • @RazeVX
    @RazeVX Před rokem

    ah i think you did a realy good job lerning the math and since behind all these stuff putting it together its daunting sometimes if realy codeing it from scratch and 8 months is depending on the hours a day... most my personal projects its all about the process... But is that technical even a Video Editor can you import any video and edit them or is it more some Video Creation/ Visual Animation tool... maybe for next weekend some addition to make handle realy big data streams cutting merging modifing converting... cant be that hard right :p as said great job

  • @dealloc
    @dealloc Před rokem

    For syntax highlighting you could use tree-sitter. It has a ton existing parsers for pretty much any language you can think of. This is also what nvim, amongst others, uses to add syntax highlighting (and other features). Best part of it all? It's easy to embed and very fast.

  • @dragondg6412
    @dragondg6412 Před rokem

    i cant wait until this goes public

  • @juyas6381
    @juyas6381 Před rokem

    Hey, a new video :D I was already asking myself, what is he doing for such a long time :D

  • @lwinklly
    @lwinklly Před rokem +1

    Massive W for Luau

  • @toxicwxste
    @toxicwxste Před rokem +5

    drinking game idea: take a shot every time gabe says "bezier"

  • @RTSFan1337
    @RTSFan1337 Před rokem

    I bet you learned a lot. That's the big accomplishment here. Far more valuable :)

  • @Skeffles
    @Skeffles Před rokem

    Great video! The editor looks nice but a huge project. How much more do you expect to work on it?

  • @drapermovies
    @drapermovies Před rokem

    Reminds me of when I developed my own game engine. It was a fun experience, but I also gave up after a while.

  • @eyli
    @eyli Před rokem

    Loved this video!

  • @sanderbos4243
    @sanderbos4243 Před rokem

    Love the dedication and the end result looks awesome!

  • @cane988
    @cane988 Před rokem

    I just found your yt chanell and it is one of the best!!!!!

  • @aaron6807
    @aaron6807 Před rokem

    holy crap, dude, you're a god. I respect the dedication

  • @bomberman2995
    @bomberman2995 Před rokem

    The good old "how hard can it be"... Been there done that, usually not with such an impressive result though.

  • @aryankeluskar6
    @aryankeluskar6 Před rokem

    "How hard could it be"
    - famous last words

  • @disabledmallis
    @disabledmallis Před rokem

    I would love to use this