Ejemplo n.º 1
0
    private void DrawCreateTexture()
    {
        BeginError();
        {
            EditorGUILayout.HelpBox("There is no texture in this texture slot", MessageType.Error);

            BeginColor(Color.green);
            {
                newWidth   = EditorGUILayout.IntField("Width", newWidth);
                newHeight  = EditorGUILayout.IntField("Height", newHeight);
                newFormat  = (P3D_Format)EditorGUILayout.EnumPopup("Format", newFormat);
                newColor   = EditorGUILayout.ColorField("Color", newColor);
                newMipMaps = EditorGUILayout.Toggle("Mip Maps", newMipMaps);

                if (GUI.Button(P3D_Helper.Reserve(), "Create") == true)
                {
                    var format = P3D_Helper.GetTextureFormat(newFormat);

                    currentTexture = P3D_Helper.CreateTexture(newWidth, newHeight, format, newMipMaps);

                    currentTexture.name = "New Texture";

                    Clear(newColor, false);

                    ClearUndo();

                    currentMaterial.SetTexture(currentTexEnvName, currentTexture);

                    P3D_Helper.SetDirty(this);
                }
            }
            EndColor();
        }
        EndError();
    }
Ejemplo n.º 2
0
    public static TextureFormat GetTextureFormat(P3D_Format format)
    {
        switch (format)
        {
        case P3D_Format.TruecolorRGBA: return(TextureFormat.RGBA32);

        case P3D_Format.TruecolorRGB:  return(TextureFormat.RGB24);

        case P3D_Format.TruecolorA:    return(TextureFormat.Alpha8);
        }

        return(default(TextureFormat));
    }
Ejemplo n.º 3
0
 public static TextureFormat GetTextureFormat(P3D_Format format) =>
 (format == P3D_Format.TruecolorRGBA) ? TextureFormat.RGBA32 : ((format == P3D_Format.TruecolorRGB) ? TextureFormat.RGB24 : ((format == P3D_Format.TruecolorA) ? TextureFormat.Alpha8 : ((TextureFormat)0)));