diff --git a/Templates/BaseGame/game/tools/gui/compositeTextureEditor.tscript b/Templates/BaseGame/game/tools/gui/compositeTextureEditor.tscript index 4fd31b5aa..673a81323 100644 --- a/Templates/BaseGame/game/tools/gui/compositeTextureEditor.tscript +++ b/Templates/BaseGame/game/tools/gui/compositeTextureEditor.tscript @@ -110,13 +110,12 @@ function CompositeEditorDoSaveComposite(%assetId) return; } - %targetFilePath = %assetDef.getImagePath(); + %targetFilePath = filePath(%assetDef.getFilename()) @ "/" @ fileName(%assetDef.imageFile); %aoMapAsset = CompTextureEd_RedChan-->Bitmap.getBitmap(); %roughMapAsset = CompTextureEd_GreenChan-->Bitmap.getBitmap(); %metalMapAsset = CompTextureEd_BlueChan-->Bitmap.getBitmap(); - if(%aoMapAsset $= "ToolsModule:unknownImage_image") { %aoMap = ""; diff --git a/Templates/BaseGame/game/tools/materialEditor/gui/MaterialEditorGui.gui b/Templates/BaseGame/game/tools/materialEditor/gui/MaterialEditorGui.gui index d6dc29812..e6dbf8fbf 100644 --- a/Templates/BaseGame/game/tools/materialEditor/gui/MaterialEditorGui.gui +++ b/Templates/BaseGame/game/tools/materialEditor/gui/MaterialEditorGui.gui @@ -92,6 +92,7 @@ $guiContent = new GuiControl(MaterialEditorGui) { position = "3 24"; extent = "387 1269"; horizSizing = "width"; + vertSizing = "height"; profile = "ToolsGuiDefaultProfile"; tooltipProfile = "GuiToolTipProfile"; @@ -433,6 +434,7 @@ $guiContent = new GuiControl(MaterialEditorGui) { extent = "382 793"; minExtent = "64 64"; horizSizing = "width"; + vertSizing = "height"; profile = "ToolsGuiDefaultProfile"; tooltipProfile = "ToolsGuiToolTipProfile"; isContainer = "0"; diff --git a/Templates/BaseGame/game/tools/materialEditor/scripts/materialEditor.ed.tscript b/Templates/BaseGame/game/tools/materialEditor/scripts/materialEditor.ed.tscript index 897e81074..c1f0fcdb9 100644 --- a/Templates/BaseGame/game/tools/materialEditor/scripts/materialEditor.ed.tscript +++ b/Templates/BaseGame/game/tools/materialEditor/scripts/materialEditor.ed.tscript @@ -526,7 +526,7 @@ function MaterialEditorGui::prepareActiveObject( %this, %override ) { %fieldName = %obj.getField(%i); - if( %obj.getFieldType(%fieldName) !$= "TypeMaterialAssetId" /*&& %obj.getFieldType(%fieldName) !$= "TypeMaterialName"*/) + if( %obj.getFieldType(%fieldName) !$= "TypeMaterialAssetId" && %obj.getFieldType(%fieldName) !$= "TypeMaterialAssetPtr") continue; if( !%canSupportMaterial ) @@ -1022,6 +1022,7 @@ function MaterialEditorGui::guiSync( %this ) } MaterialEditorPropInspector.loadCollapseState(); + MaterialEditorPropInspector.loadScrollState(); cancel(MaterialEditorGui.refreshSchedule); @@ -1990,12 +1991,15 @@ function MaterialEditorGui::doSwapMaterial(%this, %materialAsset) function MaterialEditorPropInspector::onInspectorFieldModified(%this, %object, %fieldName, %arrayIndex, %oldValue, %newValue) { + MaterialEditorPropInspector.saveScrollState(); + if(%arrayIndex !$= "" && %arrayIndex !$= "(null)") MaterialEditorGui.updateActiveMaterial(%fieldName @ "[" @ %arrayIndex @ "]", %newValue); else MaterialEditorGui.updateActiveMaterial(%fieldName, %newValue); - MaterialEditorGui.refreshSchedule = MaterialEditorGui.schedule(32, "guiSync"); + cancel(MaterialEditorGui.refreshSchedule); + MaterialEditorGui.refreshSchedule = MaterialEditorGui.schedule(256, "guiSync"); } function MaterialEditorPropInspector::getScrollbar(%this) @@ -2026,7 +2030,7 @@ function MaterialEditorPropInspector::onPostInspectObject(%this, %obj) function MaterialEditorPropInspector::saveScrollState(%this) { %this.scrollPos = %this.getScrollbar().getScrollPosition(); - //echo(%this.getName() @ "::saveScrollState" SPC %this.scrollPos); + echo(%this.getName() @ "::saveScrollState" SPC %this.scrollPos); } function MaterialEditorPropInspector::loadScrollState(%this) @@ -2034,7 +2038,7 @@ function MaterialEditorPropInspector::loadScrollState(%this) if (%this.scrollPos $= "") return; %this.getScrollbar().setScrollPosition(%this.scrollPos.x, %this.scrollPos.y); - //echo(%this.getName() @ "::loadScrollState" SPC %this.scrollPos); + echo(%this.getName() @ "::loadScrollState" SPC %this.scrollPos); } diff --git a/Templates/BaseGame/game/tools/worldEditor/scripts/editors/worldEditor.ed.tscript b/Templates/BaseGame/game/tools/worldEditor/scripts/editors/worldEditor.ed.tscript index 6510fe509..389d83839 100644 --- a/Templates/BaseGame/game/tools/worldEditor/scripts/editors/worldEditor.ed.tscript +++ b/Templates/BaseGame/game/tools/worldEditor/scripts/editors/worldEditor.ed.tscript @@ -43,7 +43,7 @@ function WorldEditor::onSelect( %this, %obj ) // Used to help the Material Editor( the M.E doesn't utilize its own TS control ) // so this dirty extension is used to fake it - if ( MaterialEditorGui.isVisible() ) + if ( MaterialEditorGui.isAwake() ) MaterialEditorGui.prepareActiveObject(); // Update the Transform Selection window