XR Keyboard I
Prototyped a digital keyboard for my XR Voxel Editor (https://boxelxr.com). The main case is to name sketches and enter e-mail to get exporting OBJ files (now it saves them on the disk). That's why it doesn't have special characters and a few more keys we used to see on digital keyboard layouts.
I used a simple ortho-linear grid for the layout. There is no point in replicating keys staggering from a physical keyboard. This staggering brings visual noise to the layout and makes it harder to navigate through it.
Another point against having key offsets on digital keyboards is that you can't leverage the muscle memory you developed for the physical keyboard. The digital keyboard lacks haptics. You primarily rely on visual feedback. And therefore using the layout that adds visual noise to the feedback is a pure anecdote.
Also, the physical keyboard layout engages you to move your fingers and hands diagonally. It optimises your movements (especially for your right hand) because we put our hands at an angle on the keyboard. But in digital XR keyboards, you don't have any of this. Your hands are floating in the air. Up/Down/Left/Right-hand movements are easier than diagonal. Try to move your hand with a dumbbell diagonally. It's not only harder, but it's also unsafe.
Besides having the matrix layout, there is another improvement in my digital keyboard. I put a text preview on the keyboard itself. Again, since we don't have haptics and rely on visual feedback, mitigating the number of head movements from the UI panel to the keyboard is essential. Otherwise, it will kill your neck.
Also, when you hover over a key, you see a ghost preview of it on the text preview. Developing muscle memory for this keyboard would help you type faster since you won't need to look at keys all the time (and this interaction helps with it).
I would happily have the last interaction mechanics on the physical keyboard. For example, to solve the issue when you work with multilanguage layouts and you see that you use the wrong one when you start typing.