万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    C# コルーチンをコールする Unity

    IEnumerator Hoge() {
      // do something
    }

    ↑こんな関数を同じスクリプトファイル内のC#呼ぶとき

    Hoge();
    

    ↑これだとコールされないっぽい。

    StartCoroutine(Hoge());
    

    ↑または。。。

    StartCoroutine("Hoge");
    

    ↑こうやってコールしなきゃだめ


    タイルマップをJSのC#化 Unity

    最近C#化してるので移植した

    http://www.unifycommunity.com/wiki/index.php?title=Animating_Tiled_texture_-_Extended

    • AnimatedTextureExtendedUV.cs
    using UnityEngine;
    using System.Collections;
    
    public class AnimatedTextureExtendedUV : MonoBehaviour {
    	//vars for the whole sheet
    	public int colCount = 4;
    	public int rowCount = 4;
    	
    	//vars for animation
    	public int rowNumber = 0; //Zero Indexed
    	public int colNumber = 0; //Zero Indexed
    	public int totalCells = 4;
    	public int fps = 10;
    	Vector2 offset;  //Maybe this should be a private var
    	
    	//Update
    	void Update () {
    		transform.eulerAngles = new Vector3(90, 180, 0);
    		SetSpriteAnimation(colCount,rowCount,rowNumber,colNumber,totalCells,fps);
    	}
    	
    	//SetSpriteAnimation
    	void SetSpriteAnimation (int colCount, int rowCount, int rowNumber, int colNumber, int totalCells, int fps) {
    	
    	    // Calculate index
    	    float index = Time.time * fps;
    	    // Repeat when exhausting all cells
    	    index = index % totalCells;
    	    
    	    // Size of every cell
    	    Vector2 size = new Vector2(1.0F / colCount, 1.0F / rowCount);
    	    
    	    // split into horizontal and vertical index
    	    int uIndex= (int)index % colCount;
    	    int vIndex= (int)index / colCount;
    	 
    	    // build offset
    	    // v coordinate is the bottom of the image in opengl so we need to invert.
    	    offset = new Vector2((uIndex+colNumber) * size.x, (1.0F - size.y) - (vIndex+rowNumber) * size.y);
    	    
    	    renderer.material.SetTextureOffset ("_MainTex", offset);
    	    renderer.material.SetTextureScale  ("_MainTex", size);
    	}
    }