55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
Библиотеки или собственный движок20.03.2018, 10:01. Показов 2985. Ответов 73
Метки нет Все метки)
(
Здравствуйте.
Раньше, я долго выбирал язык программирования для разработки игр. В итоге, несколько месяцев назад выбрал C++ и Java. Я выбирал долго между этими двумя языками, в итоге, решил учить оба. И сейчас не жалею. Сейчас я более менее вспомнил основы C++ и изучил основы Java. Хочу что-то начать делать, и столкнулся с проблемой. Дело в том, что я хочу разрабатывать звуковые игры. Такие же, как видео игры, но без графики. А все движки и библиотеки строятся на графике. Вопрос: Существуют ли библиотеки, где реализация игрока не через спрайт, а через объект с параметрами координатами и т.д. Например класс игрока с координатами. Класс player, поля x, y, z И т.д. Если нет, что можете посоветовать? То есть писать всё на графике, писать собственный движок или что ещё? Написать собственный движок не проблема в плане звуковой игры, реализации менюшки. Но, я например хочу реализовать игру как Call Of Duty. Шутер. А игровые движки и библиотеки содержат физику и другие упрощающие элементы. Самостоятельно которые я не реализую по причине отсутствия знаний высшей математики. Что можете посоветовать? Заранее благодарен!
0
|
20.03.2018, 10:01 | |
Ответы с готовыми решениями:
73
Движок для игр SFML. Не получается подключить библиотеки DirectX или готовый игровой движок? Написать свой движок или воспользоваться существующим? |
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
|
|||
20.03.2018, 13:09 | |||
дойдете до классов, наследования и тд, поймете что вам и не нужно ничего) Добавлено через 1 минуту может проще начать делать простую игру и будет понятней откуда растут ноги?
0
|
Заблокирован
|
|
20.03.2018, 13:22 | |
Эх, время течет, ничего не меняется. Через 5 лет снова будешь выбирать язык, движок и бла-бла-бла, и вся жизнь так пройдет. Я тебя помню еще с
2015 год: На чем лучше писать игру? 2017 год: Разработка игрового движка
0
|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
20.03.2018, 14:42 [ТС] | |
f3hler, абсолютно никакой графики. Всё на звуке. В звуковой игре никогда нет и не будет графики. Зачем слепым графика?
ООП, я знаю об этом. Да это то, что мне нужно. Я бы разработал свой движок, ибо без графики многое отсеивается, но я не смогу разработать 3D вычисления, повороты и т.д. Сейчас мне посоветовали библиотеку Bullet Phizix, но я не уверен. Добавлено через 1 минуту Pavel_Srgv, свой выбор я сделал. Не забывайте, что помимо программирования другие дела есть.
0
|
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
|
||||
20.03.2018, 16:36 | ||||
мой вам совет, не получается программирование, то выберите другую роль в игрострое, например, геймДизайнер - просто описывайте игру. это тоже очень важная роль и поверьте, возможно даже важнее чем программист. придумать и продумать мир это вам не так уж и просто.
0
|
20.03.2018, 17:36 | ||
0
|
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
|
|||
21.03.2018, 10:58 | |||
а зачем вам персонаж, если все на звуке будет построено? хотя класс персонажа как не крути все равно будет, только не будет визуализации его . я бы вообще отринулся от графики и чисто пространство или "черный квадрат Малевича". но честно говоря, я пока над этим не думал и не могу описать полного взаимодействия игрока и мира: - как давать задания - как ориентироваться в мире - как взаимодействовать непосредственно с игровыми персонажами (атаковать или ...)
0
|
21.03.2018, 11:22 | ||||||
Персонаж обычно называют Player, тогда положу начало кода, как создать персонаж на C++, перенести его в точку (x, y) и вывести его координаты, до переноса и после переноса. Если кто-нибудь хочет, то может добавить новые строчки кода. Может так совместно поможем автору темы наконец-то начать писать хоть какой-нибудь код. Не надо бояться ошибаться. Ошибки - это наши друзья, которые помогают развиваться.
main.cpp
0
|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
21.03.2018, 11:22 [ТС] | |
Поясню.
Да, будет игровой персонаж. Например структура: Класс Player, поля X, Y, Z, turn, health. Какая нибудь библиотека управляет поворотами игрока. Есть карта, по которой можно передвигаться. С передвижением меняется позиция и воспроизводится звук шагов. О стрельбе, враг в центре 3d звука, когда мы к нему повёрнуты, по звуку и стреляем. В некоторых играх реализован звуковой прицел, когда мы наводим на противника, он сигналит. Я долго выбирал язык под это, и если честно, до сих пор не определился. Придется наверное реализовывать на всех трёх, C++/C#/Java. Чтобы увидеть, что лучше для меня. Сейчас меня интересует, может юзать движок какой, или если писать свой, какие библиотеки могут помочь. Со звуком тут всё просто, bass, irrKlang. А вот с 3D...
0
|
21.03.2018, 11:28 | ||||||
Если это 3D игра, то добавим координату Z. Вот так и получается, что изучение происходит по мере добавления новой функциональности. Нужно писать код каждый день и много раз в течении дня. Без ежедневной практики не будет никако-то толка. Вы будете топтаться на месте и даже откидывать себя назад.
main.cpp
0
|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
21.03.2018, 12:37 [ТС] | |
8Observer8, я бы давно начал писать в C++, но я до сих пор не уверен. Работы в C++ не найти, и я не уверен, достаточно ли будет моих текущих знаний C++ для этого. Переменные, условия, циклы, массивы, указатели, ООП.
Потому я рассматриваю C#/Java.
0
|
21.03.2018, 14:36 | |||||||
Как можно больше практикуйтесь. Писать код нужно как можно чаще в течение дня. Иначе даже полученные знания очень быстро превращаются в нечто, потому что забываются. Повторюсь, что этот пример выводит координаты персонажа 3D игры до перемещения и после перемещения. Пока что здесь используются только поля координат (x, y, z) в 3D пространстве. Вы можете добавить поле health, и поля поворота в углах Эйлера, вокруг осей (rx, ry, rz)
0
|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
21.03.2018, 16:16 [ТС] | |
8Observer8, хорошо, но есть ещё Java, и там такой класс реализуется также. Проблема в том, что я не могу определиться с языком. Скорее всего, верный выбор будет изучать все 3 языка, но я не знаю, на сколько это правильный выбор.
0
|
21.03.2018, 16:39 | |
0
|
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
|
|
21.03.2018, 17:30 | |
jonikster, вы научитесь программировать впринципе на одном из языков.
выучить несчастных 10* операторов, они схожи в любом языке. понять ООП. освоить алгоритмы программирования и некоторые шаблоны/паттерны. и вам любой язык будет уже без проблем освоить в дальнейшем. а вы все выбираете) начните уже практиковать, а не теорией баловаться.
0
|
Заблокирован
|
||
21.03.2018, 18:14 | ||
Объясню по-другому. Ты сидишь в городе А, и хочешь добраться в город Б. У тебя есть на выбор три тачки. Допутим, KIA Rio, Volkswage Polo и Skoda Rapid. Все разные. И вместо того, чтобы взять и доехать до пункта Б хотя бы на одной из них, ты занимаешься, как бы это помягче сказать, полной **** (фигней). Выбираешь... У киа руль кожаный, а тут на 5 сантиметров длиннее, а там на 10 ли ров багажник больше. И все это не имеет значения, потому ты все еще сидишь несколько лет в пункте А. Вот, что ты делаешь. А почему? А потому что ехать еще не готов. Оттягиваешь момент, когда нужно заняться делом. Дело не в том, что ты не знаешь, какой язык выбрать. Дело в том, что ты и не хочешь выбирать. Потому что придется работать потом с тем, что выбрал. А так, можно имитировать для себя психологически бурную деятельность по выбиранию и изучению всего по чуть-чуть. И сам себя как бы оправдал: вроде бы и делом занят, понемногу че-то изучается, и работать реально не начал над задачей, потому что с языком не определился. И так становится спокойней.
0
|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
21.03.2018, 20:55 [ТС] | |
Pavel_Srgv, как вы сложно всё обрисовали.
Я не могу определиться, потому что у одного языка есть недостатки, которые решает другой язык, но не имеет плюсы первого. Я слышал, что на C++ можно портировать под разные ОС, но есть 2 момента. Я не знаю, достаточно ли моих знаний в C++ для начала, 2 момент я слышал, что C++ нужно учиться много лет. Как я буду писать приложения под Android на C#? И наконец, на Java мне говорят не эффективно писать игры, а лишь корпоротивные приложения. Добавлено через 1 минуту Потому возвращаясь к тачкам. Есть пункт А и пункт Б и 3 автомобиля. На 1 автомобиле доехать нереально, на другом очень сложно, а на третем можно, но он не может ездить по всем путям и на высокой скорости. Пункт Б андроид, 1 автомобиль - C#, 2 автомобиль - C++, 3 автомобиль - Java. Добавлено через 38 секунд Мне нужно выбрать язык, на котором я смогу писать одинакого эффективные приложения под Windows и Android и другие ОС
0
|
Заблокирован
|
|||
21.03.2018, 21:07 | |||
jonikster, опять ты переливаешь из пустого в порожнее. Придумываешь какие-то вопросы: а хватит ли мне знаний, а я вот слышал. Бла-бла-бла. Я тебе уже сказал: все, что ты делаешь - просто имтируешь бурную деятельность, которая тебя успокаивает психологически. Типа, вот-вот, вот сейчас я только выберу, и сразу как начну делать, как начну! Хрен там был. Твоя выбор языка - это прокрастинация. Сама ябанальная.
Все, вопросы, которые ты поднимаешь сам для себя, описываются лишь одним словом - прокрастинация. Добавлено через 3 минуты Тебе могут сколько угодно приводить доводы в пользу того, или иного языка, или игрового движка, или его отсутствия. Только это ничего не изменит, пока ты сам не изменишься.
1
|
21.03.2018, 21:07 | |
Помогаю со студенческими работами здесь
20
Ищу игровой движок или конструктор для новичка Собственный движок браузера Собственный движок для форума Нужно ли писать собственный движок? Хочу написать собственный простенький 3d движок с генерацией карты Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Unity 4D
GameUnited 13.06.2025
Четырехмерное пространство. . . Звучит как что-то из научной фантастики, правда? Однако для меня, как разработчика со стажем в игровой индустрии, четвертое измерение давно перестало быть абстракцией из. . .
|
SSE (Server-Sent Events) в ASP.NET Core и .NET 10
UnmanagedCoder 13.06.2025
Кажется, Microsoft снова подкинула нам интересную фичу в новой версии фреймворка. Работая с превью . NET 10, я наткнулся на нативную поддержку Server-Sent Events (SSE) в ASP. NET Core Minimal APIs. Эта. . .
|
С днём независимости России!
Hrethgir 13.06.2025
Решил побеседовать, с утра праздничного дня, с LM о завоеваниях. То что она написала о народе, представителем которого я являюсь сам сначала возмутило меня, но дальше только смешило. Это чисто. . .
|
Лето вокруг.
kumehtar 13.06.2025
Лето вокруг.
Наполненное бурями и ураганами событий. На фоне магии Жизни, священной и вечной, неумелой рукой человека рисуется панорама душевного непокоя.
Странные серые краски проникают и. . .
|
Популярные LM модели ориентированы на увеличение затрат ресурсов пользователями сгенерированного кода (грязь -заслуги чистоплюев).
Hrethgir 12.06.2025
Вообще обратил внимание, что они генерируют код (впрочем так-же ориентированы разработчики чипов даже), чтобы пользователь их использующий уходил в тот или иной убыток. Это достаточно опытные модели,. . .
|
Топ10 библиотек C для квантовых вычислений
bytestream 12.06.2025
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня. . .
|
Dispose и Finalize в C#
stackOverflow 12.06.2025
Работая с C# больше десяти лет, я снова и снова наблюдаю одну и ту же историю: разработчики наивно полагаются на сборщик мусора, как на волшебную палочку, которая решит все проблемы с памятью. Да,. . .
|
Повышаем производительность игры на Unity 6 с GPU Resident Drawer
GameUnited 11.06.2025
Недавно копался в новых фичах Unity 6 и наткнулся на GPU Resident Drawer - штуку, которая заставила меня присвистнуть от удивления. По сути, это внутренний механизм рендеринга, который автоматически. . .
|
Множества в Python
py-thonny 11.06.2025
В Python существует множество структур данных, но иногда я сталкиваюсь с задачами, где ни списки, ни словари не дают оптимального решения. Часто это происходит, когда мне нужно быстро проверять. . .
|
Работа с ccache/sccache в рамках C++
Loafer 11.06.2025
Утилиты ccache и sccache занимаются тем, что кешируют промежуточные результаты компиляции, таким образом ускоряя последующие компиляции проекта. Это означает, что если проект будет компилироваться. . .
|