Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.08.18;
Скачать: CL | DM;

Вниз

Ищу программиста, для разовой работы   Найти похожие ветки 

 
@!!ex ©   (2013-03-15 12:33) [0]

Есть регулярная сетка:
http://www.gamedev.ru/files/images/84864_1358958647_m1.jpg

На нее наложены треугольники. Композиция треугольников не предсказуема. Единственное что точно известно - треугольники не заходят за край сетки.
http://www.gamedev.ru/files/images/84865_1358958655_m2.jpg

Необходимо сгенерировать стыковочный меш(отмечен зеленым), который соединит треугольники с регулярной сеткой:
http://www.gamedev.ru/files/images/m3.jpg

Собственно нужна функция, которые будет принимать на входе набор точек задающих регулярную сетку и набор треугольников и выдавать набор стыковочных треугольников.
Все это в 2D.

Естественно не бесплатно.


 
Ega23 ©   (2013-03-15 12:42) [1]

Казармы в СтарКрафте строить собрался?


 
@!!ex ©   (2013-03-15 12:49) [2]

В данном случае задача относится к разрабатываемому мной редактору ландшафтов(http://youtu.be/2WHOZO9bX0o), и ее решение необходимо для склейки дорог, площадей и прочей геометрии и карты высот.

Задача достаточно сложная и, к сожалению, на данный момент моей математической подготовки не хватает, чтобы ее полноценно решить.


 
O'ShinW ©   (2013-03-15 13:05) [3]


> http://youtu.be/2WHOZO9bX0o

вау.. Ты крут (если сам написал все это)


 
O'ShinW ©   (2013-03-15 13:15) [4]

Основной критерий - Скорость?

зы
так понимаю, в 3 ошибочка, правильно так?
http://www.fotolink.su/v.php?id=258cb6253847e338fe98c486b3821181
придирка, просто для ясности


 
@!!ex ©   (2013-03-15 13:34) [5]

Все самописное. Вот только склейку не могу осилить.
Ну естественно кроме контролов. Контроллов всего три штуки пришлось самому писать.

> Основной критерий - Скорость?
Основной критерий - чтобы работало. :) Конечно, в идеале получить систему, которая бы в реалтайме строила склейке, прямо непосредстенно во время редактирования дорог. Но даже если склейки будет отдельной достаточно долго операцией - это все равно лучше чем ее полное отсутствие.

> так понимаю, в 3 ошибочка, правильно так?
да, верно. допустил косяк, когда рисовал пример.


 
Kerk ©   (2013-03-15 13:38) [6]

Круто, круто. На видео очень солидно выглядит.
Успехов в поисках исполнителя, сам не очень силен в математике.


 
БарЛог ©   (2013-03-15 14:12) [7]

Круть!


 
O'ShinW ©   (2013-03-15 14:18) [8]


> Все самописное.

Молодец!


> Основной критерий - чтобы работало. :)

Хороший критерий :)

1. белые треугольники - они имеют в вершинах дробные координаты?
2. зачем квадраты координатной сетки разбиты на 2 треугольника?


 
Ega23 ©   (2013-03-15 14:21) [9]


> к разрабатываемому мной редактору ландшафтов


Солидно выглядит. Очень.
Успехов!


 
O'ShinW ©   (2013-03-15 14:27) [10]


> 1. белые треугольники - они имеют в вершинах дробные координаты?

видимо, да.
И в общем случае, всеми тремя вершинами могут быть не в узле.
А сопряженные, видимо, хотя бы одной вершиной в узле


> 2. зачем квадраты координатной сетки разбиты на 2 треугольника?

? открыт :)


 
MBo ©   (2013-03-15 14:29) [11]

Вот это не смотрел? http://www.cs.cmu.edu/~quake/triangle.html
Твой случай относится к constrained  триангуляции


 
xayam ©   (2013-03-15 14:30) [12]


> > 2. зачем квадраты координатной сетки разбиты на 2 треугольника?
> ? открыт :)

сетка на вход подаётся в треугольниках?


 
@!!ex ©   (2013-03-15 14:52) [13]

Парни, спасибо за поддержку, приятно читать такое от почитаемых людей.

> белые треугольники - они имеют в вершинах дробные координаты?
да.

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

> Вот это не смотрел? http://www.cs.cmu.edu/~quake/triangle.html
> Твой случай относится к constrained  триангуляции
Не смотрел. Спасибо за наводку, почитаю.


 
Empleado ©   (2013-03-15 15:33) [14]


> @!!ex ©   (15.03.13 12:33)  

Gooood!


 
Лукошко   (2013-03-15 15:35) [15]


> @!!ex ©   (15.03.13 12:49) [2]

Огромное количество человекочасов, вы молодец!


 
icelex ©   (2013-03-15 15:47) [16]

Совсем круто! Больше всего мне понравилось, как лес посадили. Еще таким темпом дома настроить и сынов народить... И задача на 500 реинкарнаций вперед выполнена :)))


 
xayam ©   (2013-03-15 16:06) [17]


> выдавать набор стыковочных треугольников

с алгоритмом интересно, какой подход лучше использовать?
для простоты на входе - точки периметра белого объекта (1)
на выходе - огибающий зеленый квадратичный периметр (2) и соответствие "многое-ко-многим" между (2)<->(1) для треугольников

проблема видно не в (2), а как раз в (2)<->(1)
в общем виде наверное сложно решить...


 
xayam ©   (2013-03-15 17:26) [18]

примерно так

http://ic.pics.livejournal.com/xayam/26173943/16820/16820_original.png


 
O'ShinW ©   (2013-03-15 17:49) [19]


> в общем виде наверное сложно решить...

не должно

