Time Nick Message 00:51 MTDiscord wait, so with this feature would you be able to offset the player's camera relative the the player's look? 00:52 MTDiscord i.e. if I want it 1 block behind the look, without input delay? 05:51 MTDiscord I was thinking about making a PR for the issue I just made (#12533) 05:51 ShadowBot https://github.com/minetest/minetest/issues/12533 -- un-depreciate scher multiplication in vector.multiply() and add to vector metatables 05:52 MTDiscord would be the first contribution I make, I'm not sure how I would do it? 05:52 MTDiscord kinda new to github 06:21 erle FatalError, which fun-hater deprecated it and what was their rationale? 06:21 MTDiscord I have literally no idea, it's absolutely absurd though 06:22 MTDiscord no reason to make things harder for us 06:23 erle do a git blame or git log i guess? 06:23 MTDiscord #10329 06:23 ShadowBot https://github.com/minetest/minetest/issues/10329 -- Mark multiply and divide with two vectors as deprecated (Schur product and quotient) by Desour 06:23 MTDiscord they didn't seem to have a reason? 06:23 MTDiscord they said "oh who needs it" 06:23 MTDiscord meanwhile i'm over here using it right fucking now 06:23 MTDiscord no surprise fucking paramat agreed 06:23 erle oh, that kind of developer is the worst 06:24 erle i mean that kind of developer *mindset* 06:24 erle not the person, obv 06:24 erle sorry, sleepy 06:24 erle anyways, you missspelled “schur multiplication” in your issue 06:25 MTDiscord I will fix this, but yeah I agree 06:25 MTDiscord you should never remove something because you don't think everybody will use it 06:26 MTDiscord especially when the work is already done 06:26 erle FatalError, you should link to https://github.com/minetest/minetest/pull/10329 in the issue 06:27 erle it proves that the context is the classic development three-act play of some dev saying “this seems useless”, then people show up and say “well i use this” and then in act three, they are dismissed and it is removed anyway. 06:27 erle or deprecated in this case 06:28 erle FatalError, make a PR for it to force the issue i say 06:29 erle given that is clearly a case of “people having no clue about something want to remove it vs people having a clue want to keep it” i think your case is pretty clear and hope it goes well. it is only a documentation change, right? 06:31 MTDiscord1 documentation, yes- but I believe it'll also stop the depreciation message in console, I also mentioned the metatable thing where it's implemented into the metatable multiplication as it was not added because of depreciation 06:32 MTDiscord1 which should be hard at all 06:32 MTDiscord1 I don't really have experience with github, so figure out how to make a PR will be... interesting 06:32 MTDiscord1 I'll probably do it sometime this week lol 06:33 erle i can explain: github is like a drive-by shooting for developers 06:33 erle first you click the fork button on the repository 06:33 erle you make a branch in your own repository. do not do this on master. 06:33 erle then you drive by the main project and shoot the patch into the general direction of the project. 06:34 erle there is a PR creation button where you can select your own branch as the one you want to merge 06:35 erle after you have done this, the hardest part by far is convincing people to take it seriously. 06:35 MTDiscord alright 06:36 erle you can also make the change locally and use git format-patch, but let's say most github users do not appreciate it and they will want you to use the web interface 06:36 MTDiscord really? 06:36 MTDiscord that's surprising 06:36 MTDiscord I'd expect more people to be more for the annoying console commands I dont know xD 06:47 erle the console stuff is way easier to handle for an individual developer 06:47 erle but you get no discussion in the web interface that way 06:47 erle hence it can not be approved for minetest 06:48 erle given that this is not just a typo fix, i guess it should be discussed and preserved for posterity 07:47 sfan5 "many applications for this type of arithmetic, especially in scaling of vectors" it's cool that you know them, please list them in the issue 07:52 MTDiscord I mean, im on phone now 07:52 MTDiscord Bc mt internet died, but 07:52 MTDiscord My* 07:53 MTDiscord Mostly just for scaling purposes, i dont know many use cases outside of that to be fair, probably shouldnt have said that... 07:53 MTDiscord I dont mean to lie, i just have a peanut brain 07:54 MTDiscord Im sure i can think of some use cases 08:03 erle nah you should not make stuff up 08:03 erle demonstrate the scaling thing with some code or just show where you use it 08:03 erle so people understand why this is needed 08:57 rubenwardy there's no canonical way to multiple two vectors - there's also dot and cross products 08:57 rubenwardy so makes more sense to have a named method 09:22 MTDiscord Then make a named method? Dont just drop the feature 09:22 MTDiscord I mean, what else would you expect when tou multiplt two vectors though 09:23 MTDiscord Its fairly straightforward 09:35 sfan5 if it were to be renamed it would also be deprecated first 09:39 sfan5 merging #11545 in 15m 09:39 ShadowBot https://github.com/minetest/minetest/issues/11545 -- Animated particlespawners by velartrill 09:49 MTDiscord I support un-deprecating the schur product, it can be useful 09:49 MTDiscord Yes, this is why I'm against it. Personally Im more interested in the metatables part though 09:49 MTDiscord perhaps adding an explicit vector.schur_product here is the cleanest solution 09:50 MTDiscord v * w should probably be the dot product (vector.dot) rather than the schur product if both v, w are vectors 09:51 MTDiscord *looking up what dot product is 09:53 MTDiscord Im going to sleep first lol 09:53 MTDiscord Idk algebra well, or vectors. Maybe you're right, but I reel like schur makes the most sense 09:54 MTDiscord Thats with my limited knowledge though 09:54 erle luatic why 09:56 erle luatic is it because of matlab or why 09:56 erle the dot product should obviously be written as v • w 09:58 erle similar, v × w for cross product 09:58 erle or just spell it out to not keep people guessing 09:58 sfan5 you're aware that Lua does not have an • or × operator, right? 09:59 erle i guess i am now 10:00 MTDiscord erle: for practical purposes, you can consider * = • in 99% of languages which use ASCII for their operators 10:00 erle look, just force people to spell it out 10:00 MTDiscord the dot product? 10:00 sfan5 any product I assume 10:00 MTDiscord at that point we might as well make them spell out scalar multiplication 10:01 erle yes any one 10:01 MTDiscord but then equations become gross 10:01 erle uh 10:01 erle scalar multiplication is obvious 10:01 sfan5 the metatable doesn't do scalar multiplication btw 10:01 erle there is no ambiguity there 10:01 erle or am i missing something? 10:01 sfan5 you can bet there is an alternative definition on how to multiply a vector and scalar somewhere 10:02 MTDiscord sfan5: the metatable does multiplication by a scalar? 10:02 MTDiscord > Scalar multiplication is the multiplication of a vector by a scalar (where the product is a vector), and is to be distinguished from inner product of two vectors (where the product is a scalar). 10:02 erle well weare talking about euclidean space here 10:02 MTDiscord Unfortunately in German the dot product is called "Skalarprodukt" 10:02 erle hahahaha 10:03 MTDiscord hella confusing 10:03 erle in euclidean space you change the length of the arrow, but not its direction, when you mash a vector and some number together 10:03 erle and i hope minetest is keeping to that 10:03 MTDiscord To make matters worse: The Vektorprodukt is the cross product 10:03 erle positive number 10:04 MTDiscord granted, there's some sense behind it, but if you're familiar with the english terminology it sucks 10:04 MTDiscord erle: of course, that's what happens when you multiply all components by a number 10:04 MTDiscord which is literally what Minetest does 10:05 erle https://en.wikipedia.org/wiki/Scalar_multiplication 10:05 erle > Not to be confused with scalar product. 10:05 MTDiscord :> 10:06 MTDiscord dot product 10:06 MTDiscord I know no scalar product 10:06 MTDiscord that name is dead to me 10:06 erle https://en.wikipedia.org/wiki/Scalar_multiplication 10:06 erle > Not to be confused with scalar product. 10:06 MTDiscord stop deadnaming the dot product 10:06 MTDiscord also who implemented vector.angle 10:06 erle why 10:07 MTDiscord It calculates one atan2, one dot product, one cross product, and one length. The standard way is one acos, one dot product, and one scalar multiplication with the inverse of the product of the two lenghts 10:07 MTDiscord lengths* 10:07 MTDiscord nah, no scalar multiplication, normal multiplication 10:08 MTDiscord basically dot(v, w) = acos(|vw|/|a|/|b|) 10:09 MTDiscord that's going to wrap around if the angle > 90 deg 10:09 erle can you elaborate why the current way was chosen paradust? 10:10 MTDiscord paradust: just remove the abs around |vw| and it won't wrap around 10:11 MTDiscord also don't you mean > 180 deg? 10:14 MTDiscord actually never mind, i was thinking of another situation 10:14 erle luatic regardless, if you refactor that you should have test cases before you start doing it 10:15 MTDiscord erle: I don't want to refucktor it :) 10:15 MTDiscord I'd rather refucktor my own vec lib 10:15 erle i hope you have tests 10:16 sfan5 @luatic last I read the docs it said you can't do vector * number and have to use vector.multiply() for that 10:16 sfan5 that's what I mean 10:17 MTDiscord sfan5: The metatable allows it tho: https://github.com/minetest/minetest/blob/20bd6bdb685af11548c35d3a48e5aa33f4222397/builtin/common/vector.lua#L218-L232 10:17 MTDiscord Also the docs: v * s or s * v: Returns v scaled by s. 10:18 sfan5 idk what I remembered then 15:39 kilbith I'd like #10100 before release 15:39 ShadowBot https://github.com/minetest/minetest/issues/10100 -- Additional texture modifiers by Treer 15:40 kilbith it'd be a shame to ask the author for a 3rd rebase 15:53 kilbith also new warnings: http://codepad.org/X6swRK2d 20:30 MTDiscord kilbith: these should be fixed by this patch: https://gist.github.com/x2048/1beac4faa4c8482362dd7d4ada7048b4... pushing in a few minutes. 20:31 sfan5 better turn it into a FATAL_ERROR if it indeed can never happen 20:34 MTDiscord Updated the gist ^. Looks good? 20:34 sfan5 sure 20:35 sfan5 unless it could happen if the server is newer than the client 20:35 sfan5 should be silently ignored then 20:41 MTDiscord yeap, i makes perfect sense. updated the gist again... 20:46 MTDiscord alpha blend mode will be the fallback in case an unknown mode is hit. another option would be to add feature flags with each new set of supported blend modes. 20:46 MTDiscord (which we can do anyway) 20:47 MTDiscord pushing now 20:48 MTDiscord done 21:52 Sokomine is there a way to narrow down what causes the high cpu usage in certain areas of server maps? 21:53 Sokomine i was a bit surprised when i used intel_gpu_top and saw that in times of total client freeze the gpu was idle