 |
27.01.2009, 14:25
|
#376
|
|
Ответ: Sigel
надо юзать морфинг нескольких анимаций для такого, а не анимацию отдельных костей
|
|
|
27.01.2009, 14:33
|
#377
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Sigel
морфинг (блендинг) это для плавного перехода от одной анимации - к другой.
а анимировать разные части тела по разному - тоже надо
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
27.01.2009, 14:40
|
#378
|
|
Ответ: Sigel
HolyDel
ну вот анимируешь ты отдельно только верх анимацией стрельбы и только низ анимацией бега
и сойденяешь эти две анимации, по-сути результат тоже самое что отдельная анимация для костей, но качество лутче
ps. посмотри либу cal3d https://gna.org/projects/cal3d/
|
|
|
Сообщение было полезно следующим пользователям:
|
|
27.01.2009, 20:29
|
#379
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Ответ: Sigel
я имел ввиду взять алгоритм анимирования у блитца
Он очень быстрый (раз в 300 быстрее чем в ксорсе, например)
Исходники доступны, расковырять, добавить нужные фичи чтобы не изобретать очередной велосипед
__________________
|
(Offline)
|
|
28.01.2009, 02:17
|
#380
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Sigel
Олег, насчёт общего скелета, как ты привёл пример - это слишком, ладно общий скелет для всех птиц, с разной геометрией, или для всех разных гномов - это да.
Я понимаю, ты клонишь к идее загрузки анимации отдельным частям/группам_костей? Я считаю это наоборот муторности в некотором роде, да и файл анимации это не каждый фрейм, поэтому тут не много места.
Насчёт анимирования костей, и их наследников соответственно, я в самом начале сказал, но могу немного дополнить.
У меня в голове 2 идеи, вторая требует дополнительной туулзы, но и результат в несколько раз лучше, правдо это и посложнее в разы.
Начну с первой идеи, всё просто: когда указываешь отдельно кости другую анимацию, все её дети тоже наследуют это, но от кости можно получить по индексу, какой секьюэнс (анимацаия) играется на ней, и сколько их наложено, всегда будет минимум одна - та что всей модели (если не стоп стоит на всю модель), накладывая дополнительную анимацию, будет уже 2 анимации, при этом изначально, коэфицент применения 100%, поэтому и просчитывать будет только эту наложенную (оптимизация, ну это и так понятно), но тут главная мысль в чём. Кости можно указать силу применения 0.0-1.0 на любой индекс наложенной анимации, К примеру первая анимация (ну та что на всю модель), как и все наложенные 1.0, а наложив вторую, мы некоторым костям указываем ниже 1.0, к примеру одной из кости 0.5, таким образом на эту кость будет применено 50% изначальной и 50% новой анимации. Таким образом плавный переход. Скажи это технически возможно (думаю да, но не совсем просто), и второе, не будет ли это сильно потреблять ресурсы?
Вторая идея, исходит из первой, но более продвинута и удобна. Заключается она в том, что группы для анимации, мы указываем в специальной туулзе заранее. К примеру представь, мы загружаем только сделанную модель со скелетом, предположим простой конь, далее в туулзе мы видим список, в котором одна группа - весь скелет, создаём новую группу, и выделяем кости для головы, и тем что на шее, указываем уже коэффиценты пониже, визуально очень удобно отобразить по цвету вершин: зелёные - те что пренадлежат группе; крастные - те что не пренадлижат; и частичные переходы от коэффицента. Далее в коде будет только возможность получения этих групп сделанных в этой туулзе, которую кстати под 3д макс написать это по сути не слишком сложно, просто новый параметр классу кости, визуализирование, и использование этого для экспортинга (макс скрипт такой уровень доступа думаю потдерживает). Получая в коде группы (нулевая по дефолту - весь скелет), мы можем применять анимацию чисто группам. Этот варриант меня привлекает, т.к. даст реальную динамику в анимации, и очень неплохую при этом, к примеру анимирование рук по отдельности, и головы, рта (речь, хотя тут если речь, то программно юзая функции звуковых движков, для динамики), и запястий с пальцами, короче говоря это даст неслабый функционал анимации в движке. jimon, по сути это и есть морфинг, так?
Что думаете?
|
(Offline)
|
|
29.01.2009, 23:02
|
#381
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Sigel
вот демка.
стрелки вправо-влево - менять сцену (рисующийся примитив)
стрелки вверх - вниз - менять число примитивов рисующихся за раз.
пробел - заморозить сцену (т.е. рисоваться будет одна и та же картина)
таб - менять режим блендинга между обычным и аддиативным.
когда выйдите из программы - будет готов файл infospeed.txt, мне бы хотелось видеть его содержимое.
вот мой результат:
CPU: 2261 MHz.
Memory:1054 of 2047
VENDOR:NVIDIA Corporation
RENDERER:GeForce 9600M GS/PCI/SSE2
VERSION:2.1.2
Video mode:
Screen Width:640
Screen Height:480
Screen Depth:32
Screen Mode:2
FSAA :16x
Simple Lines :0.275716
Solid Rects :0.309157
Solid Ovals :2.7693
Rounded Rects :2.15428
Width Lines :0.516317
Width, Rounded lines :1.23561
Void Rects :0.303669
Void Ovals :2.75272
|
|
(Offline)
|
|
29.01.2009, 23:42
|
#382
|
|
Ответ: Sigel
вот :
CPU: 2999 MHz.
Memory:1405 of 2047
VENDOR:NVIDIA Corporation
RENDERER:GeForce 9600 GT/PCI/SSE2
VERSION:3.0 NVIDIA 181.00
Video mode:
Screen Width:640
Screen Height:480
Screen Depth:32
Screen Mode:2
FSAA :0x
Simple Lines :0.169069
Solid Rects :0.189563
Solid Ovals :1.7903
Rounded Rects :1.29214
Width Lines :0.28471
Width, Rounded lines :0.779322
Void Rects :0.185306
Void Ovals :1.73912
|
|
|
|
Сообщение было полезно следующим пользователям:
|
|
29.01.2009, 23:43
|
#383
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Sigel
jimon, спасибо!
|
(Offline)
|
|
30.01.2009, 00:00
|
#384
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,743
Написано 5,461 полезных сообщений (для 15,676 пользователей)
|
Ответ: Sigel
Сообщение от jimon
HolyDel
ну вот анимируешь ты отдельно только верх анимацией стрельбы и только низ анимацией бега
и сойденяешь эти две анимации, по-сути результат тоже самое что отдельная анимация для костей, но качество лутче
ps. посмотри либу cal3d https://gna.org/projects/cal3d/
|
Ненене, а если надо внезапно поменять анимацию ногам на прыжок, а рукам оставить стрельбу? Морфинг тут не покатит
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
30.01.2009, 01:52
|
#385
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Sigel
CPU: 3300 MHz.
Memory:2047 of 2047
VENDOR:NVIDIA Corporation
RENDERER:GeForce 8800 GT/PCI/SSE2/3DNOW!
VERSION:2.1.2
Video mode:
Screen Width:1280
Screen Height:1024
Screen Depth:32
Screen Mode:1
FSAA :0x
Simple Lines :0.273832
Solid Rects :0.305111
Solid Ovals :1.94083
Rounded Rects :1.44492
Width Lines :0.388358
Width, Rounded lines :0.925493
Void Rects :0.305494
Void Ovals :1.9416
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
30.01.2009, 02:27
|
#386
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Sigel
Олег, слушай, я сижу щас в последнее время на Mac'ах, они как тебе известно чисто на OpenGL, есть ли у тебя возможность чтонибудь скомпилить под Mac? Я с удовольствием затещу на 2 системах, eMac (1.25 GHz PowerPC G4; 512+256 DDR SDRAM; AGP ATI 32Mb (больше инфы о видяхи не нашёл)), и второй, это MacBook (Intel Core 2 Duo 2.0 GHz, 1066MHz fb; 1Gb DDR3 SDRAM; NVIDIA GeForce 9400M, 256MB DDR3 SDRAM).
Могу на обоих тестить.
В общем если есть возможность, я с радостью!
|
(Offline)
|
|
30.01.2009, 02:32
|
#387
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Sigel
MoKa, к сожалению у меня нет мака, чтобы можно было под него компилить. Естественно, без доработок не получится взять и просто собрать под другой осью.
щас я качаю образ MacOS, работающий через VMWare 6. Посмотрим что из етого получится )) Литература по разработке OpenGL приложений на MacOS у мну есть (бумажная).
Последний раз редактировалось HolyDel, 30.01.2009 в 02:48.
|
(Offline)
|
|
30.01.2009, 02:35
|
#388
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Sigel
HolyDel, это понятно, но я надеюсь ты не будешь упускать весь потенциал OpenGL в области мультиплатформенности? Да и по сути, мне кажется глубже чем инициализация окна, работа с ним, и FullScreen - разница не пойдёт. Как думаешь?
|
(Offline)
|
|
30.01.2009, 02:53
|
#389
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Sigel
думаю еще ввод, инициализация рсширений, подключение либ прийдется менять (bass, physx, lua) все они рабоают под макосью, но, думаю поключение их прийдется менять.
|
(Offline)
|
|
30.01.2009, 03:21
|
#390
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Sigel
Хм, это видно немало работы.. Вопрос, если не сделать импорт сейчас, потом будет геморнее? Просто интерестно, понимаю что возможности нет, но всёже. 
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:21.
|