Всем привет.Если не в фотошопе.В смысле из текстового файла.Т.к.они в основном наклонные ,то 3d text in texture не подходит.Получается для каждой буквы в максе делать отдельный плейн ,затем ref object data и ref texture(oo) и еще объединять для слова object data.Может у кого нибудь есть решение попроще,побыстрее. Подскажите или намекните:)
ЦитироватьТ.к.они в основном наклонные ,то 3d text in texture не подходит.
Почему не подходит?
создаёшь текстурку с наклонными символами и мапишь в канале TexturePropertis каждую букву. (текст в текстуре я делал прогой ТекстурФонтБилдер за 1 минуту, а мапил примерно час).
Если текст нужен на ГУИ а не на поверхности например 3D консоли (терминал оплаты), то всё прекрасно делается обычным текстаутом.
Если в строке одновременно встречаются наклонные и обычные символы, тонужно измудриться. яб написал свой канал представления текста.
Но как nы корректировал расстоянме между буквами?Например буквы"а" и "б".В наклонном шрифте если сначала б потом а,то хвостик б выходит за начало а, а в Texture Properties прямоугольники.Ладно,давно пора разобраться с каналами, а точнее с с++.
А что мешает собрать конструкцию, типа textOut -->> RTT, а потом накладывать полученную текстуру на плоскость ?
Быстрее же взывать одну плоскость на строку/колонку, чем на каждый символ. ???
anvalЦитироватьНо как nы корректировал расстоянме между буквами?Например буквы"а" и "б".В наклонном шрифте если сначала б потом а,то хвостик б выходит за начало а
текстурку надо делалать Фонт Билдером (там букоски не заходят, и прямоугольнички описывающие буковки не пересекаются).
dfxЦитироватьА что мешает собрать конструкцию, типа textOut -->> RTT, а потом накладывать полученную текстуру на плоскость ?
системка,если на её основе делать текст в гуи - не благодарная работа.
ЦитироватьБыстрее же взывать одну плоскость на строку/колонку, чем на каждый символ.
на спичках не экономят, гуи никогда не был узким местом.
быстрее в случаях не частого использования , а если придётся делать нечто вроде бегущей строки, или Эдит бокса
это окажется даже медленнее.
про буковки и прямоугольнички... :)
еа форуме нет места разместить картинку
так вот: чтобы сделать текстуру шрифта нужно использовать программу Bitmap Font Builder для того чтобы не было как на картинке
на этапе отображения используй 3dTextOut по адресу:
Templates->02 Objects -> Text -> 2d text from Texture
У канала 3D text from texture есть чилдрен (второй по счёту)
который обуславливает рассстояние между буковками.
это растояние в твоём случае нужно сделать отрицательным (-0,1 например)
и будет именно такой шрифт как у тебя на картинке
Проде
Цитироватьна спичках не экономят, гуи никогда не был узким местом.
Это зависит от задачи. Например квестовый гуи не быстрый и его можно использовать только для простых случаев. Если нужны списки с картинками, всплывающие меню с иконками+текст, всплывающие подсказки и т.д., то возникнут проблемы.
Можно вообще запекать текст в изображение элемента при его инициализации, если он статичный.
Цитировать
быстрее в случаях не частого использования , а если придётся делать нечто вроде бегущей строки, или Эдит бокса
это окажется даже медленнее.
В обоих случаях это зависит от площади, занимаемой им на экране и объема текста. В первом случае обновлять текстуру можно по событию изменения текста или в режиме редактирования вообще выводить его напрямую с ртт. Во втором имеем даже более гладкую анимацию, просто смещая текстурные координаты. Конечно, в случае, если строка очень большая, то могут возникнуть проблемы.
Вариантов решения масса, т.ч. как удобнее/быстрее/красивее, так и делайте)