Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Muszę się poruszać, aby zobaczyć modele graczy przez ściany
#1
Cześć, programiści, mam niewielką wiedzę na temat programowania i doświadczenia w d3d, ale zorientowałem się, jak uzyskać prosty rejestrator modelu działający z kodu źródłowego. Ale w tej grze gram i widzę tylko modele graczy przez ściany, jeśli pozostaję w ruchu. Czy ktoś wie, co może spowodować? Oto fragment "mojego" hitu indeksów: (odpala, gdy numer kroku modelu jest równy numerowi kroku w modelu gracza)       Kod:   pDevice -> SetRenderState (D3DRS_ZENABLE, false); oDrawIndexedPrimitive (pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice -> SetRenderState (D3DRS_ZENABLE, true);   Z góry dziękuję za twój wgląd   Ach, zorientowałem się, jak teraz malować moich wrogów na czerwono, wydawało się, że nie używam wystarczającej ilości "samplerów" czy czegoś takiego. Naprawiłem to za pomocą pętli for dla SetTexture. (Nie pokazałem tego kodu w OP, ale chciałem tylko dać znać, że robię postępy).   Teraz, jak mam naprawić wallhack działa tylko wtedy, gdy jestem w ruchu ..: S
Reply
#2
Również mgła wydaje się WYDAWAĆ się po chams, zanikając kolorowi chamu. Czy jest jakaś funkcja, którą powinienem zahaczyć w inny sposób niż drawprimitives i endscene, żeby gdzieś to naprawić? Czy ktoś może wskazać mi właściwy kierunek?
Reply
#3
Możesz usunąć mgłę za pomocą stanu renderowania. (Zakładając, że gra z tego korzysta). - D3DRS_FOGENABLE - D3DRS_FOGCOLOR - D3DRS_FOGTABLEMODE - D3DRS_FOGVERTEXMODE - D3DRS_FOGSTART - D3DRS_FOGEND - D3DRS_FOGDENSITY Są to stany renderowania przeciwmgielnego, które można modyfikować, aby sprawdzić, czy można je usunąć, czy też odpowiednio dostosować.
Reply
#4
Zacytować: Originally Posted by atom0s Możesz usunąć mgłę za pomocą stanu renderowania. (Zakładając, że gra z tego korzysta). - D3DRS_FOGENABLE - D3DRS_FOGCOLOR - D3DRS_FOGTABLEMODE - D3DRS_FOGVERTEXMODE - D3DRS_FOGSTART - D3DRS_FOGEND - D3DRS_FOGDENSITY Są to stany renderowania przeciwmgielnego, które można modyfikować, aby sprawdzić, czy można je usunąć, czy też odpowiednio dostosować. umieszczam to: pDevice-> SetRenderState (D3DRS_FOGENABLE, false); pDevice-> SetRenderState (D3DRS_RANGEFOGENABLE, false); pDevice-> SetRenderState (D3DRS_FOGCOLOR, D3DCOLOR_RGBA (0,0,0,0)); pDevice-> SetRenderState (D3DRS_FOGTABLEMODE, D3DFOG_NONE); pDevice-> SetRenderState (D3DRS_FOGVERTEXMODE, D3DFOG_NONE); pDevice-> SetRenderState (D3DRS_FOGSTART, 0.0); pDevice-> SetRenderState (D3DRS_FOGEND, 0.0); pDevice-> SetRenderState (D3DRS_FOGDENSITY, 0.0); w haczyku DrawIndexedPrimitive, ale to nie zmienia rzeczy w grze. Czy powinno to być wykorzystywane w innym haku / funkcji? Ponieważ nie wiem, co robię źle w tym bankomacie D3D
Reply
#5
Ustaw HookRenderState i zrób to zamiast tego. Gra może resetować stany renderowania po ich ustawieniu.
Reply
#6
Cóż, byłaby to okluzja. Czy widzisz chams, które nie są za ścianami, jeśli się nie ruszasz? w tym przypadku myślę, że to okluzja. Naprawiłem swój problem, pokazując cząstki krok (trawa, mgła, itp) na szczycie wszystkiego: http://www.unknowncheats.me/forum/is...occlusion.html Ponieważ będzie to denerwujące, po pokazaniu wszystkiego, zwróć D3DOK, aby uzyskać NO_GRASS itd ... Ale może nie być tak samo dla ciebie. Pozdrawia. Edytować: Może to być przydatne: http://www.unknowncheats.me/forum/is...-skinhack.html
Reply
#7
Tak, mgiełka w D3D nie ma gwarancji, że zostanie użyta, jest opcjonalna. Przeważnie używały go starsze gry, ponieważ coraz więcej technik cieniowania, które są o wiele bardziej zoptymalizowane i szybsze, stosuje się w dzisiejszych standardach. To była tylko myśl w kategoriach czegoś prostego do zniesienia. Czy masz włączoną głębię, aby zapobiec występowaniu odległości? Trudno powiedzieć, nie widząc swojego prawdziwego pełnego kodu, aby określić, jaką metodę robisz dla chams. Konieczne może być także dostosowanie niektórych innych stanów renderowania, aby upewnić się, że nie renderujesz z niektórymi niepoprawnymi stanami dla tego, co chcesz zrobić. Można używać bloków stanu do przechowywania i tworzenia informacji o stanie renderowania, aby nie trzeba było wykonywać ręcznie każdej klatki. W ten sposób możesz ustawić własny blok stanów renderowania dla swoich chams, a następnie przywrócić oryginalne, z których gra korzystała później.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)