PDA

Просмотр полной версии : Удаление текстур


Grishkovec
26.05.2013, 11:59
Не могу понять в чем ошибка
В DP прописал
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount)
{
if(Fun.listva)
{
if ((NumVertices == 192) || (NumVertices == 256))
{
return S_OK;
return 0;
}
}

return pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}

Но текстура не удаляется

ГоГоГоГоГоГоГо
26.05.2013, 20:13
Вроде все правильно.
На всякий случай попоробуй удалить вот это "return 0;"
Но скорее всего по каким-то причинам цикл не выполняется, нет команды на выполнение.

Sinyss
26.05.2013, 20:37
Вроде все правильно.
На всякий случай попоробуй удалить вот это "return 0;"
Но скорее всего по каким-то причинам цикл не выполняется, нет команды на выполнение.
Какой к черту цикл?
return 0 надо за скобкой...

zombiee
26.05.2013, 22:01
return 0 надо за скобкой...

Н-да? И что выйдет?
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount) {
if(Fun.listva) {
if ((NumVertices == 192) || (NumVertices == 256)) {
return S_OK;
}
return 0; // Если Fun.listva == true, то оригинальный IDirect3DDevice9::DrawIndexedPrimitive ниразу не вызовется :D
}
return pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}

Попробуй так:
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount){
if((Fun.listva) && ((NumVertices == 192) || (NumVertices == 256))){return S_OK;}
return pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}

И старайся форматировать код с отступами ;)
И, если не ошибаюсь, кроме NumVertices нужно подобрать primCount, не? (p.s: в этом ни бум-бум, так, бегло осмотрев гугл :forward:)

Sinyss
26.05.2013, 22:40
// Если Fun.listva == true, то оригинальный IDirect3DDevice9::DrawIndexedPrimitive ниразу не вызовется :D
Ну так у нас и задание не рисовать )
Тут гораздо больше логики чем писать 2й return который никогда не вызовется...

Dimedrol1536
27.05.2013, 17:46
Ох и блин трухацкеры.

if (функция)
{
if (текстура)
{
return 0;
}
}

Grishkovec
27.05.2013, 19:02
Ох и блин трухацкеры.

if (функция)
{
if (текстура)
{
return 0;
}
}


не работает! Пробывал!

zombiee
27.05.2013, 20:26
не работает! Пробывал!

Значит не правильно NumVertices указываешь.
Ох и блин трухацкеры.

Я вообще не при делах :notme:

warl0ck
27.05.2013, 23:51
if ((NumVertices == 192) || (NumVertices == 256)) где ты такое увидел?

Grishkovec
28.05.2013, 00:00
Значит не правильно NumVertices указываешь.
Значит на одном исходнике все норм робит, а на другом нет. Как так то?

zombiee
28.05.2013, 00:20
Значит на одном исходнике все норм робит, а на другом нет. Как так то?

Ну так покажи, на котором работает, че му-му тянешь-то?

Dimedrol1536
28.05.2013, 09:45
не работает! Пробывал!
Значит у тебя не правильно найдена тексьура.

Ну так покажи, на котором работает, че му-му тянешь-то?
На любом правильном работает.

zombiee
28.05.2013, 11:44
На любом правильном работает.

Спасибо, только я уже прочитал описание функции, знаю, как она должна "работать".
Хотел увидеть именно рабочий кусок кода от автора и ткнуть его носом в ошибку.

Grishkovec
29.05.2013, 12:17
Ну так покажи, на котором работает, че му-му тянешь-то?

Исходник показать или скрины с игры??

zombiee
29.05.2013, 14:53
Исходник показать или скрины с игры??

Исходник. Рабочий. /facepalm

Grishkovec
30.05.2013, 01:16
Исходник. Рабочий. /facepalm

вот!! ([Ссылки могут видеть только зарегистрированные и активированные пользователи])

Grishkovec
11.06.2013, 07:46
Ну так что, кто нибудь поможет???

Dimedrol1536
13.06.2013, 13:07
Ну так что, кто нибудь поможет???
Ответ был дан в 6-м посте.