Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / [Решено] Забуксовал на школьной математике (5 стр)

[Решено] Забуксовал на школьной математике (5 стр)

Поделиться
Advanced: Тема повышенной сложности или важная.

Страницы: 1 2 3 4 5

foxesПостоялецwww29 окт. 201721:38#60
MrShoor
> Я могу создать отдельный тред для этого.
Его удалят из за разборки.
А это то что касается моих коллег.
> Просто хотел сказать, что я о тебе наслышан и мне досталось по наследству твоё творение core3d :) довольно мощная система. Я, как молодой специалист, получил из неё много хорошего опыта!
> Ну я про систему и связь не знаю.. Я в 15 году только пришёл уже в Рти, офис на Электрозаводской.. Так как я ещё студент был 5 курса и у меня не было опыта, меня поставили под руководства Германова. На тот момент по 3д могли хоть что-то сделать Осипов миша, Германов и Кисляков(его ты тоже вроде застал) ещё один парень был, но он новым движком занимается и с гиптом не работает. Потом Осипов уволился, потом Кисляков, и недавно Германов. И на поддержании гипта сейчас я один.
И такое от каждой фирмы. Соответствия этих слов действительности может спросит у Wat-a. Не говоря уже о переписке с текущими командами с которыми я познакомился в тех же самых фирмах откуда я якобы уволился из за булинга с ихней стороны.

Правка: 29 окт. 2017 21:49

MrShoorУчастникwww29 окт. 201722:00#61
foxes
> Его удалят из за разборки.
Я тебе не разборки предлагаю, а оффтопный диалог этот перенести туда.

foxes
> А это то что касается моих коллег.
То, что ты показываешь - это профессиональные качества, к коим у меня вопросов нет. Я же говорил про личностные. Короче заканчиваем оффтопить тут. Все дальнейшие посты на тему foxes как личность я буду безжалостно тереть.

MrShoorУчастникwww31 окт. 20173:10#62
FordPerfect
В общем твой вариант с весами не вышло опробовать, но я таки завел свой вариант, и он заработал как надо:
+ Показать

А принцип у меня такой.
За основу я взял твою идею: сначала посчитать просто барицентрические координаты, а потом добавить по чуть-чуть в зависимости от близости к грани. Осталось найти сколько это чуть-чуть.
Поэтому сначала я ищу выталкивающий вектор, а потом 2 точки пересечения прямой, лежащей на векторе с:
1. Гранью по которой выталкиваем
2. Окружностью (дальней точкой из двух)
На рисунке искомый сегмент отмечен красным:
+ Показать

Ну а потом зная длину красного сегмента уже не проблема посчитать насколько надо сдвинуть точку. Код конечно вышел так себе (там и нахождения центра окружности, и решение квадратного уравнения, и пересечение сегментов), но проще что-то не могу придумать.
Вот собственно код:
+ Показать

EvalOffset считает этот самый красный отрезочек а EvalPos двигает в соответствии с весом + обрабатывает граничные случаи.

С твоим вариантом я покрутил, и меня не устраивает топология для тупоугольных треугольников. Оно некисло так будет смещать вершины, сильно растягивая в некоторых местах треугольники. Ну то есть смещать надо полюбому по векторам, которые как я описал (а не по нормали к грани).

Ах, да, и спасибо за идеи.

Правка: 31 окт. 2017 3:18

Страницы: 1 2 3 4 5

/ Форум / Программирование игр / Общее

2001—2017 © GameDev.ru — Разработка игр