HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Как можно создать систему Parent?
?
Страницы (3): « 1 [2] 3 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



Я вот думал, в чём сложность мовевитча? Вот представим: Есть два тела, одно присобачено к другому. И чтобы они не отсоединились, надо просто смещать одно тело на столько, на сколько сместилось второе. С поворотом та же фигня... В чём сложность? Это ж легко

Сообщить модератору | IP: Записан
Сообщение: 118685

Старое сообщение 14-04-2013 09:08
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35072
Нанёс повреждений: 515 ед.
Возраст: 39

Рейтинг



Награды
 
[1 награда]


Цитата:
nemyax писал:
Матриц и преобразований не дают

Их дают в институте на первом курсе, есличё.
А школьникам незачем писать код, им надо в ВоВ играть, ну или там я не знаю, ретрибушен делать (как я в своё время)

Добавлено 14-04-2013 в 16:11:

Цитата:
ONeiLL писал:
В чём сложность?

Основная сложность - понять, куда вставлять код.
Но опять же, это зависит от того, как именно будет решаться задача.

__________________

Сообщить модератору | IP: Записан
Сообщение: 118686

Старое сообщение 14-04-2013 09:11
-
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



Цитата:
XaeroX писал:
Основная сложность - понять, куда вставлять код.
Но опять же, это зависит от того, как именно будет решаться задача

В ХЛ в какой нить тчинк? Считаем изменение поворота и положения, и применяем это ко всем присобаченным ентитям...

Сообщить модератору | IP: Записан
Сообщение: 118687

Старое сообщение 14-04-2013 09:19
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35072
Нанёс повреждений: 515 ед.
Возраст: 39

Рейтинг



Награды
 
[1 награда]


Цитата:
ONeiLL писал:
Считаем изменение поворота и положения, и применяем это ко всем присобаченным ентитям...

Наивный. А как тогда приаттаченная дверь будет блокироваться другими энтитями? Нет, там надо со скоростями работать. а не тупо изменять положение.

Добавлено 14-04-2013 в 16:22:

Да вы попробуйте, попробуйте. Тут надо не просто фантазировать, а сразу код писать и смотреть, что к чему.

__________________

Сообщить модератору | IP: Записан
Сообщение: 118688

Старое сообщение 14-04-2013 09:22
-
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



Но у себя в движке вообще очень легко делать. Я вот просто брал и объединял все тела в одно целое, и дальше физику считал уже для одного целого тела, а не для 100 приатаченых

Сообщить модератору | IP: Записан
Сообщение: 118690

Старое сообщение 14-04-2013 09:23
- За что?
nemyax
Нёмыч

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 4242

Рейтинг



Цитата:
XaeroX писал:
Их дают в институте на первом курсе, есличё.

Так то ж на технических факультетах, а не на гомо... как их там.
Парент-система разве не заключается в перемножении матриц согласно заданной иерархии?

Сообщить модератору | IP: Записан
Сообщение: 118691

Старое сообщение 14-04-2013 09:30
- За что?
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



Цитата:
XaeroX писал:
А как тогда приаттаченная дверь будет блокироваться другими энтитями? Нет, там надо со скоростями работать. а не тупо изменять положение.

Кстати есть идея запустить рекурсивно всё это дело. Создать фанк
Vector Move( Vector ololo );
Она принимает вектор, на который надо переместить тело, а возвращает значение, на которое получилось тело переместить...

C++ Source Code:
1
Vector Move( Vector ololo )
2
{
3
  int MIN;
4
  // тут надо опредилить на сколько мы можем сдвинуть тело, но я не знаю как
5
  for( int i = 1; i <= количество приатаченых ентитей, i++ )
6
    MIN = min( MIN, приатаченные[ i ]->Move() );
7
  this->origin += MIN;
8
  return MIN;
9
}

Сообщить модератору | IP: Записан
Сообщение: 118692

Старое сообщение 14-04-2013 09:36
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35072
Нанёс повреждений: 515 ед.
Возраст: 39

Рейтинг



Награды
 
[1 награда]


Цитата:
nemyax писал:
Парент-система разве не заключается в перемножении матриц согласно заданной иерархии?

Не совсем, т.к. надо взаимно учитывать колоизацию.
Цитата:
ONeiLL писал:
Она принимает вектор, на который надо переместить тело, а возвращает значение, на которое получилось тело переместить...

Молодец, а теперь реализуй это в рамках движка хл1.

Добавлено 14-04-2013 в 16:43:

Цитата:
nemyax писал:
Так то ж на технических факультетах, а не на гомо... как их там.

