Отметил. Я буду иметь это в виду.

аюсь создать небольшую демонстрационную игру WASD в macOS. я используюNSEvent для обработки ключевых событий. Чтобы обнаружить нажатия клавиш, я ищуkeyDown Мероприятия. Вот что у меня есть:

    NSEvent.addLocalMonitorForEvents(matching: .keyDown) {
        (keyEvent) -> NSEvent? in
        if self.keyDown(with: keyEvent) {
            return nil
        } else {
            return keyEvent
        }
    }

func keyDown(with event: NSEvent) -> Bool {

    userInt.keyDown(key: event.characters)

    return true
}

Итак, здесь я держу ключи (как и следовало ожидать в игре) и получаю очень медленное движение. Мол, когда я держу его, это очень отвратительно. После дальнейшей проверки я увидел, что интервал повторения ключа составлял 0,1 с, что было задано в настройках моей системы. Это означает, что это пропуск кадров. Однако в игре я не хочу, чтобы этот параметр влиял на движение. Итак, как я могу обнаружить событие удержания ключабез задерживается интервалом повторения ключа?

Ответы на вопрос(1)

Ваш ответ на вопрос