XNA, прямой X, [закрытый] OpenGL

Определите регулярное выражение в вашем контроллере

$scope.regex = /^[^`~!@#$%\^&*()_+={}|[\]\\:';"<>?,./1-9]*$/;

А в своем html используйте директивы ng-pattern и передайте приведенное выше регулярное выражение в качестве шаблона.


Для получения дополнительной информации посетите Ограничить специальные символы в HTML & amp; AngularJs

12
задан John Saunders 12 July 2013 в 23:57
поделиться

6 ответов

Если Вы хотите сделать Прямой X, сказать привет Win32 и COM как Ваши новые лучшие приятели. Вы будете проводить много времени рано на изучении входов и выходов win32 API. DirectX с Win32 предоставляет Вам все функции, необходимые для звука, игрового входа и графического дисплея. Вы будете также писать в C или C++, и Вы доберетесь для приобретения знаний всех об управлении памятью и мышлении C - не что-то, что необходимо рассмотреть отказом слегка. Изучение и использование C как язык для главного проекта могут быть очень освещающими, и сделать Вас благодарными за современные функции языка программирования и элементы дизайна. Вы на самом деле не вынуждены использовать C или C++ для разработки здесь; существуют различные обертки.NET и другие обертки языка для Прямого X, но если у Вас есть опыт.NET, Вы могли бы также использовать платформу, сделанную для.NET: XNA.

XNA является намного более новым, основанным на.NET набором инструментов. Это обеспечивает многие из тех же функций, которые прямое использование Win32 и DirectX делает (звук, вход, и т.д.), но исходно на управляемой платформе. Для большинства игр (особенно та, когда только начинающийся) можно получить большой framerates с игрой XNA (даже при том, что исходное приложение может дать Вам больше), и очень хорошо для изучения входов и выходов разработки игр - Вы не можете действительно пойти не так, как надо. Большинство фундаментальных структур данных, в которых Вы будете нуждаться (деревья четверки/октября, архитектура Образцового контроллера представления, обработка событий, структура Вашей программы) необходимо будет все еще изучить и реализовать себя, и выполнение ее в.NET несомненно будет легче, чем в C и C++. Как хорошая премия стороны, если у Вас есть Xbox 360, игры сообщества XNA, с некоторой работой, могут быть выпущены через рынок Xbox Live. В основном, как разработчик.NET, Вы, вероятно, чувствовали бы себя больше всего комфортно здесь.

OpenGL является перекрестной-platoform библиотекой для рисования полигонов. Это имеет другую платформу и API от Прямого X, и не обеспечивает любых инструментов взаимодействия ОС. Существуют пакеты, которые позволяют Вам программа в OGL на многих различных языках. Однако как другие сказали, это, вероятно, будет такой же работой как пишущий с Win32 и DirectX. Для других функций помимо графики (клавиатура, мышь, джойстик, аудио) Вы могли рассмотреть использование платформы как SDL некоторые недостающие функции DirectX. Существует довольно достойное сообщество, окружающее библиотеку, которая может дать Вам подсказки и подсказки, если Вы идете этим путем.

Больше мыслей об этом может быть найдено в почти идентичной статье, здесь: Предложенная Играющая Платформа для Изучения прямой-x C Открывают GL или XNA.

12
ответ дан 2 December 2019 в 06:27
поделиться

XNA будет самым легким/самым быстрым способом разбудить игру и работающий за 360 или платформами Windows. Это позволит Вам продолжать разрабатывать способом, что Вы уже знакомы (C#.NET), и это предоставит Вам значительную платформу, которая будет заботиться о наиболее часто используемом материале автоматически. С этой простотой прибывает некоторые ограничения, хотя, поскольку Вы будете ограничены только вышеупомянутыми платформами и из-за нее являющийся большой платформой, будет много издержек, которые пойдут в основном неиспользованные хиты выполнения порождения, однако с простым 2D платформером, это, вероятно, не будет проблемой.

DirectX собирается ограничить Вас в платформе также и будет намного более сложным, чтобы изучить и разработать в. Также Вы будете, скорее всего, программировать в C или C++ здесь. Преимущества будут в производительности, так как Вы обрабатываете все, что Вы будете управлять всем и способный оптимизировать все для того, в чем Вы нуждаетесь. Я думал бы, что для первой игры, Вы собираетесь быть очень более обеспеченным запуском с XNA и перемещением в DirectX после того, как Вы "переросли" XNA. Особенно с целью создания простого 2D платформера.

OpenGL позволит Вашей игре работать на большинстве платформ, но будет столь же сложным (если не moreso) как DirectX (хотя я должен упомянуть, что существуют графические механизмы для OpenGL, которые довольно просты в использовании как ЛЮДОЕД. Вы будете также разрабатывать в C/C++ для OpenGL. Снова я думал бы, что XNA будет лучшим выбором, пока Вы не будете чувствовать, что Вы готовы к следующему шагу.

5
ответ дан 2 December 2019 в 06:27
поделиться

Если Ваш опыт был главным образом с.NET, как Вы говорите, XNA имел бы самый короткий барьер для доступа, хотя Вы не станете вполне столь хорошими из производительности, как Вы можете с другими опциями. Поскольку Вы говорите, что Вы - планирование создания 2D платформера, однако (предполагающий, что импликация здесь является "неаппаратными средствами, интенсивными"), затем XNA был бы более, чем достаточен и вероятно самый подходящий выбор для Вашего проекта.

3
ответ дан 2 December 2019 в 06:27
поделиться

DirectX не означает, что необходимо использовать собственный код, там существует несколько управляемых оболочек. Потеря производительности находится где-нибудь в диапазоне 1-3% собственного DirectX, но рассмотрение Вас сохранит часы и часы dev времени и вероятно никогда не будет нуждаться, это длится 2% так или иначе, управляемый способ пойти.

Посмотрите этот пример: SlimDX - полностью управляемая оболочка для DirectX в C#

2
ответ дан 2 December 2019 в 06:27
поделиться

Одна опция состоит в том, чтобы записать Ваш механизм в.NET, но реализовать рендерер с C++ / CLI. Я делаю это для одного из моих проектов. XNA, OpenGL и DX являются слишком низким уровнем для того, что я хочу. Я не хочу писать рендерер, я хочу использовать существующий. Обертка Ogre3D, Mogre, кажется, полная путаница (не уверенный, если это - дизайн Mogre, Ogre3D или обоих), и большинство других оберток безнадежно устарело. Вместо этого я реализую рендерер с помощью C++ / CLI и Irrlicht, который, кажется, быстрее и более хорошо разработан, чем Ogre3D.

Можно рассмотреть выполнение чего-то вроде этого.

1
ответ дан 2 December 2019 в 06:27
поделиться

Я начал использовать DirectX, но теперь шел дальше к XNA, главным образом потому что я хочу смочь сфокусироваться больше на фактическом геймплее и меньше на технологии позади игры. Несомненно, необходимо будет все еще сделать некоторое кодирование механизма, но оно выручает много, чтобы иметь платформу, которая предоставляет готовые функции, конкретно сделанные для игрового программирования.

1
ответ дан 2 December 2019 в 06:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: