Здравствуйте.
В 6 лет я лишился зрения. Сейчас, я изучаю программирование. Я знаю основы C++/C#/Java/Python/PHP. Я выбирал язык программирования для разработки звуковой игры. В итоге, я выбираю между C# и Java.
Звуковая игра — игра, как правило для слепых, без графики. В мире существует много таких игр. Гонки, шутеры и т.д.
Я хочу разрабатывать шутеры. Такие как Call Of Duty.
Я не могу использовать игровые движки, такие как Unity, Unreal Engine или Cry engine, потому что редакторы этих движков визуальные, и они мне не доступны.
Сейчас я выбираю между C# и Java, потому что мне нравится синтаксис этих языков. Ранее, я думал о C++, но я понял, что это слишком сложный инструмент для меня.
Что я жду от языка:
Возможность создания игрового окна;
Работа с клавиатурой и мышью;
Библиотеки для работы с 3D звуком;
Библиотеки для 3D вычислений, повороты, движение в 3D пространстве и т.д;
Работа с сетью;
Кросс-платформенность желательна, но не обязательна. Главная операционная система — Windows.
Я понимаю, что выбор за мной, но я хочу услышать ваши мнения.
Что я думаю о C# и Java для решения моих задач:
C# — мощный язык программирования. Имеет Windows Forms, IrrKlang для работы со звуком, портированную библиотеку Bullet Physics. Что мне не нравится в C#, это привязанность к NET, отсутствие кросс-платформенности. Я не смогу разработать хорошее приложение под Android.
Java — высокоуровневый язык программирования, главное кросс-платформенный. Будет проще разрабатывать игры, которые будут работать под Windows, Linux, Android. Я не знаю почему, но синтаксис Java мне нравится больше, чем C#. Мне кажется, что Java более прямой, чем C#. Я пишу точно алгоритм приложения. Через код я могу открыть окно, указать его размеры, возможности. При этом я не знаю, на сколько хорош Java для игр. Я разрабатываю игры без графики, по этой причине мне не нужна очень высокая производительность. Но я хочу быть уверенным, что Java хороший инструмент, который будет помогать мне. Ещё 1 плюс Java для меня, в будущем, я смогу найти высокооплачиваемую работу на Java.
Посоветуйте, что лучше для решения моих задач и почему!
Заранее благодарен!
Здравствуйте, John Berden, Вы писали:
С точки зрения развития, то C# впереди планеты всей.
Какие премущества.
1. Более мощный язык.
2. Развитие кроссплатформенности .Net Core
Хотя сделано большей частью для облаков, но развивается и XAML Standard прежде всегт для Xamarin.Forms для использования GTK, андроида и яблока.
3. Есть нативная компиляция в UWP .Net Native и в unity3d
4. Есть кроссплатформенный движок unity3d https://docs.unity3d.com/ru/current/Manual/AudioOverview.html
и солнце б утром не вставало, когда бы не было меня
Обычно инструментарий выбирают в расчете на то, чтобы он решил как можно больше проблем в проекте.
У Вас такая необычная ситуация, что совершенно неочевиден круг проблем — просто у нас нет опыта программирования вслепую.
Скажите, у Вас сформировалось мнение, в какой среде Вам отлаживать код удобнее? Вполне может быть, что этот фактор перевесит приемущества языка.
Здравствуйте, John Berden, Вы писали:
JB>Java — высокоуровневый язык программирования, главное кросс-платформенный. Будет проще разрабатывать игры, которые будут работать под Windows, Linux, Android. Я не знаю почему, но синтаксис Java мне нравится больше, чем C#. Мне кажется, что Java более прямой, чем C#. Я пишу точно алгоритм приложения. Через код я могу открыть окно, указать его размеры, возможности. При этом я не знаю, на сколько хорош Java для игр. Я разрабатываю игры без графики, по этой причине мне не нужна очень высокая производительность. Но я хочу быть уверенным, что Java хороший инструмент, который будет помогать мне. Ещё 1 плюс Java для меня, в будущем, я смогу найти высокооплачиваемую работу на Java. JB>Посоветуйте, что лучше для решения моих задач и почему!
Советую посмотреть на Kotlin, он с одной стороны даже более кроссплатформенный чем Java с другой стороны дизайн языка более современный. Опять же в смысле трудоустройства это будет плюс.
JavaScript — есть несколько движков 3D и 3D звук, физические тоже есть, тот же bullet который вы упоминали
сцена и видео и звуковая довольно легко программируется без визуального редактора
можно импортировать готовые 3D объекты (сделанные другими) из всех популярных 3D редакторов
Работает везде
работа средней (и низкой) оплачиваемости для фронт-энд — вроде есть, вакансии на хх.ру имеются
высоко тоже есть, но там надо весьма высокий уровень умений иметь.
Здравствуйте, Serginio1, Вы писали:
S>4. Есть кроссплатформенный движок unity3d
Unity мне не доступен. Есть MonoGame, но там в основном всё по графике. Потому вариант в C# или Windows Forms или sfml.
Здравствуйте, koenig, Вы писали:
K>У Вас такая необычная ситуация, что совершенно неочевиден круг проблем — просто у нас нет опыта программирования вслепую.
У геймдевелоперов есть. Представьте, остался звук, карты, передвижения, физика, но убрали графику. K>Скажите, у Вас сформировалось мнение, в какой среде Вам отлаживать код удобнее? Вполне может быть, что этот фактор перевесит приемущества языка.
C# + VS удобен, но я начал знакомиться с Java, ещё не ощутил его, но по коду вроде как удобнее. Пока сказать не могу.
Здравствуйте, loginx, Вы писали:
L>JavaScript — есть несколько движков 3D и 3D звук, физические тоже есть, тот же bullet который вы упоминали
Как JS работает и компилируется под Windows? На сколько он производителен на Windows? На сколько он эффективен для моей задачи?
L>>JavaScript — есть несколько движков 3D и 3D звук, физические тоже есть, тот же bullet который вы упоминали JB>Как JS работает и компилируется под Windows? На сколько он производителен на Windows? На сколько он эффективен для моей задачи?
как потом работу с этими навыками искать? подавляющее большинство работы на нём — это код для веб-страничек, т.е. всякие визуальные эффекты
Здравствуйте, John Berden, Вы писали:
JB>Здравствуйте, Serginio1, Вы писали:
S>>4. Есть кроссплатформенный движок unity3d JB>Unity мне не доступен. Есть MonoGame, но там в основном всё по графике. Потому вариант в C# или Windows Forms или sfml.
Я не понимаю, что недостуне, но Юнити как раз и использует C#.
Unity изначально поддерживает три языка программирования:
C# (произносится как Си-шарп), стандартный в отрасли язык подобный Java или C++;
UnityScript, язык, разработанный специально для использования в Unity по образцу JavaScript;
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, Serginio1, Вы писали:
S> Я не понимаю, что недостуне, но Юнити как раз и использует C#.
Да, но Unity движок не в виде библиотеки. Мы, слепые, не можем использовать Unity, так как для работы нужно использовать Unity Editor. Этот редактор визуальный, нам не доступен. Я бы мог использовать Unity, если бы его редактор озвучивался или был в виде DLL библиотеки.
Здравствуйте, John Berden, Вы писали:
JB>Здравствуйте, loginx, Вы писали:
L>>JavaScript — есть несколько движков 3D и 3D звук, физические тоже есть, тот же bullet который вы упоминали JB>Как JS работает и компилируется под Windows? На сколько он производителен на Windows? На сколько он эффективен для моей задачи?
компилировать не нужно, на виндовс всегда есть браузер, ява-скрипт работает во всех браузерах в том числе на ай-фоне, андроиде и линуксе
и конечно на вииндовс
Очень производителен, 3D игрушка средней сложности вполне будет работать, примеров куча.
Очень эффективен — море отличных звуковых движков, сам веб аудио это шедевр. аналогичных по гибкости и мощности движков
под C# просто нет. под яву тоже просто нет. под C++ есть от микрософта но весьма сложен в программировании по сравнению с JS
Есть еще от Кретив Лабс Опен там чего-то, но сложен в программировании по сравнению с JS Вебауди
Здравствуйте, koenig, Вы писали:
L>>>JavaScript — есть несколько движков 3D и 3D звук, физические тоже есть, тот же bullet который вы упоминали JB>>Как JS работает и компилируется под Windows? На сколько он производителен на Windows? На сколько он эффективен для моей задачи?
K>как потом работу с этими навыками искать? подавляющее большинство работы на нём — это код для веб-страничек, т.е. всякие визуальные эффекты
работы по фронт-энду и навороченым анимированным интерфесам в том чилсе с 3D сейчас много, очень много,
любая уважающая себя фирма или брэнд ВСЕГДА делает анимированные и даже чаще на JS+html5 баннерах рекламу!
любая студия рекламная возбме легко, также как веб студия по сайтам,
ну да платят там раза в полтора поменьше чем за C# C++ Яву
зато устроиться вообще не проблема.
L>работы по фронт-энду и навороченым анимированным интерфесам в том чилсе с 3D сейчас много, очень много, L>любая уважающая себя фирма или брэнд ВСЕГДА делает анимированные и даже чаще на JS+html5 баннерах рекламу! L>любая студия рекламная возбме легко, также как веб студия по сайтам, L>ну да платят там раза в полтора поменьше чем за C# C++ Яву L>зато устроиться вообще не проблема.
как это делать человеку у которого большие проблемы со зрением? тут же об этом речь
Здравствуйте, loginx, Вы писали:
L>компилировать не нужно, на виндовс всегда есть браузер, ява-скрипт работает во всех браузерах
Это ключевое. Мне не нужна веб игра в браузере, мне нужно ПРИЛОЖЕНИЕ. Компилированное приложение.
Здравствуйте, John Berden, Вы писали:
JB>Здравствуйте, loginx, Вы писали:
L>>компилировать не нужно, на виндовс всегда есть браузер, ява-скрипт работает во всех браузерах JB>Это ключевое. Мне не нужна веб игра в браузере, мне нужно ПРИЛОЖЕНИЕ. Компилированное приложение.
Во первых нафига такой тебе геморой? Это ж проблемы с сайтом. антивирусами, цифровыми подписями и метро интерфейсом
ну зачем, ну скажи зачем тебе этот геморой?
Ну так как таких как ты извращенцев немало Intel XDK — специально для извращенцев бесплатно превращает html/js в скомпилированный exe
(кроме Intel есть много других аналогичныз в том числе и платных, а ведь тебе как знатному извращенцу нужны обязательно платные компиляторы)
шутка
Здравствуйте, koenig, Вы писали:
L>>работы по фронт-энду и навороченым анимированным интерфесам в том чилсе с 3D сейчас много, очень много, L>>любая уважающая себя фирма или брэнд ВСЕГДА делает анимированные и даже чаще на JS+html5 баннерах рекламу! L>>любая студия рекламная возбме легко, также как веб студия по сайтам, L>>ну да платят там раза в полтора поменьше чем за C# C++ Яву L>>зато устроиться вообще не проблема.
K>как это делать человеку у которого большие проблемы со зрением? тут же об этом речь
что за бред, на java и C# слепой как нефиг делать устроиться работать, а вот на javascript ну вообще никак. просто никак и никогда
ты название топика хотя бы прочитай прежде чем постить ерунду
Здравствуйте, loginx, Вы писали:
L>Ну так как таких как ты извращенцев
Я знакомого информатика называю извращенцем. Думать о разработке сайтов на C и ассемблере? Вот это извращение. А думать о разработке игр на C# и Java, думаю не извращение.
Здравствуйте, John Berden, Вы писали:
JB>Здравствуйте, loginx, Вы писали:
L>>Ну так как таких как ты извращенцев JB>Я знакомого информатика называю извращенцем. Думать о разработке сайтов на C и ассемблере? Вот это извращение. А думать о разработке игр на C# и Java, думаю не извращение.
ну тогда JS с WebGL и WebRTC push и socket и WebAudio, gui фрейм-ворками и билдерами, игровыми движками, на всех платформах, локальными базами и хранилищами прямой конкурент, именно по играм в том числе сетевым, причем очень крутой конкурент.