Une texture, une fois chargée en mémoire, peut être utilisée aussi bien pour la 2D que pour la 3D.
Si le code est placé dans un objet particulier, la texture sera utilisée pour cet objet (je ne vois pas le problème) pourvue que tu l'utilises comme argument de d3d_primitive_begin_texture dans le Draw de l'objet en question.
Si ce changement a lieu pendant le jeu évidemment cette texture ne sera pas conservée à la prochaine partie, tu devra ajouter une forme de sauvegarde pour cela.
Est-ce que cela répond à ta question ?