Russian Qt Forum
Ноябрь 22, 2024, 10:34
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Программирование
>
Общий
>
Выдрать код из игрового движка
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Выдрать код из игрового движка (Прочитано 10172 раз)
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Выдрать код из игрового движка
«
:
Октябрь 26, 2019, 09:26 »
Добрый день
Нередко вместо (желаемого) "конкретного ответа" получаешь советы, мол, этого не стоит делать и.т.п.
Но вот фишка выпала так что советы такого плана могут оказаться интересны.
Есть очень нужный open-source код, хотя и староватый. Но, увы, он на богомерзком C# и, хуже того, вмонтирован в популярный игровой движок. Вот
головной файл
. Выглядит пугающе, но это самый большой, остальное по объему примерно столько же (все cs в данном фолдере).
Ну и насколько реально перевести это на плюсы и интегрировать в др приложение? Задавать наводящие, умничать и.т.п. - здесь можно
Спасибо
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выдрать код из игрового движка
«
Ответ #1 :
Октябрь 28, 2019, 14:14 »
Ну я так и знал
Как не в масть - от "экспертов" не отбиться, как в тему - тишина.
демка ф-ционала
теория
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: Выдрать код из игрового движка
«
Ответ #2 :
Октябрь 28, 2019, 14:30 »
Цитата: Igors от Октябрь 26, 2019, 09:26
Ну и насколько реально перевести это на плюсы и интегрировать в др приложение?
Всё реально. Полный вперёд!
Записан
Пока сам не сделаешь...
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выдрать код из игрового движка
«
Ответ #3 :
Ноябрь 25, 2019, 12:26 »
В общем, взялся. Долго пытался найти что-то поприятнее, но увы, максимум огрызки на пытоне.
Ну ладно. Собсно портирование оказалось не таким уж жутким. Да, были проблемы с имитацией математики/ф-ционала движка, но порешал. Запустил портированный код, автор (добрая душа) натыкал assert'ов, это позволило быстро найти неск мест где насвистел.
Но все это оказалось (милыми) "цветочками". Портированный алгоритм не работает. Char не "ходит", он делает только пол-шага, затем скользит и садится на задницу (аттач). Как в том анекдоте
Цитировать
Да никто не кодит, это я куякнулся
Вот уже недели 2 пытаюсь разобраться в алоритме, но пока без успеха.
Эх, "готовые проверенные", ну где же вы?
Записан
Old
Джедай : наставник для всех
Online
Сообщений: 4350
Re: Выдрать код из игрового движка
«
Ответ #4 :
Ноябрь 25, 2019, 12:37 »
Цитата: Igors от Ноябрь 25, 2019, 12:26
Портированный алгоритм не работает.
Однозначно виноват автор оригинального алгоритма.
Цитата: Igors от Ноябрь 25, 2019, 12:26
Эх, "готовые проверенные", ну где же вы?
Как показывает эта тема, вам и "готовые проверенные" не даются.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выдрать код из игрового движка
«
Ответ #5 :
Декабрь 02, 2019, 08:12 »
Так, есть анодное! Кодит, ну пока по прямой с постоянной скоростью. Правда легче от этого не стало, скорее наоборот, кодит он неверно
Выяснил что положение foot (ступней) вычисляются верно, а вот смещение hips (бедер) нет. Как бы "волосатая рука" давит на char сверху и чем больше он прошел - тем больше сгибает ноги в коленях. Кривая показывает вычисленное смещение, оно должно колебаться около нуля, но почему-то дрыфтует вниз. Нашел это место в коде и в теории, много раз (пере) проверил, но ничего не нашел - вроде все "как доктор прописал", однако ж работает неверно.
Мда, чижело...
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выдрать код из игрового движка
«
Ответ #6 :
Декабрь 09, 2019, 10:53 »
Наконец-то получил первую корректную анимацию
Ошибка, кстати, была вовсе не техническая (как я надеялся), просто недопонял алгоритм. Теперь надо делать миксы и повороты, там пока одни заглушки. Наверно опять получу ...
Записан
Fregloin
Супер
Offline
Сообщений: 1025
Re: Выдрать код из игрового движка
«
Ответ #7 :
Декабрь 11, 2019, 12:53 »
Чем же вам C# не угодил? В чем смысл портирования на С++? Судя по коду это Unity, вы и движок Unity будете портировать?
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Выдрать код из игрового движка
«
Ответ #8 :
Декабрь 11, 2019, 14:26 »
Цитата: Fregloin от Декабрь 11, 2019, 12:53
Чем же вам C# не угодил? В чем смысл портирования на С++?
Просто потому что мое приложение на плюсах.
Цитата: Fregloin от Декабрь 11, 2019, 12:53
Судя по коду это Unity, вы и движок Unity будете портировать?
Уже
Конечно только те части что нужны задаче.
Но все равно хорошо что хоть один проявил здоровый интерес и не постеснялся спросить. Ссылка на демку есть выше. Задачу можно сформулировать примерно так:
Дано: исходный skeleton (по существу иерархия/дерево точек) + вектор скорости кадр за кадром который двигает корень дерева. Также даны "образцы" движений (напр walk, run, strafe), каждый примерно 1-1.5 секунда анимации (шаг левой и шаг правой) записанный в fbx файле.
Требуется: заставить skeleton "ходить" (бегать, поворачивать и.т.п) кадр за кадром сообразно входному вектору скорости. Разумеется просто так подставить заданные анимации не проходит.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...