Pen

Getting Started with HyperSkill's Pen Feature

Overview

In addition to spray painting, HyperSkill also supports painting and marking using pens. Pens enable finer control over painting, allowing users to add fine details or write.

Getting Started

To get started, you will need to procure a 3D model of the pen tool. This can be any 3D model you want, so long as it conforms to the following requirements:

  • The collider of the object must not cover the tip of the writing tool

    • [Recommended] Adjust the collider such that there is plenty of space for the tool tip. This will enable a smoother experience when writing/painting in VR

  • There must be a child transform on the object named "Paint"

  • The "Paint" transform must be scaled to be the size of the tip of the pen

    • [Recommended] Add a 3D sphere as a child of the "Paint" transform and adjust the "Paint" scale. Keep adjusting until the sphere correctly covers the tip of the pen. The sphere visualizes the collider that is used to apply the paint. Don't forget to remove the sphere once you are done adjusting.

  • Two additional transforms must be added to the pen object. These transforms must be named "PointA" and "PointB" respectively

    • "PointA" should be positioned at the end opposite of the tip of the pen

    • "PointB" should be positioned at the tip of the pen

Once you have uploaded the 3D model as a virtual object to your account, you may now add the pen tool to your experience.

Setup

In authoring mode, you need to add some custom attributes to your pen virtual object. Add the following attributes to enable painting using the pen feature:

  • Add a custom attribute named "Pen" of type "bool". The value should be set to true. If the value is true, the feature will be enabled. If the value is false, the tool cannot be used. This setting is per object, so you may have some pens that are enabled and some that are not.

  • Add a custom attribute named "Color" of type "string". The value can be a named color or a hex color code.

    • The named colors support the following:

      • black

        • blue

        • clear

        • cyan

        • gray

        • green

        • grey

        • magenta

        • red

        • white

        • yellow

    • You can use any hex color code you want

    • The "white" color is interpreted as color removal and will remove any applied paint

Last updated