gamejs vs gamequery

chriselwart

Я тут решил попробовать написать простенькую игрушку под веб, предпочтительный язык программирования JS. Наткнулся на две библиотеки, указанные в названии топика.
Кто что про них знает и какая лучше (развивается, поддерживается, используется и т.д.)?
Писать хочу электронную версию настольной игры, так что там все будет достаточно примитивно.

freako

Игра многоюзерская? писать на флеше

chriselwart

ра многоюзерская? писать на флеше
А чем лучше флеш? Я просто с ним никогда не сталкивался.

freako

тем что на флеше ты пишешь программу , которая с браузером почти никак не взаимодействует напрямую. всё отображение на экране идёт посредством FLASH Playera и тебе нету особо смысла беспокоиться о кросс браузерности, которая почти наверняка сразу срубит тебя на JS.
Ты имеешь свою обособленную объекто ориентированную программу, которая не знает что такое DOM браузера, всё что тебе надо лишь в обработчиках таймера и клавиатуры двигать объекты игры строками вида samolet.x=20; samolet.y=10;

tokuchu

Только есть один маленький нюанс — это проприетарное говно и может не везде работать. :grin:

germafrodita

двигать объекты игры строками вида samolet.x=20; samolet.y=10
че реально прямо вот на таком уровне? :shocked:

chriselwart

Фреймворки есть какие то достаточно высокоуровневые?

freako

И что? всем пох*й на это.
а для казуалкок ( а извр в первом посте именно казуалку описал) флеш юзают все до последнего бомжа.
чего уж говорить например про http://games.rambler.ru/ или http://games.mail.ru/
Любой уважающий себя юзер дрочащий кэзуалки, имеет установленный флеш плеер

pitrik2

а для казуалкок ( а извр в первом посте именно казуалку описал) флеш юзают все до последнего бомжа.
facebook
игрушка Mafia Wars
20 миллионов активных аккаунтов в месяц
бабала компании Zynga это игрушка дохера принесла
поговаривают что facebook-у тоже
дык не на флеше!
правда там и не надо объекты двигать, но я не про то
этой весной правда тудыть флеш добавили в некторые места, но игрушка уже начала себя изживать, так что пофик

germafrodita

а для казуалкок ( а извр в первом посте именно казуалку описал) флеш юзают все до последнего бомжа.
чуве
айпады айфоны флед не поддерживают
так что он сейчас начнет понемногу отходить на второй план

redzor

вроде бы, андроид в будущем будет поддерживать флеш

chriselwart

далекое будущее это не мой выбор

karkar

Только есть один маленький нюанс — это проприетарное говно и может не везде работать.
А то, что 99% пользователей работает на "проприетарном говне" от MS и Apple, которое "не везде работает", тебя не смущает? На флеше один раз написал, и оно работает везде, где стоит флеш (99% десктопов, ну может быть 95 и будет работать впредь. А зоопарк браузеров и их версий меняется очень быстро.

chriselwart

Что то я почитал про этот флеш и не понравился он мне совсем. Какая то проприетарная технология, нормальные IDE стоят как моя жизнь да и ботать его с нуля не очень хочется.

okis

В своё время флеш-разработчики очень хорошо оплачивались, как сейчас айфон-айпэд, но это время уходит. Вот и недовольствуют ;)

okis

А зоопарк браузеров и их версий меняется очень быстро.
Это только способствует тому, чтобы каждый браузер работал максимально близко к стандарту, а не как сейчас, когда верстальщики борются с багами ие6. И соответственно, страницы будут работать по стандарту. Для c++ тоже много компиляторов, и расширения есть, и форки, а стандарт все реализуют, и это хорошо.

solovushka

Что то я почитал про этот флеш и не понравился он мне совсем. Какая то проприетарная технология, нормальные IDE стоят как моя жизнь да и ботать его с нуля не очень хочется.
Ты определись чего ты хочешь.
Организовать фирму по производству казуалок и купить лицензионный софт или дома
скачать кряк для IDE Flash CS5 и за 5 минут написать свою казуалку. А ботать там всего ничего - теже классы и пакеты как в Джаве, событийная модель, знай себе обрабатывай событие таймера или клавы и в нем перемещай создавай удаляй объекты со сцены - вот и вся игра)

