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

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

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

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

Ответ
 
Опции темы
Старый 30.10.2014, 16:46   #16
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Как наложить текстуру на полигон

Сообщение от ABTOMAT Посмотреть сообщение
Вообще я бы посоветовал посмотреть в сторону LoadAnimMesh, он не объединяет в один Entity. Правда, не знаю, что там у него по поводу того, когда "одинаковые" браши находятся внутри одного Entity. Но в твоём случае ты сможешь самостоятельно всё объединить, при этом не растеряв браши.
У него абсолютно тоже самое.
16777439 вариантов кистей, это на один меш. Неважно где он будет, отдельно моделька или из дочерних сцены.

По этому есть резон заранее определить текстуры и настройки брашей и использовать во всех сценах.

Можно по совету Тормоза второй вариант попробовать (см. выше) но мне лень, раз работает так то и ладно
(Offline)
 
Ответить с цитированием
Старый 30.10.2014, 17:35   #17
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Ответ: Как наложить текстуру на полигон

Глянь эту функцию , так у меня в ксорсе материалы накладываются.

Function LoadDeferredMeshMeshPatch$,Shadows=0)
    ;
DeMesh=xLoadMeshWithChild(MeshPatch$)
    
DeMesh=xLoadAnimMesh(MeshPatch$)
    
    For 
ChiCo=0 To xCountChildren(DeMesh)  
        
DeChild=xGetChild(DeMesh,ChiCo)
        If 
DeChild<>0  
            DeSurfCou
