Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Конкурс от Topface. (https://javascript.ru/forum/offtopic/32140-konkurs-ot-topface.html)

melky 04.10.2012 18:10

Конкурс от Topface.
 
http://vk.com/page-25678227_44071332

Кто что думает насчёт этого? Ваши мысли.

PashPP 04.10.2012 18:59

Годно, вроде.
Жаль, что не мой уровень.

melky 04.10.2012 20:01

Цитата:

Сообщение от PashPP (Сообщение 208183)
Годно, вроде.
Жаль, что не мой уровень.

да ладно. это тоже не мой уровень - я ни разу не работал с канвасом.

хотя бы попробовать.

dmitriymar 04.10.2012 20:24

melky,
Цитата:

Сообщение от melky
да ладно. это тоже не мой уровень - я ни разу не работал с канвасом.

да прекрати:) можно и без канвы обойтись)

DimaJS 04.10.2012 20:28

melky,
а почему бы и нет, трудно конечно (может быть и нет трудно, а может и труднее), но попытаться можно :)

dmitriymar 04.10.2012 20:31

У страха глаза велики:)-реально там работы на пару дней, не спеша))

DimaJS 04.10.2012 20:33

dmitriymar,
да по идее сделать можно :)

dmitriymar 04.10.2012 20:39

Цитата:

Сообщение от DimaJS
да по идее сделать можно

не только по идее:), от себя могу сказать одно -канвы на мобильных устройствах в большом количестве-не есть хорошо.
Много изображений -не есть хорошо -память на устройствах не резиновая, была ситуация когда художник перестарался с количеством и качеством -приложение ложилось...

DimaJS 04.10.2012 20:41

Я попробую сделать :lol:

dmitriymar 04.10.2012 20:43

Цитата:

Сообщение от DimaJS
Я попробую сделать

сделаешь, куда ж оно денется:)

DjDiablo 04.10.2012 21:12

канвас не очень то и нужен.
 
Игру можно без канваса поднять одним html и javaScript. Тупо перемещать img, переключая src у спрайта по необходимости. Про требования к канвасу нечего не написано. Интересно это подвох такой.

Да и акцент как мне показалось на правила сделан а не на графику, на взаимодействие мобов между собой и внешним миром.

Gozar 04.10.2012 22:51

Цитата:

Сообщение от melky
Кто что думает насчёт этого? Ваши мысли.

Я думаю что контакт не получит мой телефон. Пусть подавится моим акком. Не иду на поводу и вымогателей. По поводу конкурса ничего не думаю, т.к. доступа нет.

dmitriymar 05.10.2012 00:35

реально в ней всего 2 камня.
1 й-они указали пути какие должны проходить объекты в единицу времени. Соответственно чем больше объектов движется тем больше должно быть смещение у объекта за итерацию+ к этому алгоритм реализующий это, должен выдерживать это в разных браузерах.
2 й - звёзды на дне- остаётся правильное построение объекта хранилища их-максимально быстрая работа, да и регулировка видимости их-скрывать те , что не видно за другими -поскольку большое количество их отразиться на пункте 1.
-абсолют в помощь, ну и знание того, как и когда браузер перерисовывает экран )

dmitriymar 05.10.2012 00:36

Цитата:

Сообщение от DjDiablo
Тупо перемещать img, переключая src у спрайта по необходимости.

не шути так:) -операция очень медленная и неодназначная по времени в разных браузерах

dmitriymar 05.10.2012 01:06

А вот реально из приколов их. скорость есть , расход воздуха есть, как всплывать -есть ,а вот размеров экрана приложения нет:)
вывод есть, выход есть:)
-вот вам и подвох, ищущие подвоха
P.S . чего то я разболтался...))

Shaci 05.10.2012 01:09

Цитата:

Сообщение от dmitriymar (Сообщение 208250)
не шути так:) -операция очень медленная и неодназначная по времени в разных браузерах

так а как тогда?, если не канвас, и не перемещение div, img , изменение фона, и.т.д.

Aetae 05.10.2012 04:19

Цитата:

Сообщение от Gozar (Сообщение 208238)
Я думаю что контакт не получит мой телефон. Пусть подавится моим акком. Не иду на поводу и вымогателей. По поводу конкурса ничего не думаю, т.к. доступа нет.

+1

dmitriymar 05.10.2012 11:05

Цитата:

Сообщение от Shaci
и не перемещение div, img , изменение фона, и.т.д

перемещение div, img , изменение фона, и.т.д

melky 05.10.2012 15:14

Цитата:

Сообщение от Gozar (Сообщение 208238)
Я думаю что контакт не получит мой телефон. Пусть подавится моим акком. Не иду на поводу и вымогателей. По поводу конкурса ничего не думаю, т.к. доступа нет.

