Gå till innehåll

Snabb fråga om DirectX


Gäst al6

Recommended Posts

Tjenare, jag håller på att förbereda mig för ett projektarbete nästa termin och hittils går allt som på räls men jag har en snabb fråga.

Det är ett spel och jag använder DirectX. Saken är den att det verkar som att man inte änns behöver ha DirectX på datorn för att köra det! Det räcker med d3dx9_37.dll som är ca 3 mb.

Frågan är nu varför DirectX-installeraren är så stor? Är det för att få plats med alla olika versioner av DirectX? Det verkar som att dom sista siffrorna i slutet, i mitt fall 37, är vilken version man använder.

Borde jag som bara använder 37 inte då kunna ha med enbart den filen i spelet, eller är detta mot licensen? Om man får ha med den, varför har då inte alla spel med sin egen version, istället för att göra en stor installerare med alla spels versioner?

Hade varit bra om ni hjälpte mig klura ut detta för spelet ska gå att köra på alla Windowsdatorer utan att installera något.

Länk till kommentar
Dela på andra webbplatser

Du verkar ha rätt avseende de två sista siffrorna som är ett löpnumret för versionshanteringen.

November 2006 hade d3dx10-filen inget versionsnummer i namnet. Mars 2007 var första med _33.

Älsta d3dx9 jag har är _24 från Februari 2005.

Du får nog plocka med x64 -versionen av samma fil då... (x64=3.6Mb, x86=4.7Mb)

DxDiag testar ju DirectX för både grafik och musik hårdvaran... så vad händer med ditt spel

efter ett år och ny hårdvara hos användarna ?

Jag installerade ett program som krävde att jag installerade DirectX9 från 2006...

i annat fall fungerade inte programmet.

Licensemässigt så är ju detta 'Runtime'-bibliotek så det får väl distribueras fritt.

Länk till kommentar
Dela på andra webbplatser

Så är det kanske ja - Att man låter användaren fixa directx så att man har den senaste och inte har en fast som följer med.

Så i framtida släpp av directx är kanske d3dx9_37.dll uppdaterad?

Men jag tror ändå jag kör på den lilla dll-filen till spelet om det är lagligt att skicka med, för spelet kommer ha en uppdateringsfunktion så den kommer ha det senaste i alla fall.

Okej men det lät rätt att man får ha med dll-filen för den är ju en runtime.

Länk till kommentar
Dela på andra webbplatser

Har tänkt lite och det kan inte stämma att nya directx skulle ha något med hårdvaran att göra. Mitt gamla Counter-Strike har med en DirectX-installerare på skivan som är helt ouppdaterad och den fungerar precis som vanligt på nya datorer.

DirectX ligger väl ändå mellan grafikdrivrutinerna och programmet - så det borde inte ha något med hårdvara att göra. Sen om de kommer en uppdatering är nog bara optimeringar / bugfixar.

Nåja har fått mitt svar att jag bode kunna skicka med en runtime lagligt så jag är nöjd.

EDIT:

Det finns ju gamla spel som måste ha dll-filer som är flera år gamla, typ directx 7 och dom funkar ju helt ok på nya datorer åsså. Det borde inte va några som helst problem att skicka med directx9 runtimes med spelet.

Länk till kommentar
Dela på andra webbplatser

DirectX bör ju vara bakåtkompatibel (därav större och större fil) så i mitt exempel så måste

programmet kodats felaktigt så ingående versionsrummer i 3dx9-filnamnet krävdes...?

DxDiag... varför testas ljud och annat om inte hårdvaran/firmware/drivrutiner är involverade?

Länk till kommentar
Dela på andra webbplatser

Okej jag har hållt på med DirectX till projektet nu i några dagar och är nu helt klar med allt som kommer behövas i spelet.

Har läst lite mer om DirectX och börjar förstå.

DirectX includes security and performance updates, along with many new features across all technologies, which can be accessed by applications using the DirectX APIs.

Det här med att DirectX inte har med hårdvara förstod du nog inte vad jag menade med. Jag menar att det har inte något med hårdvaran att göra direkt. Det som har med hårdvaran direkt att göra är ju grafikkortsdrivrutinerna.

Så det här att om jag stoppar i en runtime med DirectX så kommer det inte att göra spelet ospelbart på ny hårdvara. Nej som citatet från microsft lyder så är DirektXuppdateringar bara för att fixa säkerhet / prestanda samt nya tekniker man kan använda. Men eftersom spelet inte använder nyare tekniker än vad som fanns då jag stoppade in denna runtimen kommer det aldrig bli ett problem.

I alla fall är detta vad jag har kommit fram till, vill inte vara sur men det verkar som att detta är rätt och jag ville bara avsluta tråden med rätt info.

Länk till kommentar
Dela på andra webbplatser

Delta i dialogen

Du kan skriva svaret nu och registrera dig senare, Om du har ett konto, logga in nu för att svara på inlägget.

Gäst
Svara i detta ämne...

×   Du har klistrat in innehåll med formatering.   Ta bort formatering

  Only 75 emoji are allowed.

×   Din länk har automatiskt bäddats in.   Visa som länk istället

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Skapa nytt...