Пример #1
0
            public void Execute()
            {
                var translationPtr = (Translation *)DestinationPtr;
                var pointPtr       = (Point *)(translationPtr + Count);
                var linearPtr      = (PhysicsVelocity *)(pointPtr + Count);

                for (var i = 0; i < Chunks.Length; i++)
                {
                    var chunk = Chunks[i];
                    var count = chunk.Count;

                    MemCpyUtility.MemCpy(translationPtr, chunk.GetNativeArray(TypeTranslation));
                    MemCpyUtility.MemCpy(pointPtr, chunk.GetNativeArray(TypePoint));
                    MemCpyUtility.MemCpy(linearPtr, chunk.GetNativeArray(TypePhysicsVelocity));

                    translationPtr += count;
                    pointPtr       += count;
                    linearPtr      += count;
                }
            }
Пример #2
0
            public void Execute()
            {
                var translationPtr = (Translation *)DestinationPtr;
                var pointPtr       = (Point *)(translationPtr + Count);
                var ticksPtr       = (DateTimeTicksToProcess *)(pointPtr + Count);

                for (var i = 0; i < Chunks.Length; i++)
                {
                    var chunk        = Chunks[i];
                    var count        = chunk.Count;
                    var translations = chunk.GetNativeArray(TypeTranslation);

                    MemCpyUtility.MemCpy(translationPtr, translations);
                    MemCpyUtility.MemCpy(pointPtr, chunk.GetNativeArray(TypePoint));
                    MemCpyUtility.MemCpy(ticksPtr, chunk.GetNativeArray(TypeTicks));

                    translationPtr += count;
                    pointPtr       += count;
                    ticksPtr       += count;
                }
            }
Пример #3
0
            public void Execute()
            {
                var translationPtr     = (Translation *)DestinationPtr;
                var rotationPtr        = (Rotation *)(translationPtr + Count);
                var teamTagPtr         = (TeamTag *)(rotationPtr + Count);
                var physicsVelocityPtr = (PhysicsVelocity *)(teamTagPtr + Count);

                for (var i = 0; i < Chunks.Length; i++)
                {
                    var chunk        = Chunks[i];
                    var count        = chunk.Count;
                    var translations = chunk.GetNativeArray(TypeTranslation);

                    MemCpyUtility.MemCpy(translationPtr, translations);
                    MemCpyUtility.MemCpy(rotationPtr, chunk.GetNativeArray(TypeRotation));
                    MemCpyUtility.MemCpy(teamTagPtr, chunk.GetNativeArray(TypeTeam));
                    MemCpyUtility.MemCpy(physicsVelocityPtr, chunk.GetNativeArray(TypePhysicsVelocity));

                    translationPtr     += count;
                    rotationPtr        += count;
                    teamTagPtr         += count;
                    physicsVelocityPtr += count;
                }
            }