Patent ID: 8413166
Filing Date: 2013-04-02
Classification: A63F,G06F,G06T

Abstract:
1. A circuit arrangement, comprising: network on chip hardware logic including a plurality of processing cores defining a plurality of hardware threads and an on chip network coupling the plurality of processing cores to one another; and a physics engine executed by at least a portion of the plurality of hardware threads, the physics engine including a multithreaded software pipeline including a plurality of stages configured to detect collisions between objects from among a plurality of objects in a scene, and a plurality of impulse propagation threads configured to propagate impulses between a set of adjacent objects from among the plurality of objects that are in contact with one another; wherein the physics engine is configured to, for each of the set of adjacent objects, assign ownership of such object to one of the plurality of impulse propagation threads and generate an adjacent object table for the impulse propagation thread to which such object is assigned that identifies each object from among the set of adjacent objects with which such object is in contact; wherein the physics engine is configured to, in response to a detected collision with a first object from among the set of adjacent objects, generate a first inter-thread impulse message including a magnitude and direction; and wherein each impulse propagation thread among the plurality of impulse propagation threads is configured to, in response to receiving an inter-thread impulse message associated with an impulse, locally propagate such impulse through an object to which ownership is assigned to such impulse propagation thread, determine a magnitude and direction for a propagated force for each adjacent object identified in the adjacent object table for such impulse propagation thread, propagating the impulse to the impulse propagation thread for each adjacent object identified in the adjacent object table for such impulse propagation thread by sending an inter-thread impulse message thereto including the magnitude and direction for the propagated force determined therefor, receive an inter-thread impulse acknowledgement message from each adjacent object identified in the adjacent object table for such impulse propagation thread, determine a magnitude and direction of a reactionary force based at least in part on the inter-thread impulse acknowledgement messages, and send an inter-thread impulse acknowledgement message with the magnitude and direction of the reactionary force as an acknowledgement to the received inter-thread impulse message.