Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 10.12.2010, 13:00   #1
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Координаты вертексов при програмном копировании меша

Нужно правильно расставить UV-координаты и нормали. Начудил код копирования меша, а координаты вертексов и нормали расставляются верно, но не везде. Полюбому уже тема такая созданна, если кто то знает о ней, дайте ссыль.
(Offline)
 
Ответить с цитированием
Старый 10.12.2010, 13:07   #2
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Получай UV координаты и нормали встроенными средствами и переноси их в новый меш.
__________________
(Offline)
 
Ответить с цитированием
Старый 10.12.2010, 14:20   #3
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Спасибо конечно, но ты мне ничего нового не сообщил. Понятное дело я беру uv из вертыкса который копирую и добавляю в новый. Но если ты картинку смотрел, там искаженные uv.
(Offline)
 
Ответить с цитированием
Старый 10.12.2010, 14:56   #4
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Сообщение от CRASHER Посмотреть сообщение
Но если ты картинку смотрел, там искаженные uv.
Ну так не искажай их, и не путай местами!
__________________
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо SBJoker за это полезное сообщение:
den (12.12.2010), maxturbo (10.12.2010), Mr_F_ (10.12.2010), tormoz (10.12.2010)
Старый 11.12.2010, 00:05   #5
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Хорошо, поставлю вопрос по другому. Как правильно скопировать мешь учитывая нормали и UV координаты?
(Offline)
 
Ответить с цитированием
Старый 11.12.2010, 01:47   #6
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

;-------------------------------------------------	
 msurfs=CountSurfaces(entity)
 For is=1 To msurfs
         
	surf=GetSurface(entity,is)                    ; surf object
	;update the virtual mesh
	e\numverts[is]=CountVertices(surf)            ;count vertexs surf
	e\numtris[is]=CountTriangles(surf)
	
	 br=GetSurfaceBrush(surf) 
     layer_amtsurf=FindSurface(layer_amt,br)
	 If layer_amtsurf=0  
	      layer_amtsurf=CreateSurface(layer_amt,br) ;esli net to sozdat  surface
	  EndIf
    FreeBrush br 	

	e\layer_amtsurf[is]=layer_amtsurf                  ; surf new object
		
	e\vertindex[is]=CountVertices(layer_amtsurf)   ;count vertexs surface_amt	
	e\trisindex[is]=CountTriangles(layer_amtsurf)    ;count Triangles surface_amt	
	
	  l\countVert=l\countVert+e\vertindex[is]
	
	;add data to layer_amt + virtual mesh
	For i=0 To CountVertices(surf)-1
		AddVertex(layer_amtsurf,VertexX(surf,i)+e\x,VertexY(surf,i)+e\y,VertexZ(surf,i)+e\z,VertexU(surf,i),VertexV(surf,i),VertexW(surf,i))
		VertexNormal layer_amtsurf,i+e\vertindex[is],VertexNX(surf,i),VertexNY(surf,i),VertexNZ(surf,i)
		r#=VertexRed# (surf,i)
		g#=VertexGreen# (surf,i)
		b#=VertexBlue# (surf,i)
		VertexColor layer_amtsurf,i+e\vertindex[is],VertexRed# (surf,i),VertexGreen# (surf,i),VertexBlue# (surf,i)
	Next
		
	For it=0 To CountTriangles(surf)-1
		i2=e\vertindex[is];
		AddTriangle(layer_amtsurf,TriangleVertex(surf,it,0)+i2,TriangleVertex(surf,it,1)+i2,TriangleVertex(surf,it,2)+i2)
	Next
Next
Тут добавление к уже созданному мешу так что разбирайся

создай меш и убери смещения при добавлении вертекс и трианглов
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
CRASHER (11.12.2010)
Старый 11.12.2010, 02:30   #7
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Спсыбы, Разобрался таки))) Благодарю! очень полезно!!!

Последний раз редактировалось CRASHER, 11.12.2010 в 03:46.
(Offline)
 
Ответить с цитированием
Старый 12.12.2010, 12:43   #8
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Появился еще один вопорс. Я создал в новом меше новую точку, нашел наконецтаки UV для новой точки. Применил к ней эти UV. Но почему то текститса только один трианг более мение. Остальные как на фотоке в первом посте. Использовал UpdateNormals и Vertextexcoords после обновления нормалей. Как должен выглядеть процесс применения текстурных координат для новой точки?
(Offline)
 
Ответить с цитированием
Старый 12.12.2010, 13:18   #9
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

Твоя проблема в том что ты считаешь что у трианглов есть общие точки. Прикинь у нескольких трианглов одна вершина с единственным UV набором? Так ни когда ни чего не затекстуришь. Делай каждому трианглу по три своих личных вершины и будет тебе щастье.
__________________
(Offline)
 
Ответить с цитированием
Старый 12.12.2010, 15:02   #10
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Координаты вертексов при програмном копировании меша

SBJoker, я догадывался. Подскажи как выиглядит код с добавлением вершины.
Или может знаешь где можно посмотреть?

Последний раз редактировалось CRASHER, 14.12.2010 в 04:56.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com