$12+
Add to cart

VRChat Marker Pro

11 ratings

VRCMarker Pro

Customizable Drawing Prefab for VRChat Worlds

🔗 Try it in VRChat

✨ Features

  • Adjustable Colors, Width, Smoothing
  • Rounded line renderer for PC & Quest
  • Late join sync
  • Eraser/Undo
  • Line Subvidision (PC Only)
  • Gradients
  • Write on surface
  • Desktop Hotkeys
  • Json export

📝 Setup

  • Download and import the Unity package. The imported assets end up in the Packages folder (Not assets)
  • Import TMP essentials if you havent already (Open Menu Item Window > TextMeshPro > Import TMP Essential Resources)
  • Drag & Drop the marker prefab into your scene and adjust settings

Drawing On Surfaces

  • Set Collision Layers on the marker to a new special layer
  • Create a GameObject with a primitive collider (Sphere, Box, Capsule or Convex Mesh Collider) set to that layer and enable Is Trigger
  • When a Marker enters a collider, it sets it as a target and draws at the closest point on its surface
  • Once the Marker moves outside the range, it continues drawing normally
  • Refer to the included example scene for additional information

🛠️ Changelog

[4.0.1] - 2026-1-11

  • Improved collision detection and setup
  • Fixed null exceptions when markers game objects are disabled by default
  • Added width to exported json

[4.0.0] - 2025-12-25

  • Complete rewrite
  • In-game customization
  • More desktop hotkeys
  • Removed vertex count limits and overwriting
  • Colored tooltips with more information
  • The geometry subdivision shader is now 3 times faster
  • Improved anti-aliasing
  • Writing on screen now works with any FoV setting
  • Reduced vram usage, the position texture is now dynamically resized like a list instead of a fixed constant size
  • Reduced mesh memory by using 16bit indices and multiple submeshes instead of one 32bit submesh for the line renderer
  • Holding erase now shows duration progress
  • Added distance culling
  • Fog can now affect the line renderer
  • Late join sync is now on by default
  • Export drawings in json

Techical Details

This prefab doesn't use the unity line renderer component. It is a custom line renderer built with Udon and Shaders. This allows for more flexibility so things like dynamic subdivision and per segment erasing is possible. The eraser can erase any point and intersection tests are done on the GPU. All of the data is stored in a texture, once it is erased it leaves empty unused space. A defragmentation pass is also implemented in order to compact the texture. Remote smoothing is entierly shader based, using precalculated timestamps when line segments should appear.

Json Format

  • version Version number
  • createdAt ISO 8601 in UTC
  • boundsMin, boundsMax Axis-aligned bounding box
  • width Line renderer width
  • colorType Color (0) or Gradient (1)
  • color Vector3 color value
  • gradient Vector4 array with XYZ for color and W for gradient time
  • positions Vector3 array bytes encoded as Base64 string, line breaks marked with (0,0,0)

Example

{
  "version": "4.0.0",
  "createdAt": "2025-12-25T14:42:54.5482376Z",
  "boundsMin": [2.560598,0.6142347,5.235921],
  "boundsMax": [2.764225,0.8806038,5.483546],
  "colorType": 0,
  "color": [1,1,1],
  "positions": "AAAAAAAAAAAAAAAAuFAqQKfVRz/XJaxAP1kqQNoMRT+VI6xA4W4qQJt3Pj+tL6xATX8qQNO/OT9LQ6xANX8qQCSHOT/oOaxAhG8qQH0SPT8eA6xAzWMqQH0gPz8lxKtAdWMqQMniPT+ikatAJmgqQAmAOz9zcKtA+G0qQEgNOT90WqtA1G8qQO5GOD+xU6tAAAAAAAAAAAAAAAAASlMqQHhwPj+r5apAtVUqQNFlPT+f26pAWloqQCmyOz9/06pAeV4qQD87Oj/1zapAnmEqQM0LOT8wx6pA8WUqQHGHNz8jwqpA5WcqQBfYNj/ev6pAAAAAAAAAAAAAAAAAPEcqQPjmQj99/KpA"
}

Contact

Discord

Terms of use

Personal

Under the Personal License, you are permitted to:

  • Create modifications of the asset.
  • Upload the asset and its modifications to both personal public and private worlds.

However, the following actions are prohibited:

  • Reselling the asset on its own.
  • Including the asset in any world package for sale or distribution.

Commercial

Under the Commercial License, you are permitted to:

  • Include the asset in world packages for sale, provided that the total price of the world package is higher than the original price of the asset.
  • Upload the asset to other users' accounts.

The following restrictions apply:

  • Redistribution of the asset by itself, either in its original form or as a modification, is strictly prohibited.
  • Any asset sold or transferred under this license retains the same rights and restrictions as a personal license for the recipient.

The package contents for both licences is identical.

$
Add to cart
157 sales
No refunds allowed

Ratings

5
(11 ratings)
5 stars
100%
4 stars
0%
3 stars
0%
2 stars
0%
1 star
0%
Powered by