Какой фреймворк (Jquery, Dojo, Raphael) лучше для реализации SVG в обучающей видеоигре? - PullRequest
5 голосов
/ 07 ноября 2011

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

Я не хочу использовать Flash. Поэтому я убежден (я все равно выслушаю советы) в использовании JavaScript и SVG.

Я веду много исследований по этому вопросу, но мне трудно собрать все воедино. Я знаю, что Рафаэль кажется простым и понятным, а Jquery и Dojo, возможно, более сложными, но более мощными. Можно ли совмещать различия каркасов? Я не против сложности, я хочу иметь как можно меньше ограничений

Мне нужны рамки охватывает следующие пункты:

  • Обработка высокоинтерактивных интерфейсов
  • Может написать код многократного использования (я хочу сделать разные версии с одним и тем же скелетом)
  • Достаточно документации
  • Может быть расширен для взаимодействия с социальными сетями
  • Может генерировать статистику, связанную с событиями
  • Совместимость с другими фреймворками

Я также хочу знать, желательно ли смешивать разные фреймворки.

Я открыт для любых рекомендаций. Я также начинаю изучать Python, поэтому было бы неплохо получить экспертное заключение о том, целесообразно или нет использовать JavaScript с SVG или стоит ли использовать в этих целях более сложный язык.

Спасибо !!

EDIT

До сих пор я решил не использовать Jquery. Поскольку мне нужен повторно используемый код, я собираюсь воспользоваться преимуществами ООП-функций JavaScript, и кажется, что mootools делает это намного лучше (http://jqueryvsmootools.com/index.html). Для управления SVG я собираюсь попробовать с Raphael Любой опыт использования этих рамок рядом?

Ответы [ 3 ]

2 голосов
/ 09 ноября 2011

Я бы не советовал вам сразу решать, какую платформу вы будете использовать. Я делал несколько проектов недавно, используя JavaScript для игры, и есть несколько вариантов.

  1. SVG
  2. HTMLCanvas
  3. Flash
  4. WebGL

Вам понадобится среда JavaScript, с помощью которой вы можете легко переключаться между этими опциями, но не менять код радикально. Я предлагаю Three.js

Перед загрузкой вы можете прочитать об этом несколько статей, например эту

Поверьте, если вы хотите повторно использовать приложение такого типа, забудьте о jQuery, хотя его можно использовать для целей пользовательского интерфейса

--- РЕДАКТИРОВАТЬ ---

Я только что вспомнил о другой платформе Исходный код RenderEngine находится в github

2 голосов
/ 09 ноября 2011

Wow множество вопросов Не стоит смешивать загрузку библиотек, потому что в итоге у вас будет толстая библиотека js Я рассмотрел несколько связанных технологий, но только одна для меня отвечает всем требованиям

Может быть, вы найдете другие ответы здесь http://irunmywebsite.com/raphael/additionalraphael.php

1 голос
/ 09 декабря 2011

Поддержка SVG под Android сложна. Я недавно изучил это и обнаружил, что версии Android <3.0 не поддерживают SVG в стандартном WebKit: <a href="http://code.google.com/p/android/issues/detail?id=1376" rel="nofollow noreferrer"> Android Issue 1376 , Android Issue 4695

Это означает, что любая библиотека (например, Raphael) на основе SVG не будет работать в браузере Android по умолчанию. Похоже, он будет доступен в версии 3.0+, основываясь на второй ссылке выше (выпуск 4695).

Opera и Firefox для Android поддерживают SVG , поэтому вы можете исследовать это, если допустимо требовать от пользователей Android загрузки браузера.

Если вы планируете упаковывать и распространять через PhoneGap, возможно, можно создать там WebKit с поддержкой SVG - это действительно , выходящее за пределы моей знакомой территории, но http://jindroid.com/2010/02/15/svg-support-on-android-webkit/ может быть отправная точка.

Я изучаю dojox.gfx , который предоставляет абстракция для SVG, VML, Silverlight и Canvas. Canvas поддерживается выпущенными версиями Android WebKit.

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

...