🌐 VR Keyboard -- three-mesh-ui

Hi folks,

Here is a virtual keyboard for your VR experiences.

Live demo (does not need VR).

It is part of the three-mesh-ui add-on, which focuses on providing 3D user interfaces ( with VR in mind ).

Supports :

  • English, French, Spanish, German, Greek and Russian layouts
  • Greek and Russian can switch to English with the ‘eng’ key
  • Upper-case / lower-case
  • Second panel for numbers and symbols
  • Animation

:raised_hands: :pray: Attention please

If you use a chinese or arabic keyboard and want these layouts to be added, can you please manifest yourself ? I need help.

English :

French :

German :

Greek :

Russian :

Spanish :



German probably is easier to add.
Sent a message in PM.

1 Like

Great job!

I’m Russian, how can I help you?

1 Like

@munrocket I didn’t know about a German layout, I will look into it. I replied to your PM !

@Dragon3DGraff I just started a discussion here on GitHub about the Russian layout, I have a question related to switching to english.

Umlauts (ä, ö, ü) need additional keys.

Though… it’s possible to use ae, oe, ue instead of them.

1 Like

mh actually this exists in French as well, along with a couple of other symbols on top of letters (à, é, î… there is a lot). I didn’t implement this yet, I focused on the letters and their layout, but it’s definitely something that should be added.

Ideally I think it would look like on mobile keyboard, an overlay presenting the varients of a letter when you hold pressed on the letter ?

1 Like

:earth_americas: Friends from Russia, a Russian layout is in progress ! :earth_americas:
Is this layout right ?


Almost perfect :slight_smile:
Just swap those two glyphs:


@Dragon3DGraff @prisoner849 thanks for the heads up guys, it’s now live :
three-mesh-ui | examples ( click on ‘Russian’ )

If you see anything else I should update to better fit with a standard Russian layout, feel free to ask for it.


Last update : support for German, Spanish, and Greek layouts

I will stop adding layouts for some time, if you want a layout to be added, manifest yourself.
I would love to add Chinese and Arabic layouts, but this is really hard without help from a user.


Excellent component! To add Danish, Swedish and Norwegian, you just need a standard Qwerty with three extra letters, Æ,Ø,Å. Would be awesome :slight_smile:

1 Like


Welcome to the forum and thank you for your suggestion,

I’ve added a “Nordic” layout :

Test it here : three-mesh-ui | examples (click on “Nordic”)

Is that OK ?

I’ve also added icons, instead of writing “cancel”, “shift” and “enter”.

1 Like

@felixmariotto Fabulous!
Such a great forum as well, I don’t know how I missed it earlier. I work with threejs nearly every day of my life :slight_smile:

1 Like



Great plugin! I need support for Chinese characters, how can I help you? :slight_smile: