A system comprising: at least one processor; and memory storing instructions that, when executed by the at least one processor, causes the system to perform a set of operations associated with an authoring application for authoring a three-dimensional, 3D, environment, the set of operations comprising: receiving a user selection of a first structure specifying a structure characteristic for the 3D environment, wherein the first structure is selected from a set of different structures; accessing a first asset container associated with the first structure, wherein the first asset container comprises a first set of assets; generating, using the first asset container and a common asset container, the 3D environment, wherein the common asset container comprises assets that are shared by the first structure and at least one other structure; receiving a user selection of content to include into the 3D environment, where the content is to be displayed within the first structure; receiving a user selection to change the first structure to a second structure as the structure characteristic of the 3D environment; accessing a second asset container associated with the second structure that comprises a second set of assets different from the first set of assets; removing the first structure associated with the first set of assets from the generated 3D environment; generating the second structure using the second set of assets in the generated 3D environment, wherein the content is retained in the 3D environment and is to be displayed within the second structure; and generating an environment data file that comprises information about at least the common asset container, the second asset container, and the selected content. at least one processor; and memory storing instructions that, when executed by the at least one processor, causes the system to perform a set of operations associated with an authoring application for authoring a three-dimensional, 3D, environment, the set of operations comprising: receiving a user selection of a first structure specifying a structure characteristic for the 3D environment, wherein the first structure is selected from a set of different structures; accessing a first asset container associated with the first structure, wherein the first asset container comprises a first set of assets; generating, using the first asset container and a common asset container, the 3D environment, wherein the common asset container comprises assets that are shared by the first structure and at least one other structure; receiving a user selection of content to include into the 3D environment, where the content is to be displayed within the first structure; receiving a user selection to change the first structure to a second structure as the structure characteristic of the 3D environment; accessing a second asset container associated with the second structure that comprises a second set of assets different from the first set of assets; removing the first structure associated with the first set of assets from the generated 3D environment; generating the second structure using the second set of assets in the generated 3D environment, wherein the content is retained in the 3D environment and is to be displayed within the second structure; and generating an environment data file that comprises information about at least the common asset container, the second asset container, and the selected content. receiving a user selection of a first structure specifying a structure characteristic for the 3D environment, wherein the first structure is selected from a set of different structures; accessing a first asset container associated with the first structure, wherein the first asset container comprises a first set of assets; generating, using the first asset container and a common asset container, the 3D environment, wherein the common asset container comprises assets that are shared by the first structure and at least one other structure; receiving a user selection of content to include into the 3D environment, where the content is to be displayed within the first structure; receiving a user selection to change the first structure to a second structure as the structure characteristic of the 3D environment; accessing a second asset container associated with the second structure that comprises a second set of assets different from the first set of assets; removing the first structure associated with the first set of assets from the generated 3D environment; generating the second structure using the second set of assets in the generated 3D environment, wherein the content is retained in the 3D environment and is to be displayed within the second structure; and generating an environment data file that comprises information about at least the common asset container, the second asset container, and the selected content.