|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
|
Цитата:
Я предположил что-то такое: for(var i:uint = 0; i < totalHeight; i+=wallWidth) { wallsVector.push(new Vector3D(0,i,0)); } wallsExtrusion = new LinearExtrude(null,wallsVectors,LinearExtrude.Y_AXIS,wallWidth,3,false,wallWidth,3,multy,false,false,""); На данном этапе имеется вот это: http://parez.gixx.ru/Maze.html. Просто один объект LinearExtrude c четырьмя точками. Результат не особо устраивает. Последний раз редактировалось Parez; 12.01.2012 в 22:45. |
|
|||||
Цитата:
Под сегментов в вашем случае подрузомевается интервал от wallsVector[j] до wallsVector[j+1]. Если же у вас прямоуголная комната (т.е. сегменты разной длины) и текстура на них ляжет не равномерно. Изза этого я и делал для каждой стены отдельный LineExtrude и отдельно высчитывал UV координаты, по примерно тому алгоритму, что выше предложил. Добавлено через 5 минут Вот например http://dl.************/u/1036911/away...neExtrude.html тут видно как каждый сегмент (стена) по разному растягивает одинаковую во всех случаях текстуру Добавлено через 18 минут Цитата:
Значит так, вы на правильном пути. Нужно всего лишь пару доработок 1) чтобы нижний левый угл смотрелся красивее и как остальные, я бы предожил немного изменить координаты вершин 0--------0 | | | | | | 0---sf---0 // sf - это старт и финиш соответственно, т.о. все углы будут идеальные 2) текстура на стенах смотрится не плохо. (Согласны?) А вот наверху стен смотриться ужастно. Решить это можно с помощью множественных текстур. Пример есть тут https://raw.github.com/away3d/away3d...ExtrudeTest.as Все что вам надо это: var multy:MultipleMaterials = new MultipleMaterials(); multy.front = wallTexture; // тут все таже текстура стены multy.back = wallTexture; multy.left = wallTexture; multy.right = wallTexture; multy.top = wallTopTexture; // а вот тут multy.bottom = wallTopTexture; // и тут другая текстура для верха и низа стен // а потом _linearExtrude = new LinearExtrude(null, path, LinearExtrude.Y_AXIS, 250, 3, false, 200, 3, multy, false, false, "", false); // первый параметр null, а 9-й - наш крутой множественный материал Последний раз редактировалось Dima_DPE; 12.01.2012 в 23:06. |
|
|||||
Регистрация: Nov 2010
Адрес: Ярославль
Сообщений: 249
|
Спасибо за помощь)
Цитата:
Цитата:
Последний раз редактировалось Parez; 12.01.2012 в 23:31. |
Часовой пояс GMT +4, время: 03:49. |
|
« Предыдущая тема | Следующая тема » |
|
|