WebMap
#81

Что-то прочитал тему и появился вопрос, как получится быстрее, в PHP накладывать квадратики положения игроков на карту, потом все это дело ковертировать в картинку и отсылать ее клиенту или же PHP только отдаст массив с координатами клиенту и JS все нарисует в canvas'е?
И если в PHP быстрее, то можно как нибудь потом вычислить координаты игроков, чтобы показать некий тултип клиенту?
Reply
#82

Конечно через JS. Мало того каждый раз картинку делать, и сервак офигеет от нагрузки, и клиент от трафика
Reply
#83

Безоговорочно php генерит JSON массив, отправляет его браузеру, и там JS разбирает его. (как у меня и сделано).
Если делать по первому варианту, если картинка 1000 Х 1000 то картинка будет генериться ~ 1 секунду, сожрёт >64 Мб на сервере для обработки, да и размер её будет под 500 Кб. И это тока для 1 клиента...
Reply
#84

Спасибо, а то уж думал зря начал так делать)
Reply
#85

Quote:
Originally Posted by -Stranger-
View Post
Версия 1.3. Открыть WebMap
Использовал такую связку:
[SA-MP]-->-[VPN]-->-[MySQL]-<->-[PHP]-<->-[AJAX]-<->-[Браузер]


Вопрос знатокам JS: Как можно избавиться от наложения значков, например если водитель везёт пассажира, то отображается тот, у кого ID выше.
ух ты, Коля, может поделишься своей картой? все равно проекта больше не существует
Reply
#86

Quote:

[SA-MP]-->-[VPN]-->-[MySQL]-<->-[PHP]-<->-[AJAX]-<->-[Браузер]

Reply
#87

Не очень горю желанием читать 16 страниц дискуссий, поэтому имею наглость спросить:
еще не нашли решение этого вопроса?

Просто если так, дабы не выглядеть кэпом, не буду лишний раз расписывать решение.
Reply
#88

therainycat, попробуй воспользоваться функцией форума под названием "поиск". Уже реализаций 5 видел, некоторые собственные, некоторые на Google Map API, но любые стоит немного допилить под себя и получить полноценную карту, хотя когда я писал свою карту, было интересно сама реализация а не готовый результат.
Reply
#89

В идеале для подобных карт нужен канвас.
На хтмл можно сделать но нужно быть осторожными что бы не изнасиловать браузер скриптами.
Reply
#90

Причем здесь клиент вообще? Вычисления на стороне клиента делать вообще нельзя.
Схема:
Обновление данных -> Клиент (ajax)-> Сервер (php)-> Сервер (mysql)

Получаем данные и передвигаем иконки.
Reply
#91

Quote:
Originally Posted by xJester
Посмотреть сообщение
Причем здесь клиент вообще? Вычисления на стороне клиента делать вообще нельзя.
Я как веб разработчик который написал уже сотни браузерных приложений, смотрю на ваше заявление как на полную бредятину! Но с поправкой что в данном случае расчеты на стороне клиента действительно не нужны.
Reply
#92

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Я как веб разработчик который написал уже сотни браузерных приложений, смотрю на ваше заявление как на полную бредятину! Но с поправкой что в данном случае расчеты на стороне клиента действительно не нужны.
Предоставьте в качестве пруфа штучек 5, иначе вы просто балабол.
Reply
#93

Quote:
Originally Posted by k3dr
Посмотреть сообщение
Предоставьте в качестве пруфа штучек 5, иначе вы просто балабол.
По корпоративным правилам не имею права, да и большая часть уже отключены, потому что они все создаются для рекламных акций или под определенные праздники.
Но могу показать скриншот со списком тестовых версий из FB:


Если интересно в ЛС могу прислать ссылки на сайты которые мы создали.
Reply
#94

Хорошая идея
Reply
#95

Quote:

Причем здесь клиент вообще? Вычисления на стороне клиента делать вообще нельзя.
Схема:
Обновление данных -> Клиент (ajax)-> Сервер (php)-> Сервер (mysql)

Получаем данные и передвигаем иконки.

да емае, снова что ли?

Посчитайте количество иконок которое будете отображать и представьте сколько это сожрёт процессорного времени и памяти у клиента! По ресурсам будет дешевле и для вас и для клиента передавать картинку в чистом виде, а код использовать только для распознавания кликов и прочего.

Quote:

Предоставьте в качестве пруфа штучек 5, иначе вы просто балабол.

Боже, что случилось с форумом? Ещё год назад тут не было таких людей.
Reply
#96

Quote:
Originally Posted by jhonyxakep
Посмотреть сообщение
Боже, что случилось с форумом? Ещё год назад тут не было таких людей.
Что ты к ПАЦАНУ пристал, видишь ему нужно что бы все было по понятиям!
Reply
#97