chriselwart

у казуалок и купить лицензионный софт или дома
скачать кряк для IDE Flash CS5 и за 5 минут написать свою казуалку. А ботать там всего ничего - теже классы и пакеты как в Джаве, событийная модель, знай себе обрабатывай событие таймера или клавы и в не
ну фирму я никакую организовывать пока не собираюсь, хочу дома попрактиковаться.
То, что ты описал присутствует и в JS. Так что весьма туманное преимущество.
Еще у меня сложилось ощущение, что html5 поставит крест на флеше (хотя может я и не прав).

freako

допустим есть две картинки , 01.png и 02.png (например http://redtanks.bos.ru/gallery/ms/ms_5a.jpg%29 которые содержат вид сверху танка зеленого и жёлтого цветов. выложи сюда код на JS который отобразит зелёное поле 400 на 400px
и клавишами вверх вниз вправо влево можно управлять первым танком а клавишами 4 6 8 2 на цифроклаве тоже самое но для второго танка

chriselwart

сюда код на JS который отобразит зелёное поле 400 на 400px
и клавишами вверх вниз вправо влево можно управлять первым танком а клавишами 4 6 8 2 на цифрокла
http://gamequery.onaluf.org/tutorials/1/
вот тут описано написание 2д игрушки (правда не с танками).
Флеш Билдер я себе таки поставил. Сейчас посмотрим что он умеет.

Fragaria

Запустил демку в опере. Самолетик не реагирует ни на что (ни на мышу, ни на клаву).
Хоть я и не люблю флеш, но писать на JS игрушки сильно рано.

redzor

Флеш, билдер. Хм.. вообще флеш билдер - это среда разработки под флекс. (переименованый флекс билдер). Не уверен, что для "чистого" экшнскрипта он лучше всего подходит, но, конечно AS3 в нем писать можно. Но по стоимости, он конечно не дорогой совсем, 250 баксов, как Идея. Честно говоря, не знаю, на чем пишут чистый флеш (АS3 но полагаю - это должно быть что-то из толстенных адобовских пакетов (так называемые flash authoring tools). К слову сказать, есть бесплатные IDE для флекса/AS3: FDevelop, например.

Fragaria

А бля, там если нажмешь что-нибудь не то, типа кнопок вверх-вниз или еще что-нибудь, фокус сразу теряется и все перестает работать.

freako

Вот вот собественно полная х*йня.
Насчет билдера - понятия не имею что это такое. Всё что я говорил относится к ADOBE FLASH CS5 (или на крайняк к Flash8 - там AS2 которые попроще и потормознутее)

karkar

Это только способствует тому, чтобы каждый браузер работал максимально близко к стандарту, а не как сейчас, когда верстальщики борются с багами ие6. И соответственно, страницы будут работать по стандарту. Для c++ тоже много компиляторов, и расширения есть, и форки, а стандарт все реализуют, и это хорошо.

Вот эти "а не как сейчас" и "будут" все портят. Когда наступит светлое будущее без слова "кроссбраузерность", не забудьте мне сообщить.
С С++ есть важная разница: я один раз игрушку скомпилировал, и она работает десятилетиями, не обращая внимания на изменения в языке и компиляторах. А на JS напишу, а через месяц какая-нибудь фича будет объявлена багой и перестанет работать. Или станет суперпопулярным браузер, где нужная фича тормозит и нужно искать обходы..

chriselwart

Ну я вообще не хотел чистый AS3. Даже наоборот мне больше интересен высокоуровневый фреймворк. В принципе интерфейс весьма и весьма вменяемый. Я еще толком ничего не запрогал, но в целом потыкался и он похож на то, что надо. Единственный минус - нужна винда. Но вроде в virtualbox нормально бегает.
Надо какую-нить книжку почитать про то как там что делают.
А Adobe Flash CS5 это для рисования что ли продукт?

freako

А Adobe Flash CS5 это для рисования что ли продукт?
Нет. Adobe Flash CS5 это для игр-казуалок.
кидаешь всю графику в библиотеку проекта, потом пишешь весь код в виде классов и пакетов.
Поясню на примере. ставишь IDE, запускаешь.
создаешь новый файл FLA AS 3

Задаёшь размер флешки

Создаешь новый символ-танк. (ctrl+F8) и кидаешь в него из проводника картинку

ПРи создании указываешь имя клипа, и ставишь галочку "экспортировать в ActionScript"
и называешь класс Tank

Для всей сцены называешь класс Game и жмешь справа от поля ввода имени класса на карандашик чтобы начать редактирование главного класса

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

компилишь CTRL+ENTER

serega1604

>С С++ есть важная разница: я один раз игрушку скомпилировал, и она работает десятилетиями
ну-ну.

tipnote

Что то я почитал про этот флеш и не понравился он мне совсем. Какая то проприетарная технология, нормальные IDE стоят как моя жизнь да и ботать его с нуля не очень хочется.
ИДЕ обязательно? Наш главный флешер предпочитает просто редактор с подсветкой + кроссплатформенное Flex SDK.
Правда, мы в последнее время склоняемся к тому, что на флеше только те контролы без которых нельзя (видео, граф отображение а остальное на хтмл+цсс+джээс. Это остальное общается с флешом в обе стороны тоже джээсом.

karkar

>ну-ну.
Я в этом году в Win7 запускал игрушку, которая у меня была еще в Win3.11 в начале девяностых. SkiFree называется.

tokuchu

А то, что 99% пользователей работает на "проприетарном говне" от MS и Apple, которое "не везде работает", тебя не смущает?
Возможно уже не 99%, но вообще да, смущает и расстраивает. А особенно то, что разработчики под этим предлогом сами же масла в огонь подливают.
На флеше один раз написал, и оно работает везде, где стоит флеш (99% десктопов, ну может быть 95 и будет работать впредь.
У меня на одной Linux-машине стоит Адобовский флеш. И он, сука, плохо работает. Некоторые ролики на Рутьюбе и Вконтакте не просматриваются в принципе или глючат. И как же не назвать это быдлоподелием?
А ещё другим огранизациям завидно, что есть такое быдлоподелие, которое стало популярным и они тоже хотят сделать своё похожее быдлоподелие.
Я не утверждаю, что ТС ни в коем случае не нужно пользоваться флешем. Может быть и так, что к сожалению, для его задачи у него просто нет другого выбора. Но это всё печально, очень печально.

freako

И он, сука, плохо работает.
А JS хорошо работает? да пока не заточишь под кроссбраузерность весь свой код на JS, ты его и на 90% компов не увидишь как хотелось :grin: Одна технология лучше в чем то чем другая, но это не значит что она лучше, потому что другая лучше в чём то первой. как говорится , Богу - богово, а Кесарю - кесарево

serega1604

а буквально пару дней назад у некоторых людей перестал работать звук во flash (в последней версии, надо заметить потому что разработчики glibc оптимизировали одну функцию, у которой в некоторых случаях был undefined behavior.
это тебе повезло просто с той игрушкой. многим другим не так везет.

tokuchu

А JS хорошо работает? да пока не заточишь под кроссбраузерность весь свой код на JS
Ну я хз как там JS точить надо. Но тут 2 момента — хотя бы есть возможность "заточить", а флеш хуй знает как и хуй знает подо что. Да и к тому же точением вроде как успешно занимаются создатели всяких фреймворков.

tokuchu

В общем последние проблемы с JS уже очень давно встречались (это я с точки зрения пользователя). Сейчас уже очень редко встретишь. А вот с флеш как будто наоборот. :)

redzor

да, винда нужна, единственно, там вроде была бета предыдущей версии под линукс, кроме того, на гугл коде хостится инсталлер флекс билдера на линукс, я че-то пробовал с его помощью поставить, но безуспешно. Вот, именно, я как раз под flash authoring tool Adobe Flash CS5 и имел в виду, но он стоит n штук баков, с FB не сравнить. Из книжек, даже не знаю, что посоветовать. У адобе вменяемые лайв докс по флексу и AS3, там примеры есть, все как надо. Единственно, для последней версии фреймворка (флекса) доки приходится выковыривать вручную, потому как они в стадии бета. И еще, в FB есть возможность импортировать чего-то из Adobe Flash CS5. Еще можешь посмотреть в сторону Идеи, но опять же, не опен сурс, а интерпрайс эдишна, там, вроде как реализована поддержка флекса, но насколько хорошо, не знаю.

freako

если б всё было как ты говришь все игры и баннеры бы писали на JS

chriselwart

спасибо. сейчас надыбаю где-нибудь дистриб и попрактикуюсь.

karkar

а буквально пару дней назад у некоторых людей перестал работать звук во flash (в последней версии, надо заметить потому что разработчики glibc оптимизировали одну функцию, у которой в некоторых случаях был undefined behavior.

У линуксоидов?

karkar

 
У меня на одной Linux-машине стоит Адобовский флеш. И он, сука, плохо работает. Некоторые ролики на Рутьюбе и Вконтакте не просматриваются в принципе или глючат. И как же не назвать это быдлоподелием?

Что именно - Linux, рутьюб или вконтакт? :grin:
А вообще это классика:
 http://imgs.xkcd.com/comics/supported_features.png
С одной стороны действительно, вероятно, виноват адоб, для которого твоя линукс-машина входит в наименее приоритетную аудиторию. А с другой стороны, со стороны линукса тоже хватало косяков. 20 секунд гугления дают это, например:
http://linux.digitalsp.com/2009/08/improving-stuttering-duri...
http://linux.slashdot.org/story/09/09/05/161230/Kernel-2631-...
Можно еще вспомнить историю про планировщик Коливаса.
Дабы меня не сочли за фаната флеша, поделюсь своим маленьким рантом на него:
http://thedeemon.livejournal.com/25469.html

tokuchu

А с другой стороны, со стороны линукса тоже хватало косяков. 20 секунд гугления дают это, например:
http://linux.digitalsp.com/2009/08/improving-stuttering-duri...
А почему это косяк Линукса? Мне кажется, что скорее это в флеше таймер не правильно вели. Как вон с memcpy сейчас выяснилось, что многие забыли прочитать, что страницы не должны перекрываться. А "но ведь работало же" в данном случае не оправдание.
http://linux.slashdot.org/story/09/09/05/161230/Kernel-2631-...
Можно еще вспомнить историю про планировщик Коливаса.
Тут не понял что ты хотел сказать и как это с флешем связано.
Ну это можно долго препираться, а смысла в этом нет никакого.
А мне вот интересно почему те же Java-апплеты не получили такой популярности? Какой у них минус по сравнению с Flash?

karkar

Потому что это были совсем разные вещи. Flash - это изначально движок векторной графики с многочисленными слоями и анимацией, программирование там долгое время было вторично. Потом уже язык и ВМ стали посерьезней (статическая типизиция, JIT появился Flex - вариант использовать его не с дизайнерской стороны (делать мультик и добавлять события а с программерской (писать программу с интерфейсом из привычных контролов). А что было у java-апплетов?
И сейчас флэш это по-прежнему не просто ВМ с языком и библиотекой, а готовый нативный графический движок с наворотами, с которым уже взаимодействует ВМ. Ни в джаве, ни в JS этого нет, если я все правильно путаю. Сам браузер, конечно, тоже является таким графическим движком, но специализация у них с флэшем разная, поэтому полностью заменить может быть сложно.

tokuchu

Я понял, в Джаве не успели/не догадались сделать подобную библиотеку/тулкит.

karkar

Были потуги сделать аналог флекса - JavaFX. Но как-то не взлетело, похоже.
Оставить комментарий
Имя или ник:
Комментарий: