![]() |
ScaleEntityBrush
Вот такой кусок кода:
;===================================== cbrush=loadbrush("image.png") dim c(10) for i=1 to 10 c(i)=createcube() sc#=rnd(0.2, 10) scalemesh c(i), 1, sc, 1 paintmesh c(i), cbrush trunslateentity c(i), 5*i,0,0 next ;===================================== Все норм, но нужно как то сделать так чтобы текстуры накладывались на проскалированные кубы без изкажений(растяжения). То есть надо как то скалировать(тайлить) и текстуру! ЗЫ: Если бы я пользовался текстурой а не кистью - то было бы проще, но все равно не то - ScaleTexture(cbrush, 1, sc#). В этом случае скалируется текстура и изменения затронут все объекты, а надо скалировать именно текстуру на конкретном ентити. Но такое мне не подходит, нужно именно красить напрямую меши, а не энтити потому что потом все эти меши объединяются в один. ВОПРОС! Какие изменения необходимо внести в код, чтобы накладываемая на меши картинка тайлилась, а не растягивалась. Исполозовать можно только кисти! Заранее Спасибо! |
Ответ: ScaleEntityBrush
Перебрать все вершины
Умножить ихние uv на некий коэффициент меньше единицы |
Ответ: ScaleEntityBrush
Или загружать картинку как LoadTexture , скейлить, а потом назначать ее кисти BrushTexture вроде как-то так.
|
Часовой пояс GMT +4, время: 10:29. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot