Я создаю инструмент с использованием веб-сокетов, который позволяет нескольким пользователям «рисовать» на полотнах друг друга.Пользователь рисует на холсте, и объект, содержащий события mousedown / mouseup и координаты, мгновенно передается другим пользователям.Затем это наносится на их полотна, что дает эффект того, что несколько пользователей рисуют в одном месте.
Это работает так, как описано: вы можете наблюдать, как кто-то что-то рисует, а затем рисовать то, что появится на их холсте.Проблема возникает, когда вы рисуете одновременно с кем-то другим.
Для каждого пользователя он создает новый контекст для холста каждого пользователя, используя:
oekaki['canvas'] = document.getElementById('canvas');
oekaki['ctx'][unique_user_id] = oekaki['canvas'].getContext("2d");
Когда вы рисуете в то же времяВ то время как другой пользователь, холсты безумно рисуют линии между вами и их координатами, несмотря на то, что используют разные контексты.
Почему это так?Нужно ли делать что-то еще, чтобы разместить сразу несколько линий?Разве невозможно создать несколько контекстов таким образом?
Любая помощь будет наиболее ценной.