Texturing inside a volume

I have part of a textured mesh inside another mesh. I would like to have the texture data from the inner mesh appear in the volume of the outer mesh. The eventual idea is to have the outer mesh as a smoke domain and use the inner mesh to colour the flames where the mesh exists: Think of having a face appear in the flickering flames.

I know this can be done with Point Density for Vertex colours, normals and weights, but is there a way to take the textured colour from another object? Or to set texture coords inside a volume?

A hacky way could be to use Point Density vertex colours as UVs.