I’ve come to the conclusion (sniff) that my idea is dead. What I wanted to do was this: create copies of an object on-the-fly, as an animation is rendered, but only where the camera was looking, dependent upon an emittor mesh. This would allow you to have (for example) an entire landscape of trees or rocks or whatever, but the meshes for those instance objects would be generated only where they would be visible to the camera, saving you tons of rendering time and vertices, etc.
The problem seems to be that there is no way to actually assign a material to a Python-created mesh object. You can assign material indices to a new mesh, but I can find no way, either in the current API or in the Blender210 API to do this. I am sad. The rest of the thing is done and works beautifully. Everything works, but there are no materials.
I am sad. Can anyone who knows more than I (probably most of you) give this project an official Death Certificate? Or am I wrong?
P.S. If this idea really IS dead, at least I can have a wake party this weekend!