Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

32 total results found

Abstract Classes

UdonSharp 1.x Feature Overview

Just like C#, which UdonSharp is based on, now supports abstract classes! FOLLOWING PAGE CONTAINS MATERIAL THAT IS WORK IN PROGRESS! What are abstract classes? The correct definition of "abstract" is "missing or incomplete implementation". In simple terms,...

Improve Slide Stability With Modified Rigidbody Interia Tensor

Vehicle Development Basics Physics "Hacks"

FOLLOWING PAGE CONTAINS MATERIAL THAT IS WORK IN PROGRESS! Modifying inertia tensor is a useful "hack" for improving the slide stability of vehicles that use Unity's native WheelColliders. If you are developing your own wheel collider solution, this workaroun...

UdonExplorer - What, Why, Where?

UdonExplorer - Overview of Your Scene's...

What is UdonExplorer? UdonExplorer is an open source Unity Editor extension for exploring all of the UdonBehaviours in your VRChat world scene. UdonExplorer provides an extensive overview of all of the properties, symbols and entry points on the UdonBehaviou...

Introduction

Varneon's Waltzer Development Retrospec...

What is Waltzer? A Waltzer is a flat fairground ride that often forms the centrepiece of traditional British and Irish fairs. The ride consists of a number of cars which spin freely while rotating around a central point, in much the same way as a carousel...

My first Waltzer prototype was the second world I ever uploaded

Varneon's Waltzer Development Retrospec...

"If I can create on the platform, I will try to make a Waltzer!" As soon as I started creating worlds in VRChat, I obviously tried making a Waltzer! As you may expect, the world doesn't even work anymore because of the outdated version, but it is there to ...

SDK2 - Getting Creative

Varneon's Waltzer Development Retrospec...

Working around SDK2's limitations Given the limited tools available in the SDK2, I had to get creative with the feature implementations. The base of the ride running on a single client had no issues since it was an animation with the live rigidbodies of th...

Interactable World Space UI Canvas

UI Basics and Beyond Examples - Basic

This is still just the raw structure of the steps involved! Images and more details will be added soon. Create a UI canvas Right-click on your hierarchy, click on "UI > Canvas" Switch Render Mode on Canvas to World Space Reset the Canvas' Rect Tran...

Namespaces

Varneon's UdonSharp Development Practices Fundamentals

What are namespaces? Namespaces are a fundamental feature in C# and are used to control the scope of your projects. When developing anything with UdonSharp, declaring your own namespaces should be one of the first steps of your development process. If a cre...

Access Modifiers

Varneon's UdonSharp Development Practices Fundamentals

What Are Access Modifiers? All types and type members in C# have an accessibility level and access modifiers are for controlling where they can be used from. Caller's location public protected internal protected internal private protected pri...

Assembly Definitions

Varneon's UdonSharp Development Practices Fundamentals

Assembly Definitions can be overwhelming for beginners, but should be essential knowledge for developers of widely used prefabs made with UdonSharp. I have just released a new Unity Editor extension for automating assembly definition generation: Experimental ...

Terminology

Creator Companion and Package Manager G...

"VCC", "VPM", "Repo", "Package"? - This page is for giving you an overview of what everything means VRChat Creator Companion (VCC) Standalone application developed by VRChat for managing Unity projects for world and avatar creation and the packages in those p...

Package Manifest

Creator Companion and Package Manager G... VPM Package

VPM Package Manifest Package manifest is a JSON file contained at the root of the package and is used to define the properties of the package, such as name, version, author, dependencies, etc. UPM Properties Unity UPM package manifest documentation: https://d...

Relative Project Paths

Varneon's Unity Development Handbook

When you want to save assets from scripts in your Unity project, you may often run into an error explaining that you must use relative paths. This simple class (should) converts all paths into relative paths: using System; using System.IO; using System.Lin...

Scriptable Objects

Varneon's Unity Development Handbook

CreateAssetMenu Attribute // menuName: Path to the menu item // fileName: Default name of the new file // order: Priority of the menu item (100 is often reasonble) [CreateAssetMenu(menuName = "VUdon - Vehicles/Data Presets/Car Spec Sheet", fileName = "Ne...

Build Automation

Varneon's Unity Development Handbook

Receive Callback On Build using UnityEditor.Callbacks; namespace Varneon.Editor.BuildPostProcessors { public static class BuildPostProcessor { // Callback order defines the order in which the callback will be invoked [PostProc...

OnSceneGUI In Editor Window

Varneon's Unity Development Handbook

This is how you can get OnSceneGUI features like Handles to work on EditorWindows. private void OnEnable() { // Ensure that there is no delegate callback SceneView.duringSceneGui -= OnSceneGUI; // Define the callback for the delegate Sc...

Custom Editor Menu Items

Varneon's Unity Development Handbook

How to create different types of menu items for the Unity Editor. Custom Toolbar Menu This is how you can make a custom toolbar menu for pointing into any static method. namespace Varneon.VUdon.VehiclesLite.Editor { public class CarSetupWizard : E...

Get Current Project Window Directory

Varneon's Unity Development Handbook

This is how you can get the current directory of the Project window: using System.Reflection; using UnityEditor; using UnityEngine; public static string GetActiveProjectWindowDirectory() { // Use Reflection to get the hidden method for getting the f...

Detecting a User About to Type on InputField

UI Basics and Beyond Technical Notes

Due to VRChat not being the most consistent with sent UI events, especially between desktop and VR, it can be difficult to reliably detect when a user is about to start typing on a UI InputField. During the development of Udonity I faced this specific issue w...

Rebuilding UI Layout

UI Basics and Beyond Technical Notes

If you are using Unity UI Auto Layout components on your UI, you may face problematic situations where the elements are getting stuck in weird positions due to layout not being rebuilt when necessary. In these cases you can simply call LayoutRebuilder.ForceRe...