Hej! >Är det ens värt att försöka skapa, säg, ett spel där man styr en gubbe och datorn styr ett par fiender, alltså ett spel med fyra-fem rörliga objekt, genom att använda GDI+ och VB .NET? Hej, Tackar för svaret, MS! Tackar för ditt svar med, JN! Hej. gdi+ är det slöaste skit som någonsinn skapats , det är helt mjukvarubaserat (dvs det använder inte någon av de hårdvarufunktioner som finns för att blitta/fylla ytor) och endast skapat för att asp.net killarna skulle kunna streama fina bilder från webservern utan att allokera gdi resurser i operativet.. Tackar för svaret, Roger! Det finns bra hemsidor om directx & vb.net... :)GDI+ och enklare spel...
Jag har en del frågor kring det här med VB .NET, GDI+ och enklare spel.
Alltså, hur pass "tunga" spel kan man egentligen skapa med VB .NET och GDI+ innan hela datorn laggar ihop och skärmen flimrar sönder?
Hur många sprites kan man till exempel ta med?
Är det ens värt att försöka skapa, säg, ett spel där man styr en gubbe och datorn styr ett par fiender, alltså ett spel med fyra-fem rörliga objekt, genom att använda GDI+ och VB .NET?
Man skulle ju kunna gå lös på DirectX9 men av olika anledningar så vill jag inte det...
I vilket fall är jag tacksam för konstruktiva svar, då jag gärna skulle vilja göra ett enklare spel i just VB .NET!
/MarcusSv: GDI+ och enklare spel...
Ja det borde inte vara nårga problem. För att undvika flimmer kan du ju använda dubbelbuffring.
MSSv: GDI+ och enklare spel...
Vill bara tillägga lite saker ang dina frågor.
När du undrar hur "tunga" spel man kan göra har inte med .Net att göra utan den dator du skall spela dem på. Detta är något man kär sig av erfarenhet, ex hur många polygoner kan jag nyttja? hur många objekt kan jag nyttja etc på en hårdvara som är så här klen eller kraftig. Om du anser dig själv ha en ok hårdvara inte för ny och inte för gammal, bygg det du vill bygga, testa och se om det håller. Om det inte gör detta så får du tänka om tunna ner ditt spel. Vet att många spelprogrammerare brukar göra ett prestanda test innan de drar igång. Säg att du skall ha 30 rörande objekt samtidigt där alla 30 objekt har 4 egenskaper. Sköld, skott, hastighet, Hållbarhet. Gör en enkel simulation av detta där alla 30 objekten nyttjar sina 4 egenskaper.
GDI+ i allmänhet är inte direkt snabb. GDI+ är effektiv i de fall du vill göra så enkla bilhanteringar. (då det lätt kan kräva mycket kräm ur en dator.) För att öka upp det hala kan du nyttja de GDI apier du har i Windows. Bygga egna wrappers m.m. En lite mer avancerad historia.
Annars är ju C++ i princip språket du skall ha för att bygga ett kraftigt spel.
JNSv: GDI+ och enklare spel...
Som du mycket riktigt påpekar kan man ju köra med dubbelbuffring. Har en del små tips i diverse böcker om hur man t.ex. undviker flimmer med GDI+. Men jag vet som sagt inte om jag ska satsa på det eller ej.
Får nog ta mig en rejäl funderare :-)
/MarcusSv: GDI+ och enklare spel...
Jo, C++ är väl THE way to go om man vill göra ett kraftfullt spel. Kan ju en del C++ men långtifrån tillräckligt för att kunna slänga ihop grafik o.dyl. :-/
Windows API...ska man inte försöka undvika att ha med det att göra när man utvecklar program för .NET-plattformen? Har för mig jag läste det någonstans.
Eftersom du verkar veta vad du pratar om ;-) tänkte jag passa på att fråga en annan grej också...är DirectX9 bakåtkompatibelt mot DirectX7. Har nämligen en bra bok som handlar om just VB-programmering och DirectX7!
Ska klura lite på det här :-)
/MarcusSv: GDI+ och enklare spel...
Anledningen att du skall undvika Win Apierna är mer för att du blir mer bunden till Operativet och kanske med ottur oftast det OS du proggar för. Det beror på vilka APIer man nyttjar. Annars ser inte jag något större problem att nyttja dem. Wrappern tar ju kanske lite prestanda men du kan även få vinst genom att nyttja rätt APIer.
Ang DirectX7 och 9 så är jag inte så jätte instatt, men om det gäller .Net så kräver det .Net så vitt jag vet.
JNSv: GDI+ och enklare spel...
att det sedan blev någon form av standard i windows.forms för att rita kontroller är bara tråkigt :/
ska du ha prestanda kör native gdi eller dx..
kör bara gdi+ när du vill lattja med fina alphablending/antialias effekter och inte har något behov av snabb rendrering...
att blitta en fullskärmsbild i gdi+ kan ta ungefär 0.5 sec , medans du lätt kan blitta samma bild en 50 ggr per sekund via native gdi..
om plattformsoberoende är något som du bryr dig om så kan du göra någon form av "Painter" interface som olika ritklasser kan implementera...
då kan du lätt skapa optimerade ritklasser för olika operativ..
//RogerSv: GDI+ och enklare spel...
Låter som jag har två alternativ: Windows API eller DirectX.
Har en bra bok hemma om DirectX7 så det lutar åt att jag ska satsa på det! Visst, det finns ju DirectX9 men jag är inte så förtjust i det :-/
/MarcusSv: GDI+ och enklare spel...
www.directx4.net t.ex.