Игра разрабатывалась на собственном движке PhysX 2.8 + DirectX 9.0c;
Сеть написана на winsock 2;
Лаги особенно заметны когда 3 и более игроков.
Смотрите видео. Что сделано не так?
if (stream.isReading() && !(owner() && _net->isClient()) && !_player->GetFinished())
{
_dAlpha = 1.0f;
D3DXVECTOR3 dPos = pos - car->GetPxActor().GetPos();
float dPosLength = D3DXVec3Length(&dPos);
if (dPosLength > 4.0f)
{
car->SetPosSync(pos - car->GetGrActor().GetPos());
car->GetPxActor().SetPos(pos);
}
else if (dPosLength > 0.1f)
linVel += dPos * 2.0f * car->GetNxActor()->getMass();*/
D3DXQUATERNION dRot;
QuatRotation(dRot, car->GetGrActor().GetRot(), rot);
D3DXVECTOR3 dRotAxis;
float dRotAngle;
D3DXQuaternionToAxisAngle(&dRot, &dRotAxis, &dRotAngle);
if (abs(dRotAngle) > D3DX_PI/24)
{
car->GetPxActor().SetRot(rot);
car->SetRotSync(dRot);
}
car->GetNxActor()->setLinearMomentum(NxVec3(linVel));
car->GetNxActor()->setAngularMomentum(NxVec3(angVel));
car->SetMoveCar((GameCar::MoveCarState)moveState);
car->SetSteerWheel((GameCar::SteerWheelState)steerState);
car->SetSteerWheelAngle(steerWheelsAngle);
}

Чет не похоже на собственный движок. Даже своей математики нет.
FlashRoyal
> Смотрите видео. Что сделано не так?
для начало надо убедиться что с выключенным всинхом есть лаги. А то там суде по 59.9 фпс болтающемся всинх есть который может быть кривым.