Skip to content

Instantly share code, notes, and snippets.

View mandarinx's full-sized avatar

Thomas Viktil mandarinx

View GitHub Profile
@mandarinx
mandarinx / PreviewCulling.cs
Created August 10, 2016 10:56
Unity3D Preview Frustum Culling
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
using System.Collections;
[ExecuteInEditMode]
public class PreviewCulling : MonoBehaviour {
#if UNITY_EDITOR
@mandarinx
mandarinx / LayerMaskHelper.cs
Created July 22, 2016 09:02
Layermask helper
using UnityEngine;
public class LayerMaskHelper {
public static int OnlyIncluding( params int[] layers ){
return MakeMask( layers );
}
public static int EverythingBut( params int[] layers ){
return ~MakeMask( layers );
@mandarinx
mandarinx / FullscreenPlayMode.cs
Created June 23, 2016 21:53
Fullscreen game view in Unity
using UnityEditor;
using UnityEngine;
using System.Collections;
[InitializeOnLoad]
public class FullscreenPlayMode : MonoBehaviour {
//The size of the toolbar above the game view, excluding the OS border.
private static int tabHeight = 22;
@mandarinx
mandarinx / ExampleMonoPlugin.cs
Last active October 21, 2022 23:30
Using the plugin system
using UnityEngine;
using Mandarin;
using Mandarin.PluginSystem;
public class ExampleMonoPlugin : MonoBehaviour, IPlugin {
// This attribute makes sure PluginManager can find, initialize and
// register the plugin with the manager
[RegisterPlugin(pluginType = PluginType.DEFAULT)]
public void Register(CorePlugins core) {
@mandarinx
mandarinx / log.txt
Created June 14, 2016 06:35
Build report #7
[Unity] Initialize engine version: 5.3.5p2 (3103edb99077)
[Unity] Assets/Rocks and Boulders 2/Shaders/RotateGameObject.cs(18,35): warning CS0618: `UnityEngine.Transform.RotateAroundLocal(UnityEngine.Vector3, float)' is obsolete: `use Transform.Rotate instead.'
[Unity] Assets/UBER/Scripts/UBER_GlobalParams.cs(323,24): warning CS0618: `UnityEngine.ParticleSystem.emissionRate' is obsolete: `emissionRate property is deprecated. Use emission.rate instead.'
[Unity] Assets/UBER/Scripts/UBER_GlobalParams.cs(326,40): warning CS0618: `UnityEngine.ParticleSystem.emissionRate' is obsolete: `emissionRate property is deprecated. Use emission.rate instead.'
[Unity] Assets/Rocks and Boulders 2/Shaders/RotateGameObject.cs(18,35): warning CS0618: `UnityEngine.Transform.RotateAroundLocal(UnityEngine.Vector3, float)' is obsolete: `use Transform.Rotate instead.'
[Unity] Assets/UBER/Scripts/UBER_GlobalParams.cs(323,24): warning CS0618: `UnityEngine.ParticleSystem.emissionRate' is obsolete: `emissionRate property is deprecated. Use
@mandarinx
mandarinx / TestBroadcaster.cs
Created June 10, 2016 13:54
Test case for broadcaster
using UnityEngine;
using Mandarin;
using Mandarin.PluginSystem;
public class MA : Message {
public bool n;
}
public class TestBroadcaster : MonoBehaviour {
@mandarinx
mandarinx / README.md
Last active July 11, 2017 20:49
OSX service for changing Unity3D's default MonoBehaviour script template

Here's a simple AppleScript you can use to change the default MonoBehaviour script temple in a single mouse click. It's especially useful after updating Unity.

This has been tested on OS X 10.11.4 with Unity 5.3

Revision 2

Added support for multiple installs of Unity

NOTE

@mandarinx
mandarinx / AAV3.cs
Created April 3, 2016 16:06
Branchless axis aligned Vector3
using UnityEngine;
// Original by @markeahogan
// https://twitter.com/markeahogan/status/670754177153409024/photo/1
public class AAV3 : MonoBehaviour {
void OnDrawGizmos() {
Gizmos.DrawLine(transform.position, GetAxis(transform.forward));
}
@mandarinx
mandarinx / CustomEditorBase.cs
Created April 3, 2016 15:29 — forked from t0chas/CustomEditorBase.cs
Default Custom Inspector-Editor for Unity3D with ReorderableLists for arrays handling
using UnityEngine;
using UnityEditor;
using UnityEditorInternal;
using System.Collections.Generic;
using UnityEditor.AnimatedValues;
[CustomEditor(typeof(UnityEngine.Object), true, isFallback = true)]
[CanEditMultipleObjects]
public class CustomEditorBase : Editor
{
@mandarinx
mandarinx / CustomHierarchyMenuItems.cs
Created April 3, 2016 15:27
Unity hierarchy tools
using UnityEngine;
using UnityEditor;
using System.Linq;
using System.Collections.Generic;
/// <summary>
/// A collection of useful shortcuts for manipulating the hierarchy in Unity.
/// Some of this was written by me (@adamgryu), some of it was collected from random Unity forums and StackOverflow.
/// Feel free to use any of this code freely, without any restrictions or references.
/// Tested with Unity 5.3.3.