Skip to content

Instantly share code, notes, and snippets.

Avatar

Harry Jones delphic

View GitHub Profile
@delphic
delphic / ProjectorPreview.shader
Created Apr 13, 2020
Angle Limited Projector Shader for Unity3D
View ProjectorPreview.shader
// Angle Limitation based off https://forum.unity.com/threads/projector-shader-with-angle-limitation.406876/
Shader "Projector/Preview" {
Properties {
_Color ("Main Color", Color) = (1,1,1,1)
_ShadowTex ("Cookie", 2D) = "" {}
_FalloffTex ("FallOff", 2D) = "" {}
}
Subshader {
View TargetFilter.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(menuName = "Definitions/Target Filter")]
public class TargetFilter : ScriptableObject
{
// Target filters work by taking a set of potential targets and then by applying
// a series of filters in turn to narrow down your targets until you're left
// with who you want to target.
@delphic
delphic / AnimationController.cs
Last active Mar 10, 2021
Unity3D Playables API Based Character Animation Controller
View AnimationController.cs
using UnityEngine;
using UnityEngine.Animations;
using UnityEngine.Playables;
[RequireComponent(typeof(Animator))]
public class AnimationController : MonoBehaviour
{
const string ANIMATION = "Animation";
PlayableGraph _playableGraph;
@delphic
delphic / ScrollingMaterial.cs
Created Apr 11, 2019
Simple Unity3D Scrolling Material Script
View ScrollingMaterial.cs
using UnityEngine;
[RequireComponent(typeof(MeshRenderer))]
public class ScrollingMaterial : MonoBehaviour
{
public float Speed;
float _uvFactor;
Material _materialToScroll;
@delphic
delphic / DebugTimeScaler.cs
Created Apr 11, 2019
Simple Unity Debugging Timescale Helper
View DebugTimeScaler.cs
using UnityEngine;
public class DebugTimeScaler : MonoBehaviour
{
#if UNITY_EDITOR
void Update()
{
if (Input.GetKeyDown(KeyCode.LeftBracket))
{
Time.timeScale /= 2f;
@delphic
delphic / gist:5960293
Last active Dec 19, 2015
Console Program to calculate inversions in an array.
View gist:5960293
using System;
using System.IO;
using System.Linq;
namespace CountingInversions
{
class MainClass
{
public static void Main (string[] args)
{