1ш. Полное ребро координатного квадрата - всегда сторона сопряженного треугольника.
Далее из мн-ва вершин белых треугольников выбираем ближайшую к этому отрезку-стороне точку - это третья вершина сопряженного треугольника.

2ш. берем соседнее Полное ребро координатного квадрата , повторяем.

Если треугольники не соприкасаются (не к одной точке), значит на белой фигуре остались еще точки, между теми двумя, к которым мы провели вершины.
Тогда тупо - добиваем из них отрезками до треугольников.

http://www.fotolink.su/v.php?id=0926e2716dd89214f0455ade7c902090
пример:
1. Красное - объединение белых треугольников
2. Синие и более синее :) - два шага из алгоритма
3. Зеленое- добиваем до треугольников промежуток.

4. зеленое штрих - если точек между вершинами Синих треугольников окажется больше чем одна - тоже добиваем.


 
alexdn ©   (2013-03-15 19:54) [20]

А что за графический движек интересно использовался?..


 
@!!ex ©   (2013-03-15 20:01) [21]

Где использовался?


 
@!!ex ©   (2013-03-15 20:05) [22]

Если речь о редакторе, то там все самописное. в том числе и рендер.


 
robt   (2013-03-15 20:30) [23]


> alexdn ©   (15.03.13 19:54) [20]

почему в принципе, должен быть какой то движок? у тебя явный синдром батонокидателя


 
@!!ex ©   (2013-03-15 20:40) [24]

> MBo ©   (15.03.13 14:29) [11]
> Вот это не смотрел? http://www.cs.cmu.edu/~quake/triangle.html
> Твой случай относится к constrained  триангуляции
Ознакомился с теорией. Либа делает именно то что мне нужно. Осталось теперь интегрировать ее и проверить на практике.


 
asail ©   (2013-03-15 23:04) [25]


> @!!ex ©   (15.03.13 12:49) [2]
> В данном случае задача относится к разрабатываемому мной
> редактору ландшафтов(http://youtu.be/2WHOZO9bX0o),

Красива, однако...


 
robt   (2013-03-16 13:25) [26]


> Красива, однако...

остался вопрос а нафига ?


 
alexdn ©   (2013-03-16 13:28) [27]

> robt   (16.03.13 13:25) [26]
> остался вопрос а нафига ?
+1 Это интересно для игры какой то, или для картографических работ?


 
DVM ©   (2013-03-16 14:41) [28]


> alexdn ©   (16.03.13 13:28) [27]


> или для картографических работ?

Смеетесь что ли? Ландшафты менять? Конечно это для игр.


 
clickmaker ©   (2013-03-16 14:50) [29]

> Ландшафты менять? Конечно это для игр.

Ну почему только для игр? "Пока противник рисует карту наступления, мы меняем ландшафты, причём вручную" (c)


 
@!!ex ©   (2013-03-16 16:08) [30]

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

Редактор планируется использовать в нескольких своих проектах, на работе и опубликовать его для использования сторонними разработчиками.


 
@!!ex ©   (2013-03-16 16:20) [31]

одна из областей применения - создание ландшафтов для стрелкового комплекса Страйкер, который работает на моем движке:
http://www.youtube.com/watch?v=aeSOLJnw8p4

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


 
Eraser ©   (2013-03-16 22:37) [32]


> @!!ex ©  

оффтоп.
граф. движок это очень круто, единственное что могу сказать - нужно делать сразу кроссплатформенно, чтобы легко было портировать на всякие Mac OS, iOS, андройд и т.п. это в разы увеличит ценность проекта.


 
@!!ex ©   (2013-03-17 12:29) [33]

В целом вопрос можно считать закрытым. Triangle не плохо показал себя на тестах, буду интегрировать.

> нужно делать сразу кроссплатформенно
Редактор нет никакого смысла портировать на тот же Андроид. да и интерфейс на ПК и мобильных платформах сильно разный.
Плюс проблема с портированием - система плагинов. Большая часть работы редактора вынесена в плагины, чтобы дать пользователю больший контроль над редактором, дать возможность создавать свои инструменты, кисти и форматы файлов.
Да и не нужен редактор нигде кроме Windows, во всяком случае пока. Это же инструмент для очень ограниченного круга пользователей, которые в силу специфики профессии почти всегда работают под виндой.

Страйкер портировать также не имеет никакого смысла. Это сложный АПК, опять же модульный и заточенный на работу на мощных ПК. У нас уже несколько лет висит на сайте текст вида "возможно доработка для Linux и Mac OS", но народ к этому не стремится. Дешевле купить лицензию винды, чем заказывать нам портирование. Тем более стоимость лицензии винды - это даже не 1% от стоимости комплекса.

Проектов на ПК, которые бы имело смысл делать кроссплатформенными у меня просто нет.
А сделать кроссплатформу ПК<->Мобильные устройства настолько сложно, что разработка двух отдельных движков представляется более адекватной идеей.


 
Eraser ©   (2013-03-17 12:51) [34]


> @!!ex ©   (17.03.13 12:29) [33]

да я скорее не про редактор и конечные продукты, про движок.



Страницы: 1 вся ветка

Текущий архив: 2013.08.18;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.009 c
2-1355292341
Medoed
2012-12-12 10:05
2013.08.18
Как закодировать файл в base64


15-1363079964
картман
2013-03-12 13:19
2013.08.18
как пишется


3-1292346820
megavoid
2010-12-14 20:13
2013.08.18
[D2010] Магия мыши в TSQLQuery + DateTimePicker


3-1292399636
tadalex
2010-12-15 10:53
2013.08.18
Латвийская кодировка


3-1292341059
noob_one
2010-12-14 18:37
2013.08.18
Почему может не отрабатывать Filter в IBQuery?