ПрограммированиеФорумГрафика

Помогите исправить.GLSL 1.2,opengl 2.1.Текстурирование

Страницы: 1 2 Следующая »
#0
15:36, 22 янв 2011

Есть программа.Она задействует шейдеры.Просто с цветом всё нормально работает,но с текстурой отказывается.Также текстурирование без шейдера работает.
Должен быть куб с текстурой…но вот только начал разбираться с шейдерами, еще мало чего знаю.
Используется в проге GLSL 1.3 & OpenGL 2.Более новые версии мой мак не поддерживает…
//проект с шейдерами
upd:проект с шейдерами2
Извините, к безлимитке привыкаешь…

#1
15:37, 22 янв 2011

SIF
Качать влом. К тому же, там нечего запустить. Проявляй уважение к тем, кто хочет тебе помочь, выкладывай проблему в доступном виде.

#2
16:21, 22 янв 2011

-Eugene-
+1

#3
17:50, 22 янв 2011

Мало что понятно из проекта, однако в shader.fs надобно использовать  texture2D(sampler2D sampler, vec2 coord)

#4
19:29, 22 янв 2011

Не очень красиво так делать. Вопроса по существу нет, но зато есть ссылка на скачивание проекта (в надежде на то, что его кто-то скачает и исправит).

Кстати, если проект исправить и не сказать тебе где было сделано исправление - ты этому будешь рад? :)

#5
20:14, 22 янв 2011

SIF
>
> Извините, к безлимитке привыкаешь…
Дело не в лимитке/безлимитке, а в том, что нам, вместо того, чтобы пробежать один экран ключегого кода в 0-м посте, надо что то качать, [компилить, ]запускать, рыться в исходниках...

#6
21:39, 22 янв 2011

Простите,вот что у меня получилось:
в дебаг режиме:
[Switching to process 45547]
Running…
aa1.20          //////version glsl
start shadersShader compile log:
ERROR: 0:2: 'attribute' :  supported in vertex shaders only 
ERROR: 0:7: 'gl_Position' : undeclared identifier
ERROR: 0:7: 'assign' :  cannot convert from 'attribute 4-component vector of float' to 'float'
ERROR: 0:8: 'y' :  field selection requires structure or vector on left hand side
Program link log:
WARNING: Could not find vertex shader attribute 'texture' to match BindAttributeLocation request.
Program validate log:
WARNING: Could not find vertex shader attribute 'texture' to match BindAttributeLocation request.
end shaders
в релиз режиме:
Running…
Assertion failed: (valid), function operator char*, file /var/root/Projects/glc/texture.cpp, line 440.
Program received signal:  “SIGABRT”.
sharedlibrary apply-load-rules all

#7
23:45, 22 янв 2011

SIF
Ну вроде всё написано, что не понятно?

#8
0:03, 23 янв 2011

Дело в том что:
ERROR: 0:7: 'gl_Position' : undeclared identifier  - это взято с примера SDK appl'а,а тоесть должно работать и работает на айфоне
а Program link log:
WARNING: Could not find vertex shader attribute 'texture' to match BindAttributeLocation request. не понятно что хочет,я ж вроде всё прописал
ERROR: 0:2: 'attribute' :  supported in vertex shaders only  - это и так в вершинном шейдере

#9
0:12, 23 янв 2011

Ты вершинный шейдер с фрагментным не перепутал?

#10
0:49, 23 янв 2011

Executor,да,нечайно установил текстуру как юнит вершинного шейдера,теперь такая проблемка:
WARNING: Could not find vertex shader attribute 'texture' to match BindAttributeLocation request.
end shaders
Непойму что нужно ему?

#11
1:07, 23 янв 2011

SIF
> 'texture' to match BindAttributeLocation
wut? самллер это не вершинный атрибут, что-то ты явно там напутал.

#12
1:12, 23 янв 2011

У меня есть загрузчик dds(nv_dds.h and nv_dds.cpp)
Как мне просто передать текстуру в шейдер,там ее принять,но ничего с ней не делать?

#13
1:24, 23 янв 2011

SIF
> У меня есть загрузчик dds(nv_dds.h and nv_dds.cpp)
Good for you, so whats next?

> Как мне просто передать текстуру в шейдер,там ее принять,но ничего с ней не делать?
Объявляешь в шейдере самплер, через glUniform1i передаешь индекс тестурного юнита на этот самплер. В шейдере можешь использовать а можешь не использовать его - дело твое.

#14
1:33, 23 янв 2011

KpeHDeJIb,спасибо.Завтра попробую…

Страницы: 1 2 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.