HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Страницы (240): « Первая ... « 65 66 67 68 [69] 70 71 72 73 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
nemyax
Нёмыч

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

Рейтинг



Цитата:
Дядя Миша писал:
кстати он для блендера есть

Пожалуй, лучше в гудини пойти, где встроенный оператор Convex Decomposition порубает налиту =)

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

Старое сообщение 17-02-2020 21:23
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



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

Неаккуратные брашы - это продукт VHACD.

Вложение: collision.zip (69.0 кб)
Этот файл был скачан 57 раз.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 17-02-2020 21:49
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Вообще говоря, дефолтный патч это работа через OpenCL. Но даже при максимальных настройках оно ведёт себя странновато.
Я бы не стал заострять на этом внимание, но по сути это вообще единственное, что я смог найти. Прикладываю демку, сами попробуйте.
Столик, кстати из буллита.

Вложение: vhacd.zip (106.4 кб)
Этот файл был скачан 51 раз.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 17-02-2020 21:56
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



А вот коллизия 12 минут считалась. Ну это несеръезно.

Вложение: collision_hq.zip (93.1 кб)
Этот файл был скачан 53 раз.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 17-02-2020 22:05
-
nemyax
Нёмыч

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

Рейтинг



Обычную бсп-шинковку меша по фейсам можно приспособить для декомпозиции? Или это и есть олдовый алгоритм?

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

Старое сообщение 18-02-2020 06:12
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



nemyax да я уже думал об этом.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 18-02-2020 07:26
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Прогнал конкавные мешы через BSP-дерево. Это далеко не такое простое занятие, как может показаться. Дерево, оно же не различает где пустота, а где солид, поэтому мы на выходе очевидно имеем нарубленное конвексное пространство. И из этой кашы нам надо вычленить наш исходный меш.
Простая фильтрация точек в дерево не спасёт - точности не хватает.
Моё решение - задвинуть исходные точки полигонов внутрь, примерно на ON_EPSILON * 2, тогда в большинстве случаев референсные лифы определяется правильно. Фейл обычно наступает в случае заострённых поверхностей, ну например на приложенной карте к грешному языку прилипло два лишних браша. Для наконечников тоже есть эта проблема, но поскольку наконечники являются wrapped convex меш, то для них вызывается другой алгоритм, без декомпозиции.

Вложение: collision.zip (130.8 кб)
Этот файл был скачан 51 раз.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 19-02-2020 19:47
-
nemyax
Нёмыч

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

Рейтинг



Цитата:
Дядя Миша писал:
Дерево, оно же не различает где пустота, а где солид

Ты ведь можешь метить оригинальные фейсы, мол у меня со стороны бакфейса солидно/пусто. При разрезании это свойство унаследуется.

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

Старое сообщение 19-02-2020 20:38
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



nemyax кутришное дерево не сохраняет фейсы, да и толку мне с тех фейсов? Мне же конвексные брашы нужны, а не фейсы.

Цитата:
nemyax писал:
мол у меня со стороны бакфейса солидно/пусто

это не работает так. Это если я бы изначально фильтровал брашы в дерево.
А я сую ему вот эту кашу из полигонов и потом, получившимся деревом кромсаю браш на конвексные части. Ну как в унреале, для понимания.
Там не остаётся места для пустоты, там всё заполнено брашами. Я тоже думал, да ерунда ща определим. Весь день промудохался, пока не придумал фильтровать в дерево оригинальные плоскости, но с небольшим смещением, чтобы компенсировать потерю точности.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 19-02-2020 21:12
-
nemyax
Нёмыч

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

Рейтинг



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

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

Старое сообщение 19-02-2020 21:38
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



nemyax это только для коллизии и по желанию дизайнера.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 19-02-2020 22:19
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Утомил меня этот .ase в край. Более идиотского текстового формата я просто не видел. Там получается занятная тенденция, поскольку текстовый формат не является строгим, то каждый извращается как может.
На этом фоне .smd выглядит просто образцом стандартизации, хотя он тоже текстовый. Вот как раз потому что никакие вольности там недопустимы, даже пробелы и отступы должны совпадать. Так что финальная версия компилятора будет грузить именно .smd. А для асешек я конвертор напишу, ну оно не особо сильно нужно, скорее для обратной совместимости и тестирования.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 24-02-2020 18:56
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12893
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
На этом фоне .smd выглядит просто образцом стандартизации


Ага, только новые версии 3д пакетов его уже не поддерживают, никто не писал никаких плагинов. Разве что в блендере был экспорт в сорсовский smd.

Цитата:
Дядя Миша писал:
Прогнал конкавные мешы через BSP-дерево. Это далеко не такое простое занятие, как может показаться. Дерево, оно же не различает где пустота, а где солид, поэтому мы на выходе очевидно имеем нарубленное конвексное пространство. И из этой кашы нам надо вычленить наш исходный меш.


А по нормалям меша нельзя определить?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Отредактировано FiEctro 25-02-2020 в 09:00

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

Старое сообщение 25-02-2020 08:54
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
никто не писал никаких плагинов

Там плагин элементарно пишется за полчиса, вон Немякса спроси.

Цитата:
FiEctro писал:
А по нормалям меша нельзя определить?

В дереве используются только чётные плоскости.

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

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

Старое сообщение 25-02-2020 09:19
-
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



Smd объединяет вершины с одинаковыми координатами в одну вершину, это не круто.

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

Старое сообщение 25-02-2020 10:56
- За что?
Тема: (Опционально)
Ваш ответ:



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


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

Временная зона GMT. Текущее время 01:03. Новая тема    Ответить
Страницы (240): « Первая ... « 65 66 67 68 [69] 70 71 72 73 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

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

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

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

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