Exemplo n.º 1
0
        public static GameObject CreateDecal(Material mat, Rect uvCoords, float scale)
        {
            GameObject decal = new GameObject();

            decal.name = "Decal" + decal.GetInstanceID();

            decal.AddComponent <MeshFilter>().sharedMesh       = DecalMesh("DecalMesh" + decal.GetInstanceID(), mat, uvCoords, scale);
            decal.AddComponent <MeshRenderer>().sharedMaterial = mat;

            qd_Decal decalComponent = decal.AddComponent <qd_Decal>();

            decalComponent.SetScale(scale);
            decalComponent.SetTexture((Texture2D)mat.mainTexture);
            decalComponent.SetUVRect(uvCoords);

                #if DEBUG
            decal.AddComponent <qd_DecalDebug>();
                #endif

            return(decal);
        }
Exemplo n.º 2
0
        public static GameObject CreateDecal(Material mat, Rect uvCoords, float scale)
        {
            GameObject decal = new GameObject();

            decal.name = "Decal" + decal.GetInstanceID();

            decal.AddComponent <MeshFilter>().sharedMesh       = DecalMesh("DecalMesh" + decal.GetInstanceID(), mat, uvCoords, scale);
            decal.AddComponent <MeshRenderer>().sharedMaterial = mat;

                #if UNITY_5
            decal.GetComponent <MeshRenderer>().shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off;
                #else
            decal.GetComponent <MeshRenderer>().castShadows = false;
                #endif

            qd_Decal decalComponent = decal.AddComponent <qd_Decal>();

            decalComponent.SetScale(scale);
            decalComponent.SetTexture((Texture2D)mat.mainTexture);
            decalComponent.SetUVRect(uvCoords);

            return(decal);
        }