Skip Navigation
Spectrum rule
  • Ig thats where most of my confusion comes from, to me saying sth is a "spectrum" always evokes sth along the lines of gay <--------------------> straight (ie one dimensional) with things mapping into this interval. But ig if you also include more than one axis in your meaning of "spectrum" there wouldn't be as straight forward of an ordering for any given "spectrum". + Like @saigot@lemmy.ca said technically even the 1 dimensional spectrum can have more than one order and the "obvious" one is just obvious because we are used to it from another context not because its specifically relevant to this situation.

  • Spectrum rule
  • How is a spectrum supposed to not have a total ordering? To me saying sth is a spectrum always invokes an image of being able to map to/represent the property as an interval (unbounded or bounded) which should always give it a total ordering right?

  • (Newbie question) Did i handle my system crashing correctly?
  • Thanks for the detailed explanation on the sysreq keys & when & how to use them for unlocking a frozen system :D. Also for the systemctl bit because i wasnt even sure what to do if i had gotten to a console lol.

  • (Newbie question) Did i handle my system crashing correctly?
  • It’s fixed in 6.8.10 and 6.9 if you have the ability to upgrade to those.

    Honestly idk how id even begin to do that lol, and id also maybe rather not start my first week of linux use by immediately trying to change the kernel version on my own XD (either down or up). I did hear about an issue with rdr2 and kernel 6.8.9 from a reddit post which i found through someone writing about problems with the game on its protondb page. But i thought i was fine as my game worked normally until i encountered the crash & because the reddit and protondb post say its solved by enabling rebar which (iirc) i already have.

    However idk if that reddit posts issue is the same/related to the one you linked. Since the rest of the game and my system seem to be mostly fine i think ill either just not play the game or specifically avoid the cutscene when i do (its in an optional quest luckily). And then ill maybe return to it after the updated kernel arrives on fedora to see if it solves the crash or not.

  • (Newbie question) Did i handle my system crashing correctly?
  • Thanks for the link! I managed to set up sysrq with it, which might have saved me from reinstalling steam when the crash occurred the second time (see the update in my post).

  • (Newbie question) Did i handle my system crashing correctly?

    Ive just installed Linux (Fedora 40 KDE) on my main PC over the weekend, so im a complete newbie and i apologize if some of my questions are nonsensical 😅. Yesterday evening the system seemed to completely lock up at a certain point while playing Red Dead Redemption 2 for the first time (installed & run via steam using proton experimental). Id love to know if i handled this situation correctly and how to avoid this or handle it more gracefully in the future. Ill begin by recounting what happened and then ask my questions:

    The game froze during a cutscene and continued to play audio for a bit after it froze visually but then that stopped too. I have two monitors, the second completely black screened and the first one was frozen on the last frame of the game. As far as i could tell nothing in KDE was still responding to normal key presses or the mouse.

    After a some searching online i decided to try through the ctrl + alt + (f2, f3, ... , f6) key combinations to get into a console, that didnt work. As a last resort i tried alt + sysreq (print screen) + REISUB to safely reboot it. That ALSO didnt work, it was p. damn late in the day so i just decided to risk it and use the power button on my pc.

    I was prepared for it not to boot anymore due to data corruption or sth, but it seemed mostly fine? My KDE panels were slightly messed up (but that took like 10 sec to fix) and besides that the only odd thing i've found so far is that steam refused to start properly and i had to reinstall it.

    So did i handle this situation correctly? Specifically:

    • did alt + printscreen + REISUB save my system or do nothing? As i said it didn't reboot when i did it so i thought it was useless. But after i forcibly restarted my pc and looked it up some more it seems all but alt + printscreen + S may have been disabled, so was alt + printscreen + S responsible for my system still starting without too many problems after i forcibly shut it down?

    • why did this happen & how to prevent it? My system should b powerful enough to run RDR2 (Radeon RX 6800, Ryzen 5 5600X, 32GB ram) and i had nearly no problems up until the crash. So whats at fault? On protondb RDR2 has p. good ratings, did i just get unlucky and found one of the few edge cases where it breaks? But even then, why would a proton/game crash take seemingly the whole OS with it?

    • is it a bad or a good idea to try and trigger this again on purpose? Id really like to know if this was a freak accident or a consistent problem (and if its consistent if eg. switching to proton 9.0.1 alleviates it). So was i lucky that nothing on my PC got badly damaged from this incident and i shouldn't try to trigger it again for fear of permanent damage? Or can i expect that having to reinstall Steam everytime it crashes is the worst that could happen while testing this?

    UPDATE: I went back and did the same part of the game again but this time running it with proton 9.0.1 and the crash still occurred and in the exact same spot in the cut scene too. For reference, it crashed both times during this cutscene: https://www.youtube.com/watch?v=7UHv0SiVhWY @ around 1:23 when the explosion goes off (i only get to hear it briefly the visuals freeze seemingly just before it explodes).

    Trying ctrl + alt + f keys didn't seem to do anything again. I had at least enabled the sysreq keys and REISUB appeared to work and got me back into the system this time without having to adjust KDE panels or reinstalling Steam. Visually the crash was a little different this time, i hit win/meta soon after it happened which after a second or two exchanged the stuck game visuals for a half cutoff browser window on my main monitor (and black otherwise) and my secondary monitor was filled with black and white noise with a bit of color in between.

    UPDATE 2 (17/06/2024): I tried it again for the first time since the original post, im now on Kernel 6.9.4 and the crash occured in the exact same spot and looking more or less as described in the previous instances. I managed to get back into a normal state due to alt + sysreq + i (alt + sysreq + k didnt seem to have had any effect).

    22
    Calculus made easy
  • I feel like this isn't quite fair to math, most of these can apply to school math (when taught in a very bad way) but not even always there imo.

    Its true that math notation generally doesn't give things very descriptive names, but most of the time, depending on where you are learning and what you are learning, symbols for variables/functions do hint at what the object is supposed to be E.g.: When working in linear algebra capital letters (especially A, B, C, D as well as M) are generally Matrices, v, w, u are usually vectors and V, W are vector spaces. Along with conventions that are largely independent of the specific math you are doing, like n, m, k usually being integers, i or j being indices, f and g being functions and x, y, z being unknowns.

    Also math statements should be given comments too. But usually this function is served by the text around the equations or the commentary given along side them, so its not a direct part of the symbolic writing itself (unlike comments being a direct part of source code). And when a long symbolic expression isn't broken up or given much commentary that is usually an implicit sign that it should be easy/quick for the reader to understand/derive based on previously learned material.

    Finally there's also the Problem with having to manipulate the symbols. In Code you just write it and then the computer has to deal with it (and it doesn't care how verbose you made a variable name). But in math you are generally expected to work with your symbolic expressions and manipulate them. And its very cumbersome to keep having to rewrite multi-letter names every time you manipulate an expression. Additionally math is still generally worked on in paper first, and then transferred into a digital/printed format second, so you can't just copy + paste or rely on auto completion to move long variable names around, like you might when coding.

  • rulehinged
  • Where is this from?

    I love seeing conspiracy/crank types do anything with math.

  • Bug Fact rule

    I was not able to confirm this bug fact, hard to search a math theorem without a name. If anyone knows what this theorem is called and if it is true id be glad to know

    8
    *Permanently Deleted*
  • I'm still curious as to whether there’s an easier way to do this than simply updating the global position, by script, to match the pose’s.

    I'm not sure if this is what you want but maybe you could use the BoneAttachment3D Node?

  • When launching multiple game instances, which one has its scene tree displayed in the editor?
  • Wow thanks for the quick and detailed answer :D. Ive used a variation of the autoload script you provided and it works great.

    on my machine it corresponds to the window order in the taskbar.

    I tried that at first too but its not very reliable on my machine and it seem they can be in any order on my taskbar.

    (I actually went back and checked now that i can easily tell which one it is and it appears like it is often, but not always, the one last in my taskbar (out of 3 open instances). ~30%-50% of the time it can also be the second to last one and i recall it even being the first one in the taskbar at least once)

  • When launching multiple game instances, which one has its scene tree displayed in the editor?

    When i'm running more than one instance of the game, is there any quick way to tell which instance of the game is the one that gets its scene tree displayed under "Remote" in the editors scene tab?.

    3
    You like using the command line, dont you?

    cross-posted from: https://lemmy.zip/post/732124

    > im sorry > > made on hyfetch (a mod of neofetch) by modifying the preset file for my distro (in this case Pop!_OS) to be the boy kisser

    1
    Boykisser Doom II mod
    www.moddb.com BoyKisser Pet MOD file - Doom II

    This is the same mod, but here they do not need to be killed, but ironed. Update: fixed bugs

    BoyKisser Pet MOD file - Doom II
    0
    he just gotta, it's the rule
  • For anyone who wants more, there is !possums@possumpat.io and !opossums@lemmy.world

  • I found this rare gem in my PC
  • I'm also not quite sure of how it works yet but at least the first part is correct i think. The full link worked for you because its to the instance your account is on. When i use that link (on the desktop website) i get redirected to that site but i don't have an account there so i cant interact with it on this account. Similarly: if I link https://lemmy.blahaj.zone/c/antiquememesroadshow@lemmy.world it will work for me without problems but you should see a website where you aren't logged in (at least using the website, mobile apps might handle it differently i think).

    (Although i have no idea why the exclamation mark link didn't work for you, it did work for me at least. Maybe its the app you are using? I remember that for example some old jerboa version had problems with the exclamation mark links where it would just crash when you tried to use them.)

  • Are Transform3D's commutative?
  • Ok so it seems like they don't commute? I asked the question in part because i wanted to do something like:

    const base_transform : Transform3D = <some transform>
    
    func get_base_transform(node : Node3D) -> Transform3D:
        return node.transform * base_transform
    
    func set_base_transform(node : Node3D, transform : Transform3D) -> void:
        node.transform = base_transform.affine_inverse() * node.transform
    

    and i wanted to be sure that if i do set_base_transform(some_node, some_transform) i'd be guaranteed to get that get_base_transform(some_node) == some_transform afterwards. But when i tried it the above code did not work out, at least i didnt get the result i expected. But when i flipped it so that set_base_transform did node.transform = node.transform * base_transform.affine_inverse() instead it did work out. Its still not hard proof though, maybe something else was messed up the first time, or it only looks like it works now and i'll discover the transform still isn't what i wanted it to be. Or they do commute but only under some constriction like no scale on any axis or something and i just happened to fulfill it with all the ones i used in my test.

    So it would still be good to know for sure whether/when Transform3D's commute.

    EDIT: I accidentally wrote the first line wrong, it said that they do commute. When actually the experience i had with it working only after both functions did their multiplications in a compatible order should indicate that they don't commute.

  • Are Transform3D's commutative?

    As in, for any two Transform3D objects A and B i might encounter does Godot (4.1) always return A * B == B * A as true? Alternatively is it approximately commutative, ie (A * B).is_equal_approx(B * A), in case there are situations where floating point imprecision messes the exact equality up.

    7
    Rulebecca
  • I can kind of see what you mean. Maybe this more "natural"/less staged picture is less fake looking? (source)

    A black and white photo of Grace Coolidge Kneeling in front of a group of children on a lawn holding a Racoon on a leash on her knees

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • So for me what you want sounds either like magic or like nonsense.

    maybe XD.

    Ray casting is part of physics processing and therefore need a physics body. Using physics body actually should reduce performance impact since you can reduce the geometry of those making calculation less extensive as when you use the full Mesh geometry with al the details.

    Yeah i know, but my problem (was) that almost all meshes visible to the player would need a collision to properly place decals on. And additionally, for the decals to look right, they need to be placed close to the mesh, so i need the collision shape to match the mesh very closely. Which doesn't allow me to simplify the collision a whole lot.

    So effectively i have to duplicate most meshes in the scene as collision objects while barely or not being able to simplify the collision compared to the mesh. Also most of those collision objects would have no use besides being intersected by a handful of rays per second to place decals since. While most meshes that are visible to the player need bullet holes on them when hit. Most also don't need to interact with the bullet/shooting in any way besides that.

    My fear was that Areas or StaticBodies cant be optimized well for something like this where i have large quantities of them with complex shapes that are rarely used. Ideally i would still have a way to directly intersect the visual meshes but i can see how that might be performance intensive to do even if built into the engine so it makes sense it doesn't exist.

    So for me just creating an auto generated physics body for ray pickability or using the actual mesh geometry sounds like the same thing. But maybe I’m missing something here.

    You aren't really missing anything. I'm attempting that solution now since it seems like the only feasible one and i'm just crossing my fingers and hoping that my fears about Godot not being able to handle that many areas without performance issues was unfounded. (Although in the current state of the scenes i have i suspect it is going to be fine either way. I'm just worried it might not scale well if i eventually use larger quantities of more complex meshes)

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • Well yeah physically its sort of right, but for one (though im not sure if this is just a difference of opinion or if its not clear from the picture) imo the streched hole does seem abnormally large. But also if i use any decal more complicated than just this black circle it would seem off. Since the bullet hole texture would be modeled off a "clean" 90 degree impact bullet hole it would look off if streched like that.

    Here a simple example that makes it a bit more clear where i put a white x inside the bullet hole.

    Decals that make sense for (near) 90 degree impacts would look bad (or at least very different) when stretched like this.

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • Oh i guess this is exactly what i was asking for XD. Although im probably not going to try it since always needing to place the relevant meshes in the same places relative to the collider does seem like a pretty strict requirement like you said.

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • You can use the mesh’s AABB to approximate the size so that it always hits the mesh [...] But I think the better approach is to fiddle with the decals in a way that the end result is satisfying.

    I've been trying this approach now for a while (at least if i understood you correctly). Though im approximating the size of the decal by finding the location where the raycast for the bullet exits the collider instead of using a bounding box. Currently struggling a bit with sizing and positioning the decal correctly for it to show up properly😅. But im also starting to think this approach isn't going to be satisfying when i do get it to work.

    The problem is that i am not sure along which direction to project the decal. If the decal projects along the path of the bullet (which would make the most physical sense i think) it can end up incredibly stretched when it encounters the mesh at a very shallow angle. Eg:

    So i'm back to the original problem of not being able to determine where/which face of the "visual" mesh the bullet would hit and what its normal is, at least not without making a lot of unnecessary colliders that match it more closely. And if i use the one normal i do have access to (the one from the collider) i cannot guarantee that it is similar enough to the normal of the mesh face the decal will be projected onto to not be stretched anyways.

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • If you really want to use different decals for different materials you can put them on different layers and spawn multiple decals on those layers.

    Ooh, yeah that might be an option, ill keep it in mind when i get there, thanks :D.

    I might be wrong but decals dont really care about collisions so you can just spawn a single decal regardless what it hits

    Ive already been using a single decal to begin with and i'm having problems that being able to get ray intersections with meshes could solve. The decals need to be close to the mesh they are supposed to be projected on to look right. Otherwise they seem to fade with distance.

    For example here:

    The bullet is colliding with a triangle shaped collider that goes over these small stairs since that is more convenient and simpler for collisions with the player. But because the collision is simplified compared to the stairs actual mesh the decal can get placed far away from the mesh and not show up or only show up in some places.

    If i can only get ray intersections with colliders i'd have to create a much more complex collider that matches the stair mesh much closer to be able to place the decals closer to the mesh. But creating that many colliders that have no other uses besides this one seems like a waste. If i could get ray intersections with meshes directly i could just use that to determine where the decal should be located.

  • Is there any way to get ray intersections with meshes that don't have collisions?
  • Yeah this, although i should maybe clarify that the "bullet" is not a object/scene that has a position, i just perform one raycast to determine where it lands.

    Also its not just about areas that cant be reached but very small "detail" things as well. Eg.: i might want to have bullet holes appear on the leaves of a plant but other than placing the hole on them the leaves don't need to interact with the bullet or the physics system in any way. So creating an area or physics body just for this purpose seems like overkill.

  • Is there any way to get ray intersections with meshes that don't have collisions?

    So far (outside of somehow adding it into Godot via C++ myself) this doesn't seem possible but wanted to ask to see if i maybe missed something.

    The most i could find was this issue and a couple of related ones.

    My specific use case would be for drawing bullet holes onto meshes (via decals). Ideally also being able to determine the texture used on the faces of the meshes that are intersected (to determine an appropriate decal to use).

    Having everything that is possible to hit duplicated as a static body or area seems excessive to me. Since the only data required for ray intersection should be the transform of the meshes faces/edges/vertices etc which i would think are already contained in the mesh itself?

    Failing being able to make intersecting a ray with meshes work i will probably try experimenting with using areas. They seem the lowest performance cost out of all the options the existing ray cast can detect. I would still end up with most of the games geometry being duplicated though, once as actual meshes and once as collisions for all the areas.

    19
    Trout rule
  • Its a variant of this meme.

  • Just wrote some code (rule)

    I swear its not for something lewd 😅. It just ended up like this due to some unfortunate naming decisions lmao.

    Also if anyone can guess the programming language they'll get a cookie (🍪) :3.

    29
    Ti_Ka Ti_Ka @lemmy.blahaj.zone
    Posts 27
    Comments 38