I imagine this would be possible with the OSL Parallax shader, where you could make tiny little window boxes around each hole (A cube is much more lightweight than a cylinder). Though the only thing I'm not sure about is how it would play with being rendered in Corona.Maya example, but the technique would be same for the Max version: http://julius-ihle.de/?p=2451
By the way, this is already possible in Corona to some extent. With Corona distance you can get render-time booleans with pretty spectacular results. It's not very easy to setup and probably not aplicable to every scenario, but still..
I'm attaching scene, so you can inspect it by yourself.
I'm not claiming authorship of that idea, it was already shown by someone in the forum, as soon as distance map came around. I agree that it's a bit tricky to setup and maintain this thing, that's why we are all waiting for Corona slicer :]
I originally linked to the description of the method, then Maru made a tutorial based on that idea https://forum.corona-renderer.com/index.php?topic=8665.msg80853#msg80853This way of doing render time booleans is super cumbersome to setup and slow to render. That is why everyone is requesting easier to setup slicer which is postponed for years now.
It's probably would be best to attach scene for inspection. Most likely you did some mistake here, as i see no reason for such setup not to work.
There are various major artefacts when using anything more complex than basic primitives however.
Ive noticed you get a really thin slice of the base object material before it changes to the inside edges. Is there a way to control the thickness of that edge?