Note: when I poke fun at other engines I don't mean "Godot is superior". I use Unity too next to Godot and I definitely don't hate it. Thanks for watching! ❤️
@lolcat692 жыл бұрын
I am making an engine, and I was going to implementó texture atlas, and your video gave me the perfect idea of how to do it in my cpp code and my shader code... Thanks :)
@godofdream9112 Жыл бұрын
Mam, can you shere the github link, please... I want to see it in deppth... Please .
@kiryonnakira75667 ай бұрын
well, i use both, and i hate unity. LineRenderers and TileMaps just rub me the wrong way.
@GameEndeavor2 жыл бұрын
That is very cool how you're able to sync your lips with your audio. I could see this being useful in a game too. Amazing work. :)
@LucyLavend2 жыл бұрын
Thanks GE! A small game jam around microphone input would be pretty interesting 🤔 There would probably be a lot of "scream to move" games lol
@GameEndeavor2 жыл бұрын
@@LucyLavend lol, I was thinking of lip syncing dialogue in like a farming simulator Stardew Valley kind of game. But that works too. xD
@LucyLavend2 жыл бұрын
@@GameEndeavor Ahh as in useful for game development, that's a really interesting application too!
@igorgiuseppe18622 жыл бұрын
@@LucyLavend maybe an chat app!
@mmmegaidiot2 жыл бұрын
idea: somehow use live feed from a microphone in real-time, you could potentially use it in an online game
@duducorvao2 жыл бұрын
This is such a cool video. And we can hear the excitement in your voice, which makes it even better. Please, keep making more :3
@elrelster2 жыл бұрын
This is incredibly awesome. Never though I'd see frequency analysis of voice spectrum happening in godot :D
@Atropos1482 жыл бұрын
That shader for changing expressions is a cool idea :) also, it seems that if you add keyboard shortcuts it might actually be a faster than what you did before :)
@igorgiuseppe18622 жыл бұрын
you mean shortcuts for changing the pose?
@Atropos1482 жыл бұрын
@@igorgiuseppe1862 yes the pose and expressions, the muscle memory of "what expression is where" would make this workflow even faster :)
@BreezyDefrag7 ай бұрын
WHOA! I didn't even know you could do this kind of thing in GODOT! You should set your buttons to a Stream Deck, or Keyboard controls. That would work out then you can talk while pressing the buttons on the Stream Deck/keyboard so you don't have to manually press the buttons in engine.
@rubixkyoob22 жыл бұрын
This is so clever! And thanks for breaking down the shader code. I've been thinking of using a similar effect for the face of the character in my own project
@queenofsquiggles2 жыл бұрын
I have some linguistics background so I can corroborate what you found with vowels and "s". There's a class of 'segments' that you're describing. (segments are individual speech sounds, in English each letter can have multiple segments associated with it depending on an individual's accent). They are called "sonorants" because they are the segments that can be held and have a "periodic" frequency. Their frequencies stabilize out to whatever frequencies that is unique to the speaker's vocal tract, but there are some common ranges for them. Sonorants include vowel sounds, and [n], [m], [s]. The square brackets refer to the symbols being IPA (International Phonetic Alphabet), not necessarily English. Because sonorants are so clear and stable, they are super easy to identify with a little bit of spectrum information as you show in the video. Something really cool is based on the frequency of sonorants, you can determine the percentage of your lips that are rounded, so if you wanted to go more dynamic you could check for a frequency range particular to your voice, and use differently rounded lip textures. Specifically, it's the F3 formant that is linked to the roundedness. A low F3 means very rounded, and high F3 means flat/spread lips). You can also use F1 for mouth openness, where low F1 is very open and high F1 is very closed. Linguistics is super cool to me and it was really enjoyable to see you show some linguistics tidbits in this video. I'm not sure if you researched it before or stumbled upon it, but either way it is fun to look into. Best of luck with making your workflow more efficient! Your videos have always been very informative for me learning Godot Some easy resources to read more about the linguistics concepts I mentioned: en.wikipedia.org/wiki/Roundedness en.wikipedia.org/wiki/Sonorant
@piousthepious2 жыл бұрын
This is super cool. I can see this being super useful in games that use mic input to talk to others. This can honestly be applied to a simple portrait, not even just a 3d model
@Harotyx2 жыл бұрын
Amazing, would love to see some more Godot tutorials since your way of explaining and the production behind the tutorials are so much better than those unedited in-engine footage other tutorials have. Keep up the good work!
@LucyLavend2 жыл бұрын
Thank you! More content is in the making 😄
@Harotyx2 жыл бұрын
Im sorry for my comment, unedited video is ok too
@benjattkk2 жыл бұрын
One of your best vids! The app looks great.
@maranr2 жыл бұрын
I love the simple lip sync technique. Would love to see a detailed tutorial on how you did that. Or better yet a demo or plugin!
@badmonkey91 Жыл бұрын
I'm tooling around with it. Using the frequency to identify vowels really isn't accurate. It half-ass works if you have someone with a flat, very consistent voice. But if it's someone that speaks with any inflection, it's not at all accurate. An example being someone that speaks with 'up-speech' (like Australians or valley girls), or when asking a question. If you've identified a particular vowel - let's use O as an example - as being at a certain set of frequencies. When the person's voice shifts pitch (during up-speech, or when asking a question), it will shift which frequencies you're testing, and the shape in general changes. So you can't consistently test for a set of particular frequencies, or for a particular wave shape. I looked into how professional voice dudes identify vowels in spectrums. They work on charts that have the chart set with time and frequency as the two axis'. Not frequency and volume, as this spectrum analyzer shows. It seems like speech recognition in realtime would be immensely difficult and complex. Here's one example: kzbin.info/www/bejne/o4jInWigYqtroqc As far as a program to make a v-tuber talk...you're probably better off just having it play the mouth animations randomly. That's what some cartoon makers do. Given more time, maybe you could come up with something slightly more accurate though. like the identification of important vowel sounds, like O, E, and A.
@erwinbroekhuis Жыл бұрын
A nice middle-ground solution would be random mouth movement but using the analysis to close the mouth at the right moments.
@smolblockboi2 жыл бұрын
Really cool to see someone else using Godot this way! I made my stream avatar using a similar method via layering Animation Players since mine's a 2d sprite but totally didn't think of making the remote control UI on screen and then mask it. I've got way too many keyboard shortcuts that I have a sticky note on my desk for reference lol.
@BlueCubeSociety2 жыл бұрын
I always thought these were already done in Godot :shrug: Definitely cool, especially the lip sync
@monochroma38032 жыл бұрын
this is so cool! I never imagined you cant achieve this in Godot! Pretty nice stuff! Good work!
@thomasamathew40582 жыл бұрын
Please don't stop making Godot tutorials. Subscriber from India ❤
@sasaha8389 Жыл бұрын
tbh i think this is way faster and more comfortable to use rather than keyframing the stuff in hitfilm. great job well done !!! :D
@krzyszt0fus2 жыл бұрын
OMG! You are alive 😉 Thanks again, and looking forward for more 😀
@seraaron2 жыл бұрын
I'm surprised you didn't go full vTuber, but this is still really cool!
@josephducreux4236 Жыл бұрын
love the low poly and pixel art combo aesthetic
@soloshottie2 жыл бұрын
watching Lucy explode at the end cured my depression
@decoy36412 жыл бұрын
Been awhile, worth the wait! ❤️
@ViviTheEnbyWitch2 жыл бұрын
this is how learned that you can animate properties in hitfilm without doing composite shots, oh my god
@nyeeesss24242 жыл бұрын
I had no idea Godot had such good mic support! You video's quality just got a whole lot better Lucy!
@thedupy1242 жыл бұрын
Thank you so much for this video ! I'm working on a Voice tools (for voice working), and you save my life 💗
@sherekhangamedev2 жыл бұрын
Really neat solution, and great use of skills to reach it out. Kudos!
@Galomortalbr2 жыл бұрын
really cool video, it's good to see godot being used for non gaming applications, i also love Gonkee's content.
@franknord48262 жыл бұрын
How the hell did you never show up in my recommendations before!? Subbed.
@LucyLavend2 жыл бұрын
Thank you 😆
@MrEliptik2 жыл бұрын
Really cool video and awesome work as always!
@LucyLavend2 жыл бұрын
Thank you MrEliptik!
@Gbtx62 жыл бұрын
You did save a crap ton of time by doing this. Fantastic work!
@crowcoding6992 жыл бұрын
1:41 omg. Definitely can relate. I love the workflow you made. It looks so intuitive for a project you made for yourself. Didn't know phoneme recognition was possible to do with such a simple-sounding approach. Tho if you like the realtime approach I'd recommend binding each pose to a numpad key. It'll be hard at first, but just like a keyboard layout, with practice you can memorize it blindfolded.
@bourbonbobo2 жыл бұрын
This video is so good Lucy! Also you should totally trey streaming with this haha.
@LucyLavend2 жыл бұрын
Thank you Breogán! I could indeed just green screen key and crop in in OBS itself 🤔 I enjoy showing my irl face on streams, but cropping out the buttons directly in OBS is also really useful outside of streaming
@AlfredBaudischCreations2 жыл бұрын
That's so cool - what a creative thing to do with Godot!
@Asocial-Canine2 жыл бұрын
This is a really neat little tool! The only improvement I could see with it would be to let the lipsync take an audio file as input instead of the raw microphone stream; It'd solve the issue of needing to change the poses live as you're talking. Though I imagine you could kinda bodge that by playing the audio file to Voicemeeter or something
@KillerGameDev9 ай бұрын
Alright, you earned the subscribe. That was pretty cool. Been thinking of making something similar but mostly for work so I can pretend to be at my desk in meetings. lol. Thanks for sharing with the world!
@gnastygames2 жыл бұрын
cool af and I might actually use something like this in my own game for basic cinematics
@jotanart2 жыл бұрын
Really cool idea!
@anemonemnemone3918 Жыл бұрын
blinking IS cool. real keen on blinking
@NekotoArts2 жыл бұрын
LUCY'S EDITING +12 MILLION! At 4:15 you can sample the texture once and save it to a vec4, then use the appropriate channels for ALBEDO and ALPHA instead of re-looking up the texture. (Although, ig it doesn't really cost much performance since your model is like the only thing in the scene). 7:06 is every programmer, ever. Hehe.
@Pefeper2 жыл бұрын
WOAH this is super cool, awesome work!
@LucyLavend2 жыл бұрын
Thanks! 😄
@jackfishthe6th3732 жыл бұрын
Really cool! I wonder if this could be used as a early precursor to making a VTuber model in Godot?
@stevenrodkiss4732 жыл бұрын
Absolutely brilliant!
@KingThrillgore2 жыл бұрын
This is very cool. I'm guessing the logic you have written for the lip sync works off a fourier of the mic input, and its modularized enough to work with any AudioStreamPlayer source. I'm wondering if its at all possible to put the changes in the Shader on the AnimationTree or as part of an Animation, then you could run the full gamut of emotions on top of lip sync, but that may be out of the realm of possible with how its implemented now (you would need to triple the size of the sprite sheet as well). As someone who has given thought to accomplishing lip sync in Godot (and the few solutions on the asset library) this is a relatively simple to follow implementation. Pretty cool stuff.
@JTriggerVideos2 жыл бұрын
This is the coolest thing ever
@Zwiebel410 ай бұрын
Can you maybe make a tutorial on how you analyzed the audio in real time and turned it into animation data? I'd like to learn about the coding side of your approach because currently, Godot is still lacking a real-time audio analyzer that selects animations for phonetics for lip-syncing character models to audio. I know I can use external tools to generate the keyframe data for audio files, but having it processed in real-time would make this so much more elegant.
@pipelonsogames2 жыл бұрын
oh, that's so epic, i want to make some similar for me, i need a microphone documentation for my linux mint operative sistem
@R3W3W2 жыл бұрын
Mapping the poses to keys or xbox controller buttons would be cool
@graydwarf222 жыл бұрын
Love your work. Always amazed by the quality and effort you put in. Walked away from this wondering why you don't just record the audio without the hassle of timely animations and then during post, replay/review with some form of tool (your animation UI) that can create entries on a corresponding timeline (animate/function timeline) which you can later play together and edit.
@pixelettee2 жыл бұрын
This is so amazing.
@luigisake Жыл бұрын
that looks cool // would be cool if you made a tutorial on how to make one ! or if there was a build out there to Download!
@akio1st2 жыл бұрын
You are a Life saver, next video I will be doing wont be dealing with hardcore stuff hahah! Thx
@nachoabadie4707 Жыл бұрын
Hey really nice and smart implementation!
@blablagame39142 жыл бұрын
very cool work! Do you have any resources on how to make the model itself?
@danisob36332 жыл бұрын
this is sick!
@damonmichiels2 жыл бұрын
Amazing, I love it
@CaveJohnson376 Жыл бұрын
you could import face expression texture as 3d texture or 2d array texture and rework shader code a bit to make it simpler. this would allow for easy, practically hassle-free scaling of amount of face expressions
@abderrahmanemouhsine95612 жыл бұрын
welcome back
@Matto_Sama2 жыл бұрын
thanks
@chimeforest2 жыл бұрын
This is very cool ^^ Have you considered instead of using a mic, using a audio file instead? Then you wouldn't have to focus on talking and clicking at the same time. It could also open up the possibility of adding key frame functionality in the future.
@igorgiuseppe18622 жыл бұрын
i NEED this, ok, i dont have the characters designed yet, but i need it! i cant wait to see the future of vtubers with it, maybe they make something... good btw, you had the same idea of using chromakey that i used once xD except i was using: webcam as texture, to put my face on a 3D cube on blender, then capturing the window on obs, and croping it with chromakey
@InfernalWAVE7 ай бұрын
Is there any way you could give deatil about how exactly you did the vowel recognition from levels? I have a whole spectrogram dawn at this point, but am not sure how to go about processing the info
@felusion62902 жыл бұрын
man thats a good idea to record a video like you do WOW
@dragoonduneman41612 жыл бұрын
oh a next idea for you what about motion control with hands so that you can act out your own character ?
@user-js7ud9du2y2 жыл бұрын
awesome project
@LORDSofCHAOS3332 жыл бұрын
great now i want to make png / gif tubers great again and try to code my own
@qubitx642 жыл бұрын
How did i miss this
@areftb7522 жыл бұрын
Hi, Thanks for this tutorial. But, How did you get lip sync out of the spectrum??
@Chevifier2 жыл бұрын
This is freaking Cool ngl
@caveirainvocada9438 Жыл бұрын
This is just what i was looking for! But is this a good technique for use in games? It's pretty amazing but would it be slow or anything? I don't know much about shaders
@NeZversSounds2 жыл бұрын
You have beautiful poses, why you don't you blend between them?
@LucyLavend2 жыл бұрын
That way it would look a lot less snappy, but I could give it a try to see how it looks, thanks for the tip 😄
@liefhebber62772 жыл бұрын
Cool stuff!
@LucyLavend2 жыл бұрын
Thank you! 😄
@parvjain212 жыл бұрын
It's epic🔥
@llcoolgames2 жыл бұрын
woohoo! new vtuber just dropped! 😄
@J0linarTube2 жыл бұрын
so cool, any chance you could share how you made it work when the mic receives actual input by voice?
@J0linarTube2 жыл бұрын
actualy how you made it detect the vows 😅
@ShinSpiegel2 жыл бұрын
That's so cool!!!!!
@einlandersvideos62132 жыл бұрын
You're a Vtuber now!
@parvjain212 жыл бұрын
What's vtuber?
@nicholaswilliamson16842 жыл бұрын
could you attach a prerecorded audio file to do it as well?
@LucyLavend2 жыл бұрын
As long as it runs through the audio bus with the spectrum analyzer effect on it, yes! Godot even has build in support for recording audio, so I might add that next
@hidemat514111 ай бұрын
Any chance you would share the code you use to sample the peaks?
@BHanif-zc2pr2 жыл бұрын
Can you make a video on how can i reduce noise from my audio in godot. I want to record audio using godot and tgen remove the noise
@TsukiDrawing Жыл бұрын
Is there a possibility that you would make tutorial how to do it? I see more flexibility in making my own Vtube'y thing this way than with provided online tools, especially while I'm Mac user.
@SynthGirl642 жыл бұрын
hi lucy, your lil lowpoly animated avatar is really cool, I wanted to do the exact same thing for my music production/speedruns stream but also put the avatar at a desk with a keyboard and mouse (use mouse position and keystrokes so that it knows how to move the hands/arms in real time). as a trans woman who doesn't have access to hormones, lil avatar thingies help with gender dysphoria cause then viewers don't just assume my gender based on my voice. only problem is I got about 100 hours clocked into blender and STILL haven't managed to model my character yet hahaha, modelling is hard
@ChrisTay2292 жыл бұрын
kzbin.info/www/bejne/o2S6l2B7msx1nck Try this video. It goes quite fast but there's a full 2 hour stream linked in the description, and it goes over making a psx style character. Not an exact match for what you're looking for but I managed to adapt it for some nier characters, and you could probably just have higher res textures and get the effect you're going for :)
@SynthGirl642 жыл бұрын
@@ChrisTay229 thanks :D I'll check it out
@SynthGirl642 жыл бұрын
@@ChrisTay229 oh wait hahaha, I have a reply on this video from 2 years back, yeah I've seen this but I never checked the stream linked, I'll take a look
@hidemat5141 Жыл бұрын
Nice new avatar!
@arrangemonk2 жыл бұрын
whats hindering you from actually playing the movement between two poses now?
@watergategaming56392 жыл бұрын
Holy shit this is so cool
@LabFind2 жыл бұрын
"Is it faster?..." Wellll, it's more of an...initial investment
@liamkoehler88202 жыл бұрын
Is the green-screen thing really required? I would think that you could simply export with a transparent background, right?
@LucyLavend2 жыл бұрын
Yeah but then I'd have to write an exporter that exports render textures from the viewport. That's definitely an option.. but I'm lazy lol. Currently I'm not using this anymore and writing a Blender addon instead 😆
@liamkoehler88202 жыл бұрын
@@LucyLavend Thanks for the quick reply :) Blender *does* have the ability to export with a transparent background, so maybe you will make use of it there. Will you do all your editing in blender? I hear the video editor isn't shabby.
@Paruthi.6182 жыл бұрын
Definitely cooler 😎
@vishnuviswanathan53082 жыл бұрын
Good video
@Goldenfightinglink2 жыл бұрын
wow, it's basically vtubing, which can rack up to tens of thousands of dollars. I can also see using the same concept of your face "setting" in other static huds/menus. with the mouth animations being proof that one can go really indepth with it
@MikeCore Жыл бұрын
you have too much power!
@MikeCore Жыл бұрын
also, love seeing another hitfilm user ^-^
@jkouss Жыл бұрын
Nice
@Matto_Sama2 жыл бұрын
finally, lucy 2.0
@LucyLavend2 жыл бұрын
Lucy 2: Electric Boogaloo
@luigisake Жыл бұрын
are you willing to do this in Godot 4?
@UODZU-P7 ай бұрын
blud reinvented v-tubers
@el_jim14792 жыл бұрын
did she just explode at the end
@Matto_Sama2 жыл бұрын
WHOA!😊
@tarsyth34332 жыл бұрын
I'm working with a friend on a game and we need a couple of soundtracks is anyone willing to work with us
@LucyLavend2 жыл бұрын
oh no
@hairiclilred2 жыл бұрын
I'm working with a friend on a game and we need a couple of soundtracks is anyone willing to work with us
@LucyLavend2 жыл бұрын
@@hairiclilred noo
@igorgiuseppe18622 жыл бұрын
nice intro
@Bravo_0-7 Жыл бұрын
Honestly, if im given the choice of spending 2 hours per video editing or spending 10 hours questioning life while i make a cool program that would have so many bugs during the process of making it to the point where i wanna kill myself, i think the 10 hours are worth it lol, so it is saving time
@prerit69152 жыл бұрын
omg
@Matto_Sama2 жыл бұрын
😢
@Sina_Qadri2 ай бұрын
Dude Please share this code without the model its not that hard been hours here im trying to do the same but the coding is pain in hell i cant even get the mimic right at last share the code not the project????