|
0 / 0 / 0
Регистрация: 14.09.2026
Сообщений: 14
|
|
Новичок в gameDev14.09.2026, 21:30. Показов 4020. Ответов 53
Ребят всем привет, я новичок в с++ и разработке движков) полгода назад загорелся идеей создать свои игру. Наверное как и все новички - свой майнкрафт на с++. В итоге получился результат, отказался от воксельного движка. Но куча проблем связанных с механиками игры. Можете кто посоветовать библиотеки для развития проекта,статьи и туториалы ) особенно острые проблемы - это работа с анимациями ( даже их вес - 1 анимация == 150мб, мб как то ужимать) и работа с картой игры? Мб какой внутренний редактор ( щас пробуем переписать библиотеку с питона для работы с ассетами из юнити). Так же если кто может просто поделится опытом - буду благодарен)
0
|
|
| 14.09.2026, 21:30 | |
|
Ответы с готовыми решениями:
53
Новичок в питоне, но не новичок в программирование 2D gamedev, книги |
| 07.10.2026, 22:54 | |||
|
Ладно, ответ ясен, спасибо
0
|
|||
|
7049 / 3139 / 1065
Регистрация: 01.06.2021
Сообщений: 12,191
|
|||
| 08.10.2026, 00:10 | |||
|
А зачем тебе смотреть на реализацию? Разрабатываешь свой игровой движок с нуля? И вообще, чем большее у тебя анимаций, тем больше реалистичности. Например, в приличных ААА-играх может быть десяток разнообразных анимаций только для idle, поскольку когда их одна или две, то игрок замечает "цикличность" воспроизведения анимации. Тоже самое касается, например, звуков ходьбы на разных поверхностях. Желательно иметь десяток разных звуков для каждого материала и рандомно менять питч и громкость для еще большей реалистичности.
0
|
|||
| 08.10.2026, 15:06 | ||
|
Igor3D, попробуйте запустить мою демку в браузере. Управляйте с помощью WASD. Мы имеем в виду разные вещи?
0
|
||
| 08.10.2026, 15:23 | ||
|
Я написал пошаговые инструкции для установки и интеграции библиотек:
Инструкция по сборке примера с контроллером от первого лица на С++: First-Person контроллер с физикой Box3D, cgltf, SDL3, GLM и OpenGL 3.3 Если какой-то шаг в инструкциях вызвал проблему, то сразу пишите, я помогу. Прикрепил исходники демки, которая собирается под Windows, Ubuntu, Android и WebAssembly. GitHub репозиторий
1
|
||
| 08.10.2026, 21:24 | ||
|
0
|
||
| 08.10.2026, 22:42 | |||
|
Причём есть только правая, а левой нет. Я её использовал в демке выше. Но левую легко можно сделать с помощью reverse, то есть обратного проигрывания - видимо, поэтому левой нет. Обратное проигрывание также позволяет сделать анимацию для ходьбы назад, что у меня в демке выше тоже сделано. Все анимации для демки выше я взял с https://www.mixamo.com/. Оттуда же взял робота-манекена (Y-Bot). Уменьшил ему количество полигонов в Blender с помощью модификатора Decimate и сделал новую UV-развёртку, чтобы покрасить модель заново в те же цвета. Изначальная UV нарушилась. Модель робота состояла из двух частей после скачивания с Mixamo, а я объединил её в одну в Blender. Можете использовать эту модель в своих проектах. Модели и текстуры можно в любой момент заменить, как и анимации, поэтому непринципиально, что использовать во время разработки.
0
|
|||
|
7049 / 3139 / 1065
Регистрация: 01.06.2021
Сообщений: 12,191
|
|
| 08.10.2026, 23:26 | |
|
8Observer8, если превращаешь модельку в low-poly, то советую использовать потом Multires и запечь нормали из него. В итоге моделька будет low-poly, но с визуальным качеством high-poly.
0
|
|
| 09.10.2026, 02:00 | |||
Ну это скромная либка что позволяет быстро делать несколько простых вещей. На здоровье, но это собсно и все. И как-то Вам не хватает "масштабности", что ли. Ну нашли еще одну подходящую анимацию, ну хорошо, браво, но проблем-то это не решает.
0
|
|||
| 10.10.2026, 15:23 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Перевод списка фич на русский язык с помощью ИИ
Этой либе 11 лет. У неё: 3 тыс. звёзд, 25 контрибьюторов, 104 закрытых issue. Она работает очень быстро и её протестировало очень много людей. У неё отличная документация с примерами на официальном сайте: https://guillaumeblanc.github.io/ozz-animation/ Погружение в библиотеку тоже требует времени, но я выложил пример выше, где переключение между анимациями Mixamo происходит плавно через смешивание, и этот пример автор темы может использовать, чтобы быстро реализовать базовые вещи и двигаться дальше. Igor3D, вам 65 лет, и это колоссальный опыт в программировании графики, поэтому вам кажется, что переключение между анимациями через смешивание по событиям - это суперлегко, а для новичка это суперсложно. Он может потерять на этом кучу времени и нервов. Для него даже парсинг иерархии костей и матриц из glb будет сложным. Эта либа подходит ему идеально, раз он твёрдо решил продолжать программировать игру на C++ и развивать свой движок и наотрез отказывается от использования готовых игровых движков. Ему надо быстренько на базовом уровне реализовать переключение между анимациями по событиям через смешивание и как можно быстрее переходить к готовому физическому движку - то есть перемещение, детектирование коллизий, рейкастинг, ragdoll и т. д. Я перепробовал множество физических движков, и самый лучший, на мой взгляд, в плане простоты освоения - это Box3D. Видео от автора Box3D:
0
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
7049 / 3139 / 1065
Регистрация: 01.06.2021
Сообщений: 12,191
|
||
| 10.10.2026, 16:26 | ||
|
Однако, Box3D не предоставляет функций для работы с soft body, тканями, жидкостями, частицами, разрушениями, продвинутой системой транспорта (есть только wheel joint + базовая поддержка) и прочими вещами, с которыми отлично справляются другие движки - PhysX / Chaos
0
|
||
| 10.10.2026, 16:53 | ||
|
Добавлено через 2 минуты Автор Box3D сейчас участвует в большом проекте на Unreal Engine 5 по разработке шутера. Информация об этом шутере от первого лица есть на Steam. Эрин показывает это проект в конце своего видео выше. Он внедрил Box3D в Unreal Engine 5.
0
|
||
|
7049 / 3139 / 1065
Регистрация: 01.06.2021
Сообщений: 12,191
|
||
| 10.10.2026, 17:31 | ||
|
0
|
||
| 10.10.2026, 21:12 | |||
|
Когда тема здесь на форуме создаётся с конкретной целью — написание своего движка, то уговоры бросить свой движок/язык и перейти на готовый неизбежно вызовут холивар и сопротивление автора темы. Холивара нет, потому что мало людей, которые практикуются с OpenGL, DirectX, Vulkan и т.д. Не хотят тратить время. Это если бы вы ненавидели C#, заходили в раздел C# и критиковали в каждой теме, какой C# плохой, и уговаривали переходить на другой язык. Человек, который любит C#, читает по нему книги, изучает документацию, много пишет на нём и т.д., будет либо защищать свой любимый язык и стек технологий, либо уйдёт в игнор, чтобы не тратить своё время. Точно так же, если зайти в сообщество разработчиков своих движков на Reddit и начать уговаривать их переходить на готовые движки.
0
|
|||
|
7049 / 3139 / 1065
Регистрация: 01.06.2021
Сообщений: 12,191
|
|
| 10.10.2026, 21:21 | |
|
8Observer8,
Не по теме: А что означает писать "свой" движок? Если ТС будет создавать игру на Box3d, то это типа он будет создавать на своём движке?
0
|
|
| 10.10.2026, 22:58 | ||||||
|
Я отлично представляю, какой титанический труд он проделал, чтобы просто преодолеть входной барьер графических API и вывести такую сцену. Пусть со стороны она кажется простой, но под капотом за этим стоит огромная работа. Когда этот труд пытаются обесценить, это очень неприятно. Я прекрасно понимаю реакцию автора во второй его теме. И когда базовая графика уже реализована, логично двигаться дальше: внедрять на базовом уровне физический движок, скелетные анимации, звук и т.д. А саму графику пока можно не трогать или дорабатывать только при острой необходимости.
0
|
||||||
| 10.10.2026, 23:38 | |||||
|
Не по теме:
Кстати, любой "чужой движок" тоже использует под капотом n всяких библиотек. А если дело в лицензии, то у Godot самая хорошая опенсорсная и свободная лицензия MIT. Ты можешь форкануть весь код Godot точно так же, как ты берешь какую-нибудь свободную библиотеку. Я реально тебя не понимаю. Вот, я писал игру на Ogre3D и мне даже в голову не пришло говорить, что я пишу игру на "своём движке". Мне что кроме Ogre3D еще нужно взять 10-20 библиотек, чтобы всё вместе это называлось "свой движок"??? Именно это ты сейчас утверждаешь - прочти свои посты, которые я процитировал. *** Как по мне, чтобы говорить о "своём движке", то хотя бы нужно что-то самому делать, например, написать свой физический движок с нуля, или написать свою систему рендеринга с нуля, используя Vulkan / DirectX / OpenGL и т.д. Или в 2026 году программист уже не тот, кто сам пишет код, а тот, кто просто берет готовые библиотеки и просит у ИИ написать игру? ТС ничего не реализовал на Vulkan и всё, что ты видишь на скриншоте, это результат труда его команды. Он просто владелец проекта и лично признавался, что у него нулевой опыт в геймдеве и только начинает изучать. Так что, я не знаю, какой ты там титанический труд представляешь, о каких входных барьерах говоришь))) Автор - новичок не только в графических API, но и в самом C++. Ничего постыдного в этом нет, человек недавно начал изучать эту область. Но вот только не нужно мне вешать лапшу на уши, рассказывая, мол игру на скриншоте сделал он. Это с каких пор новички в С++ пишут игры на Vulkan? Соседняя тема автора немного объясняет всю историю с игрой на скриншоте. Как я понял, ТС собрал команду программистов, чтобы те делали игру. Он сам ноль как в С++, так и Vulkan и во всем остальном геймдеве, однако, он хочет научиться всему этому и параллельно ищет как программистов, так черпает на разных форумах полезную инфу о разных технологиях, которые пригодятся в его проекте. *** И в теме Где найти программистов? я не поладил с ТС (видишь ли, я в отличие от тебя был к нему строг и не хвалил его за то, чего он делал). Знал бы, что автор этой темы тот же человек, то вообще игнорировал бы эту тему. И мне будет хорошо, и ему. Так что, adieu, messieurs
0
|
|||||
| 11.10.2026, 00:02 | ||
|
0
|
||
| 11.10.2026, 00:22 | ||||
|
Не по теме:
*** Честно, не хочу продолжать. Когда обсуждение превращается в простой обмен мнениями без конкретного результата, решений или действий, оно становится пустой тратой времени. Мне не понятно, что ж тут такого зазорного в том, чтобы брать готовый движок. Я бы понимал, когда какая-то крутая ААА-студия наткнулась на какие-то ограничения готового движка (по фичам или по лицензии - типа намечается игра на лямы и не хочется тратить на роялти), поэтому она решает создавать свой собственный движок или модифицировать код готового движка. Но когда инди-разработчики отказываются от существующих вариантов и решают написать какой-нибудь посредственный собственный движок, предоставляющий графику 25-летней давности - то это странно. Хотя, если цель просто научиться новым вещам, то еще понять можно. Например, когда ты создаешь всякие проекты на Box3D или OpenGL и прочих либах, то я прекрасно понимаю, что ты это делаешь в рамках обучения. Поэтому к тебе вопросов нет. Как понимаю, ТС & co создают игру на собственном движке тоже в этих целях. Я не сразу узнал ТС, поэтому советовал готовые движки.
0
|
||||
| 11.10.2026, 01:35 | ||
|
Не по теме:
0
|
||
| 11.10.2026, 01:35 | |
|
Какие возможности существуют для GameDev разработки под новую экосистему Microsoft Java GameDev Паскаль и Gamedev Веб-программирование или Gamedev? Gamedev 2d Проверка множественных столкновений кругов и ответная реакция Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки.
Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён".
Изменено отображение буквы Й.
Добавлена. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки.
Добавлено:
- Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|