Time |
Nick |
Message |
00:11 |
|
Lupercus joined #minetest-dev |
00:18 |
[MTMatrix] |
<Zughy> speaking about textures, suggestion: please someone fix the bad scaling. It kills pixel art (#10733) |
00:18 |
ShadowBot |
https://github.com/minetest/minetest/issues/10733 -- GUI images use inconsistent/bad scaling |
00:23 |
MTDiscord |
<warr1024> enabling gui_scaling_filter would be a workaround for now, but that bug seems to suggest that the entire GUI architecture needs to be rethunk, to enable scaling to be locked to integer multiples and shit. That sounds a fair bit more involved than "can somebody just fix this right now" |
00:47 |
Desour |
#14478 |
00:47 |
ShadowBot |
https://github.com/minetest/minetest/issues/14478 -- Different algorithm for imageCleanTransparent by Desour |
00:51 |
|
Lupercus joined #minetest-dev |
01:12 |
|
Warr1024 joined #minetest-dev |
01:22 |
|
y5nw joined #minetest-dev |
01:29 |
|
ShadowBot joined #minetest-dev |
01:51 |
|
ShadowBot joined #minetest-dev |
02:01 |
|
ShadowBot joined #minetest-dev |
02:53 |
|
proller joined #minetest-dev |
03:14 |
|
LandarVargan joined #minetest-dev |
03:14 |
|
LandarVargan left #minetest-dev |
03:49 |
|
Lupercus joined #minetest-dev |
04:00 |
|
MTDiscord joined #minetest-dev |
04:43 |
|
v-rob joined #minetest-dev |
04:44 |
v-rob |
<shameless plug>Scaling can be precisely controlled with the new UI API</shameless plug> |
07:00 |
MTDiscord |
<paradust> who do I blame for quaternion multiplication being backwards. irrlicht? the entire game industry?🤦♂️ |
07:00 |
MTDiscord |
<paradust> i just noticed this. it means that associativity doesn't hold when vectors are involved. (p * q) * v is not equal to p * (q * v) but instead q * (p * v) |
07:01 |
MTDiscord |
<paradust> but this seems to match the openxr demo math lib, so I guess it's more than just irrlicht |
07:49 |
|
jonadab joined #minetest-dev |
07:56 |
|
appguru joined #minetest-dev |
11:20 |
MTDiscord |
<herowl> What I miss is scaling like CSS vh and vw, where you can choose to have both aspects of an image not depend on the screen (viewport) aspect ratio, while still scaled relative to the relevant aspect. |
11:22 |
MTDiscord |
<herowl> I.e. percentage scaling, but both width and height use percentage of either screen width or screen height. |
11:45 |
|
pgimeno_ joined #minetest-dev |
11:46 |
|
nrz_ joined #minetest-dev |
11:48 |
|
[0] joined #minetest-dev |
11:49 |
|
hifi_ joined #minetest-dev |
11:49 |
|
Sokomine_ joined #minetest-dev |
12:01 |
|
izzyb joined #minetest-dev |
12:41 |
|
proller joined #minetest-dev |
12:51 |
|
Lupercus joined #minetest-dev |
13:16 |
|
citrons joined #minetest-dev |
13:21 |
[MTMatrix] |
<Zughy> imageCleanTransparent: Luatic vs Desour |
13:22 |
|
luk3yx joined #minetest-dev |
14:17 |
|
fgaz_ joined #minetest-dev |
14:18 |
MTDiscord |
<herowl> Imagine clean, transparent... code. |
14:25 |
|
Desour joined #minetest-dev |
14:32 |
Desour |
pushing https://github.com/minetest/minetest/commit/751ede516bf006edb9fca2610fc951bcc5eaf1d5 in 15 |
14:32 |
Desour |
!title |
14:32 |
ShadowBot |
ProfilerGraph: Increase buffer size for min/max formatting · minetest/minetest751ede5 · GitHub |
14:33 |
Desour |
(then we can actually see how big a spike is in the F5 profiler graph) |
14:59 |
|
behalebabo joined #minetest-dev |
15:27 |
sfan5 |
merging #14438 in 10m |
15:27 |
ShadowBot |
https://github.com/minetest/minetest/issues/14438 -- [no sq] Server code cleanups / refactors by sfan5 |
16:05 |
|
appguru joined #minetest-dev |
16:19 |
MTDiscord |
<mistere_123> paradust: It depends on the kind of vector multiplication you are doing, whether its associative. Dot vs cross, iirc. |
16:33 |
MTDiscord |
<luatic> i find speaking of associativity a bit weird here type-wise. dot product is vector x vector -> scalar (and not associative with scalar multiplication). cross product is vector x vector -> vector at least, but isn't associative either. |
16:34 |
MTDiscord |
<luatic> anyways what paradust is talking about here is the "associativity" of quaternion - quaternion with quaternion - vector multiplication, which depends on the convention of order of operands in quaternion multiplication (quaternion multiplication is not commutative). |
16:51 |
|
d0p1 joined #minetest-dev |
17:26 |
sfan5 |
reviews needed >> https://github.com/minetest/minetest/pulls?q=is%3Aopen+is%3Apr+label%3A%22One+approval+%E2%9C%85+%E2%97%BB%EF%B8%8F%22 |
17:37 |
sfan5 |
especially the docker thing because it's blocking a few MT-using projects that I want to unit / integration test |
17:45 |
sfan5 |
Desour: do you want to move the irrlichtmt merge forward? |
17:48 |
Desour |
sure, can do |
17:48 |
Desour |
is there anything left that you want to change before? |
17:48 |
Desour |
in the irrlicht repo |
17:50 |
nrz_ |
oh great great great to see this merge will happen |
17:51 |
sfan5 |
there are no outstanding PRs and no (relatively) low hanging fruits left on the roadmap either |
17:51 |
sfan5 |
so nope |
17:51 |
nrz_ |
(don't hesitate to think about proller custom types at a point too as the faster it's added the best we can think in the future about those map limits with less restrictions |
18:05 |
|
v-rob joined #minetest-dev |
18:23 |
Desour |
irr#295 |
18:23 |
ShadowBot |
https://github.com/minetest/irrlicht/issues/295 -- [no sq] Reformat the code (adopted) by Desour |
18:45 |
|
hlqkj joined #minetest-dev |
19:03 |
|
Lupercus joined #minetest-dev |
20:11 |
|
imi joined #minetest-dev |
20:24 |
proller |
nrz_, how many approvers need to megre? and there is no need to think, just review and press green button... |
20:24 |
proller |
... and one week for merge to current master ... |
20:35 |
|
v-rob joined #minetest-dev |
21:01 |
MTDiscord |
<paradust> MisterE: p,q are quaternions, and v is a vector. Quaternion multiplication is associative. But whether the associativity also holds for the vector part depends on whether you apply it to the correct side. |
21:01 |
MTDiscord |
<paradust> In a math context, you always place the object being acted upon on the left or right side as necessary to make associativity work |
21:02 |
MTDiscord |
<paradust> https://en.wikipedia.org/wiki/Group_action#Left_group_action |
21:04 |
pgimeno |
@paradust is that something fixable, or are we stuck with it for the rest of the eternity? |
21:06 |
MTDiscord |
<paradust> In theory, just swap the operands of operator* and all uses. But it seems like it might be a convention in graphics programming. So maybe we don't want to. I'm just looking at it from a math background |
21:06 |
pgimeno |
I mean as in, is it better to leave it as is (for reasons like compatibility with ???, or like endangering other parts of the library or the engine)? |
21:07 |
pgimeno |
I have seen a different order in a different context. Second Life has quaternion multiplication reversed too, but it uses v*q instead of q*v to rotate a vector, which makes v*q*p associative |
21:08 |
|
Noisytoot joined #minetest-dev |
21:08 |
|
diceLibrarian joined #minetest-dev |
21:09 |
MTDiscord |
<paradust> Yea that's an option as well. operator* (quaternion, vector3d) could be replaced by operator* (vector3df, quaternion) |
21:10 |
pgimeno |
wouldn't that also be safer from the point of view of identifying all points where it's used? |
21:10 |
MTDiscord |
<paradust> yea |
21:11 |
|
proller joined #minetest-dev |
21:18 |
|
Lupercus joined #minetest-dev |
21:20 |
pgimeno |
hm, it hides a trap - imagine there's a code fragment using something like v1*q*v2, that wouldn't raise an error but the meaning would change (if vector*vector is defined, which I don't know) |
21:20 |
pgimeno |
oh nvm that, sorry |
21:40 |
MTDiscord |
<paradust> I believe C++ would always interpret v1 * q * v2 as (v1 * q) * v2. So if there's current code like that, it would have to be parenthesized as v1 * (q * v2) and that would generate an error if the order is reversed. |
22:28 |
|
v-rob joined #minetest-dev |
22:39 |
pgimeno |
yeah I realized a few seconds after I pressed Enter |
22:42 |
|
appguru joined #minetest-dev |
22:48 |
v-rob |
I'd suggest that quaternions use the multiplication conventions from math (whatever that might be). For instance, to map from matrix A to B, standard math writes that as B*A. To transform a vector v by A, it's A*v. Direct3D is notable in that it gets this backwards, doing A*B and v*A. Maybe Direct3D is more "intuitive" for programmers, but it's contrary to the standard way of doing things, which should be avoided. I don't know how it should look |
22:48 |
v-rob |
for quaternions, but I highly suggest that math's conventions are followed, even if they aren't as intuitive as one would like. |
22:55 |
v-rob |
So, I say that graphics programming conventions should be ignored when they conflict with math. Especially considering that graphics programming conventions are never consistent, e.g. OpenGL uses the correct notation for matrices, unlike Direct3D. |
22:56 |
|
MTDiscord1 joined #minetest-dev |
22:57 |
|
MTDiscord2 joined #minetest-dev |
23:06 |
pgimeno |
yeah, quaternions are a bit like "compressed matrices" in how you operate with them in the most widespread math notation |
23:33 |
|
panwolfram joined #minetest-dev |
23:46 |
|
imi joined #minetest-dev |