The lookAt adjusting!!

Ralph is by default rotated 180 degrees about the z axis so he is “backwards” to everything. Panda’s notion of the “front” of a node is the opposite direction of how Ralph is facing. Try reparenting the node representing ralph to another node, rotating the ralph node 180 degrees, and then calling lookat from ralph’s parent node instead of directly from ralph himself.