Directx 7 SDK & Directx 11 SDK: różnice

0

Siemka!

Zastanawiam się nad kupnem książki "Direct 3D Bibla" (czy jakoś tak :D), została ona wydana w 2001 roku i dot. directx 7 SDK, jednak wiadomo że teraz gier specjalnie pod directx 7 robić nie będę jednak chciałbym siędowiedzieć czy są jakieś większe różnice między tymi dwoma środowiskami (bądź fameworkami), czy jest różnica między np. nazwami zmiennych czy są to różnice czysto techniczne (no i dodanie wielu innych rzeczy między tymi wersjami)

0

Chyba lepszym pytaniem by było, czy są jakieś elementy wspólne tych obu wersji, ponieważ od wersji 10 Microsoft bardzo dużo pozmieniał jeśli chodzi o sdk i nawet między wersją 9 i 10/11 jest spora różnica.

0

Hmmm...Rozważam jeszcze opengl, ale najbardziej chodzi mi o teorie samego programowania 3D nie tylko konkretnej biblioteki graficznej, popatrzcie na te dwa linki:
http://helion.pl/ksiazki/opengl-programowanie-gier-kevin-hawkins-dave-astle,prgrop.htm
http://helion.pl/ksiazki/direct3d-programowanie-grafiki-trojwymiarowej-w-directx-biblia-julio-sanchez-maria-canton,dir3db.htm

Jak myślicie czy obie ksiązki nauczą mnie tyle samo co do samej teorii??

0

Pomiędzy starymi API, a tymi nie tak starymi (czyli DX 9+, OpenGL 2+) jest dość duża różnica - te stare bazują na fixed-pipeline, a nowe bazują na shaderach. Shaderów jest wiele typów: vertex shader, pixel shader, geometry shader, shadery do teselacji, compute shader, itd (sama nazwa shader oznacza dosłownie coś a'la 'cieniowacz', natomiast w rzeczywistości to nic innego jak krótki programik, który może być odpalany przez jednostki obliczeniowe na GPU, które też nazywa się shaderami).

Obecnie na shaderach lata praktycznie wszystko, od menedżerów okien w systemach operacyjnych, poprzez małe gierki na komórki, na dużych grach na konsole i pecety kończąc.

Nie ma wielkiego sensu uczyć się przestarzałego API i czytania o fixed-pipeline, bo tylko zmarnujesz czas zaśmiecaniem sobie głowy.

Różnica między DirectX, a OpenGL jest taka, że podobno DirectX w wersjach 10 i powyżej jest wygodniejszy do programowania niż OpenGL. Na pewno DX jest obecnie popularniejszy na platformie Windows niż OpenGL. Platform jest jednak wiele więcej. Jeśli jesteś wymiataczem to możesz pouczyć się DX i być może dostaniesz się do zespołu piszącego większe gry na Windowsa. Natomiast OpenGL jest wieloplatformowy, obsługiwany jest przez Windowsa, MacOSa, różne dystrybuje Linuxa (a także BSD i inne typy Unixów, choć tam mogą być większe problemy ze sterownikami), a co najważniejsze - platformy mobilne, jak Android czy iOS. A platformy mobilne, czyli smartfony, tablety (i cokolwiek co jeszcze mobilnego powstanie) to dynamicznie rosnący rynek.

0
  1. różnice są ogromne;
  2. najnowsze wersje bibliotek choć zalecane przez M$ nie zawsze są najszczęśliwszym wyborem (podobnie jak najnowsze wersje OpenGL) bo nakładają niepotrzebnie wysokie wymagania sprzętowe i systemowe (OK w przypadku gry wysokobudżetowej, nie-OK gdy nie widać w co te wymagania poszły...);
  3. mogę potwierdzić że Visual 2012 ze swoimi najnowszymi SDK nadal zawiera nagłówki i biblioteki do starych wersji, np. DirectDraw 7. więc wszystko, z wyjątkiem jakichś nieplanowanych niekompatybilności, będzie nadal się kompilować i działać
  4. gorzej może być z dokumentacją (wycięta lub okrojona ) i przykładami (od dawna wszystko stare wycięte)
  5. większość gier w tej chwili powstaje pod Direct3D 9. kolejne wersje (jest już 11.1) zaczną się upowszechniać za rok-dwa, gdy Windows XP wyjdzie z powszechnego użycia.

Na pewno nie ma sensu angażowania się w D3D poniżej 9.

0

Mhm...A co sądzicie o tej ksiązce?: http://allegro.pl/programowanie-gier-w-directx-61e-def-wawa-i3312171444.html

PS: I czy ta druga książka może mi się przydać?

0

@Azarien
DX11 będzie się gwałtownie upowszechniał już w ciągu jakiegoś pół roku, bo pod koniec roku będzie premiera nowej generacji konsol, które mają obslugiwać DirectX 11 lub równoważne możliwościami API (konkretniej to zarówno PS4 jak i XboX One mają mieć świeże APU od AMD, a AMD ma obsługę DirectX 11 już w Radeonach z 2009 roku).

Nie powinno to mieć jednak wielkiego wpływu na platformy mobilne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1