标签:#Unity

Posts

· 2019-07-08 · * Unity * Shader *

A shader for showing progress in sin-wave style.

· 2019-06-29 · * Unity *

Extensions

1. Get Hierarchy Path of a GameObject in Scene

public static string GetHierarchyPath(this GameObject obj)
{
    string path = "/" + obj.name;
    while (obj.transform.parent != null)
    {
        obj = obj.transform.parent.gameObject;
        path = "/" + obj.name + path;
    }
· 2019-06-12 · * Unity * TinyPNG *

Compress Textures in Unity Editor by using TinyPNG

public class TinyPNGEditor : MonoBehaviour
{
    private const string URL_API = "https://api.tinify.com/shrink";
    
    // your key here
    private const string KEY_API = "xxxxxxx";


    private static UnityWebRequest www;
    private static Action onDone;
· 2019-06-12 · * Unity * Dilate *

It is because of Texture's alpha is not dilated for the gap.
Details could be found HOWTO-alphamaps

So how to fix it:
  • if it's in your Unity project, just enable this texture's AlphaIsTransparency in Texture Importing Setting inspector.
public static void DilateTexture()
{
    if (Selection.activeObject == null)
    {
        if (EditorUtility.DisplayDialog("Error Selection", "Select a texture", "OK"))
        {
            return;
        }
· 2019-05-28 · * Unity *
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using AssetBundleBrowser.AssetBundlePacker;
using UnityEditor;
using UnityEditor.VersionControl;
using UnityEngine;
using Debug = UnityEngine.Debug;
· 2019-05-28 · * Unity *

a simple image downloader, it downloads images via a queue and by UnityWebRequest and Coroutine.

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;

public class ImageDownloader : MonoSingleton<ImageDownloader>
{
    private const int MAX_REQUEST = 10;

    public Action<UnityWebRequest, string> OnError;
· 2019-05-04 · * Unity *

Sometimes we just wanna record sounds from scene, so Unity's MicroPhone API would not be very useful.

But we have OnAudioFilterRead to do this kind of action.

Share a solution which is from
http://evanxmerz.com/blog/index.php/2016/10/07/recording-in-game-audio-in-unity/

This script should be added to a Unity AudioListener GameObject then it could do its works.

HowTo

  • Create a MonoBehaviour script with an OnAudioFilterRead method
    // write the incoming audio to the output string
    void OnAudioFilterRead(float[] data, int channels)
    {
    
· 2019-05-01 · * Unity * markdown *

New unity plugin has been released:
https://youtu.be/5Q6qpgveYgA

What is UIWidgets?

UIWidget is a Unity Package which helps developers to create, debug and deploy efficient, cross-platform Apps. Details could be found at their github page

What does this plugin do?

Just parse and render raw markdown strings into UIWidgets elements.

How to use

    1. You must learn how to use UIWidgets first
    1. Import UIWidgets into your Unity project according to Requirements
    1. Then import this plugin into your Unity project
· 2019-05-01 · * Unity *

Recently I war working on creating a blog app by using Unity UIWidgets, actually it's not bad.
But when I click on the page's link, it refered to phone's system browser. It's not what I wanted.

So I found some webview solutions for Unity. Below is what I'm using.
https://github.com/gree/unity-webview

Why did I choose this one?

  • It was the first one working on my iPhone
  • It could work in MacOS Unity Editor, it is so wonderful that I could debug directly in my Editor.

How to use

  • Before use it directly, I wrapped it with below's code.
    public class WebViewManager : MonoSingleton<WebViewManager>