Skip to content

Instantly share code, notes, and snippets.

View kamend's full-sized avatar

Kamen Dimitrov kamend

View GitHub Profile
@kamend
kamend / AssetProcessing.cs
Last active August 8, 2016 13:29
Unity: An example how to set different Texture options based on the import directory. Copy this in the Editor folder.
using UnityEngine;
using UnityEditor;
public enum TextureType {
NONE = -1,
GUI = 0,
CHARACTERS = 1
}
public class AssetProcessing : AssetPostprocessor {
@kamend
kamend / FlatSubdivide.js
Created July 23, 2016 14:54
THREE.js Flat Triangle Subdivide
// Triangle Subdivision based on http://wiki.unity3d.com/index.php?title=MeshHelper
// There is not smoothing of any sort, it will just divide the triangles
// hence the FlatSubdivide name
THREE.FlatSubdivide = function () {
};
// Applies the "modify" pattern
@kamend
kamend / AssetPathAttribute.cs
Created November 3, 2015 08:28
A custom attribute to easily link prefab's paths instead of linking directly the prefab itself, especially useful inside scriptable objects and if you don't want Unity to load all the prefabs' resources as soon as the Scriptable Object loads.
using UnityEngine;
using System;
using System.Collections;
public class AssetPathAttribute : PropertyAttribute {
System.Type type;
string label;
public bool isResource;
public AssetPathAttribute(string l, System.Type t, bool isR) {
using System.Collections.Generic;
using System.Text;
namespace UnityEngine.EventSystems
{
public abstract class PointerInputModule : BaseInputModule
{
public const int kMouseId = -1;
public const int kFakeTouchesId = -2;
using System;
using System.Collections.Generic;
using UnityEngine.Events;
// interface you implement in your MB to receive events
public interface ICustomHandler : IEventSystemHandler
{
void OnCustomCode(CustomEventData eventData);
}
//#define DEBUG_THREADING
using UnityEngine;
using System.Collections;
using System.Threading;
using System.Reflection;
public delegate IEnumerator MonitorCoroutine<T> (CoroutineData<T> data);
@kamend
kamend / Image2Tumblr.cs
Created May 24, 2014 07:06
How post an image to Tumblr via their V2 API, inside Unity
using UnityEngine;
using System;
using System.Text;
using System.Collections;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Globalization;
using System.Security.Cryptography;
using System.IO;
// Adjust dSYM generation
var xcodeProjectPath = Path.Combine(xcodeProjectDir, "Unity-iPhone.xcodeproj");
var pbxPath = Path.Combine(xcodeProjectPath, "project.pbxproj");
var sb = new System.Text.StringBuilder();
var xcodeProjectLines = File.ReadAllLines(pbxPath);
foreach (var line in xcodeProjectLines)
{
// Remove from OTHER_LDFLAGS
// by dave @ beesandbombs.tumblr.com >:)
void setup() {
setup_();
result = new int[width*height][3];
result_ = new int[width*height][3];
}
int[][] result, result_;
float time;
@kamend
kamend / KinectCommonBridge Mesh Generation
Created April 4, 2014 09:58
This is how to generate point cloud mesh from the rawDepthPixels data, using Openframeworks and KinectCommonBridge
mesh.clear();
mesh.setMode(OF_PRIMITIVE_POINTS);
for(int x=0;x<640;x+=2) {
for(int y=0;y<480;y+=2) {
int index = x + y * 640;
short depth = kinect.getRawDepthPixelsRef().getPixels()[index];
if(depth > minDistance && depth < maxDistance) {
Vector4 world = NuiTransformDepthImageToSkeleton(x,y,kinect.getRawDepthPixelsRef().getPixels()[index] << 3,NUI_IMAGE_RESOLUTION_640x480);
float scale = 500.0f;
mesh.addVertex(ofVec3f(world.x,world.y,-world.z)*scale);