1. Welcome to VRCat! Please note that this message board is not related to VRChat in any official manner. It is run entirely by the community, and moderated by the community. Any content present has not been reviewed by VRChat moderators or staff. Your use of these forums implies understanding of this message. Thanks!
    Dismiss Notice

Avatars Yash's Particle Keyboard

Discussion in 'Tutorials and Tools' started by Yash, Nov 22, 2018.

  1. Yash

    Yash New Member

    Nov 22, 2018
    Likes Received:
    Hey everyone this is a project I've been working on for quite sometime and everyone kept telling me i should make a prefab and release it to the public. So after a lot of optimizing I've finally decided to do just that. This is a Keyboard you can use on your avatars that will type particle letters/numbers/symbols in the air.


    This keyboard works great and I've used it for many months. There are some issues I've yet to work out but hopefully getting it into more hands can solve them.

    The main issue I've had is that because of the use of rigid bodies it breaks in some worlds (this is a known issue for many world particle based systems)

    The only other issue I've had is that occasionally the keyboard will stop showing for some people and require swapping to another avatar and back so that it does show up.

    Right now the particles are set on a timer of 45 seconds before they start to disappear and can only spawn a max of 30 of each character. In the future i could add an eraser function but that'd take up another gesture.


    First off you'll need to download the Unity Package

    Once downloaded added it to your current unity project.

    Grab the Yash_P_board prefab and move it into your project.

    Move the keyboard in the hierarchy under the armature.

    Position and resize the keyboard near left or right hand.


    In the keyboard move the activation point onto the end of your left or right index finger (opposite the keyboard)
    (notes: if you want you can move the point into the finger tip and remove the mesh renderer components)

    Add a fixed joint to the activation point and to the colliders object.
    [​IMG] [​IMG]

    Set rigid-bodies to 0 Angular Drag and turn off Use Gravity.

    Add Rigid-bodies to keyboard side wrist and Activation point index finger tip bone.

    Set Rigid-bodies on wrist/index finger bone to 0 Angular Drag and turn off Use Gravity. Also Freeze all Positions and Rotations.

    Drag Wrist/index bones into Fixed joints on activation point and Colliders object.
    [​IMG] [​IMG]

    Turn off Mesh Renderer for the P_board (inside Colliders object) and for the activation point so they don't show by default.
    [​IMG] [​IMG]

    Add the P_Keyboard animation to a custom override I prefer to use rock-n-roll to summon my keyboard.

    Add the Override to Avatar descriptor.

    You can edit the materials of the particles and the board in the materials folder to change the color or shader as you please I've included NoeNoe's Overlay shader i use on my personal keyboard to give mine a scrolling rainbow effect.

    Upload your avatar and test it out!

    Tips on keyboard use:

    The keyboard will spawn out characters as long as the activation point is inside the points on the board.
    Try and let the letter spawn a few times to ensure that the person can see them for sometimes the particles don't always spawn for the other person i tend to leave my activation point in the letter and let it spawn at least 3 times before moving on to the next letter.

    If someone says they can't see your keyboard try swapping to anther avatar and back and that tends to solve that issue.

    if you need any help or have any comments or suggestions you can hit me up on discord or twitter!

    Twitter @Yash884
    Discord Yash#5373