Название: как расставить маркеры по карте типа? Отправлено: Patiffonka от 06 Января 2010, 10:28:17 Каким образом можно привязать 2d text к 3д координатам. Идея в том, что на карте городка при виде сверху должны включаться номера домов над крышами. 3д текст сильно перегрузит сцену.. текстура с альфа каналом на плэйн тоже не катит, домов больше 500.. текстуры рисовать долго.. идеальный вариант привязать 2дтекст к объекту сцены.
Название: Re: как расставить маркеры по карте типа? Отправлено: DimiS от 06 Января 2010, 22:36:02 ну в общих чертах у меня бы это выглядело так:
имея 3д координаты каждого нужного мне объекта, я бы добавлял к ним некую константную высоту, ну например +10 по y координате. Далее, у вектор оператора имеется функция проэцирования 3д координаты на экран, ориентируясь на эту координату +-ширина текста рисуем необходимый текст с помощью ченела TextOut. при большом количестве обращений к ТекстАуту предрекаю тормоза, но сделай для начала так, потом думаю разберёшься как и чо подправить. Название: Re: как расставить маркеры по карте типа? Отправлено: Patiffonka от 07 Января 2010, 12:07:13 Спасибо!! )) Сам бы не дошел.. как добью, так напишу как сделал. ))
Название: Re: как расставить маркеры по карте типа? Отправлено: Patiffonka от 07 Января 2010, 19:33:20 вот впринципе и справился, только я вместо текстаута расставил кнопки, с которых можно посмотреть информацию о здании. вопрос на засыпку. когда используется zoom factor на камере, позиция кнопки смещается (( как бы придумать формулу, которая будет подгонять вектор с учетом зум фактора?
Название: Re: как расставить маркеры по карте типа? Отправлено: Patiffonka от 09 Января 2010, 16:43:19 Для улучшения производительности судя по всему, удобнее всего использовать Quest3d Text вместо TextOut. Ивозможностей побольше и требования поменьше. А в качестве кнопки его можно юзать с помощью DetectMouseCollision.
|