jhonyxakep, Очень оригинальная логика. Тогда может вообще генерить на сервер готовую картинку и оправлять клиенту? Клиент вообще не будет напрягаться, читай данные из сокета и всё.
Ровно как и не понятно зачем грузить сервер, когда он и так занят много чем?

Правильно отдавать JSON массив браузеру и уже в нём разбирать данные. Это задача клиента а не сервера.
Reply
#98

Quote:

jhonyxakep, Очень оригинальная логика. Тогда может вообще генерить на сервер готовую картинку и оправлять клиенту? Клиент вообще не будет напрягаться, читай данные из сокета и всё.
Ровно как и не понятно зачем грузить сервер, когда он и так занят много чем?

Правильно отдавать JSON массив браузеру и уже в нём разбирать данные. Это задача клиента а не сервера.

Предположим мы хотим вывести всех 500 игроков на карту (вроде ещё 500 лимит? давно не проверял).
Что мы будем делать?
Выводить 500 картинок в DOM структуру в виде тегов!

После этого не удивляйтесь, что клиенты жалуются.

Опережая вопросы: Мегасупертехнология Canvas.
Все о ней говорят, но ещё никто, особо умный, не реализовал карту с использованием Canvas в браузере!

Жду разговоров о WebGL, он же современнее и быстрее!

Есть старый принцип: "лучше один гвоздь, чем десять микросхем". Очень умный принцип, между прочим. Все эти ваши "микросхемы" будут в лучшем случае стабильно работать в 2ух браузерах из всего сегмента (а я вот сижу на опере 12.16).

Формировать картинку на сервере, по крону, раз в 5 секунд, это действительно сложная задача! Ведь куда проще сформировать массив данных каждый запрос клиента, закодировать его JSONом, разобрать на клиенте, выставить иконочки... И ОПА!
А массив текстовых данных то JSONом внезапно оказался больше, чем простая jpeg картинка!

Quote:

Что ты к ПАЦАНУ пристал, видишь ему нужно что бы все было по понятиям!

Раньше было удобно: зашел на форум школьник - с кодировочкой проблемы! Ушел школьник с форума.
Reply
#99

Quote:
Originally Posted by jhonyxakep
Посмотреть сообщение
Формировать картинку на сервере, по крону, раз в 5 секунд, это действительно сложная задача! Ведь куда проще сформировать массив данных каждый запрос клиента, закодировать его JSONом, разобрать на клиенте, выставить иконочки... И ОПА!
А массив текстовых данных то JSONом внезапно оказался больше, чем простая jpeg картинка!
Вопрос на засыпку: Как быть со статическим размером иконок при изменении масштаба, тобишь высоты полёта?
Ведь вы уже сформировали картинку, Надеюсь вы не предлагаете генерировать картинку n слоёв на каждый из высот?
Reply

Quote:
Originally Posted by jhonyxakep
Посмотреть сообщение
Предположим мы хотим вывести всех 500 игроков на карту (вроде ещё 500 лимит? давно не проверял).
Что мы будем делать?
Выводить 500 картинок в DOM структуру в виде тегов!

После этого не удивляйтесь, что клиенты жалуются.

Опережая вопросы: Мегасупертехнология Canvas.
Все о ней говорят, но ещё никто, особо умный, не реализовал карту с использованием Canvas в браузере!

Жду разговоров о WebGL, он же современнее и быстрее!

Есть старый принцип: "лучше один гвоздь, чем десять микросхем". Очень умный принцип, между прочим. Все эти ваши "микросхемы" будут в лучшем случае стабильно работать в 2ух браузерах из всего сегмента (а я вот сижу на опере 12.16).

Формировать картинку на сервере, по крону, раз в 5 секунд, это действительно сложная задача! Ведь куда проще сформировать массив данных каждый запрос клиента, закодировать его JSONом, разобрать на клиенте, выставить иконочки... И ОПА!
А массив текстовых данных то JSONом внезапно оказался больше, чем простая jpeg картинка!
А я с вами не соглашусь, все эти иконочки прекрасно делаются средствами css. json должен передавать только изменение данных, остальное берется пр первоночальном рендерере, статичные иконки никуда не двигаются. Т.е. в итоге мы передаем в худшем случае данные о 500-1000 пользователях.

По поводу вывода 500 элементов в дом структуру, на момент чтения вашего коментария в доме данной страницы было 842 элемента, бывает гораздо больше, так что вы паникер.

******, yandex, 2gis смотрят на ваше заявление как на ..., ну вы поняли!

А вот про WebGL стоило заявлять об хоть одной рабочей реализации

Если руки прямые то работать будет все и везде.

А грузить картинку это по вашему не сложно, а ещё картинка будет не зависимо от размера грузиться дольше чем json, потому что картинка это ещё и рендер и её обработка, а json это тупо данные. И возвращаясь к оптимизации данных, читайте первый абзац, это будет не критично.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)