Example #1
0
 //============================================================
 // <T>加载主题信息。</T>
 //
 // @prama theme 主题
 //============================================================
 public void LoadTheme(FDrTheme theme)
 {
     _loading = true;
     // 打开材质
     theme.Open();
     _theme = theme;
     // 设置属性
     txtName.Text = _theme.Name;
     // 建立列表
     _loading = false;
 }
Example #2
0
 //============================================================
 // <T>加载配置信息。</T>
 //
 // @param config 配置信息
 //============================================================
 public void LoadConfig(FXmlNode xconfig)
 {
     // 读取主题
     _theme = RContent3dManager.ThemeConsole.Find(xconfig.Nvl("theme_name"));
     if (_theme == null)
     {
         _theme = RContent3dManager.ThemeConsole.DefaultTheme;
     }
     _themeName = _theme.Name;
     // 读取属性
     LoadConfigInfo(xconfig);
 }
Example #3
0
 //============================================================
 // <T>打开资源。</T>
 //============================================================
 public void SelectItem(object item)
 {
     if (item is FDrTheme)
     {
         FDrTheme theme = item as FDrTheme;
         qdrThemeProperty.Dock    = DockStyle.Fill;
         qdrThemeProperty.Visible = true;
         qdrThemeProperty.LoadTheme(theme);
     }
     else
     {
         qdrThemeProperty.Visible = false;
     }
 }
Example #4
0
        //============================================================
        // <T>打开处理。</T>
        //============================================================
        public void ScanTextures()
        {
            string rootDirectory = _folder.Directory;

            foreach (INamePair <FDrTexture> pair in RContent3dManager.TextureConsole.Textures)
            {
                FDrTexture       texture       = pair.Value;
                String           name          = texture.Name;
                FDrMaterialGroup materialGroup = FindGroup(name);
                if (materialGroup != null)
                {
                    continue;
                }
                // 创建材质组
                FDrFolder             folder = texture.Folder;
                FObjects <FCfgFolder> stack  = folder.FetchFolderStack(false);
                string materialPath          = folder.FolderPath().Replace("tx-", "mt-");
                string materialDirectory     = rootDirectory + materialPath;
                RDirectory.MakeDirectories(materialDirectory);
                FDrTheme theme = RContent3dManager.ThemeConsole.DefaultTheme;
                // 创建材质组
                materialGroup                = new FDrMaterialGroup();
                materialGroup.Name           = name;
                materialGroup.ConfigFileName = materialDirectory + "/config.xml";
                // 创建材质
                FDrMaterial material = new FDrMaterial();
                material.Theme      = theme;
                material.EffectName = theme.EffectName;
                materialGroup.Materials.Push(material);
                foreach (FDrTextureBitmap bitmap in texture.Bitmaps)
                {
                    FDrMaterialTexture materialTexture = new FDrMaterialTexture();
                    materialTexture.TypeCd       = bitmap.TypeCd;
                    materialTexture.Source       = texture.Name;
                    materialTexture.SourceTypeCd = bitmap.TypeCd;
                    materialTexture.SourceIndex  = bitmap.Index;
                    materialGroup.Textures.Push(materialTexture);
                }
                // 存储材质
                materialGroup.Store();
                _materials.Set(name, materialGroup);
                _logger.Debug(this, "ScanTextures", "Create material. (name={0})", materialDirectory);
            }
        }
Example #5
0
 //============================================================
 // <T>存储主题信息。</T>
 //
 // @prama theme 主题
 //============================================================
 public void SaveTheme(FDrTheme theme)
 {
 }