Список разделов › Геймдев в Blender › Игровой движок Blender
import bge
cont = bge.logic.getCurrentController()
own = cont.owner
mesh = own.meshes[0]
array = mesh.getVertexArrayLength(0)
for v in range(0,array):
vertex = mesh.getVertex(0,v)
UV = vertex.getUV()
UV[1] = UV[1]-0.01 # двигает UV карты? или текстуры? по оси Y на 0.01
vertex.setUV(UV)
import bge
cont = bge.logic.getCurrentController()
own = cont.owner
mesh = own.meshes[0]
# Записывает в переменную "array" кол-во вершин, имеющих материал с id (порядковым номером) 0
array = mesh.getVertexArrayLength(0)
for v in range(0,array):
# Получаем в переменную vertex вершину с порядковым номером v, имеющую материал с id 0
vertex = mesh.getVertex(0,v)
# Получаем UV координаты полученной вершины vertex. Сохраняем их в переменную "UV"
UV = vertex.getUV()
# Изменяем текстурную координату V (Y, если говорить проще) сохраненную в переменной "UV"
UV[1] = UV[1]-0.01
# Устанавливаем результат в переменной "UV" вершине vertex
vertex.setUV(UV)
А как вообще двигать текстуру? Текстура двигаться не может, можно только установить координаты вершины на этой текстуре.Mihanik писал(а):И оно двигает все UV карты, все текстуры. Что изменить, что бы двигалась только одна текстура?
Все верно. Изменение UV вершин(ы) влияет на весь стек текстур материала (которые имеют одну UV конечно же).А как вообще двигать текстуру? Текстура двигаться не может, можно только установить координаты вершины на этой текстуре.
Как вариант сделать для необходимой текстуры отдельную UV (не проверял данный метод) как описал Bibo.И оно двигает все UV карты, все текстуры. Что изменить, что бы двигалась только одна текстура?
Ну к примеру такBibo писал(а):А как вообще двигать текстуру? Текстура двигаться не может, можно только установить координаты вершины на этой текстуре.
А на что, в данном случае, влияет параметр Z?Mihanik писал(а):Ну к примеру так
Возможно лучше запретить играть (Двигапть пятнашки) если картинка уже собрана, это относится и к процессу сборки вообще. На экран надо будет вывести надпись типа "Пятнашки в сборе" или "Процесс завершён".Всё равно какой то акцент на том что пятнашки собраны надо поставить.Bibo писал(а):пятнашки можно играть, но счетчики на это не реагируют (картинка ведь уже собрана)
Для растровых текстур он не работает, нету там третей координаты. Работает для процедурных текстур и когда координаты не UV, а генерируются. Разумеется БГЕ процедурных текстур не понимает.Bibo писал(а):А на что, в данном случае, влияет параметр Z?
Процесс перемешивания тоже можно прервать, если это не сильно усложнит код.Bibo писал(а):замена картинки это отдельный процесс, который запускается если не происходит других процессов, то есть, процесса перемешивания:
Да я вроде постарался, чтобы не сильно усложнял, но как это будет выглядеть? Допустим, экран начал открываться после перемешивания, но игрок решил сменить картинку и экран резко дергается в обратном направлении, чтобы снова закрыться. То бишь, вопрос эстетики.Mihanik писал(а):Процесс перемешивания тоже можно прервать, если это не сильно усложнит код.
Полагаю, неорганизованный подход, это наша общая проблема, не имея опыта организации командной работы в игрострое, трудно ожидать чего то другого.Тут всё лепится и придумывается по ходу действия, и от сюда частые переделки. Не было изначально чёткого представления как оно всё должно работать. Первый блин так сказать.Bibo писал(а):Скрипты в целом получаются страшные и костыльные, с кучей некрасивых if-ов. Собсно, расплата за мой неорганизованный подход, все лепится и придумывается на месте.
А мне этот процесс казался чем-то типа чеканки.Mihanik писал(а):То есть, указанную картинку он засунул в пятнашки, а ту что стояла вытащил и несёт в шкаф.
Да и правда. Это как раз проявление дыры плохого, спешного решения.Mihanik писал(а):Обнаружена нестыковка:
Если при собранных пятнашках, кончается топливо, и игрок переводит рычаг в положение "мешать", а потом назад, в положение "играть" то после загрузки топлива счётчик продолжает отсчитывать время и пятнашки можно двигать.
В принципе, допустимо чеканка, или покраска по трафарету...Bibo писал(а):А мне этот процесс казался чем-то типа чеканки.
Да, я всё равно за тобой не успеваю, после дыма, мне ещё графическую часть интерфейса надо подготовить.Bibo писал(а):потому я позволю себе отойти от основной работы и попробую переделать текущую писанину в нечто более объективное.
Если допустимо, как делать тогда? Оставлять как есть или все таки менять местами?Mihanik писал(а):В принципе, допустимо чеканка, или покраска по трафарету...
Вернуться в Игровой движок Blender
Сейчас этот раздел просматривают: 1 гость