Если нет доступа к вк, вот то же самое,только на фри лансе.

https://www.free-lance.ru/projects/1...offer=11766912

Цитата:

Сообщение от dmitriymar (Сообщение 208252)
А вот реально из приколов их. скорость есть , расход воздуха есть, как всплывать -есть ,а вот размеров экрана приложения нет:)
вывод есть, выход есть:)
-вот вам и подвох, ищущие подвоха
P.S . чего то я разболтался...))

хз, меня больше всего озадачивает взаимодействие объектов - я про радиосвязь у водолазов. Нет, вообще всё поведение водолазов меня нехило озадачивает.

Dim@ 05.10.2012 15:29

dmitriymar,
Цитата:

Сообщение от dmitriymar
перемещение div, img , изменение фона, и.т.д

надо делать два варианта - один на канве (не знаю будет ли он быстрее), а другой просто DOM и
position:relative
:)

Dim@ 05.10.2012 15:32

Цитата:

Сообщение от melky
меня больше всего озадачивает взаимодействие объектов - я про радиосвязь у водолазов. Нет, вообще всё поведение водолазов меня нехило озадачивает.

хм, по-моему это не так уж и трудно

dmitriymar 05.10.2012 15:39

Цитата:

Сообщение от Dim@
position:relative

не гони -у тебя всякий раз будет всё перерисовываться . абсолют из потока выпадает, релятив нет.

Dim@ 05.10.2012 15:41

dmitriymar,
с чего ты взял?

dmitriymar 05.10.2012 15:44

Цитата:

Сообщение от Dim@
хм, по-моему это не так уж и трудно

ты не прав.
смотри у тебя есть самая левая звезда -одна всего. Плывя за ней по пути ты можешь обнаружить другие звёзды, но ,вот если их нет,что ты будешь собирать?- дать какоето время паузы а потом её забирать, чтоб увеличить вероятность нахождения других.
вариант 2 -плывя к одной звезде(она грубо говоря по центру) -ты находишь другие по пути. Будешь брать их -обзор влево не увеличишь, возьмёшь её -сузишь себе обзор влево

dmitriymar 05.10.2012 15:44

Цитата:

Сообщение от Dim@
dmitriymar,
с чего ты взял?
_______________

знания) книги),опыт)

Dim@ 05.10.2012 15:47

Цитата:

Сообщение от dmitriymar
знания) книги)

ясно, я книги по css никогда не читал, только в справочник иногда смотрел:)

dmitriymar 05.10.2012 15:50

Цитата:

Сообщение от Dim@
ясно, я книги по css никогда не читал, только в справочник иногда смотрел

http://rutracker.org/forum/viewtopic.php?t=4198867 здесь эта тема рассмотрена тоже:)

kobezzza 05.10.2012 19:51

Можно на досуге накалякать, по часу-два после работы и за недельку сделаю:)

DjDiablo 05.10.2012 21:13

Я за 2.5 часа граф движок сделал, где по аквариуму 3000 аквалангистов круги нарезают,

По скорости.
Я делал эксперементы с передвижением div уже давно,помню что несколько сотен тянуло без проблем.

А вот канвас удивил.
Сначало я смудрить решил, пробывал экономить ресурсы на перересовки фона под аквалангистом. Тоесть перерисовывалась только часть фона, откуда уплыл аквалангист. Увы если больше 30 аквалангистов то плавность исчезает.

Тогда я применил топорный метод, и тупо перерисовывал фон целиком каждый кадр, скорость плавная даже при 1000 аквалангистов, на самом деле играбаельно даже при 3000, хоть и не так гладко. Вообще падение производительности с увеличением кол-во спрайтов помоему происходит неленейно .

melky 05.10.2012 21:16

Цитата:

Сообщение от DjDiablo (Сообщение 208437)
Я за 2.5 часа граф движок сделал, где по аквариуму 3000 аквалангистов круги нарезаю..

за 2.5 часа? ого.

DjDiablo 05.10.2012 21:44

У меня была мысль про задний фон дивом. Но задний фон не решает проблему с шлейфом остающимся от спрайта. Канвас всёравно чистить надо. Если спрайт чистит за собой сам, даже 1000 спрайтов не тянет

melky 05.10.2012 23:09

Цитата:

Сообщение от DjDiablo (Сообщение 208441)
У меня была мысль про задний фон дивом. Но задний фон не решает проблему с шлейфом остающимся от спрайта. Канвас всёравно чистить надо. Если спрайт чистит за собой сам, даже 1000 спрайтов не тянет

ни-ни-ни, никаких рисований на DOM.

кстати, DjDiablo, что Вы думаете насчёт рисования на SVG ? IE9+, т.е. можно. но мне кажется, что это хрень, т.к. игры на SVG лучше варить с CSS-анимацией, которой нет в IE9... а делать фоллбек только для него - роскошь.

у меня просто была идея очищать не весь канвас, а именно область с картинкой водолаза - щас я понял, что это гнилая идея - она не будет работать при коллизиях - т.е. когда водолазы будут "проходить друг скозь друга".

хм ... я ещё додумаю эту сумашедшую идею :)

и ещё я понял, что в задании основная цель - выепнуться на паттернах и изяществе, а не просто сделать то, что описано в задании.

так что придётся ещё и рефакторить, как бы не переписывать :)

dmitriymar 06.10.2012 00:10

Цитата:

Сообщение от melky
так что придётся ещё и рефакторить, как бы не переписывать

"Любой написанный код придётся переписывать неоднократно с нуля",
"Не стремитесь при прототипировании написать качественный код"
"Как только Вам будут понятны все аспекты, прекратите протототипировать и начинайте писать чистовой код"
"Любой написанный код придётся неоднократно рефракторить"
C.Макконел Совершенный код
:)

Shaci 06.10.2012 01:58

Цитата:

Сообщение от dmitriymar
"Любой написанный код придётся переписывать неоднократно с нуля",
"Не стремитесь при прототипировании написать качественный код"
"Как только Вам будут понятны все аспекты, прекратите протототипировать и начинайте писать чистовой код"
"Любой написанный код придётся неоднократно рефракторить"

простые истины, и без книги поняты :)

melky 06.10.2012 10:51

Цитата:

Сообщение от dmitriymar
C.Макконел Совершенный код

похоже, что до этого я не дошел, когда её читал.

dmitriymar 06.10.2012 11:14

ты может старую читал, сейчас обновлённая вышла 2012 года

DjDiablo 06.10.2012 11:42

Цитата:

кстати, DjDiablo, что Вы думаете насчёт рисования на SVG ?
svg как мне представляется по скорости не отличается от dom, собственно в современных браузерах похоже что разницы между dom обьектом и svg нет. Игру эту можно поднять на любой технологии, но канвас по скорости выше.

Цитата:

у меня просто была идея очищать не весь канвас, а именно область с картинкой водолаза - щас я понял, что это гнилая идея - она не будет работать при коллизиях - т.е. когда водолазы будут "проходить друг скозь друга"
Очистка части канваса гипотетически могло быть эфективно при условии
кол-во спрайтов < площадь экрана/площадь спрайта
иначе площадь которая восстанавливается будет больше самого экрана.

вопос с колизиями при таком подходе решается элементарно.

sprite=[];//массив со спрайтами
function run(){
    //первый цикл очистит площадь
    for (var i=0;i<sprite.length;i++){sprite[i].clear();  }
    //второй цикл нарисует спрайты
    for (var i=0;i<sprite.length;i++){sprite[i].render();  }
}


З.Ы. Хотел демки выложить, Где можно по шустрому хостинг сделать ??? С бесплатными жопа какая то.

Gozar 06.10.2012 12:51

Цитата:

Сообщение от dmitriymar
C.Макконел Совершенный код

Читал, много воды, мало хороших идей, скажем так их почти нет, остальные очевидны. Некоторые идеи неприменимы к JS+DOM.

Возлагал большие надежды на рассказ о проектировании кода. Получил почти ничего. Вывод: Книга оставляет неоднозначное впечатление. Своих денег и славы явно не стоит. Читать стоит наверное только новичкам, как общее представление о программировании.

DjDiablo 06.10.2012 12:52

Эксперементы с аквалангистами.
 
сделал временный хостинг пока.

собственно кое какие эксперементы.
При рендеренге фон перерисовывается каждый кадр.

эксперементы рендеринга 1000 дайверов
http://www.z254505.infobox.ru/index2.html

эксперементы рендеринга 3000 дайверов
http://www.z254505.infobox.ru/index3.html

эксперементы рендеринга 5000 дайверов
http://www.z254505.infobox.ru/index4.html

Эксперементы с игровой логикой
- дайверы плавают по кругу
-дайверы, если на пути встречают рыбу, ловят её и тащат вверх
-если что то удаётся поймать пояляется звезда
- дайверы кликабельны, если по нему щёлкнуть он уплывает вверх

http://www.z254505.infobox.ru/


Хостинг гонит немного. Надеюсь исправят.
UPD:Сменил хостинг уже 5й, достали. Щас вроде фурычит.

dmitriymar 06.10.2012 13:22

DjDiablo,
у тебя дайверы друг у друга рыбу тырят:)


Часовой пояс GMT +3, время: 11:50.