Material Editor UI

The Material Editor UI consists of a menu bar, a toolbar, and, by default, four open panels.


  1. Menu Bar - Lists the menu options for the current Material.

  2. Toolbar - Contains tools that you can use to work with your Material.

  3. Viewport Panel - Previews the Material on a mesh.

  4. Details Panel - Lists the properties of the Material or the selected material expression or function nodes.

  5. Graph Panel - Displays the material expression and function nodes that create shader instructions for your Material.

  6. Palette Panel - Lists all the available material expression and function nodes.

There is also an HLSL Code panel, but by default, it is not visible. To display it, on the Window menu, click HLSL Code. For more information, see HLSL Code .

You can close any panel by clicking the small "X" in the upper-right corner of the tab. You can also hide any panel by Right-clicking on the tab, and then clicking Hide Tab on the context menu that appears. To once again display a panel that you have closed, click that panel's name on the Window menu.


  • Save - Saves the asset you are currently working on.

  • Open Asset - Opens the Global Asset Picker to quickly find an asset and open the appropriate editor.

  • Save All - Saves all unsaved levels and assets for your project.

  • Choose Files to Save - Brings up a dialog box that allows you to choose which levels and assets you want to save for your project.

  • Connect To Source Control - Brings up a dialog box that allows you to choose or interact with a source-control system that the Unreal Editor can integrate with.


  • Undo - Undoes the most recent action.

  • Redo - Redoes the most recent Undo, if it was the last action taken.

  • Editor Preferences - Gives you a list of options, any of which open that part of the Editor Preferences window, where you can modify your Unreal Editor preferences.

  • Project Settings - Gives you a list of options, any of which open that part of the Project Settings window, where you can modify various settings for your Unreal Engine project.


  • Find in Content Browser - Locates and selects the current asset in the Content Browser.


  • Toolbar - Toggles the display of the Toolbar.

  • Viewport - Toggles the display of the Viewport panel.

  • Graph - Toggles the display of the Graph panel.

  • Details - Toggles the display of the Details panel.

  • Palette - Toggles the display of the Palette panel.

  • Stats - Toggles the display of the Stats panel.

  • HLSL Code - Toggles the display of the HLSL Code panel (which is closed by default).

  • Content Browser - Brings up the Content Browser in a separate window.

  • Developer Tools - Brings up the selected Developer Tool in a separate window (Camera Debugger, Collision Analyzer, Debug Tools, Modules, Widget Reflector).

    • Blueprint Debugger - Brings up the Blueprint Debugger in a separate window.

    • Collision Analyzer - Brings up the Collision Analyzer in a separate window.

    • Debug Tool - Brings up the Debug Tool in a separate window.

    • Message Log - Brings up the Message Log in a separate window.

    • Output Log - Brings up the Output Log in a separate window.

    • Visual Logger - Bring up the Visual Logger tool in a separate window.

    • Class Viewer - Brings up the Class Viewer in a separate window.

    • Device Manager - Brings up Device Manager in a separate window.

    • Device Profiles - Brings up the Device Profiles in a separate window.

    • Modules - Brings up Modules in a separate window.

    • Session Frontend - Brings up Unreal Frontend in a separate window.

    • Widget Reflector - Brings up Widget Reflector in a separate window.

  • Undo History - Brings up the Undo History panel in a separate window.

  • Plugins - Brings up the Plugins window.

  • Reset Layout - Resets your layout to a default arrangement. Requires the editor to restart after saving your changes and creating a backup of your settings.

  • Save Layout - Saves the current layout of the panels as the new default layout.

  • Enable Fullscreen - Enables fullscreen mode for the application, expanding across the entire monitor.


  • Browse Documentation - Opens a browser window and navigates to the documentation about this tool.

  • Forums - Opens a browser window to the Unreal Engine Forums where you can discuss the Unreal Engine with other users.

  • Answer Hub - Opens a browser window to the Unreal Engine 4 Answer Hub where you can ask questions and find useful answers provided by other users and experts.

  • Wiki - Opens a browser window to the official Unreal Engine 4 Wiki where you can find useful tutorials and examples made by both users and experts here at Epic.

  • Visit - Opens in a browser window.

  • About Unreal Editor - Displays application credits, copyright information, and build information.


Material Editor Toolbar

The following table lists the options in the Toolbar and what they do.

Icon Description


Saves the current asset.


Finds and selects the current asset in the Content Browser.

toolbar_apply.png Applies any changes made in the Material Editor to the original Material and any uses of that Material in the world.
toolbar_search.png Finds expressions and comments in the current Material.
toolbar_home.png Centers the base Material node in the Graph panel.
toolbar_clean.png Deletes any material nodes that are not connected to the Material.
toolbar_show.png Shows or hides material nodes that are not connected to anything.
toolbar_live_nodes.png If enabled, updates the Materials in each material node in real time. Disable this option for faster Material Editor performance. See the Live Nodes and Live Update section.
toolbar_live_update.png If enabled, compiles the shaders of all subexpressions every time nodes are added, deleted, connected, or disconnected, or have their property values changed. Disable this option for faster Material Editor performance. See the Live Nodes and Live Update section.
toolbar_stats.png Shows or hides Material statistics in the Graph panel.
toobar_release_stats Toggles use of release or development shaders in stats reporting.
toolbar_built_in_stats Toggles displaying of stats for an empty Material. Helps identify cost of changes in the graph.
toolbar_mobile_stats Toggles Material stats and compilation errors for mobile.

