# Apply “backface culling” if the surface is not visible from the given point

Given the point (x,y,z) and meshes scattered around this point in the space, where each triangle on the mesh has its normal known, I want to be able to detect which triangles are not visible to the camera (from all possible angles of view from this point). What would be the best way to implement that in Blender - is there maybe already a possibility to achieve this using some higher level API functions or shoud I implement it from scratch?

What I did so far was reading about backculling, but all the algorithms I found so far are related to a specific camera view, not in all possible directions from the point (I guess logic should be similar?).

Thank you for the provided ideas and answers!

• Look up ray casting. Example of raycasting thru the camera bounds. Can raycast from any point in a scene with Scene.raycast. All directions from a point would be infinite, so would have to choose some resolution. – batFINGER Jan 21 '19 at 13:53