There's a lot of fancy math around quaternions, but you can think of them in a really simple way. A quaternion encodes a rotation by saving the rotation axis and the rotation angle around that axis. You can write a quaternion as a 4-vector (w, x, y, z) or sometimes ordered differently as (x, y, z, w). If alpha is your rotation angle, and (p, q, r) is the unit vector describing your rotation axis, you can construct your quaternion as: w = cos (alpha/2) x = p * sin(alpha/2) y = q * sin(alpha/2) z = r * sin(alpha/2) The sin and cos are needed to make quaternion operations work properly. The most important Quaternion operation is the Hamilton Product, which lets you "chain" quaternions like you would chain rotation matrices by multiplying them. This only works properly if your quaternion is a unit quaternion, i.e. the compnents squared and added are equal to 1. This is always the case if you construct your quaternion like described above. A rotation quaternion has the exact same amount of information a rotation matrix has, you can convert one into the other. I love your videos, keep it up!
Best part about the video was the piano music and just flying around and just enjoying the nice work for a moment, often its just on to the next task with no celebration ^^, gj!
The nice thing about using the left vector for orientation is that it's the only one that's consistent across all coordinate systems we commoly use. The Z-axis is flipped between OpenGL and DirectX because one uses a left handed coordinate system and the other uses a right handed one. The Y axis is flipped between world space and screen space since computer monitors start with the top row and go down, but in world coordinates, we usually consider Y to point up. Only X is consistent, always pointing to the right.
As soon as he started talking about the "camera rotation" thing and the "4 values" I immediatley thought about 3Blue1Brown's video about that subject. I absolutely love it when seemingly random pieces of information come together!
>len 1 >shows (1,1,1) with length sqrt(3) AHHHHHH jk ily btw quaternions can be treated as vectors in R^4, or as a subgroup of 2 by 2 matrices with complex entries, SU(2), and is a double covering of SO(3) fun stuff complex numbers are similarly a subgroup of 2x2 matrices of reals ending is uwu btw 💕
Thanks for the video. It reminds me I learned about quaternions hard way as well! ;] Many, many years ago I had tried to write a camera handling code for the 3D engine in secondary school, so it was way ahead from what was expected from a typical teenager in terms of maths (quaternions) and IT (C++ and OpenGL). I had struggled for a few days, as it took some time to understand that 3 values aren't enough to steer the camera reliably in every direction, which is counter-intuitive! It is funny when I think about it now. I was probably a little frustrated back then, but now I think it was such an excellent learning experience! Good old times, although, I had no access to the internet and had to visit friends in order to download game-dev tutorials and read them offline. ;] And no... I didn' become game developer ;]
This has probably been pointed out several times already, but the channel 3blue1brown has both an amazing video on the 4-dimensional beasts, as well as an online app that lets you explore quaternions hands on while getting the full explaination. For me, it was very helpful when I started to learn about them and wanted to build up an intuition beyond the symbols. If you instead just want to read them: A rotation by an angle of A around an axis represented by the unit-length vector (x,y,z) corresponds to the quaternion cos(A/2) + sin(A/2) (xi+yj+zk). E.g. assuming Y is up, rotating 90 degrees to the side (so around (0,1,0)) becomes cos(90°)+sin(90°)(0i+1j+0k) = j But again, these are just symbols and I highly encourage you to check out the aforementioned videos to get a deeper understanding.
Yes, I knew it immediately: Welcome to quaternions. I've never quite fully understood them -.- They're so hard to simply visualize. A video by 3Blue1Brown helped a little
Would be happy to see more videos about games and how that games works(the stuff behind the games) :) as example MMO,s like aion and tera. Greetings from Germany :D
If by chance you are seriously interested in learning about quaternions. I recommend learning geometric algebra first. It's an obscure area of maths that seemingly has nothing to do with quaternions, but if you get into it you'll discover an intuition that is available nowhere else. The key topics are rotors and the even subalgebra of Cl(3).
Crystallographic texture analysis is just analyzing the texture resulting from a form of crystallography, such as X-ray crystallography, which is used for all sorts of things, such as determining the structure of molecules, proteins, basically anything you can crystallize. That's how we discovered the shape of DNA. But they did it with FILM and by hand! Now we do it with fast capture digital sensors and computer analysis. You might want to analyze the "texture" of a protein to find a way to activate or deactivate the active site with a small molecule (I.e. a drug!) That said, the PDB file format (which is used for protein structure files) just uses XYZ coordinates, not quaternions. Weird...
When I saw 4 values i immediately knew what's up :D . But that's just because i heard of quaternions before and it was mentioned that it's often used in games.
Quaternions are pretty cool, though I don't understand them completely either. Still, I understand complex numbers. You can put them on a 2 dimensional plane, in which one axis is normal numbers, and the other is i(0, i, 2i, etc). Then, you can represent points on this plane as a normal number and a complex number. The thing is, when you multiply this point by i, you can rotate the point :D for example, a point like (1, i), multiplied by i will be (i, -1). When you plot them, the second point is the first point, rotated by 90 degrees :D
I did a 4 year Applied Math degree and I still don't have a good conceptual grasp over quaternions. I've only recently rationalised complex numbers for myself as a better way to do trig, but that's likely not the whole truth. Random mention, but people sometimes use them (complex numbers) in differential equations instead of trig functions, as its easier/neater to keep track of derivatives of e^(i theta) than cos and sin.
Is there anywhere to see the code for all of this? also you're patreon icon on the endcard got broken. youtube did this for everyone and it's going to require a manual update to fix.
Interesting video, you should do a vtable or detour hook next so you can make changes on the game thread. A seperate thread making memory modifications like this can be unstable
I'm not sure what you mean by "fly free in creative mode" But if it helps, in minecraft the movement is handled entirely client side and you can write mods to modify how movement is handled and use them on servers. No cheat engine or dll injections required. -- I used to play with the Squake mod for fun on a server I played on.
Oh guidedhacking, some of the forum posts and videos were helpful, but I’d never use one of their injectors/tools. I remember that, without any mention, some guys injector there (broihom or something) had some bitcoin trash alongside it, which was never mentioned.
Instead of NOPing the move function, why not search for an "is touching ground" variable in the area where the position changes from gravity and replace it with always true for the time of flying?
For a better understanding of quaternions, you can have a look here: eater.net/quaternions While I still don't understand a lot, at least now I have a vague intuition of how they function.
Here's the tutorial, by 3blue1brown! ruclips.net/video/d4EgbgTm0Bg/видео.html By the way, unit quaternions do have length 1, but vector (1,1,1) certainly doesn't!
Surprised I immediately knew about Quaternions when I saw 4 values
Yeah, I also thought initially that it was a Quaternion, thanks to Unity. Looks like I wasn't wrong.
Me too! Hahaha
same here. but not because of unity.
Unity does this to us all.
Same, thanks to Qt3D (If anyone knew it because of Qt3D, let me know)
"unit vector (1, 1, 1)"
bruh
It doesn't even have length 1 :D LiveOverflow is the reincarnation of Pythagoras, confirmed
irrational length of vectors. numerical errors incoming xD
I’m revolutionizing math!
@@LiveOverflow pls don't. We have enough formulas & theorems to remember, we dont want more😢😢
@@root317 That's why teaching mathematics in school *must* be revolutionized
There's a lot of fancy math around quaternions, but you can think of them in a really simple way.
A quaternion encodes a rotation by saving the rotation axis and the rotation angle around that axis.
You can write a quaternion as a 4-vector (w, x, y, z) or sometimes ordered differently as (x, y, z, w).
If alpha is your rotation angle, and (p, q, r) is the unit vector describing your rotation axis, you can construct your quaternion as:
w = cos (alpha/2)
x = p * sin(alpha/2)
y = q * sin(alpha/2)
z = r * sin(alpha/2)
The sin and cos are needed to make quaternion operations work properly. The most important Quaternion operation is the Hamilton Product, which lets you "chain" quaternions like you would chain rotation matrices by multiplying them.
This only works properly if your quaternion is a unit quaternion, i.e. the compnents squared and added are equal to 1. This is always the case if you construct your quaternion like described above.
A rotation quaternion has the exact same amount of information a rotation matrix has, you can convert one into the other.
I love your videos, keep it up!
3Blue1Brown has a pretty good video on quaternions.
Funny how he just did a stream where he mentioned them and gimbal lock and went over complex numbers.
Welp. Time to spend $100 on supplements and omega-3 and get a meth prescription from the doctor and try to learn this shit.
I love the aesthetic that you infuse your videos with. It is functional, clear, and very LiveOverflow.
06:08 I see... you are a man of culture as well.
Best part about the video was the piano music and just flying around and just enjoying the nice work for a moment, often its just on to the next task with no celebration ^^, gj!
Yeees a new Pwn Adventure video! This series is the best!
The nice thing about using the left vector for orientation is that it's the only one that's consistent across all coordinate systems we commoly use. The Z-axis is flipped between OpenGL and DirectX because one uses a left handed coordinate system and the other uses a right handed one. The Y axis is flipped between world space and screen space since computer monitors start with the top row and go down, but in world coordinates, we usually consider Y to point up. Only X is consistent, always pointing to the right.
I am glad you are continuing this series! Looking forward to the next one! Keep it up and stay safe!
I thought this series was dead. This video was nice and lovely surprise. Keep up the great work ;)
As soon as he started talking about the "camera rotation" thing and the "4 values" I immediatley thought about 3Blue1Brown's video about that subject.
I absolutely love it when seemingly random pieces of information come together!
>len 1
>shows (1,1,1) with length sqrt(3)
AHHHHHH
jk ily
btw quaternions can be treated as vectors in R^4, or as a subgroup of 2 by 2 matrices with complex entries, SU(2), and is a double covering of SO(3) fun stuff
complex numbers are similarly a subgroup of 2x2 matrices of reals
ending is uwu btw 💕
Love these little math recaps, good job on this series.
Thanks for the video. It reminds me I learned about quaternions hard way as well! ;] Many, many years ago I had tried to write a camera handling code for the 3D engine in secondary school, so it was way ahead from what was expected from a typical teenager in terms of maths (quaternions) and IT (C++ and OpenGL). I had struggled for a few days, as it took some time to understand that 3 values aren't enough to steer the camera reliably in every direction, which is counter-intuitive!
It is funny when I think about it now. I was probably a little frustrated back then, but now I think it was such an excellent learning experience! Good old times, although, I had no access to the internet and had to visit friends in order to download game-dev tutorials and read them offline. ;]
And no... I didn' become game developer ;]
The end result is so technically beautiful!!!
This has probably been pointed out several times already, but the channel 3blue1brown has both an amazing video on the 4-dimensional beasts, as well as an online app that lets you explore quaternions hands on while getting the full explaination.
For me, it was very helpful when I started to learn about them and wanted to build up an intuition beyond the symbols.
If you instead just want to read them:
A rotation by an angle of A around an axis represented by the unit-length vector (x,y,z) corresponds to the quaternion cos(A/2) + sin(A/2) (xi+yj+zk).
E.g. assuming Y is up, rotating 90 degrees to the side (so around (0,1,0)) becomes cos(90°)+sin(90°)(0i+1j+0k) = j
But again, these are just symbols and I highly encourage you to check out the aforementioned videos to get a deeper understanding.
Yes, I knew it immediately: Welcome to quaternions.
I've never quite fully understood them -.-
They're so hard to simply visualize. A video by 3Blue1Brown helped a little
5:56 Okay, Ill point you in the right direction with a quaternion
Playing around with Quaternions in Unity is also very helpful, but I suggest 3Blue1Brown video as well!
Love you liveOverflow! After covid-19 please make plans to come to South Africa you'll enjoy it!
I don't understand any of this but I know I freakin admire the work.
Would be happy to see more videos about games and how that games works(the stuff behind the games) :) as example MMO,s like aion and tera. Greetings from Germany :D
If by chance you are seriously interested in learning about quaternions. I recommend learning geometric algebra first. It's an obscure area of maths that seemingly has nothing to do with quaternions, but if you get into it you'll discover an intuition that is available nowhere else. The key topics are rotors and the even subalgebra of Cl(3).
3blue1brown has an awesome quaternion series
Crystallographic texture analysis is just analyzing the texture resulting from a form of crystallography, such as X-ray crystallography, which is used for all sorts of things, such as determining the structure of molecules, proteins, basically anything you can crystallize. That's how we discovered the shape of DNA. But they did it with FILM and by hand!
Now we do it with fast capture digital sensors and computer analysis.
You might want to analyze the "texture" of a protein to find a way to activate or deactivate the active site with a small molecule (I.e. a drug!)
That said, the PDB file format (which is used for protein structure files) just uses XYZ coordinates, not quaternions. Weird...
The 3Blue1Brown video on quaternions nice for people who want to understand it! It's where i got my intuition for quaternions
YOUR'E NOT DEAD =DDDD i was a hardcore fan of pwnadventure 3!!!
YESSS! Pwn Adventure is back?!
"So how do we rotate this 3D vector with quaternions ..? I have no clue !"
I died x)
If you want to learn more about quaternions, 3Blue1Brown, has some really nice tutorials on them, you should check then out!
When I saw 4 values i immediately knew what's up :D . But that's just because i heard of quaternions before and it was mentioned that it's often used in games.
Quaternions are pretty cool, though I don't understand them completely either. Still, I understand complex numbers. You can put them on a 2 dimensional plane, in which one axis is normal numbers, and the other is i(0, i, 2i, etc). Then, you can represent points on this plane as a normal number and a complex number. The thing is, when you multiply this point by i, you can rotate the point :D
for example, a point like (1, i), multiplied by i will be (i, -1). When you plot them, the second point is the first point, rotated by 90 degrees :D
So easy to understand Love your way of describing .... you earned your like ... Peace
suggest 3b1b‘s interactive video for quaternions
Finally some more Pwn Adventure!
Others: let's make game in Unity.
Ben: Let's hack a game.
love your content man
2:44 wait, that's illegal!
Cross vector product rules.
It's confirmed, this video was made last year.
I did a 4 year Applied Math degree and I still don't have a good conceptual grasp over quaternions. I've only recently rationalised complex numbers for myself as a better way to do trig, but that's likely not the whole truth.
Random mention, but people sometimes use them (complex numbers) in differential equations instead of trig functions, as its easier/neater to keep track of derivatives of e^(i theta) than cos and sin.
Nice song you wrote on a piano
Is there anywhere to see the code for all of this?
also you're patreon icon on the endcard got broken. youtube did this for everyone and it's going to require a manual update to fix.
...great vid, plz more
7:20 We were born on the same year, wow. Hey there!
Why did I get a 50 minute long gut renewal ad on this video? lmao
Great video, I'd love to hear what you think about the tf2 source code leak.
Me in the first 5 minutes of the video: I'm studying computer engineering and I have no clue about stuff you are talking about.
How I would try to do the fly hack, since we can already move the camera, just teleport the player to the camera position.
Interesting video, you should do a vtable or detour hook next so you can make changes on the game thread. A seperate thread making memory modifications like this can be unstable
WTF. I have notifications on for your channel but never got a notification for this.
I remember when this guy had less than 10k followers...amazing!
idk why pwn3 keep crashin when we execute the line defining vec3* old_position
3b1b's Quaternion video is amazing
So is the user dobs the same guy as guided hacking?
I am new in the channel does this apply to Minecraft to fly free in creative mode
I'm not sure what you mean by "fly free in creative mode"
But if it helps, in minecraft the movement is handled entirely client side and you can write mods to modify how movement is handled and use them on servers. No cheat engine or dll injections required.
-- I used to play with the Squake mod for fun on a server I played on.
@@8bit_pineapple is there a good Channel or two videos to know more about to write down mods
afaik when you press right mouse button shouldn't the code run more then one time? And then the bool bFlyHack would go 0 1 0 1 0 1?
Now just hook the function you re noping and only modify it for your own playerobject or am I missing something?
Oh guidedhacking, some of the forum posts and videos were helpful, but I’d never use one of their injectors/tools. I remember that, without any mention, some guys injector there (broihom or something) had some bitcoin trash alongside it, which was never mentioned.
Yo Live, this probably came up in your research, but 3Blue1Brown had an awesome video on "Quaternions and 3d rotation, explained interactively."
Guided Hacking full of chads like Rake and Fleep
Love the video. i will be happy to see you hacking Pokemon FIRE RED version it looks tricky to break.
The player camera offset from the player origin reminds me of counter strike
Btw can you make a video about the CSGO and TF2 leak?
There are a few very good videos about quaternions from numberphile and 3Blue1Brown.
I see LiveOverflow doing for me what seems to be magic and I am struggling to make a door in Unity
So here I am watching someone who is twice as old as me trying to figure out mathematic things which I didn't even know about bedorem
CS:GO and TF2 source code was leaked week ago! You know what to do 😆
its only the client code, nothing to do with the servers or the anticheat
Greetings from Human Resources ;)
Are you still using visual studio for coding? Yeah, good old times. How else uses vs code now?😉
Quaternions are used also by accelerometers ;)
Instead of NOPing the move function, why not search for an "is touching ground" variable in the area where the position changes from gravity and replace it with always true for the time of flying?
because that was the most simple and fastest way to solve it for him, like are you serious when you ask this or do you mean it to be a suggestion?
@@lyan2759 a suggestion
Had enouch Fun with quaternions while making my maturita work.
I was needing to roste vector and settled on quaternion.
You are so freaking awesome XD
First time i heard about complex numbers outside of school.
It's like the spectate mode.
Nice I ❤ dll injection
Leaked... the first
My notifications are on and I didn't get notified. Is this an RUclips problem?
back in the days that was very common, so yeah probably a problem with the server you were "using" at that time.
LOVE IT
For a better understanding of quaternions, you can have a look here: eater.net/quaternions
While I still don't understand a lot, at least now I have a vague intuition of how they function.
More game hacking videos please!
Quaternions are a 4D concept mapped into 3D space. I think of it in terms of oversampling, like when you take an 8k video down to 4k.
The code looks like it is based on the code that GuidedHacking does.
Why not just use python:
import antigravity
3blue1brown got a great quaternion tutorial
Kannst du vielleicht auch deutschsprachige Video machen?
I wasn't even born when the dude posted the vectors formulas in 2001
Same
3blue1brown has something about quaterions
3blue1brown has a video on quaternions
You have 4 values because an quaternion has X y z and W
Edit: yeah I was too fast
You should develop a private server for a game! :-)
ah yes, ancient knowledge
4 vals = quat? quats are used in 3d games
EDIT: nailed it
nice video.. thanks..
ye ill try to get the basics down first before I even look at this 😅
Here's the tutorial, by 3blue1brown!
ruclips.net/video/d4EgbgTm0Bg/видео.html
By the way, unit quaternions do have length 1, but vector (1,1,1) certainly doesn't!
Cheers! You indeed hacked the living shit out that game
What's up with that code...
Now that's nice!!!!!!!!
Sir how to start hacking
I just know the basics of computer