Viewport Panel

Material Editor Preview Panel

The Viewport panel displays the Material being edited applied to a mesh.

You can navigate in the Viewport panel by using the options in the following table.

Action Description
Drag with the left mouse button Rotate the mesh
Drag with the middle mouse button Pan
Drag with the right mouse button Zoom
Hold down L and drag with the left mouse button Rotate the light direction

The viewport mesh can be changed by using the associated toolbar controls (the shape buttons, Select Preview Mesh combo, and Use Selected StaticMesh button). The viewport mesh is saved with the Material so that the next time the Material is opened in a Material Editor, it will be previewed on the same mesh.

Several icons appear along the top of the Preview panel; the following table details their usage.

Icon Description
toolbar_cylinder.pngtoolbar_sphere.pngtoolbar_plane.pngtoolbar_cube.png Shows the result of your current Material on the respective primitive shape in the Preview panel.
toolbar_mesh.png Makes the selected Static Mesh in the Content Browser the preview mesh.
toolbar_grid.png Toggles the background grid in the Preview panel.
toolbar_realtime_preview.png If enabled, updates the Material on the preview mesh in real time. Disable this option for faster Material Editor performance.

Details Panel

Material Editor Details Panel

This panel contains a property window for all currently selected material expression and function nodes. If no nodes are selected, the properties of the Material being edited will be displayed.

See Material Properties for descriptions of all Material properties.

Graph Panel


This panel contains a graph of all material expressions that belong to this Material. By default, each Material contains a single base Material node. This node has a series of inputs, each associated with a different aspect of the Material, that other material nodes can connect to.

Material Editor Material Node

See Material Inputs for descriptions of the various inputs of the base Material node.

Palette Panel

The Palette panel contains a list of material nodes that can be placed in a Material via "drag and drop". To place a new material node, drag it into the Graph panel.

You can filter the material nodes listed in the Palette panel by choosing either Expressions or Functions in the Category drop-down list.

For more information about material functions, see Material Functions .

Stats Panel


The number of shader instructions used in the Material as well as any Compiler Errors are displayed in this panel. The fewer the number of instructions, the less costly the Material. Material expression nodes that are not connected to the base material node do not contribute to the instruction count (cost) of the Material.

HLSL Code Panel


This panel shows the High Level Shader Language (HLSL) code that is generated by the current Material. Be aware that this is not an editor; you will not be able to change the HLSL code. Rather, this is merely a viewer to allow you to visualize the code defined by your material network.

The Code View panel is not visible by default. To display it, on the Window menu, click HLSL Code.

Graph Controls

Controls in the Material Editor generally match the controls of other tools in the Unreal Editor. For example, the material expression graph can be navigated as with other linked object editors, the material preview mesh can be oriented as per other mesh tools, etc.

Mouse Controls

Control Action
LMB or RMB drag on background Pan material expression graph
Rotate Mouse Wheel Zoom in and out
LMB + RMB drag Zoom in and out
LMB on object Select expression/comment
Ctrl + LMB on object Toggle selection of expression/comment
Ctrl + LMB drag Move current selection/comment
Ctrl + Alt + LMB drag Box select
Ctrl + Alt + Shift + LMB drag Box select (add to current selection)
LMB drag on connector Create connection (release on connector)
LMB drag from connection Move connection (release on same type connector)
Shift + Double-Click LMB on connector Marks the connector. Performing the action again with a connector marked will create connection between the two connectors. This is a quick way of making connections over large distances.
RMB on background Bring up New Expression menu
RMB on object Bring up Object menu
RMB on connector Bring up Object menu
Alt + LMB on connector Break all connections to connector

Keyboard Controls

Control Action
Ctrl + B Find in Content Browser
Ctrl + C Copy selected expressions
Ctrl + S Save all
Ctrl + V Paste
Ctrl + W Duplicate selected objects
Ctrl + Y Redo
Ctrl + Z Undo
Delete Delete selected objects
Spacebar Force update all material expression previews
Enter (same as clicking apply)


You can use hotkeys to place commonly used material expression types. Hold down the hotkey and left-click to drop in the node. The hotkeys are as follows:

Hotkey Expression
A Add
B BumpOffset
C Comment
D Divide
E Power
F MaterialFunctionCall
I If
L LinearInterpolate
M Multiply
N Normalize
O OneMinus
P Panner
R ReflectionVector
S ScalarParameter
T TextureSample
U TexCoord
V VectorParameter
1 Constant
2 Constant2Vector
3 Constant3Vector
4 Constant4Vector
Shift + C ComponentMask