=xCountSurfaces(DeChild
            For 
DeSurfSel=0 To DeSurfCou
                DeSurf
=xGetSurfaceDeChildDeSurfSel 
                If 
DeSurf<>0    
                    SurfaceBrush
=xGetSurfaceBrush(DeSurf
                    
SurfaceBrushTexture=xGetBrushTexture(SurfaceBrush,0
                    
SurfaceBrushTextureName$=xTextureName$(SurfaceBrushTexture)
                    
                    
m.DeferredReciver= New DeferredReciver
                    m
\mesh=DeSurf
                    m
\ShadowsState=Shadows
                    xSetSurfaceEffect DeSurf
DeferredMeshShader
                    m
\Surface=1
                    xSurfaceTechnique 
(DeSurf"NormalMap",0);NormalMap
                    
                    DebugLog SurfaceBrushTexture
+"   "+SurfaceBrushTextureName$
                    If 
SurfaceBrushTexture=0
                        xSurfaceEffectTexture  DeSurf
,"tAlbedo",DefaultTexture,0,0
                    
Else 
                        
xSurfaceEffectTexture  DeSurf,"tAlbedo",SurfaceBrushTexture ,0,0
                    
EndIf
                    
                    If 
Instr(SurfaceBrushTextureName$,".JPG")
                        
Normals$=Replace$(SurfaceBrushTextureName$,".JPG","_N.JPG")
                        
Spec$=Replace$(SurfaceBrushTextureName$,".JPG","_S.JPG")
                        
Emi$=Replace$(SurfaceBrushTextureName$,".JPG","_B.JPG")
                    EndIf 
                    
                    If 
Instr(SurfaceBrushTextureName$,".PNG")
                        
Normals$=Replace$(SurfaceBrushTextureName$,".PNG","_N.PNG")
                        
Spec$=Replace$(SurfaceBrushTextureName$,".PNG","_S.PNG")
                        
Emi$=Replace$(SurfaceBrushTextureName$,".PNG","_B.PNG")
                    EndIf 
                    
                    If 
Instr(SurfaceBrushTextureName$,".TGA")
                        
Normals$=Replace$(SurfaceBrushTextureName$,".TGA","_N.TGA")
                        
Spec$=Replace$(SurfaceBrushTextureName$,".TGA","_S.TGA")
                        
Emi$=Replace$(SurfaceBrushTextureName$,".TGA","_B.TGA")
                    EndIf 
                    
                    If 
Instr(SurfaceBrushTextureName$,".DDS")
                        
Normals$=Replace$(SurfaceBrushTextureName$,".DDS","_N.DDS")
                        
Spec$=Replace$(SurfaceBrushTextureName$,".DDS","_S.DDS")
                        
Emi$=Replace$(SurfaceBrushTextureName$,".DDS","_B.DDS")
                    EndIf 
                    
                    
NormSize=xFileSize(Normals$)
                    
SpecSize=xFileSize(Spec$)
                    
EmiSize=xFileSize(Emi$)
                    
                    
                    
                    If 
NormSize<>0
                        xSurfaceEffectTexture  DeSurf
,"tNormals",xLoadTexture(Normals$),0,0
                    
Else 
                        
xSurfaceEffectTexture  DeSurf,"tNormals",DefaultNormal,0,0
                    
EndIf 
                    
                    If 
SpecSize<>0
                        xSurfaceEffectTexture  DeSurf
,"tSpecular",xLoadTexture(Spec$),0,0
                    
Else 
                        
xSurfaceEffectTexture  DeSurf,"tSpecular",DefaultSpecular,0,0
                    
EndIf 
                    
                    If 
EmiSize<>0
                        xSurfaceEffectTexture  DeSurf
,"tBright",xLoadTexture(Emi$),0,0
                    
Else 
                        
xSurfaceEffectTexture  DeSurf,"tBright",DefaultBright,0,0
                    
EndIf 
                    
                EndIf 
            
Next 
        
EndIf  
    
Next 
    
Return DeMesh
End 
Function 
(Offline)
 
Ответить с цитированием
Старый 17.11.2014, 22:55   #18
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Как наложить текстуру на полигон

tirarex, у тебя текстуры с моделью в одной папке лежат?

У меня всё работает на хорсе пока не уберу текстуры.
Если текстуры в другой папке, находит браш, но не видит текстуру:
Нажмите на изображение для увеличения
Название: Xors3d не нашёл текстуры.jpg
Просмотров: 2169
Размер:	173.7 Кб
ID:	21154

Весь смысл этой затеи был именно хранить модели отдельно от текстур.

Как узнать имя браша?

P. S. Нашёл в хорсе новую команду xGetSurfaceTexture, всё равно не помогло, текстуры как буд-то нет.
P. P. S. А почему вложение сейчас исчезло? Загрузил по новой.
(Offline)
 
Ответить с цитированием
Старый 18.11.2014, 09:31   #19
tirarex
Бывалый
 
Аватар для tirarex
 
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений
(для 866 пользователей)
Ответ: Как наложить текстуру на полигон

Сообщение от Arton Посмотреть сообщение
tirarex, у тебя текстуры с моделью в одной папке лежат?

У меня всё работает на хорсе пока не уберу текстуры.
Если текстуры в другой папке, находит браш, но не видит текстуру:
Вложение 21154

Весь смысл этой затеи был именно хранить модели отдельно от текстур.

Как узнать имя браша?

P. S. Нашёл в хорсе новую команду xGetSurfaceTexture, всё равно не помогло, текстуры как буд-то нет.
P. P. S. А почему вложение сейчас исчезло? Загрузил по новой.
Я пытался запилить материалы в одной папке а модельки в другой но в ходе экспериментов оказалось что если текстура не лежит с загружаемой моделью , никакой информации о ней при загрузке и использовании нет. Сурфейсы будут то без текстур.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Arton (18.11.2014)
Старый 18.11.2014, 16:05   #20
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Как наложить текстуру на полигон

Сообщение от tirarex Посмотреть сообщение
никакой информации о ней при загрузке и использовании нет.
Во мне интересно КАК это получается??? (вопрос не к тебе конкретно)

Значит такое сработало только с блицем, жаль.

Так что насчёт браша? Как его имя узнать, браш хорс находит. Вопрос в целом не важный, но всё же интересный.
(похоже не как)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оцените текстуру Данил Болтовня 11 16.01.2009 18:24
Развертка под текстуру Самурай Создание текстур 9 11.12.2008 19:19
Декали : проекция текстуры на полигон (?) Черный крыс 3D-программирование 3 10.11.2007 20:06
Как отрендерить в текстуру? ABTOMAT 3D-программирование 13 16.06.2007 16:40


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


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