コード例 #1
0
 private static void pairLost(PxSimulationFilterCallback * @this, uint pairID,
                              uint attributes0, PxFilterData *filterData0,
                              uint attributes1, PxFilterData *filterData1,
                              NativeBoolean objectRemoved)
 {
     // Console.WriteLine("pairLost");
 }
コード例 #2
0
        private static PxFilterFlags *pairFound(PxSimulationFilterCallback * @this, PxFilterFlags *_retBuf, uint pairID,
                                                uint attributes0, PxFilterData *filterData0, PxActor *a0, PxShape *s0,
                                                uint attributes1, PxFilterData *filterData1, PxActor *a1, PxShape *s1,
                                                PxPairFlags *pairFlags)
        {
            // Console.WriteLine("pairFound");

            if (s0->userData != null || s1->userData != null) // See createTriggerShape() function
            {
                *pairFlags = PxPairFlags.eTRIGGER_DEFAULT;

                if (usesCCD())
                {
                    *pairFlags |= PxPairFlags.eDETECT_CCD_CONTACT | PxPairFlags.eNOTIFY_TOUCH_CCD;
                }
            }
            else
            {
                *pairFlags = PxPairFlags.eCONTACT_DEFAULT;
            }

            *_retBuf = default;
            return(_retBuf);
        }
コード例 #3
0
 private static void Destructor(PxSimulationFilterCallback * @this)
 {
 }
コード例 #4
0
 private static NativeBoolean statusChange(PxSimulationFilterCallback * @this, uint *pairID, PxPairFlags *pairFlags, PxFilterFlags *filterFlags)
 {
     // Console.WriteLine("statusChange");
     return(false);
 }