На естественных тоже. На гомонитарных - нет, ну так гомонитариям вообще нечего в программирование лезть, пусть там свою историю исследуют, или языкознание, или что там у них.

__________________

Сообщить модератору | IP: Записан
Сообщение: 118693

Старое сообщение 14-04-2013 09:43
-
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



Цитата:
XaeroX писал:
Молодец, а теперь реализуй это в рамках движка хл1.

Появилась одна идея...

// тут надо опредилить на сколько мы можем сдвинуть тело, но я не знаю как

вот тут перемещать тело вдоль вектора ololo на очень малую величину, пока это тело ни к чему не прикоснется.

Сообщить модератору | IP: Записан
Сообщение: 118696

Старое сообщение 14-04-2013 10:50
- За что?
Jarkoe
Deleted

Дата регистрации: Aug 2012
Проживает: (void)
Сообщений: 45
Возраст: 28

Рейтинг



Цитата:
-=DrTressi=- писал:
Jarkoe Навряд-ли в этих древних модах были парент-системы. Там либо всё грамотно в оригинале сделано, либо Спирит. На спирите там либо Мовевитч, либо Моушн_менеджер.



http://www.youtube.com/watch?v=hmUQ...eature=youtu.be

А это что?

Сообщить модератору | IP: Записан
Сообщение: 118697

Старое сообщение 14-04-2013 10:54
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35072
Нанёс повреждений: 515 ед.
Возраст: 39

Рейтинг



Награды
 
[1 награда]


Jarkoe
Вероятно, это таки уже спирит.

__________________

Сообщить модератору | IP: Записан
Сообщение: 118699

Старое сообщение 14-04-2013 10:59
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6880
Возраст: 34

Рейтинг



Цитата:
-=DrTressi=- писал:
Там либо всё грамотно в оригинале сделано, либо Спирит.

Выдержка из readme этого мода, прошу прощения за проблемы с кодировкой:
Цитата:
Efekty ohnщ a kouшщ(Vytvoшeno pro SIC, Zaloћeno na engine spirit of Half-life 1.2)

Вот тут как бы гадания и заканчиваются.
Jarkoe если уж так охота собственную парент-систему, то поищи старый-старый Дядь Мишин тутор по Xash MoveWith System. Там описано что куда вставлять, так сказать принцип поймёшь. ИМХО, у тебя слишком много времени уйдёт на написание этой системы. Лучше возьми готовый тулкит (спирит 1.2, спирит 1.9 или ксашмод) и делай мод в своё удовольствие. Если всё-таки хочешь что-то действительно хорошее в этом плане (для самообразования), то лучше делать свой собственный движок или модифицировать чужой (у нас тут на форуме есть один, очень похож на халфовский ).

Сообщить модератору | IP: Записан
Сообщение: 118701

Старое сообщение 14-04-2013 11:51
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35072
Нанёс повреждений: 515 ед.
Возраст: 39

Рейтинг



Награды
 
[1 награда]


Если хочешь что-то освоить - напиши код сам, тут без вариантов.

__________________

Сообщить модератору | IP: Записан
Сообщение: 118702

Старое сообщение 14-04-2013 12:06
-
ONeiLL
CrazyUkrainian

Дата регистрации: Dec 2011
Проживает: Украина, Житомир
Сообщений: 562
Возраст: 27

Рейтинг



http://hlfx.ru/forum/showthread.php...MoveWith+System
Я так понял что этот мовевитч такой как я писал(тоесть без учёта колоизации)?

Сообщить модератору | IP: Записан
Сообщение: 118703

Старое сообщение 14-04-2013 12:07
- За что?
pRoxxx
Житель форума

Дата регистрации: Jan 2011
Проживает: UA DP
Сообщений: 360
Возраст: 34

Рейтинг



Цитата:
ONeiLL писал:
Я вот думал, в чём сложность мовевитча? Вот представим: Есть два тела, одно присобачено к другому. И чтобы они не отсоединились, надо просто смещать одно тело на столько, на сколько сместилось второе. С поворотом та же фигня... В чём сложность? Это ж легко

Это конечно всё хорошо, но допустим кто то присабачил функ_валл. Сместить его оригин не составит труда, а вот повернешь ты из под халфы как? pev->angles будет его крутить вокруг его оригина который находиться в точке 0,0,0.

Сообщить модератору | IP: Записан
Сообщение: 118704

Старое сообщение 14-04-2013 12:19
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 00:13. Новая тема    Ответить
Страницы (3): « 1 [2] 3 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Как можно создать систему Parent?
?
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024