Time |
Nick |
Message |
01:02 |
LandarVargan |
Same issue on 5.9-dev. I don't see the walls of peer addition/deletion though, or anything that looks out of place in a way that suggests an obvious problem |
01:06 |
LandarVargan |
Lots of `con(4/1)RE-SENDING timed-out RELIABLE to ###.###.###.###(t/o=0.352): count=<1-8>, channel=0, seqnum=65506` and `con(4/1)WARNING: ACKed packet not in outgoing queue seqnum=65500` |
01:07 |
LandarVargan |
The log file is 326MB, on second thought maybe Minetest is just fumbling that |
01:08 |
|
ShadowBot joined #minetest-dev |
01:10 |
LandarVargan |
debug_log_size_max is set to 10 IIRC, but that only applies on restart from what I can tell |
01:12 |
|
proller joined #minetest-dev |
03:09 |
|
SFENCE joined #minetest-dev |
03:18 |
LandarVargan |
Nope, just went down again in less than 30 minutes after I set the log level to action |
03:53 |
|
SFENCE joined #minetest-dev |
04:06 |
|
Lupercus joined #minetest-dev |
05:00 |
|
MTDiscord joined #minetest-dev |
06:43 |
MTDiscord |
<paradust> how we would we feel about |
06:44 |
MTDiscord |
<paradust> purging euler angles from irrlicht and everything else |
07:27 |
MTDiscord |
<jordan4ibanez> Why would you want to do that? |
07:27 |
|
SFENCE joined #minetest-dev |
07:28 |
Mantar |
yeah, for what purpose? euler angles are generally useful for 3d stuff, and I can't imagine it's a huge hairy block of spaghetti code that touches everything |
07:38 |
MTDiscord |
<paradust> To replace them with quaternions. Less distortion at certain angles, less gimbal lock. And it reduces the number of representations of rotations from 3 to 1 (currently euler angles are used in both radians and degree form, in addition to quaternions) |
07:39 |
MTDiscord |
<paradust> And it is computationally easier to compose quaternions |
07:55 |
MTDiscord |
<jordan4ibanez> Yeah but how is it for the average Joe mod dev? Maybe instead of degrees that should be totally scrapped and it should be locked into euler |
07:57 |
MTDiscord |
<jordan4ibanez> Degrees and radians mixed into the same api can be heckin confusing, what I meant was radians only |
07:58 |
Mantar |
personally I find radians annoying to deal with, but conversion is super easy so it's not a big deal |
07:58 |
MTDiscord |
<paradust> quaternions are just so much better. you can multiply, rotate, and convert to a matrix without needing to call a trig function |
08:00 |
Mantar |
quaternions are nice, yeah |
08:00 |
Mantar |
but is that a reason to remove euler angles? |
08:00 |
MTDiscord |
<jordan4ibanez> Yeah but you need the starting point, something that the average moe can understand, perhaps if it used SIMD under the hood this would be less of an issue? |
08:00 |
MTDiscord |
<paradust> it's a reason to keep the internal representation quaternions, and only convert euler angles for the api maybe |
08:01 |
MTDiscord |
<paradust> right now the internal representation of rotation for all scene nodes is euler angles in degrees |
08:01 |
MTDiscord |
<jordan4ibanez> Alright paradust, you're scaring me |
08:01 |
MTDiscord |
<jordan4ibanez> Nah I'm just kidding, yeah it's pretty bad |
08:02 |
MTDiscord |
<jordan4ibanez> That because of b3d I'm guessing? |
08:02 |
MTDiscord |
<jordan4ibanez> Or maybe it was rooted deeper than that |
08:03 |
MTDiscord |
<paradust> i dunno. irrlicht shrug |
08:08 |
|
calcul0n joined #minetest-dev |
08:13 |
|
SFENCE joined #minetest-dev |
10:07 |
pgimeno |
I'd love to abolish Euler angles from the internal representation and only offer them for mod APIs |
10:08 |
pgimeno |
it might solve one or two problems with animations too |
10:10 |
|
YuGiOhJCJ joined #minetest-dev |
10:11 |
pgimeno |
I believe one of the problems with animations had to do with gimbal lock |
10:13 |
pgimeno |
in doing so, care must be taken due to Minetest's left-handed coordinate system, though |
10:17 |
pgimeno |
https://irrlicht.sourceforge.io/forum/viewtopic.php?p=272097#p272097 |
11:44 |
|
Desour joined #minetest-dev |
12:18 |
rubenwardy |
Yeah I agree, we should use transformation matrices |
12:24 |
|
proller joined #minetest-dev |
12:25 |
Desour |
we could encode 90° directions and rotations in integers, and so make them easier to handle and probably cheaper: https://github.com/Desour/minetest/tree/rotnums_cpp |
12:27 |
Desour |
(^ RotNums are incomplete as of now) |
12:32 |
rubenwardy |
*matrices or quaternions. Matrices seem a bit more common in game engines |
12:45 |
|
Lupercus joined #minetest-dev |
13:17 |
pgimeno |
quaternions are like an abbreviated form of a rotation + scaling matrix, but the scaling is not very comfortable to work with so in practice they are used only for rotation, with normalized quaternions |
13:17 |
pgimeno |
irrlicht has separate scaling and rotation though, so that's OK |
13:18 |
pgimeno |
the only drawback is that it's one more FP number to store per scene node |
13:35 |
Desour |
why is there a `project(minetest)` call in src/CMakeLists.txt and CMakeLists.txt? |
13:43 |
nrz |
Desour sounds to be an historical mistake 🙂 |
13:44 |
MTDiscord |
<warr1024> That sounds pretty harsh; I don't think Desour was a mistake at all. |
13:47 |
Desour |
unlike war |
13:47 |
MTDiscord |
<warr1024> War was a mistake, but r1024 was on purpose. |
14:06 |
MTDiscord |
<luatic> yes yes yes quaternions everywhere |
14:25 |
MTDiscord |
<warr1024> *yes yes yes 1, quaternions everywhere |
14:26 |
MTDiscord |
<luatic> For transforms, I think TRS (translation vector, rotation quaternion, scale vector) is more modder-friendly than translation matrices (and would also map better to what we currently have). |
14:48 |
|
proller joined #minetest-dev |
14:49 |
MTDiscord |
<luatic> transformation matrices* |
14:56 |
rubenwardy |
We want to use something consistent in the engine and can provide whatever API we want on top of that |
14:57 |
rubenwardy |
transformation matrices make it much easier to apply all the operations when working in a scene node hierarchy |
15:02 |
MTDiscord |
<paradust> pgimeno: when you rotate a vector q by a quaternion p, you're actually computing the conjugate p q p^(-1), so the scale goes away anyway |
15:37 |
|
LandarVargan joined #minetest-dev |
15:52 |
|
LandarVargan2 joined #minetest-dev |
15:55 |
pgimeno |
paradust: no it doesn't, it is squared |
15:55 |
pgimeno |
@paradust ^ |
15:56 |
MTDiscord |
<paradust> ? |
15:56 |
pgimeno |
hold on, let me check to be sure |
15:58 |
pgimeno |
yes, what I mean is that the vector's length gets multiplied by the square of the norm of the quaternion |
15:59 |
pgimeno |
hence why it's not comfortable to work with for scaling |
16:00 |
MTDiscord |
<paradust> any scaling is the result of the equation's denominator being omitted because it is assuming to be a unit quaternion |
16:01 |
MTDiscord |
<paradust> it's not part of the quaternion structure itself |
16:02 |
pgimeno |
when multiplying a quaternion by its conjugate, you don't get a normalized quaternion, you get one with the squared norm - the conjugate does not cancel the norm |
16:02 |
MTDiscord |
<paradust> yes it does, because if the quaternion p has length d, then p^(-1) has length 1/d |
16:02 |
pgimeno |
noooo |
16:03 |
pgimeno |
the conjugate has the same norm as the original quaternion |
16:03 |
MTDiscord |
<paradust> inverse not conjugate |
16:03 |
MTDiscord |
<paradust> ok we're using different notation, I always meant inverse |
16:04 |
pgimeno |
ok but to rotate a vector you need to multiply by the conjugate, not the inverse |
16:04 |
MTDiscord |
<paradust> conjugation in group theory uses the inverse |
16:04 |
MTDiscord |
<paradust> if you have unit quaternions, they are the same thing |
16:04 |
pgimeno |
the conjugate of a+bi+cj+dk is a-bi-cj-dk and both have the same norm |
16:05 |
MTDiscord |
<paradust> you know the trick where you compute 1/(a+bi) by multipling numerator and denomator by (a-bi) to get (a-bi)/(a^2 + b^2) |
16:05 |
MTDiscord |
<paradust> the same thing works for quaternions |
16:05 |
MTDiscord |
<paradust> the inverse (a - bi - cj - dk)/(a^2 + b^2 + c^2 + d^2) |
16:05 |
pgimeno |
yes, if you have unit quaternions - that's why I said that they're usually used for rotation only and in normalized form, because using them for scaling is uncomfortable |
16:06 |
pgimeno |
to rotate a vector you do q times v times q's conjugate, that's not the inverse |
16:07 |
pgimeno |
so if q's norm is not 1, you're multiplying the vector's length by the quaternion's norm squared |
16:07 |
MTDiscord |
<paradust> this is how it is implemented for convenience, but what i'm saying is, the mathematics behind quaternions always uses the inverse |
16:08 |
MTDiscord |
<paradust> despite the unfortunate conflict in terminology, "conjugation" as a math operation always uses the inverse, not the conjugate |
16:08 |
pgimeno |
ok |
16:08 |
MTDiscord |
<paradust> https://en.wikipedia.org/wiki/Conjugacy_class |
16:09 |
pgimeno |
anyway we're in agreement, even if possible, it's not very practical to use quaternions for scaling too |
16:10 |
MTDiscord |
<paradust> yea there's really no reason to |
16:35 |
|
LandarVargan2 joined #minetest-dev |
17:25 |
|
proller joined #minetest-dev |
17:28 |
|
Desour joined #minetest-dev |
18:57 |
|
grorp joined #minetest-dev |
18:58 |
grorp |
merging #14071 in 10 min |
18:58 |
ShadowBot |
https://github.com/minetest/minetest/issues/14071 -- Move hard coded minimap to builtin by cx384 |
19:07 |
ROllerozxa |
has anyone tested translation support on real windows? (mingw codepaths) |
19:07 |
ROllerozxa |
I'm very confused, I tested translations in my own build from master (built with MSYS2 CLANG64) and they don't work, neither detecting from system or setting manually. I also tried the official 5.8.0 build and it doesn't work there either (in fact I went as far back as 5.5.0 and it doesn't work) |
19:07 |
ROllerozxa |
to make things weirder the official builds have functional translation support on wine! so did I mess something up with my windows install (wouldn't be surprised if so) or can anyone else reproduce? |
19:11 |
ROllerozxa |
um |
19:11 |
MTDiscord |
<landarvargan> Spanish works for me with the official builds, you do need to restart the game though |
19:11 |
ROllerozxa |
it just started working again, no idea what happened to my windows |
19:13 |
grorp |
merging done. |
19:13 |
ROllerozxa |
yeah I'm aware you need to restart, it just wasn't working no matter what I tried but obviously it magically went away when I asked in IRC. please disregard me 8) |
19:53 |
|
SFENCE joined #minetest-dev |
20:13 |
|
LandarVargan2 joined #minetest-dev |
20:17 |
|
SFENCE joined #minetest-dev |
20:24 |
|
[MTMatrix] joined #minetest-dev |
20:26 |
LandarVargan |
In case people missed my last message, these are still my best guesses as to culprit logs: `con(4/1)RE-SENDING timed-out RELIABLE to ###.###.###.###(t/o=0.352): count=<1-8>, channel=0, seqnum=65506` and `con(4/1)WARNING: ACKed packet not in outgoing queue seqnum=65500` |
21:24 |
|
SFENCE joined #minetest-dev |
22:04 |
LandarVargan |
Sometimes if I grep the IP for the above log entries I won't see anything but those entries. As if no player with that IP ever joined the game. This is the case across every crash log I have, and the logs go back to when the server started |
22:21 |
LandarVargan |
The server profiler still works after the server hangs, here's the output: https://pastebin.com/ZnvejYxk |
22:28 |
|
proller__ joined #minetest-dev |
23:34 |
|
panwolfram joined #minetest-dev |