LINUX.ORG.RU
ФорумTalks

[Несправедливость] Ogre3D

 


0

0

Потестил сейчас сай движок под оффтопиком и был удивлен: моя видеокарта (GeForce6100Go) поддерживает пиксельные шейдеры. Под родной гентой огр сообщает: Supported Shader Profiles: arbfp1 arbvp1 fp20 fp30 fp40 glsl vp30 vp40 А под виндой список намного больше: Supported Shader Profiles: hlsl ps_1_1 ps_1_2 ps_1_3 ps_1_4 ps_2_0 ps_2_a ps_2_b ps_2_x ps_3_0 vs_1_1 vs_2_0 vs_2_a vs_2_x vs_3_0 Объясните, из-за чего это происходит? Это косяк движка, дрова видеокарты или разный способ рендера под разными ОСями?

Это косяк движка, дрова видеокарты и разный способ рендера под разными ОСями.

Igron ★★★★★
()

Дрова, полагаю. По аналогии с интеловскими: OGL-2.1 на i965 поддерживают только новые дрова - 2.8. Если склироз не изменяет.

wyldrodney
()

Дрова, имхо. По крайней мере моя Nvidia 5500 под оффтопиком поддерживает шейдеры, которые не работают под линуксом.

question4 ★★★★★
()

Вот и Panda3D. Под виндой с шейдерами на ура, под Linux на GF9800GT - фигвам. «Шейдеры не поддерживаются вашим драйвером» :)

KRoN73 ★★★★★
()
Ответ на: комментарий от matich

Это действительно DirectX. Так что всё нормально, топикстартер может не волноваться

anatolat
()
Ответ на: комментарий от anatolat

>Это баг.

Хм. Забавно. Я думал, так и положено (т.к. гугление показало массовость проблемы и отсутствие ответов в духе «а у меня всё работает»).

Ок, судя по всему оно в Linux работать должно. Будем копать...

KRoN73 ★★★★★
()

Как бы hlsl и все остальное - специфично ДиректХ фичи. Под линуксом их разумеется нет и не будет. И не надо. А вот glsl православен.

unikoid ★★★
()
Ответ на: комментарий от unikoid

Спасибо всем. Теперь я спокоен. Но возникает вопрос. Получается что написать кроссплатформенное приложение, работающее под линаксом на OpenGL, а под форточками на DirectX и использующее одинаковые шейдеры в принципе невозможно? Ведь виды шейдеров абсолютно разные...
Значит надо использовать везда OpenGL. Так?

proDOOMman ★★
() автор топика
Ответ на: комментарий от proDOOMman

>Значит надо использовать везда OpenGL. Так?

Да. Можно ещё cg от nvidia покурить.

matich
()
Ответ на: комментарий от proDOOMman

>Ведь виды шейдеров абсолютно разные...

Одинаковые. DirectX и OGL - это всего лишь разные языки общения с железом (если совсем грубо и на пальцах).

И да. Надо использовать везде OGL.

dikiy ★★☆☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.