Development discussion. Logged to https://ddnet.tw/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories ā IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2020-03-19 00:00:00Z and 2020-03-20 00:00:00Z
Currently weapon input is applied immediately when it arrives at the server, while hook/movement inputs are buffered and not applied until the tick the client predicted them for. This pr makes the ...
11:57
I think this should be renamed to OnDirectEarlyInput
yes, it simulates it to keep rocket jump physics and similar the same
15:52
OnDirectInput applies weapon input immediately when it reaches the server. in theory you could just remove anything except OnPredictedInput and handle everything related to weapons there (then there would also be no desync). But that would change physics since ondirectinput also has other side effects
Can I create an OpenGL context for a control in a different thread than the one in which the was created on?
Yes. According to the Microsoft documents (MSDN), there is no restriction. You can probably do the same on *nix systems as well.
19:59
looks like its valid
19:59
might be a macos thing
19:59
they are special
19:59
20:00
is there even a perfomance increase having the render calls in a thread?
Look what we are doing is wrong. A Cmd_Swap after a resize triggers a [NSOpenGLContext update] which is not allowed outside of the main thread, end of story
20:24
yet it worked with ddnet 10 minutes ago
20:25
there is no taking a break and coming back, it's not supposed to work, it's not working, it will never work
NOTE: You should not expect to be able to create a window, render, or receive events on any thread other than the main one. For platform-specific exceptions or complicated options ask on the forums/mailing list.
turns out doing SDL_GL_Swapwindow in a thread other then main is not ok on newer macOS, but our prebuilt clients are linked to an older sdk and thus AppKit suppresses the error to keep backwards compatibility