Цитата:
Сообщение от undefined
так клиент как ни крути тоже должен считать симуляцию,с чего сервер с этим не справится?
|
Справится, если речь идет об одном, ну может десятке одновременных симуляций (если речь идет об одном сервере, а не о целом облаке с огромной вычислительной мощностью). Если симуляций много, он начнет безбожно тормозить. И, разумеется это коснется всех игровых сессий, а не каких-то отдельных.
Я делал симуляцию боя на сервере по упрощенной схеме. Если на клиенте, скажем, вся физика считалась с учетом форм объектов (например при полете пули), то на сервере это были просто круги, и пересечения считались очень приближенно, по радиусу, то есть все сводилось к расчету вроде "а мог ли он вообще хотя бы теоритически попасть туда-то, оттуда-то". И даже такая схема начинала тормозить на дедике с двумя 4х ядерными процессорами Intel Xeon по 3.9 и 16Гб оперативки уже при 30 - 40 одновременных боях по 16 игроков в каждом. Конечно, многое еще зависит от реализации самой программы. Не думаю, что у меня было все очень круто реализовано) Но тем не менее, это все равно большая нагрузка на сервер. Я придерживаюсь позиции, что в подобных играх максимально возможное количество логики нужно передавать клиентам. На сервере считать только самые критические моменты.
Цитата:
|
Если уж на то пошло клиент вообще может только притворяться что что-то считает, а в конце сказать что я победил
|
В некоторых видах игр может. А что будет, если игрок явно видит, что он убил всех солдат противника, а ему вылетает сообщение "ты проиграл"? Просто потому, что на сервере происходило что-то другое