Skip to content

Instantly share code, notes, and snippets.

@BanksySan
BanksySan / DrawTriangleNormals.cs
Last active April 13, 2020 12:52
Unity Scripts
using UnityEngine;
using static UnityEngine.Debug;
[ExecuteInEditMode]
[RequireComponent(typeof(MeshFilter))]
public class DrawTriangleNormals : MonoBehaviour
{
private Mesh _mesh;
private MeshFilter _meshFilter;
public Color _rayColor = Color.cyan;
using UnityEngine;
[RequireComponent(typeof(Rigidbody2D))]
public class PlayerController : MonoBehaviour
{
private const float WALK_SPEED = 2;
private const float JUMP_FORCE = 250;
private Vector2 _jumpVector;
private bool _queueJump;
private bool _queueWalkLeft;
@BanksySan
BanksySan / unity-references.csx
Last active April 18, 2020 16:10
References for use with csi.exe
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\Unity.Cecil.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\Unity.Cecil.Mdb.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\Unity.Cecil.Pdb.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\Unity.Legacy.NRefactory.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\UnityEditor.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\UnityEngine.AccessibilityModule.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\UnityEngine.AIModule.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Managed\UnityEngine\UnityEngine.AndroidJNIModule.dll"
#r "C:\Program Files\Unity\Hub\Editor\{UNITY_VERSION_NUMBER}\Editor\Data\Manag
@BanksySan
BanksySan / HardCast.cs
Created April 19, 2020 10:04
C# Casting Examples
try
{
target = (TargetType) o;
}
catch (InvalidCastException)
{
// Handle exception
}
@BanksySan
BanksySan / Child.cs
Created April 19, 2020 10:07
Comparing explicit and implicit casts
public class Child
{
// Stuff
}
public class Casting
{
private Child _child;
private Parent _parent;
[GlobalSetup]
public void GlobalSetup()
{
_parent = new Parent();
@BanksySan
BanksySan / Explicit.il
Created April 19, 2020 10:12
Explicit v Implicit IL
IL_0000: ldarg.0
IL_0001: ldfld class BanksySan.Blog.Performance.Child BanksySan.Blog.Performance.Casting::_child
IL_0006: castclass BanksySan.Blog.Performance.Parent
IL_000b: ret
@BanksySan
BanksySan / MarkCenterAndExtents.cs
Last active April 22, 2020 21:10
Blog - Mark Center andExtents
using UnityEngine;
using static UnityEditor.Handles;
using static UnityEngine.Color;
using static UnityEngine.Gizmos;
[ExecuteAlways]
[RequireComponent(typeof(Renderer))]
public class MarkCenterAndExtents : MonoBehaviour
{
private const float RADIUS = 0.02f;
@BanksySan
BanksySan / manifest.json
Last active April 24, 2020 20:51
Unity Manifest
{
"dependencies": {
"com.unity.2d.animation": "3.2.1",
"com.unity.2d.pixel-perfect": "2.0.4",
"com.unity.2d.sprite": "1.0.0",
"com.unity.2d.spriteshape": "3.0.10",
"com.unity.2d.tilemap": "1.0.0",
"com.unity.cinemachine": "2.5.0",
"com.unity.ide.rider": "1.1.4",
"com.unity.progrids": "3.0.3-preview.6",
@BanksySan
BanksySan / DrawBoundingBox.cs
Created April 25, 2020 11:56
Blog: Draw Bounding Box
using UnityEngine;
using static UnityEditor.Handles;
using static UnityEngine.Color;
using static UnityEngine.Gizmos;
[ExecuteAlways]
[RequireComponent(typeof(Renderer))]
public class MarkCenterAndExtents : MonoBehaviour
{
private const float RADIUS = 0.02f;