I'm making a video game, and I want to map a joystick position to a rotation (of a sword). I have a set of keyframes for certain joystick positions, and I want to interpolate between the three nearest ones to create a continuous function from joystick position to sword rotation.
HN user
GreedCtrl
This is awesome. I was looking for a solution for averaging multiple rotations, and I found https://mathweb.ucsd.edu/~sbuss/ResearchWeb/spheremean/paper...
This method looks a lot easier than that paper, at least at my level of math.
A game called 4D Golf came out recently if you want to try interacting with the physics of minigolf in 4 spatial dimensions.
For crypto, isn't assembly used to help prevent timing attacks? I don't know if that can be done in pure Rust.
As someone who's doing some accessibility programming but has no background in the field, I do have a random question to throw your way if you are game.
Our team is developing voice control for a website. This is mainly requested by sighted users who want to use the site hands-free. But we also have an accessibility mode for better screen reader support.
We think voice control might be appreciated by screen reader users too, but we aren't sure how well it would work with a screen reader.
Are there common pitfalls we should be wary of?
One thing we're worried about is that the voice from the screen reader might interfere with the detection of the user's voice.
I know general dictation and voice control software already exists, so my initial assumption that screen reader users would benefit might be wrong. If the existing tools are good enough, perhaps this whole question is moot.
The college in question is Lincoln College.
This is somewhat confusing because there is a college called Illinois College. Because of this news, they are accepting transfers from Lincoln for all students in good academic standing: https://www.ic.edu/news/04-4-2022/illinois-college-extends-b...
I thought this feature was built in, but maybe not? All I can find is https://support.apple.com/en-us/HT212842 which seems to be on a per-app basis.
That kind of engine exists! It's called Maia, as mentioned in a sibling comment.
A bit off topic, but I'd caution against using business tactics in chess.
While the opportunities Rockefeller capitalized on are unlikely to come about again, they show how chess strategies can translate into business acumen.
India's youngest billionaire Nikhil Kamath played chess when he was younger, and he used his chess background much as this article does to promote his business acumen.
Just yesterday, he played in a charity simul against 5-time world champion Viswanathan Anand. He was the only player to defeat Anand, an obvious sign of computer assistance.
That's what can happen now that computers are better than humans at chess. Maybe one day they will outclass us at business too?
I'd recommend Megalobox 2: Nomad as a rare gem, much more so than its first season. It takes a classic underdog story then asks: What happens after the hero wins?
It's an adult story. A story of homelessness, of community; of addiction, of compassion; of parenthood, of adolescence. And there's some boxing.
Determinism! [0] I'm switching a browser game side project from Typescript to WebAssembly because determinism enables a simpler style of multiplayer. Instead of relying on a server to manage state, I can just send inputs p2p like a modern fighting game (with rollback [1]). Then the game acts just like singleplayer! For a hobbyist like me, WebAssembly makes the minefield of multiplayer so much easier to navigate.
[0] https://github.com/WebAssembly/design/blob/master/Nondetermi... [1] A blog post on rollback netcode (not in wasm): https://ki.infil.net/w02-netcode.html
Case in point: one of the fonts mentioned, recursive, has been on HN before (with 108 comments), but I only found one comment that explicitly talks about this property, and it doesn't do so by name. https://news.ycombinator.com/item?id=23934409
You can already put CSS in an SVG favicon. That's one way to adapt a favicon to a user's native dark mode/light mode preference.
Link for those that are curious: https://maiachess.com/ (It got posted on HN too, but I didn't see it get much traction).
And you can challenge the bot on lichess: https://lichess.org/@/maia1
Let those of us with mediocre knowledge and skills play the game at the level the masters play at with the help of some AI.
Correspondance games on lichess.org give you an opening explorer which shows you what masters have played before. (Click on the microscope, then on the book icon.)
Here's what it looks like: https://i.imgur.com/Hj5Rt0b.png
If you really want to play with AI assistance, look for cyborg/centaur/advanced chess.
It looks like there's a lichess group for that, but it doesn't seem active anymore: https://lichess.org/team/cyborg
Macs vibrate the touchpad when you click. There's no hinge. It's the best solution I've used so far, and it's unique to apple as long as it remains patented (US 8,633,916).
If I could type that fast, I would immediately try to use the keyboard to think on screen, like thinking out loud (or subvocalizing).
Writing as I think is like climbing with a rope. I don't get mental superpowers, but I do have an easier time mapping out ideas, as I don't have to rely so much on memory. Then faster typing means faster, easier ideation. Maybe I would journal more.
After hearing about pol.is[0] on HN, I've wondered about a system that allows or even encourages downvotes (with all vote counts hidden), but doesn't penalize content for being downvoted. Then downvoting to disagree becomes okay.
With this kind of system, you could even boost downvoted comments as long as they also receive upvotes, encouraging more diverse discourse. If we want an online space that doesn't become an echo chamber, we need to make it okay to respectfully disagree.
[0] https://pol.is/home - pol.is uses votes to find common ground between divisive groups
There's a side project idea: create a `git calendar` command.
Here's a different example:
Super Smash Bros Melee is almost 20 years old and still sees competitive play. There's a technique in the game called pivoting, which is a one-frame input used to unlock more movement options. It's been known for a while, but top players didn't make much use of it, as such a demanding mechanic seemed beyond the reach of consistent human performance.
A new(ish) player, Zain, has become one of the best in the world, and he makes frequent use of pivots, among many well-known but underused techniques.
The rules haven't changed. The tools have always been there. But now someone is picking them up. This layer of the game, once thought to be "not worth it," has now entered the metagame.
(There's actually an upcoming documentary about Melee called Metagame. To be released... eventually)
Yes, you would need to fix the pixels to an initial or average value. I remember Nintendo didn't do this a couple years ago, accidentally leaking the name of a new game mode [1] for Smash Ultimate.
[1] https://twitter.com/Lattie9001/status/1027204063811850240
The "exploration and backtracking" you mention originally is the brute force method of solving sudoku by computer: recursive backtracking. If you want an example of sticking points, I'd recommend the Robin Hood sudoku:
https://www.youtube.com/watch?v=pdtWTg4LrqQ
It can be brute forced with enough patience, but the fun for me comes in developing intuition on where to look next. The hints of a sudoku have meaning: they lead to the completed grid. Finding the next step in the puzzle amounts to understanding some of its construction.
Speaking of great-looking puzzles, this youtube channel covered a visually stunning pi day sudoku some time ago. As you said, it uses extra constraints to reduce connectivity, but still, I find it amazing that the digits of pi can fit so well into a puzzle. (Pi begins at the top and moves clockwise.)
+-----v-----+
| |431| |
| 8| |4 |
| 3 | | 1 |
|---+---+---|
|2 | | 5|
|3 | 6 | 9|
|9 | | 2|
|---+---+---|
| 7 | | 6 |
| 9| |5 |
| |853| |
+-----------+
https://www.youtube.com/watch?v=N41yZsxIsK8What would happen if you paste a complete program in all at once?
making up scores for an imaginary league that's being played.
Real sports might not work this way, but there is an imaginary sport whose virus-immune atheletes continue to compete even now. Jelle's Marble Runs [1] is a Youtube channel that hosts marble races in Olympic or Fomula One fashion, complete with TV-style animations and commentary.
It's all for fun, of course, but it is an interesting look at sports without sports, in a sense.
[1] https://www.youtube.com/channel/UCYJdpnjuSWVOLgGT9fIzL0g
Have you heard of the free energy principle? The two ideas seem related.
From Wikipedia:
The free energy principle is that systems—those that are defined by their enclosure in a Markov blanket—try to minimize the difference between their model of the world and their sense and associated perception. This difference can be described as "surprise" and is minimized by continuous correction of the world model of the system. As such, the principle is based on the Bayesian idea of the brain as an “inference engine.” [Karl] Friston added a second way to minimization: action. By actively changing the world into the expected state, systems can also minimize the free energy of the system. Friston assumes this to be the principle of all biological reaction.
Is the convention of 60 frames per second related at all?
I think it's a tradeoff between resources and efficiency. The longer the race, the more you need to manage your air. Breathing more means a bit more drag, but also more energy to finish the race. Which option is better for you depends on your strength, endurance, distance, and probably many other factors.
Of course in training, ideally you would breathe to both sides—Michel Phelps alternates every 50.
This is called galloping (might have other names too). In general, freestyle has two extremes: shoulder driven and hip-driven. Shoulder driven freestyle is faster but less efficient, and hip-driven is slower but more efficient. Galloping alternates between hip- and shoulder-driven strokes, which is why it seems uneven. This also allows the swimmer to take advantage of the motion of breathing to build more momentum. I don't know if it is truly faster or not though.