forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Динамичный текст... (http://forum.boolean.name/showthread.php?t=6083)

Alex_Noc 06.07.2008 12:57

Динамичный текст...
 
Ребята всем привет.
Вот возникла потребность в "прилинковывании" текста к анимированному обьекту.
Вобщем в течении моих проб реалитзации данной проблемы понял вот что.
Текст может двигаться - НО помоему только с помощью мыши( mousex() 2D координат.)
перемещение путем entityX(obj) не работает. опишу вкратце того как собственно должно получиться. Вобщем у меня есть динамичное меню которое при вызове выезжает из-за края экрана и реализовано с помощью анимированного билборда.
само это меню имеет 3 ползунка которыми меняем цвет обьектов. ползунки прилинкованы к билборду меню мувяться по клику и перемещению мыши. Так проблема в точ что текст который я хочу прилинковать к данному меню - должен будет показывать значения цветов R.G.B. На данный момент есть мысли черезжопного решения задачи. Это считать числовой параметр из переменной и превращать его в текст - далее читаем символы каждый в отдельности . К меню прилинковать билборды с анимированной текстурой. Ну и крутить кадры сооветственно значению (сама текстура нарисовать 0-9 картинки).
Надеюсь что есть более простой способ реализации данной задачи. Спасибо заранее ;)

ABTOMAT 06.07.2008 16:19

Ответ: Динамичный текст...
 
Если честно, я не особо понял что требуется...
Цитата:

перемещение путем entityX(obj) не работает.
вот тут ты про что?

Alex_Noc 06.07.2008 18:36

Ответ: Динамичный текст...
 
про позицию кости bone=findchild (anim_model,"bone_menu")
text 0,entityy(bone),"когда наконец этот баг решитсо" <--- так не пашед
еще тут вот вопросец назрел - просьба знающих людей обьясните пожалуйста все значения функции Copyrect , и буфера с которыми нужно работать
А то весь день уже страдаю и ниче путного . Вобющем решил получить текстуру но чтобы была альфа решил сначала сделать имагу с черным фоном Drawimagerect
а потом ее в текстуру записать. Но проблема в том что не понимаю всех значений Copyrect уже все перепробовал какие токо цифры там не писал -
вобщем текстуру создал 100 на 100
имагу создал 30 на 30

Function DrawTextToTexture (entity,tex)
SetBuffer ImageBuffer (img_r)
Cls
Color 255,0,0
Text 0,0,Colors(count_color,0) Color 0,255,0
Text 15,0,Colors(count_color,1) Color 0,0,255
Text 0,10,Colors(count_color,2) Color 250,250,250
SetBuffer FrontBuffer()
DrawImageRect Img_R,0,0,0,0,30,30
CopyRect(0,0,100,100,30,30,FrontBuffer(),TextureBu ffer(tex))
EntityTexture entity,tex
SetBuffer BackBuffer()
End Function

вот то что накалякал но не пашед :( как надо потому что в другой позиции копиректиться меняю позщицию стает все черное.Памагайте плиз.
Опишите поподробнее все значения копиректа.

ABTOMAT 06.07.2008 18:45

Ответ: Динамичный текст...
 
Цитата:

text 0,entityy(bone),"когда наконец этот баг решитсо" <--- так не пашед
а так не пробовал?

Код:

CameraProject camera, EntityX(bone), EntityY(bone), EntityZ(bone)
Text ProjectedX(),ProjectedY(), "баг решилсо"


Alex_Noc 06.07.2008 18:58

Ответ: Динамичный текст...
 
так пробовал но баг не решилсо :)

FrankH 06.07.2008 19:37

Ответ: Динамичный текст...
 
Честно признаюсь, тоже не "вьехал" в суть проблемы, сначала не работает ЕнтитиХ, потом оказывается что используются кости.. Зачем же кости, если все и без них можно сделать, и будет все работать.
Если нужно вывести текст в 3д, то можно использовать и прокрутку текстуры(как автор сказал), или проще но тормознее выводить текст в текстуру и при изменении бегунков перепечатывать его.

Alex_Noc 06.07.2008 19:52

Ответ: Динамичный текст...
 
так что тут непонятного :
Есть анимированое меню - это меню изменения цветов выделенного обьекта.
можно канешно тупо в уголке где то "вне" меню написать значения RGB и не париться.
Но мне нужно чтобы это значение было "вместе" с меню. Что бы эти значения выезжали вместе с менюшкой и имели как бы фиксированную постоянную позицию в области этой менюшки , а т.е чтобы скраю от каждой шкалы было значение текуших цветов.
и если я закрываю меню (а оно тоже анимированное) то текст заезжал бы также как и меню (но не меняя позиции ВНУТРИ меню)
т.е был "как бы"прилинкован к этому меню. прикрепи к сфере кубик и мувь сферу - увидишь что кубик будет двигаться не меняя позицию - вот так же мне нужно но с текстом. Надеюсь доходчиво :)

FrankH 06.07.2008 20:22

Ответ: Динамичный текст...
 
Если припаррентить к меню не выходит, то подсказать что-либо без примера не могу.
CopyRect
src_x,src_y,src_width,src_height,dest_x,dest_y,[src_buffer],[dest_buffer]
Parameters

src_x = х координата с которой начинать копировать
src_y = у
координата с которой начинать копировать
src_width = ширина копируемого участка
src_height = высота
копируемого участка
dest_x = координата х в которую копируешь
dest_y =
координата у в которую копируешь
src_buffer = буффер-источник (optional)
dest_buffer = буффер-цель (optional)

Alex_Noc 06.07.2008 20:40

Ответ: Динамичный текст...
 
мда .. этот пост видел и это Макса ответ(MOKA) но описано не понятно координата х в которую копируешь????? не понимаю

FrankH 06.07.2008 21:19

Ответ: Динамичный текст...
 
Причем тут Мока? Это перевод.
х и у в который копируешь, это координаты, с которых рисуется картинка вправо и вниз, то есть если ты будешь копировать в 0,0 то копируемый участок(т.е. твои цифры) нарисуются в самой левой и верхней части, если же 100,100 то цифры отрисуются(допустим копируешь в буффер экрана) отступив слева 100 и сверху 100 пикселов.

Belamore 06.07.2008 21:22

Ответ: Динамичный текст...
 
Код:

CameraProject camera, EntityX(bone,1), EntityY(bone,1), EntityZ(bone,1)
Text ProjectedX(),ProjectedY(), "баг решилсо"

Может, так?

Alex_Noc 07.07.2008 00:54

Ответ: Динамичный текст...
 
нет так тоде некатит

moka 07.07.2008 17:05

Ответ: Динамичный текст...
 
Создай текстуру, затем в неё рисуй текст, а биллбоард с этой текстурой привяжи к кости. Или вообще его изначально создай в моделе, а при загрузки найди и ему текстуру натяни.

Alex_Noc 07.07.2008 21:33

Ответ: Динамичный текст...
 
Вложений: 1
Угу - так и пытаюсь но никто так и не разьяснил правильно - как работает копирект.
Вот нарисовал тут чтоб мне понятнее было. Исправь как будет если как на картинке. Тогда я смогу понять а то уже избился весь - неполучаетсья какие токо значения не ставил

FrankH 07.07.2008 23:15

Ответ: Динамичный текст...
 
Цитата:

Сообщение от Alex_Noc (Сообщение 81873)
Вот нарисовал тут чтоб мне понятнее было.

:-D
получится то же что и в первом варианте(как я уже написал) текстура ляжет вверхний левый угол, потому что это точка отсчета для всех текстур в блитце, потому 0.0 это левый верх.


Часовой пояс GMT +4, время: 21:22.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot