Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Proxy DirectX / wrapper / substitute d3d9.dll do wyłączania / ominięcia renderowania
#1
Jestem ciekawy, czy istnieje już kompletny dummy d3d9.dll, który nie robi nic i faktycznie nie używa prawdziwego d3d9.dll?   Jeśli nie, to jak można go stworzyć?   Nie chcę emulować shaderów za pomocą procesora SwiftShader, ale całkowicie pomijam rendering 3D.   Innymi słowy, chcę, aby program pomyślał, że rysuje się szczęśliwie, podczas gdy w rzeczywistości wszystko idzie do zera.   Moim podstawowym pomysłem na zrobienie własnego d3d9.dll byłoby przejście przez Direct 3D 9 reference https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx   I po prostu wróć H_RESULT S_OK na wszystko, ale to nie jest takie proste czy to jest? Istnieją interfejsy, które wymagają implementacji, nawet jeśli implementacja jest krótka.   Patrząc na istniejące projekty proxy, takie jak Matthew Fisher'a https://graphics.stanford.edu/~mdfis...terceptor.html   nadal zależą od prawdziwego d3d9.dll, aby uzyskać aktualne odniesienia.   Na przykład, co chciałbym zwrócić na coś takiego jak ta metoda IDirect3DBaseTexture9 :: GetLOD: https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx to prawie wydaje się, że chciałbym muszą zapisać wszystko, co przekazuje SetLOD     PS Jestem dość doświadczonym programistą C, ale bardzo zardzewiałym na moim C ++ i prawie nic nie wiem na DirectX.   Dwa cele: Oszczędzaj pamięć, popraw wydajność na normalnym komputerze za pomocą zwykłej karty obsługującej DirectX. Drugi cel: Uruchom klienta gry na sprzęcie klasy serwerowej bez odpowiedniej karty obsługującej DirectX, najlepiej w wirtualizacji bez akceleracji 3D
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)