示例#1
0
 private void objectListView_CellEditFinished(object sender, CellEditEventArgs e)
 {
     if (e.NewValue.GetType() == typeof(ETextureGroup))
     {
         ETextureGroup textureGroup = (ETextureGroup)e.NewValue;
         if (textureGroup != ETextureGroup.None)
         {
             (e.RowObject as ImportableFile).SetState(ImportableFile.EObjectState.Ready);
         }
     }
 }
示例#2
0
        /// <summary>
        /// Taken from game files /engine/textures/texturegroups.xml
        /// </summary>
        /// <param name="textureGroup"></param>
        /// <returns></returns>
        public static ETextureCompression GetTextureCompressionFromTextureGroup(ETextureGroup textureGroup)
        {
            switch (textureGroup)
            {
            case ETextureGroup.SystemNoMips:
                return(ETextureCompression.TCM_None);

            case ETextureGroup.MimicDecalsNormal:
            case ETextureGroup.FoliageDiffuse:
            case ETextureGroup.WorldDiffuseWithAlpha:
            case ETextureGroup.Particles:
            case ETextureGroup.WorldSpecular:
            case ETextureGroup.BillboardAtlas:
            //case ETextureGroup.TerrainDiffuseAtlas: // found in engine.xml but not in wcc enum /shrug
            case ETextureGroup.GUIWithAlpha:
            case ETextureGroup.CharacterDiffuseWithAlpha:
            case ETextureGroup.HeadDiffuseWithAlpha:
                return(ETextureCompression.TCM_DXTAlpha);

            case ETextureGroup.SpecialQuestDiffuse:
            case ETextureGroup.TerrainDiffuse:
            case ETextureGroup.GUIWithoutAlpha:
            case ETextureGroup.WorldDiffuse:
            case ETextureGroup.ParticlesWithoutAlpha:
            case ETextureGroup.CharacterDiffuse:
            case ETextureGroup.CharacterEmissive:
            case ETextureGroup.HeadDiffuse:
            case ETextureGroup.HeadEmissive:
            case ETextureGroup.DiffuseNoMips:
                return(ETextureCompression.TCM_DXTNoAlpha);

            //case ETextureGroup.TerrainNormalAtlas: // found in engine.xml but not in wcc enum /shrug
            case ETextureGroup.DetailNormalMap:
            case ETextureGroup.WorldNormalHQ:
            case ETextureGroup.SpecialQuestNormal:
            case ETextureGroup.CharacterNormalHQ:
            case ETextureGroup.HeadNormalHQ:
                return(ETextureCompression.TCM_NormalsHigh);


            case ETextureGroup.NormalmapGloss:
            case ETextureGroup.CharacterNormalmapGloss:
            case ETextureGroup.NormalsNoMips:
                return(ETextureCompression.TCM_NormalsGloss);

            case ETextureGroup.TerrainNormal:
            case ETextureGroup.CharacterNormal:
            case ETextureGroup.HeadNormal:
                return(ETextureCompression.TCM_Normals);

            case ETextureGroup.QualityOneChannel:
                return(ETextureCompression.TCM_QualityR);

            case ETextureGroup.QualityTwoChannels:
                return(ETextureCompression.TCM_QualityRG);

            case ETextureGroup.QualityColor:
                return(ETextureCompression.TCM_QualityColor);

            case ETextureGroup.Default:
            case ETextureGroup.Font:
            case ETextureGroup.Flares:
            case ETextureGroup.WorldNormal:
            case ETextureGroup.PostFxMap:
            //case ETextureGroup.TerrainSpecial: // found in engine.xml but not in wcc enum /shrug
            default:
                throw new NotImplementedException();
            }
        }