So the WindowShouldClose function always returns a value of false until X or the escape button is pressed, and while (WindowShouldClose) returns false the while loop continues. That makes sense… why does flipping the value with a while (!WindowShouldClose()) make any sense at all?
If (!WindowShouldClose()) only flips the truth value to false then wouldn’t hitting escape just turn the value to truth only to then be flipped back into false and so always return false and thus never actually stop the while loop… what? This all made sense until this Negation Operator was introduced.
Edit: And also, while the while (!WindowShouldClose()) is returning false like it would be most of the time it would return the value of true and so shouldn’t the window close the moment it opens because the while (!WindowShouldClose()) function would immediately return false but then be flipped to true by the ! and close the window? Obviously this works, but I don’t know why it works.