tynet-lichat/shirakumo - IRC Chatlog
Search
Wednesday, 22nd of March 2023, 5:19:57 UTC
10:27:17
gingerale
shinmera: I'm trying to mess around in Trial during my lunch break but it won't launch? "The alien function "glfwWindowHintString" is undefined." Is this related to my new emacs envinronment not finding glfw installation?
10:32:03
gingerale
Okay, it was. I added the libraries into PATH.
10:34:24
gingerale
Hm.. workbench::launch fails. Likely due to the load-mapping not being or working correct.
10:38:02
gingerale
It seems to expect the action mapping qualifier to be a list, but they're keywords instead.
10:47:22
selwyn
https://wap.business-standard.com/article/international/swiss-are-on-the-hook-for-13-500-each-on-credit-suisse-bailout-123032200004_1.html
10:53:07
gingerale
shinmera: I don't know if it's the correct solution, but if I change FROM-MAPPING-DESCRIPTION to ensure that the stick directional qualifiers are lists, it works.
10:55:39
gingerale
Well, that took my entire lunch break so I better stop.
11:04:50
shinmera
gingerale: your first issue was an old glfw
11:05:01
shinmera
gingerale: second issue I have no idea about? what does your keymap.lisp look like?
11:05:30
shinmera
selwyn: sure do love our govt constantly bailing out big business and then refusing to tax them lol, lmao
11:07:25
selwyn
ill most likely be staying in the same hotel as you for els
11:09:05
shinmera
froggey: will you be joining ELS this year as well?
11:09:12
selwyn
it seems kind of far from the venue though
11:09:57
Colleen
I thought about it but I'm not up for it, will still be recovering and don't really want the stress of travel
11:09:57
froggey
I thought about it but I'm not up for it, will still be recovering and don't really want the stress of travel
11:10:44
shinmera
Ah, alright. Hope you have a good time following online at least!
11:11:34
gingerale
shinmera: If there's a keymap.lisp it should just be the same as on trial's latest master branch? Unless you mean that LOAD-MAPPING call on workbench.lisp, then it's still the same as it's on remote.
11:12:30
shinmera
gingerale: no, in whatever project you have, do you have a keymap.lisp file?
11:12:47
shinmera
the workbench.lisp load-mapping works fine for me.
11:12:53
gingerale
No. I don't have a project.
11:13:04
shinmera
then I have no idea what that error is. It works for me.
11:13:23
shinmera
both on the physics branch and not.
11:13:42
gingerale
Have you not pushed something then?
11:13:58
shinmera
this has not changed in a while.
11:14:17
shinmera
try switching to the physics branch
11:18:19
gingerale
"The value :L-H is not of type SEQUENCE"
11:19:07
shinmera
I have absolutely no clue.
11:19:49
gingerale
It happens due to the XBOX 360 controller being plugged in.
11:20:08
shinmera
can you give me a trace?
11:20:13
gingerale
Or is it XBone? Either one.
11:24:04
gingerale
shinmera: https://plaster.tymoon.eu/view/3725
11:24:18
gingerale
I added *action-mappings* to the annotations
11:24:37
shinmera
thanks. the problem isn't the mappings
11:25:39
gingerale
The call to the FIND seems to be in EVENT-APPLICABLE-P.
11:26:25
shinmera
Pushed fix to physics.
11:27:25
gingerale
Alright, it launches now.
11:27:50
shinmera
Guess I never had a gamepad plugged in
11:29:06
selwyn
planning what to do with trial-vr
11:29:49
selwyn
i want to work on making interactions with the environment easier, as this is mostly the point of trial-vr
11:30:18
shinmera
we're gonna need more collision testers, then.
11:30:29
selwyn
so i will sketch out some kind of protocol governing how objects and people (via the controllers) interact
11:31:00
selwyn
as the physics engine can handle cubes and the like, i thought it would be nice to make some kind of rigid body simulation
11:31:24
selwyn
where you can interact with the objects
11:31:44
shinmera
we don't have raycasts or more complex shapes like hands tho.
11:31:50
selwyn
would not need additional 3d assets which is convenient
11:32:04
selwyn
not having hands is fine
11:32:33
selwyn
how does raycasting come into it?
11:32:47
selwyn
having point in box would be enough to start with
11:33:12
shinmera
you probably want to have some tolerance so you can project a ray from the hand and find a close object to snap to the hand.
11:33:51
selwyn
well, maybe more work on collisions is needed then
11:34:38
shinmera
also cubes get old fairly quick. We really do need more complex collisions. Which means two things: 1. deconstruction of concave into convex and 2. GJK
11:35:49
shinmera
If you wanna get started on that, the book Real Time Collision Detection by Ericson is very good.
11:35:56
shinmera
You can find PDFs online.
11:37:07
shinmera
It goes over literally everything, so just pick what's important to you lol
11:37:15
shinmera
even exciting things like doing it on GPU
11:37:40
shinmera
I hope gingerale can give the PR a look over soon so we can merge and move on to next steps
11:37:57
shinmera
I'm currently working on IK, which is gonna need raycasts, too.
11:38:05
shinmera
So I might tackle that soon
11:38:21
selwyn
we should coordinate efforts
11:39:08
shinmera
What do you feel would be most interesting for you?
11:39:30
shinmera
GJK has neat maths theory behind it, so maybe that tickles your fancy.
11:39:42
selwyn
i like implementing algorithms
11:39:55
selwyn
and this one could be useful for both of us one day
11:40:07
shinmera
GJK will be very useful for all of us soon
11:40:41
shinmera
So if you'd get started on that, I'd be immensely grateful :)
11:41:11
selwyn
i will devote like an hour tonight to getting started with it
11:41:23
shinmera
Since GJK is gonna need to interact with meshes, we might also need to rethink our current mesh representation.
11:41:32
shinmera
But I'll let you get acquainted with it first.
11:41:52
selwyn
knowing where the code is would be really helpful
11:42:38
selwyn
is all the collision detection in the physics pr
11:42:48
shinmera
so spin off from the physics branch.
11:43:06
shinmera
I'd probably make a new physics/gjk.lisp, and then later integrate with the protocol from primitives.lisp
11:43:45
shinmera
We'll probably need some extra protocol for the support function
11:44:03
shinmera
but I'll just let you get to it. :)
11:47:50
selwyn
it uses caratheodorys theorem lol
11:48:02
selwyn
ive done some convex analysis before
11:50:23
selwyn
do you want to apply it to moving objects
11:51:20
shinmera
But the solution there is rather simple, you just enlarge the object shape along the combined velocity vector in the support function.
11:51:51
shinmera
For now just focus on the non moving case.
11:56:35
selwyn
why does the support function need its own protocol
11:57:52
shinmera
well, you can have analytical shapes like a sphere, which are not described by a triangle hull.
11:58:29
shinmera
so generally you'd have some generic function with methods for every primitive, which implements the support function.
12:09:20
selwyn
sounds like a really general algorithm
12:12:26
selwyn
friendship with sdf ended
12:12:34
selwyn
now support mapping is my best friend
13:27:08
selwyn
what would epa be used for
13:30:54
shinmera
GJK only tells you whether an intersection exists or not
13:31:04
shinmera
EPA then figures out the normal and penetration depth.
13:41:11
shinmera
In general for geometry stuff it's nice to have a set of different things
13:41:39
shinmera
Though for our purposes having a boolean test function and a hit-generating function should suffice.
13:42:55
shinmera
so we can both (intersects-p a b) and (detect-hits a b ..)
13:46:03
shinmera
might also need an extra karg to intersects-p to pass a velocity.
13:50:42
shinmera
I'll hook the raycasts into detect-hits, at least
13:50:54
shinmera
and add a test-hit wrapper that just generates one hit at most.
17:19:29
selwyn
do you want to define a new primitive of type polyhedron?
Wednesday, 22nd of March 2023, 17:19:57 UTC