Skip to content

Instantly share code, notes, and snippets.

View delphic's full-sized avatar

Harry Jones delphic

View GitHub Profile
@delphic
delphic / AnimationController.cs
Last active January 18, 2024 07:17
Unity3D Playables API Based Character Animation Controller
using UnityEngine;
using UnityEngine.Animations;
using UnityEngine.Playables;
[RequireComponent(typeof(Animator))]
public class AnimationController : MonoBehaviour
{
const string ANIMATION = "Animation";
PlayableGraph _playableGraph;
@delphic
delphic / ProjectorPreview.shader
Created April 13, 2020 15:57
Angle Limited Projector Shader for Unity3D
// 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 {
@delphic
delphic / TargetFilter.cs
Created September 30, 2019 14:08
Sample of a Target Fitler Definition for https://delphic.me.uk/blog/seekers_ability_system
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 / ScrollingMaterial.cs
Created April 11, 2019 11:04
Simple Unity3D Scrolling Material Script
using UnityEngine;
[RequireComponent(typeof(MeshRenderer))]
public class ScrollingMaterial : MonoBehaviour
{
public float Speed;
float _uvFactor;
Material _materialToScroll;
@delphic
delphic / DebugTimeScaler.cs
Created April 11, 2019 11:02
Simple Unity Debugging Timescale Helper
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 December 19, 2015 13:09
Console Program to calculate inversions in an array.
using System;
using System.IO;
using System.Linq;
namespace CountingInversions
{
class MainClass
{
public static void Main (string[] args)
{