forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Xors3D (http://forum.boolean.name/showthread.php?t=6180)

.Squid 25.10.2011 14:45

Ответ: Xors3D
 
Цитата:

Сообщение от pozitiffcat (Сообщение 206860)
я вообще не могу понять шейдеры.. откуда мне брать формулы вычисления. Как вот мне узнать что этот пиксел крайний и его нужно нарисовать черным? типо окантовка модели... и т.п.

Если совсем шейдеры непонятны, то надо начинать вообще с азов. Например, вывести объект в красном цвете без освещения и прочего. А потом переходить к сложному. Учебного материала по шейдерам куча.

pozitiffcat 03.11.2011 13:47

Ответ: Xors3D
 
Люди. В Xors samples есть шейдер DeferredFinal.fx. Как им пользоваться?
и еще... есть ли возможность узнать имя файла текстуры используемой на entity

4yBa4Ok 04.11.2011 18:15

Ответ: Xors3D
 
люди а где можно взять готовые шейдеры?

moka 04.11.2011 20:09

Ответ: Xors3D
 
"Готовых" не бывает. Все и всегда нужно менять под определённые условия и задачи.
Есть в ревизиях с ксорсом папка с шейдерами, есть в примерах, есть в гугле.
Снова: невозможно толком юзать чужие шейдера. Если ты собираешься их юзать, то тебе нужно их умень писать.
Читай доку от Xors3D Team по гейдерам.

Nerd 06.11.2011 15:16

Ответ: Xors3D
 
В BlitzMax если использовать хорс и вызвать реквестер файлов(RequestFile), вылетает WINDOWS EXCEPTION: EXCEPTION_ACESS_VOLATION. wtf?

.Squid 06.11.2011 15:50

Ответ: Xors3D
 
А шо эта?

Nerd 06.11.2011 16:39

Ответ: Xors3D
 
Цитата:

Сообщение от .Squid (Сообщение 208580)
А шо эта?

Диалог сохранения/открытия файла. Ну типо http://www.microsoftofficeforbeginne.../open_doc9.png

.Squid 07.11.2011 02:45

Ответ: Xors3D
 
Сэмпл? Иначе не знаю. Впрочем, я и сейчас не знаю.

Randomize 07.11.2011 03:25

Ответ: Xors3D
 
Цитата:

Сообщение от Nerd96 (Сообщение 208577)
В BlitzMax если использовать хорс и вызвать реквестер файлов(RequestFile), вылетает WINDOWS EXCEPTION: EXCEPTION_ACESS_VOLATION. wtf?

Ну дык оно и понятно. От какого окна обычно создаётся диалог открытия файла? От блицмаксовского, а тут его нет. Вылет оправдан. Поковыряй модуль блицмакса и найди ф-цию RequestFile в варианте под Win32 и через винапи вызови окно от хендла окна xors3d

dsd 09.11.2011 01:18

Ответ: Xors3D
 
Цитата:

BBDECL void BBCALL xStretchRect ( Texture * texture1,
int x1,
int y1,
int width1,
int height1,
Texture * texture2,
int x2,
int y2,
int width2,
int height2,
int filter
)
Copys data from one texture to another using hardware accelerated method.

Parameters:
texture1 Source texture handle
x1 x coordinate of top left corner of source rectangle
y1 y coordinate of top left corner of source rectangle
width1 Width of source rectangle
height1 Height of source rectangle
texture2 Destination texture handle
x2 x coordinate of top left corner of destination rectangle
y2 y coordinate of top left corner of destination rectangle
width2 Width of destination rectangle
height2 Height of destination rectangle
filter Filtering method
Почему то копирует только нарисованные мной текстуры. А загруженные не хочет.
PHP код:

seaside_tex=xLoadTexture("tex/Gravel01.jpg");
    
normal_tex=GrimMagicPikcha(512,1.99,xMillisecs());

    
int width=256;

    
megatex=xCreateTexture(1024,1024);
//это не работает
    
xStretchRect    (seaside_tex,0,0,width,width,megatex,0,0,width,width,6);
//а это работает
    
xStretchRect    (normal_tex,0,0,width,width,megatex,0,0,width,width,6); 

Какой нужен волшебный флаг или манипуляции с текстурами?

.Squid 09.11.2011 02:07

Ответ: Xors3D
 
Дело в том, что создаваемые текстуры помещаются в default pool, а загружаемые в managed pool. Managed pool, как видно по названию, управляется дх-ом / дровами: запихивают текстуры в раму, когда надо, воссоздают их после потери девайса и т.п. Default pool не такой управляемый. Но оно и не надо для создаваемых текстур, т.к. они, как правило, создаются в качестве рендер таргетов.
У IDirect3DDevice9::StretchRect, который используется в xStretchRect, помимо кучи прочих ограничений, нет возможности копирования в пулах, отличных от default. Т.е. фактически, этот метод нужен для копирования кусков текстур в видео-памяти.
Такие дела. Надо добавить в документацию и соответствующее сообщение в логгер.

dsd 09.11.2011 20:40

Ответ: Xors3D
 
Походу не судьба мне запилить саморисующийся текстурный атлас...
PHP код:

Handle seaside_img=xLoadImage("tex/Gravel01.jpg");
    
Handle lgrass_img=xLoadImage("tex/Grass01.jpg");
    
Handle dgrass_img=xLoadImage("tex/Grass02.jpg");
    
Handle plain_img=xLoadImage("tex/Gravel02.jpg");
    
Handle lmountain_img=xLoadImage("tex/dirt01.jpg");
    
Handle mmountain_img=xLoadImage("tex/rock01.jpg");
    
Handle hmountain_img=xLoadImage("tex/snow02.jpg");
    
Handle smountain_img=xLoadImage("tex/snow01.jpg");
    
Handle rock_img=xLoadImage("tex/rockn.jpg");

    
int width=xImageWidth(seaside_img);
    
megatex=xCreateTexture(width*4,width*4);

    
xSetBuffer(xTextureBuffer(megatex));
    
xDrawImage(seaside_img,0,0);
    
xDrawImage(lgrass_img,width,0);
    
xDrawImage(dgrass_img,2*width,0);
    
xDrawImage(plain_img,3*width,0);

    
xDrawImage(lmountain_img,0,width);
    
xDrawImage(mmountain_img,width,width);
    
xDrawImage(hmountain_img,2*width,width);
    
xDrawImage(smountain_img,3*width,width);

    
xDrawImage(rock_img,0,2*width);

    
xSetBuffer(xBackBuffer());
    
Handle cube=xCreateCube();
    
xScaleEntity(cube,20,20,20);
    
xPositionEntity(cube,0,20,80);
    
xEntityTexture(cube,megatex); 

В режиме дебага рисует в релизе нет. Чяднт?

.Squid 09.11.2011 21:25

Ответ: Xors3D
 
А полностью код можно? Ну, только генерацию атласа, конечно, без прочего леса и ландшафта. Желательно в виде архива с нужными файлами.

dsd 09.11.2011 21:41

Ответ: Xors3D
 
Код в папке бин, два экзешника который де баг работает который не де баг не работает, но и не падает :)
Может это только у меня такие чудеса? :dontknow:

.Squid 10.11.2011 02:11

Ответ: Xors3D
 
А как оно должно работать? Оба приложения показывают черный куб / квадрат на голубом фоне.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot