Object linking and embedding – Smart workflows for game developers

This article describes how to interlink source files, such as images or other assets, in multiple places of your project. Following this principle will make your workflow more streamlined and less prone to errors as it automates a big part of your production pipeline.

Examples given below:

Basic principle

During game development you will most likely create countless assets (images, sounds, etc.) that are going to be used in multiple places of your project. Such files are often exported in a format other than that of the source file and stored at different folders. These exported assets are also called generated files and they should be avoided.

Example: the game’s title logo. You will probably need to incorporate it at similar locations to the ones on this list:

  1. Game Concept
  2. Game Design Document.
  3. Pitching Document
  4. Technical Documentation
  5. Art Bible
  6. Game Engine
  7. Promotional (website, app store, news, etc.)

So what happens, if the logo was copied to all those different places and now the original designer wants to make a change?

  • If changes are made to the source file, the exported versions must be updated.
  • The version change must be made public by communicating that the file has changes.
  • All copies in the final documents and software must be manually updated.
  • Manual work and relying on clear communication is prone to errors.
  • It is difficult to track changes and see which files are up-to-date.
  • Outdated file may go unnoticed and linger around.

Avoid exporting generated assets to production folders.

One solution to the mentioned problems are linked files:

Linked files basics.
Linked files basics.


When you link to an asset’s source file from multiple locations in your project, you can modify it and all changes are automatically updates everywhere else.

Opt for dynamically linked assets between files and software.

Example: You’re the 2D artist. Instead of reexporting your images to some sort of folder for generated assets, let your source file (probably a PSD or AI file) be linked in all places, that need it. Now all files are auto-updated when you make a change to the source.

Object linking creates a reference to the source file, while embedded content creates a static copy.

Microsoft Word

Microsoft Word allows you to either paste objects as images (called embedding) or to insert an object with a link to the source file (object linking). Whenever possible, you will want to create a dynamic link instead of copy.

Read this tutorial for more information.

Adobe Photoshop

Photoshop offers several ways of working with object linking and embedding (OLE).

  • Place imported files as embedded or linked
  • Use Layer Compositions to arrange your content in multiple ways
  • Build a dynamic system of Smart Objects

See this tutorial for detailed instructions.


Unity’s asset import works entirely through object linking. This allows for many great features like auto-updating projects, but it also comes with a few thing to keep in mind.

Here is an overview of linked assets in Unity.