Skip to content

IvanMurzak/UnityUtil

 
 

Repository files navigation

Unity Utilities

This package is where all the utility functions as well as all the custom inspector drawer code lives.

Installation

  • Install OpenUPM-CLI
  • Run command in your project folder openupm add com.github.voxell.unityutil

Custom Property Attribute

using UnityEngine;
using Voxell.Inspector;

public class CustomInspectorTest : MonoBehaviour
{
  [Scene]
  public string testScene;
  [Scene]
  public string[] testSceneArray;
  [InspectOnly]
  public int inspectOnlyInt;

  [StreamingAssetFilePath]
  public string streamingAssetFilePath;
  [StreamingAssetFolderPath]
  public string streamingAssetFolderPath;

  [Button]
  void TestButton() => Debug.Log("TestButton function invoked!");
  [Button("Super Button")]
  void AnotherTestButton() => Debug.Log("Button with Super Button name pressed!");
}

CustomPropertyAttribute

Utilities

MathUtil

using UnityEngine;
using Voxell.Mathx;

// generate array [0, 1, 2, 3, 4]
int[] shuffledArray = MathUtil.GenerateSeqArray(5);
// shuffles array
MathUtil.ShuffleArray<int>(ref shuffledArray, 3);
Debug.Log(shuffledArray);

Under the hood

using Unity.Mathematics;

// GenerateSeqArray method
int length = 5;
int[] shuffledArray = new int[length];
for (int i=0; i < length; i++) shuffledArray[i] = i;

// ShuffleArray method
for (int i = 0; i < shuffledArray.Length; i++)
{
  int randomIdx = UnityEngine.Random.Range(0, shuffledArray.Length);
  int tempItem = shuffledArray[randomIdx];
  shuffledArray[randomIdx] = shuffledArray[i];
  shuffledArray[i] = tempItem;
}

Debug.Log(shuffledArray);

Support the project!

patreon kofi

Join the community!

discord discord

License

This repository as a whole is licensed under the Apache License 2.0. Individual files may have a different, but compatible license.

See license file for details.

References

About

Utilities for Unity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%