void Awake()
    {
        mTransform = GetComponent <Transform>();

        mFastDecals = new FastDecals();

        if (mFastDecals.Initialize(type, mTransform, MeshInstanceCreated, 2, 2, maxDecalCount, generateNormals, suppressDebugMessages, CalculateBounds(mTransform.position)))
        {
            if (Debug.isDebugBuild && !suppressDebugMessages)
            {
                Debug.Log(mFastDecals.GetProductName() + " " + mFastDecals.GetVersion().ToString() + " instance initialized with " + maxDecalCount + " decals.");
            }
        }
        else
        {
            if (Debug.isDebugBuild && !suppressDebugMessages)
            {
                Debug.Log(mFastDecals.GetProductName() + " error: initialization failed.");
            }
        }

        if (atlas == null)
        {
            mFastDecalsAtlas = GetComponent <FastDecalsAtlas>();
        }
        else
        {
            mFastDecalsAtlas = atlas;
        }

        material.mainTexture = mFastDecalsAtlas.atlasTexture;
    }
Exemplo n.º 2
0
    void Awake()
    {
        mTransform = GetComponent <Transform>();

        horizontalTiles = Mathf.Max(Mathf.Min(horizontalTiles, 256), 1);
        verticalTiles   = Mathf.Max(Mathf.Min(verticalTiles, 256), 1);

        mFastDecals    = new FastDecals();
        mTextureTiling = new Vector2(1.0f / (float)horizontalTiles, 1.0f / (float)verticalTiles);

        // Precalculate texture offsets

        int totalTiles = horizontalTiles * verticalTiles;

        mTextureOffsets = new Vector2[totalTiles];

        for (int i = 0; i < totalTiles; i++)
        {
            mTextureOffsets[i] = CalculateTextureOffset(i, horizontalTiles, verticalTiles);
        }

        if (mFastDecals.Initialize(type, mTransform, MeshInstanceCreated, horizontalTiles, verticalTiles, maxDecalCount, generateNormals, suppressDebugMessages, CalculateBounds(mTransform.position)))
        {
            if (Debug.isDebugBuild && !suppressDebugMessages)
            {
                Debug.Log(mFastDecals.GetProductName() + " " + mFastDecals.GetVersion().ToString() + " instance initialized with " + maxDecalCount + " decals.");
            }
        }
        else
        {
            if (Debug.isDebugBuild && !suppressDebugMessages)
            {
                Debug.Log(mFastDecals.GetProductName() + " error: initialization failed.");
            }
        }
    }