Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> OpenGL, разрыв на сгибе 
:(
    Опции темы
Moid
  Дата 13.2.2007, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Я нарисовал в 3dsMax руку... Потом 3D конвертором перевел ее в координаты OpenGL...
Переводил каждый сустав отдельно...(т.е. палец разбил на з части по сгибам и каждую часть перевел в коорлинаты и записав в отдельную процедуру для этой чсти руки координаты).
Все это делалось для того, что бы можно было шевелить пальцами руки и сгибать-разгибать кисть.... 
В итоге все работает почти как надо... только вот на месте изгиба получается не плавный изгиб, а резкий(как будто отламываем и сгибаем)... В принципе оно так и должно получиться т.к. координаты у меня фиксированы КОНСТАНТНЫМИ значениями... 

Как мне сделать, чтобы на месте сгиба был плавный переход на фалангах пальцев и в исгибе кисти?
Это можно как-то сделать, но вот как?

P/S
Если кто хочет предложить каждую координату передвигать, то это глупо... т.к. их там 54000 точек.



--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Snowy
Дата 13.2.2007, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 18
Всего: 484



Сделать дополнительно фалангу и запястье.
Эмитация не такое простое действие.
Здесь действует не один объект, а система.
Сгибаем запястье, сгибается кисть, фалагни и суставы.
Просто соединительные объекты нужно сделать отдельно.
И чем их больше, тем плавнее будет выглядеть.
PM MAIL   Вверх
Moid
Дата 13.2.2007, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



А как же в играх делают плавные сгибы руки... Думаешь там тоже рисуют дополнительные части....
Может есть еще какой способ...?


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Coriolis
Дата 13.2.2007, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 22.8.2005

Репутация: нет
Всего: 1



Конечно, есть способ. Имя ему - скелетная анимация.
Цитата

Если кто хочет предложить каждую координату передвигать, то это глупо... т.к. их там 54000 точек.

Нет, это не глупо, т.к. это и есть суть скелетной анимации.
Итак: у тебя есть сетка твоей руки, и есть кости. На каждую вершину могут влиять несколько костей - есть такое понятие в скелетке - коэффициент воздействия - это величина от 0 до 1 которая отображает на сколько трансформация данной конкретной кости влияет на данную конкретную вершину. Сумма коэффициентов влияния всех костей на данную вершину всегда = 1.
Обычно на вершину действует одна кость, тогда для этой кости у вершины коэффициент будет равен одному. Но на изгибах (на суставах в твоём случае) у вершин будет по две влияющие на них кости. И коэффициенты будут соответственно распределены между этими костями (не поровну естественно, а плавно).
Кость - это на самом деле матрица трансформации. Т.е. в редакторах она отображается как призма, или цилиндр, но значимая информация - это иерархия костей и матрица трансформации каждой кости.
Т.е. для вершины хранятся индексы костей, которые на неё влияют и коэффициенты влияния для каждой из этих костей.
54k вершин - это конечно много. Но если у тебя на экране только это и без просчета физики - вполне можно замутить. Раньше модели со скелетной анимацией именно просчитывали на CPU (с учетом текущего положения скелета и коэффициентов влияния костей трансформировали сетку объекта), теперь это делают на GPU с помощью шейдеров. Поэтому ты имеешь все шансы на вполне сносную скорость.
Вот неплохая статья с GameDev.ru
http://www.gamedev.ru/users/wat/articles/SkelAnim1
PM MAIL   Вверх
Moid
Дата 13.2.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Но чёта я не пойму как в OpenGL реализовать механизм костей...
Может в нем есть процедуры, функции или методы какие-нибудь для работы с костями...

Или нужно для начала прочитать эту статью прежде чем задавать глупые вопросы? smile

Это сообщение отредактировал(а) Moid - 2.3.2007, 11:31


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Qu1nt
Дата 13.2.2007, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 13.1.2007

Репутация: 2
Всего: 50



Вот тебе решение ;)
http://xproger.mirgames.ru/?id=1&page=2&doc=anim3d
PM MAIL   Вверх
Moid
Дата 13.2.2007, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



О... кажется то что надо... 

Спасиба!!!


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Moid
Дата 2.3.2007, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Цитата

Вот тебе решение ;)
http://xproger.mirgames.ru/?id=1&page=2&doc=anim3d

Ссыка интересная, но сдесь только теория. 

экспортировать анимированные движения кисти из макса мне не нужно. Всю анимацию я делаю
в делфе.

Задача так и не решилась. 

Может кто-нибудь скинет пример. Подобной анимации...


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Sovereign
Дата 3.3.2007, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 7.11.2006

Репутация: нет
Всего: 4



По поводу сгиба приеры есть в GLSCENE, в Demos\extrusion\bendingcyl, посмотри как там сделано
PM MAIL   Вверх
Moid
Дата 5.3.2007, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Посмотрим ...


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Moid
Дата 6.3.2007, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Не могу откомпилить этот пример. Поставил я все наборы компонентов GLSCENE кроме 2-х:
1)GLS_Python.dpk требует Python
2)GLS_DWS7.dpk требует dws2Runtime

Я так и не смог прописать нужные пути в патче, чё туда надо писать для этих наборов пакетов?


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Sovereign
Дата 6.3.2007, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 7.11.2006

Репутация: нет
Всего: 4



там в папке help есть GLSceneTraining.chm, в нем посмотри Library installation, там установка расписана, ты по ней делал?

Это сообщение отредактировал(а) Sovereign - 6.3.2007, 13:26
PM MAIL   Вверх
Moid
Дата 6.3.2007, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Нет... Я сам дирректории указывал на которые файлы ссылались при ошибки компиляции и прописывал те пути. А у этих вот не показывает ни каких файлов...
За хелп спасибо


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Moid
Дата 9.3.2007, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Цитата

там в папке help есть GLSceneTraining.chm, в нем посмотри Library installation ...

У меня нет такого файла. В этой папке лежит только GLScene.chm (хелп по компонентам).
А у тебя какая версия GLScene?


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
Moid
Дата 9.3.2007, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Если у кого такие же проблемы, то тут нашел описание инсталяции и пути для патча. Сам еще не пробовал...
http://caperaven.co.za/

Это сообщение отредактировал(а) Moid - 9.3.2007, 11:40


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0657 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.