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

[D3D9] Проблема с Vertex Shader Texture (2 стр)

Страницы: 1 2
#15
20:13, 25 апр. 2018

Osiris
> текстура та же
Ты в этом уверен? tex2D в обоих случаях одинаковый, f2Coord - одинаковый, следовательно, разница исходит из SamplerButterfly.
Отрендерь её отдельно, можно даже отдельными каналами.


#16
20:15, 25 апр. 2018

Delfigamer
> Ты в этом уверен?
Ну давай еще раз перепроверю, но суть в том, что там есть указатель на установленную текстуру в PIX и она та же самая, проверял двумя программами, но еще раз проверю.

#17
20:26, 25 апр. 2018

Одинаковые

#18
21:03, 25 апр. 2018

SamplerButterfly точно указывает на одну и ту же текстуру? Мне кажется, ты накосячил с биндингами.

#19
21:10, 25 апр. 2018

Delfigamer
> SamplerButterfly точно указывает на одну и ту же текстуру? Мне кажется, ты
> накосячил с биндингами.
Говорю же - два отладчика показывают одну и туже текстуру, если бы были разные - я бы уже правил бы, а так не пойму в чем проблема, даже вернулся к старому багу - с дырками, вывел сетку - она без дырок анимируется и это странно тоже) уже две странности.

Проект старый, может там какие куски от fixed pipeline портят картину, но в этой части вроде бы все должно быть очевидно - поставил текстуру, поставил sampler state и все, а вот нет.

#20
22:46, 25 апр. 2018

Косяк явно где-то у тебя, в сегодняшнем 2018 году напороться на баг в D3D9 практически невозможно.
Если никак не получается локализовать проблему самому - выложи весь код сюда, чтоб мы сами могли поставить эксперимент, скомпилировать и увидеть результат.
Если не хочешь выкладывать всю программу - отрежь все части, которые не относятся к проблеме. К тому же, есть вероятность, что в процессе отрезания найдёшь свой косяк сам.

#21
22:48, 25 апр. 2018

Delfigamer
>Косяк явно где-то у тебя, в сегодняшнем 2018 году напороться на баг в D3D9 практически невозможно.
Обсолютно согласен

>Если никак не получается локализовать проблему самому - выложи весь код сюда, чтоб мы сами могли поставить эксперимент, скомпилировать и увидеть результат.
Да повожусь еще, пока поправлю другие части, раз в одной версии работает - в другой нет, косяк конечно где-то есть.

#22
21:41, 26 апр. 2018

Вернулся я к проблеме со швами, сидел пробовал варианты думал как такое возможно, обратил внимание на некоторые факты:

1. В wareframe пробелмы не твообще, волнение сетки нормальное, при этом pixel shader я вывожу вообще просто цвет, то есть это vertex shader проблема.
2. На редкой геометрии так же проблема исчезает (имеется ввиду когда сетка не густая).
3. Сам баг очень странный он появляется посредине патча, где сетка регулярная - то есть все соседние треугольники используют общие вершины и как может вообще сетка порваться, если вершины те же, я что-то не понимаю, может при рендере треугольника у вершины рассчитываются другие данные из-за чтения из текстуры.

#23
15:41, 3 мая 2018

Как вариант, мог забыть где-то, закрыть отрисовку вызовами ID3DXEffect::End()  или ID3DXEffect::PassEnd()

#24
17:05, 7 мая 2018

По поводу дырок в сетке, в итоге помогло простое выранивание текстурных координат в вершинном шейдере по текселю (1 / texture size),  сразу почему-то не помогло, но я вернул четкий подгон границ патчей (без наезда один на другой, когда на скорую руку заделывал дырки).

#25
20:03, 7 мая 2018

Osiris

А можете подсказать такой момент - а можно ли данные,  полученные в результате выполнения вершинного шейдера, получить-запросить в вызывающей программе?

Допустим есть моб, он плюется-стреляет. Можно это реализовать по типу системы частиц используя точечные спрайты(D3DUSAGE_POINTS). Моб это источник системы частиц, выстрел может быть один или несколько подряд, лететь прямо или затухать. Точечные спрайты передвигаются в вершинном шейдере.

Вопрос такой, как определить что частица пересеклась с чем либо, с персонажем игрока к примеру?

#26
20:12, 7 мая 2018

u960
https://msdn.microsoft.com/en-us/library/windows/desktop/bb205121(v=vs.85).aspx

#27
20:17, 7 мая 2018

maks242
dx9

#28
22:22, 7 мая 2018

u960
> dx9
Лучше не пытаться, dx9 для вывода еще ничего, но для считывания с карты - плох.

#29
22:49, 7 мая 2018

Osiris
> Лучше не пытаться, dx9 для вывода еще ничего, но для считывания с карты - плох.
а как тогда лучше решить мою задачу? Отрисовывать летающие квады не хочется. Или визуализировать можно с помощью точечных спрайтов, но расчеты дублировать в самой программе.

Страницы: 1 2
ПрограммированиеФорумГрафика

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