In general, I conceived such an experiment. I need to get a callback only when the object is in the pyramid of the camera visibility, and not cropped. I made a simple example, but it does not work, since the CallbackNode node is always called when it passes through the render tree. Of course, can use mathematics, but it is expensive in terms of resources.
from panda3d.core import CallbackNode, OccluderNode, Point3 import direct.directbase.DirectStart def init(cbdata): print ("Render") cbnode = CallbackNode("cbnode") cbnode.setDrawCallback(init) cbnp = render.attachNewNode(cbnode) mpanda = loader.loadModel("panda") mpanda.reparentTo(cbnp) mpanda.setPos(50, 50, -20) occluder = OccluderNode("1") occluder.setVertices(Point3(0, 0, 0), Point3(100, 0, 0), Point3(100, 100, 0), Point3(0, 100, 0)) occluder_nodepath = render.attachNewNode(occluder) occluder_nodepath.show() cbnp.setOccluder(occluder_nodepath) base.run()