Перейти до основного вмісту
Жива гра

Цю сторінку ще не перекладено — показано англійську версію.

Як показувати інших гравців

Інших гравців ніхто не передбачає — їх показують. Їхній стан надходить до вас з інтервалами, а в проміжках ви щось малюєте. Помилка тут коштує помітного ривка, а не життя, тому в цього механізму власні оголошення, а не спільні з передбаченням.

Режим показу оголошують

Чужі сутності (entity) доводиться показувати й у проміжках між станами, що надходять. Чим заповнювати ці проміжки, оголошує кімната (room): інтерполювати між уже отриманими станами чи екстраполювати далі за найновіший. Це оголошення на сутності, тож відповідь однакова на кожному клієнті й не залежить від того, хто писав рендерер.

Затримку інтерполяції теж оголошують. Показувати інших гравців плавно означає показувати їх трохи із запізненням, на оголошену величину. Це число ви налаштовуєте під свій жанр.

Екстраполяція зупиняється, а не вигадує

WHAT ARRIVES their state, at intervals WHAT YOU DRAW a smooth path through what arrived, held a little behind carried on stopped not invented
Стани надходять з інтервалами; ви малюєте між ними плавний шлях, а коли наступний не приходить, рух зупиняється

Вікно екстраполяції оголошене, і за його межами сутність перестають показувати в русі, а не ведуть далі навздогад. Нескінченна екстраполяція наводить гравця на ціль, якої там ніколи не було, і гравець цього не помічає. Видима зупинка — це збій, після якого гра відновлюється.

Чому це окремо від передбачення власного руху

У трьох механізмів передбачення (prediction) різні авторитетні сторони й різні способи зламатися. Якби всі три звалися одним словом, налаштування одного непомітно змінювало б два інші.

МеханізмДе працюєЦіна помилки
передбачення власного рухуклієнткорекція: введення програється заново, а результат згладжується
показ інших гравцівклієнтпомітний ривок
Lag Compensationсерверхтось гине несправедливо

Через цей поділ і існує пресет observer, у якому є лише цей механізм і нічого більше. Глядач не має власного введення, яке треба передбачати, тож налаштування передбачення керували б тим, чого він не робить.