Opening old .blend files (missing images)

Link, Like, Share.

As a consequence of Blenders development, the removal of Blender Render (Blender Internal) as the default rendering engine, and updating the more sophisticated Node based material system (EVEE etc.), *.blend files and projects created in Blender 2.79 or below may appear without Materials or Textures when opened into Blender 2.8 because the older material system and its Multitexture Shading mode are unsupported (of course notwithstanding being in the appropriate display mode). Basically all that’s shown is the Diffuse colour associated with each Material, so meshes and objects may be coloured but not textured.

Design note: when opening older *.blend files (pre Blender 2.79), disable Load UI (file option bottom-left) to omit layout and interface elements that may cause further issues due to additional UI incompatibilities with Blender 2.8.

Materials in Blender 2.79 or below generally display without scene lighting & other complexitiesMaterials FROM old *.blend file are not compatible with Blender 2.8Old *.blend files (pre Blender 2.79, top image above) when open into Blender 2.8 (bottom image above) will display untextured meshes and objects because the old Multitexture and Blender Render system and settings are not compatible with the new updated Node based system (node-based materials created pre-Blender 2.8 may exhibit fewer issues).

Missing Textures

If the old *.blend project has Materials set up correctly, i.e. an Image property that includes a reference (internal or external) to a bitmap or generated image, the assets will have been loaded along with other data contained in the *.blend file but not referenced due to differences between the new and old Material system. To fix this the Materials have to be reestablished or rebuilt, converted so to speak, using Nodes.

Design note: currently there isn’t a way to convert older non-node based Materials to the new automatically, so the process will have to be done manually.

Although textures are not shown they are loaded with the old *.blend file data
Although images are not shown when opening old *.blend files into Blender 2.8, they are loaded (highlighted above in the Outliner Editor). This means they are available for use in reestablishing the projects Materials using the Node system.

Convert old Materials to Nodes

As Materials are brought into Blender 2.8 from older projects the basics are already in place. To convert, select a mesh or object with existing Material assignment, a mesh in the 3D View for example, then in Material Properties click the Use Nodes button (will turn blue confirming the change). The panel will update with a new set of options that can be left untouched for simple materials.

To convert older non-node materials in Blender 2.8, click 'Use Nodes' in Material properties
As materials are generally loaded in with old *.blend files the basic properties for converting are available. Select a mesh or object and in Material Properties click the “Use Nodes” button.

Next click the Shading Workspace (layout) tab [1] to access the Node Editor alongside the 3D View set up for shader or material editing. Here a basic node-based material will be available in the form of two initially placed nodes; Principle BSDF [2] and Material Output [3].

In Shading Workspace the Node Editor is accessible which has a basic node set ready for use
In Shading Workspace [1] the Node Editor is accessible, alongside the 3D View, where a node-based material [2] & [3] can be set up using the basic properties brought in with the old file.

To this basic set up, in the Node Editor (lower section of the interface), click the Add menu and place an Image Texture node [1] – Add » Texture » Image Texture – then the Browse Image to be linked button [2] to associated the node with an image brought in with the old *.blend file.

Design note: when looking for the image it may not be labelled as expected i.e. the file name, but may instead be named after the datablock used to describe the image (this equates to the naming input field for Image properties in Blender 2.79 et al).

Add a Image Texture node to the material in the Node Editor
Add an Image Texture node to the material [1] and then select the image to be associated with it [2] selecting the bitmap from those brought in with the old *.blend file.

Finally link the Color output [1] from the Image Texture node to the Base Color input [2] of Principled BSDF. As soon as this is done the image will appear mapped to the selected object.

Design note: the image will be displayed per the object being UV unwrapped and mapped.

Once the Image Texture node is in place link it to Principled BSDF
Once an image has been associated with the Image Texture node it can be linked to Principled BSDF – Color output [1] of Image Texture to Base Color input [2] of Principled BSDF.


In Shading Workspace (layout) additional materials can be set up simple by selecting another object, enabling Use Nodes, dropping in an Image Texture node, setting the image and then linking everything up.

Transparency

Transparent materials too, may be included loading older *.blend files but the degree to which they are auto-assembled in Blender 2.8 depends on the way the effect is set up. For general game asset creation this will generally be via image based alpha channels.

Design note: for Blender 2.79 or lower, transparency and transparent materials can be set up several ways that are not all compatible with Blender 2.8.

To do this, once the the basic material is set up per the above, add two extra nodes, Transparent BSDF [1] – Add » Shader » Transparent BSDF, and Mix Shader [2] – Add » Shader » Mix Shader. Connect; 1) Mix Shader (Shader » Surface) to Material Output; 2) Image Texture (Alpha » Fac), Principled BSDF (BSDF » Shader) and Transparent BSDF (BSDF » Shader) to Mix Shader; 3) leaving Image Texture (Color » Base Color) linked to Principled BSDF. Finally in Material Properties change Blend Mode in Settings to Alpha Blend (Clip or Hashed).

Design note: click here for more information on setting up transparent materials.

For transparent add two extra nodes to the material
For transparency, assuming the loaded assets include and alpha channel, add two extra nodes to the materials, Transparent BSDF [1] and Mix Shader [2] then link them to the broader material.


Link, Like, Share.