Merge pull request #743 from Areloch/newMatEdMaterialAsset

Changes the creation of new materials in the material editor process
This commit is contained in:
Brian Roberts 2022-03-17 13:39:44 -05:00 committed by GitHub
commit 1523bb0653
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 31 deletions

View file

@ -14,7 +14,6 @@ function AssetBrowser::createMaterialAsset(%this)
AssetName = %assetName;
versionId = 1;
materialDefinitionName = %assetName;
scriptFile = %assetName @ "." @ $TorqueScriptFileExtension;
new Material(%assetName) {
};

View file

@ -1971,39 +1971,15 @@ function MaterialEditorGui::save( %this )
function MaterialEditorGui::createNewMaterial( %this )
{
AssetBrowser_SelectModule.showDialog("MaterialEditorGui.pickedNewMaterialTargetModule");
AssetBrowser_SelectModuleWindow.selectWindow();
AssetBrowser.setupCreateNewAsset("MaterialAsset", AssetBrowser.selectedModule, "MaterialEditorGui.onCreateNewMaterialAsset");
}
function MaterialEditorGui::pickedNewMaterialTargetModule( %this, %module )
function MaterialEditorGui::onCreateNewMaterialAsset(%this, %newAssetId)
{
%moduleDef = ModuleDatabase.findModule(%module);
PE_EmitterEditor.targetModule = %module;
MaterialEditorGui.defaultMaterialFile = %moduleDef.ModulePath @ "/scripts/managedData/materials." @ $TorqueScriptFileExtension;
if(!isDirectory(filePath(MaterialEditorGui.defaultMaterialFile)))
{
AssetBrowser.dirHandler.createFolder(filePath(MaterialEditorGui.defaultMaterialFile));
}
%action = %this.createUndo(ActionCreateNewMaterial, "Create New Material");
%action.object = "";
%material = getUniqueName( "newMaterial" );
new Material(%material)
{
mapTo = "unmapped_mat";
parentGroup = RootGroup;
};
%action.newMaterial = %material.getId();
%action.oldMaterial = MaterialEditorGui.currentMaterial;
MaterialEditorGui.submitUndo( %action );
MaterialEditorGui.currentObject = "";
MaterialEditorGui.setMode();
MaterialEditorGui.prepareActiveMaterial( %material.getId(), true );
//get the new asset definition
%assetDef = AssetDatabase.acquireAsset(%newAssetId);
if(isObject(%assetDef))
AssetBrowser.editMaterialAsset(%assetDef);
}
function MaterialEditorGui::deleteMaterial( %this )