Мастер
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений (для 504 пользователей)
|
Ответ: Вопрос-Ответ (для новичков)
Сообщение от Ganociy
LLI.T.A.L.K.E.R. , ты это с моей пушкой это сделал? Если да, то как ты изменил лево на право
|
Вообще-от я это в Painte сделал
Вот функция выворачивания модели с лева на право и наоборот:

Function mirror_mesh(mesh,plane,surface = 0)
If plane < 0 Or plane > 2 Then Return 0
If surface = 0 Then s_count = CountSurfaces(mesh) l_count = 1 Else For loop = 0 To CountSurfaces(mesh) temp = GetSurface(mesh,loop) If surface = temp Then s_count = temp l_count = temp End If Next End If average_x# = EntityX(mesh) - (MeshWidth(mesh)/2.0) average_y# = EntityY(mesh) - (MeshHeight(mesh)/2.0) average_z# = EntityZ(mesh) - (MeshDepth(mesh)/2.0)
If plane = 0 Then For sloop = l_count To s_count surface = GetSurface(mesh,sloop) For loop = 0 To CountVertices(surface) - 1
ny# = VertexNY (surface,loop) nz# = VertexNZ (surface,loop) nx# = VertexNX (surface,loop) VertexCoords surface,loop, average_x - ( average_x + VertexX(surface,loop)), VertexY(surface,loop), VertexZ(surface,loop) VertexNormal surface,loop,nx,ny,-nz Next Next ElseIf plane = 1 Then For sloop = l_count To s_count surface = GetSurface(mesh,sloop) For loop = 0 To CountVertices(surface) - 1
ny# = VertexNY (surface,loop) nz# = VertexNZ (surface,loop) nx# = VertexNX (surface,loop)
VertexCoords surface,loop, VertexX(surface,loop), average_y - ( average_y + VertexY(surface,loop)), VertexZ(surface,loop) VertexNormal surface,loop,-nx,ny,-nz Next Next ElseIf plane = 2 Then For sloop = l_count To s_count surface = GetSurface(mesh,sloop) For loop = 0 To CountVertices(surface) - 1
ny# = VertexNY (surface,loop) nz# = VertexNZ (surface,loop) nx# = VertexNX (surface,loop)
VertexCoords surface,loop, VertexX(surface,loop), VertexY(surface,loop), average_z - ( average_z + VertexZ(surface,loop)) VertexNormal surface,loop,-nx,ny,nz Next Next End If End Function
Использовать так:
mirror_mesh(Pulemet,2) ; использование функции на модель Pulemet, 2 - по оси "не охота понимать по какой" - но слева на право (и наоборот) ; оси такие: 0 1 2 - разбирать визуально по каким осям FlipMesh Pulemet ; инвертирование отображения трианглов модели (мне это пригодилось, так как модель "односторонняя")
|