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

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

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

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

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

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

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

Можно по совету Тормоза второй вариант попробовать (см. выше) но мне лень, раз работает так то и ладно
(Online)
 
Ответить с цитированием
Старый 30.10.2014, 14: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 
__________________
Asus rog gl552vw (i7 6700 16gb gtx960m2gb 250gb ssd)

̶M̶s̶i̶ ̶g̶e̶6̶2̶ ̶(̶i̶7̶-̶5̶7̶0̶0̶ ̶1̶2̶g̶b̶ ̶r̶a̶m̶ ̶9̶6̶0̶m̶ ̶2̶g̶b̶ ̶1̶2̶8̶g̶b̶ ̶s̶s̶d̶)̶ - Умер
̶R̶a̶d̶e̶o̶n̶ ̶H̶D̶4̶6̶5̶0̶ ̶2̶g̶b̶ ̶,̶ ̶c̶o̶r̶e̶2̶d̶u̶o̶ ̶t̶6̶5̶0̶0̶ ̶2̶.̶1̶G̶h̶z̶ ̶4̶g̶b̶ ̶r̶a̶m̶ ̶-̶м̶а̶м̶о̶н̶т̶ ̶ Отдан матери
̶I̶n̶t̶e̶l̶ ̶Z̶3̶7̶3̶5̶F̶ ̶1̶.̶3̶-̶1̶.̶8̶g̶h̶z̶ ̶2̶g̶b̶ ̶r̶a̶m̶ ̶-̶ ̶п̶л̶а̶н̶ш̶е̶т̶ Отдан матери
(Offline)
 
Ответить с цитированием
Старый 17.11.2014, 19:55   #18
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 4,690
Написано 2,087 полезных сообщений
(для 4,907 пользователей)
Ответ: Как наложить текстуру на полигон

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

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

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

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

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

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

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

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

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

P. S. Нашёл в хорсе новую команду xGetSurfaceTexture, всё равно не помогло, текстуры как буд-то нет.
P. P. S. А почему вложение сейчас исчезло? Загрузил по новой.
Я пытался запилить материалы в одной папке а модельки в другой но в ходе экспериментов оказалось что если текстура не лежит с загружаемой моделью , никакой информации о ней при загрузке и использовании нет. Сурфейсы будут то без текстур.
__________________
Asus rog gl552vw (i7 6700 16gb gtx960m2gb 250gb ssd)

̶M̶s̶i̶ ̶g̶e̶6̶2̶ ̶(̶i̶7̶-̶5̶7̶0̶0̶ ̶1̶2̶g̶b̶ ̶r̶a̶m̶ ̶9̶6̶0̶m̶ ̶2̶g̶b̶ ̶1̶2̶8̶g̶b̶ ̶s̶s̶d̶)̶ - Умер
̶R̶a̶d̶e̶o̶n̶ ̶H̶D̶4̶6̶5̶0̶ ̶2̶g̶b̶ ̶,̶ ̶c̶o̶r̶e̶2̶d̶u̶o̶ ̶t̶6̶5̶0̶0̶ ̶2̶.̶1̶G̶h̶z̶ ̶4̶g̶b̶ ̶r̶a̶m̶ ̶-̶м̶а̶м̶о̶н̶т̶ ̶ Отдан матери
̶I̶n̶t̶e̶l̶ ̶Z̶3̶7̶3̶5̶F̶ ̶1̶.̶3̶-̶1̶.̶8̶g̶h̶z̶ ̶2̶g̶b̶ ̶r̶a̶m̶ ̶-̶ ̶п̶л̶а̶н̶ш̶е̶т̶ Отдан матери
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Arton (18.11.2014)
Старый 18.11.2014, 13:05   #20
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 4,690
Написано 2,087 полезных сообщений
(для 4,907 пользователей)
Ответ: Как наложить текстуру на полигон

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

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

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


Опции темы

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

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

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


Часовой пояс GMT +1, время: 09:54.


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