Permalänk
Medlem

Bokval, openGL/direct3d

Hej, har just läst c++, läste här i lite trådar och folk skrev att inte winApi var nödvendigt att läsa om man vill skriva spel i openGl.
Läste nehes Gl guider, tog ett tag innan jag förstod, fick igång det scripten men på nått sätt så känns det ganska föråldrat.
tex, när jag kom till att lägga på texturer så saknades filer pga att stödet för glaux har upphört i windows xp.

Nu behöver jag en bra bok openGL eller dircet3d, vet inte vad som är bäst eller mest framtidssäkert. Gärna lite turtials med, Spelar ingen roll om den är på svenska eller engelska men den får inte kosta allt för mycket. Mitt mål är dock att kunna programera openGL eller direct3d fritt, och att kunna göra lite roliga saker inom ett par månader, Ni kan även tippsa om bra c++ böcker som du läst eller hört bra om, gärna anpassad till gaming.

MVH stoffe

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks

Permalänk
Medlem

The OpenGL 1.1 Programming Guide finns gratis att tanka på nätet. Den tycker jag är rätt vettig att kolla igenom.

Annars kan jag rekommendera Programming Roleplaying games with DirectX.

Jag kör OpenGL, har inte orkat sätta mig in i DirectX. Känns som att ingen av dom kommer dö ut direkt. Men båda har mycket av samma grundtankar ivarjefall, så har man lärt sig det ena så kan man nog lära sig det andra. Dock har jag hört att det är lättast att lära sig OGL så det är väl det jag rekommenderar att du börjar lära dig mest.

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem

Med opengl så är man inte låst till windows plattformen!

Visa signatur

“Our enemies are innovative and resourceful, and so are we. They never stop thinking about new ways to harm our country and our people, and neither do we.” - President Bush - August 5, 2004

Permalänk

Jag har gått och väntat på att beställa http://www.adlibris.se/shop/product.asp?isbn=1592003699&mscss... ett bra tag nu, men jag anar att min förkunskap inom C++ inte är riktigt tillräckligt, och det verkar vara svårt för mig att ta tag i saken

Edit: Det finns en hög med böcker som är anpassade till gaming, kika på recensioner på exempelvis www.gamedev.net så hittar du säkert något du är intresserad av.

Visa signatur

System.out.print(madness ? this.is.SPARTA : "");

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av SamiRaj
Med opengl så är man inte låst till windows plattformen!

Japp, och det är faktiskt ganska trevligt att veta att man skriver OS-oberoende kod även om man själv mest kör windows. Jag använder just nu glfw.sf.net, vilket jag tycker är väldigt trevligt. Känns som att det är bara bättre jämfört med GLUT.

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem

Mera Tipps :D...

så OGL är bara bättre för det inte är lika plattformsberoende som direkt3d?

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks

Permalänk
Medlem

Ifall du ska programmera OpenGL under windows så rekommenderar jag dig att lära dig åtminstånde grunderna i Win32 (riktiga namnet för nuvarande s.k.a winAPI). Det kommer underlätta väldigt mycket i framtiden för dig. De flesta wrappers som finns suger (GLUT m.m) och har en negativ effekt på programmerarens utveckling, om du ska göra något seriöst så ska du använda dig direkt av API:t.

Hur jobbigt är det egentligen att fixa sin egen "start-up" kod? .. det enda du egentligen behöver göra är ju att skapa ett fönster och skapa ett renderings kontext till det fönstret, allt detta kan man göra på 20 rader kod ungefär.

En annan anledningen till att jag rekommenderar att använda win32 är att chansen är väldigt stor att om du t.ex. för ett spel eller likande kommer att behöva använda andra win32 funktioner, win32 API:t täcker ju allt som windows operativsystemet har att erbjuda, filhantering, minneshantering, (sockets), process och trådhantering.. detta är bara några av sakerna du behöver kunna om du ska göra något seriöst.

Att vara lat och använda wrappers till allt har i 99% av fallen en negativ effekt på programmeraren, detta har jag stor erfarenhet i, har hjälpt väldigt många personer som lärts sig att använda wrappers och sen när de ska göra något själv klarar de inte ens de enklaste sakerna. Att lära sig api:t kan kännas lite jobbgt i början men sen när man kan det någonlunda så är fördelarna vädligt stora.

Permalänk
Medlem

Okey, får jag göra som magnus sa, alla säger olika saker hela tiden dock har jag börjat läsa små "kurser" i winApi, jag är ute efter:
Böckerna ska vara ganska så nyskrivna och inte använda föråldrade metoder att skriva på...

1. Väldigt grundlig och djup c++ bok (svenska)
2. winAPI bok grundlig djup och vad allt betyder(svenska)
3. en openGL bok väldigt grundlig och djup som ska förklara allt och hur man kan jobba självständigt ex. (svenska eller engelska)

Tror att väldigt många är ute efter samma sak som jag, så skriv, gärna pris också. Hoppas självklart att du hört bra saker om boken eller själv läst den och gett dig mycket kunskap så du klarar att jobba på egen hand och slipper gå efter färdiga script så fort du ska göra något.

/stoffe, tackar för alla nuvarande svar.
Ska börja läsa nu i april

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks

Permalänk
Medlem

Håller inte riktigt med dig Magnus. För det första är som sagt t.ex. GLUT, GLFW eller SDL plattformsoberoende, vilket ju inte direkt är någon nackdel. Sen är jag den typen av programmerare som tycker att visst, det är roligt att hitta på egna algoritmer eller implementera såna som redan finns, men å andra sidan tycker jag nog det är roligare att få saker gjorda och inte återuppfinna hjulet om och om igen. Så om det finns bibliotek som kan göra saker åt mig, speciellt såna tråkiga saker som att initiera ett fönster, så tycker jag om att använda det.

Nu har jag inte skrivit en "windows-loop" själv, men läst om det i t.ex. RPG-boken jag nämnde så jag vet ungefär vad det går ut på. Ser ärligt talat inte några direkta fördelar med att skriva en sån själv, när koden blir så mycket trevligare med GLFW. Att det t.ex. skulle bli några prestandaskillnader har jag svårt att tro, men om du kan skaffa lite benchmarks på det, så visst.

Naturligtvis är det inte dåligt att kunna sitt winapi, men om det är ogl/dx man försöker lära sig så finns det bättre saker att lägga tid på i min mening. Sånt som "filhantering, minneshantering, (sockets), process och trådhantering.. ", måste man använda WinAPI för det? Jag vet att GLFW har trådhantering, vet dock inte om den är speciellt bra. Men mycket av sånt där, om inte allt, går ju att fixa med opensource-bibliotek.

EDIT: Sök här på forumet efter bokrecensioner, finns några trådar om det redan

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem

Srekel har gjort det men alla skriver olika böcker, ingen är riktigt överens om vilken bok som är bäst så.

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks

Permalänk

Intressant. Jag har sysslat en del med win32, och kan mina meddelande-hanterare osv ganska bra. Jag har nyligen börjat med OpenGL (efter att ha lekt runt ett bra tag i DirectX), och jag skulle gärna vilja utnyttja plattformsoberoendet i OpenGL. Jag har ingen aning om hur man skapar ett fönster i linux liksom... så det kan ju inte vara fel att använda något av de bibliotek som t.ex. Srekel använder? Eller bör jag hellre skaffa mig fördjupade kunskaper inom linux OCKSÅ? (Hoppas inte det här var för mycket utanför ämnet)

Permalänk
Medlem

Håller med Srekel. Av vad rewl skrev så tolkar jag det som att han vill få fram saker på skärmen, och då e det väl bäst o koncentrera sig på det. Behöver man win32 nångång så får man väl ta o lära sig det då.

Antonovskij: Nej det tycker jag inte, tex SDL eller GLFW borde passa utmärkt för dig.

Permalänk
Medlem

litar på serkel, han e ganska säker på programering så :). men i open GL måste det finnas de delar som winAPI erbjuder. tex om man gör ett spel vill man göra en meny med tex när man är inne i openGL rutan. valt ett par böcker nu.

http://www.adlibris.se/shop/product.asp?isbn=9163607034&msc... http://www.adlibris.se/shop/product.asp?isbn=1592002056&msc... http://www.adlibris.se/shop/product.asp?isbn=1592003699&msc... http://www.adlibris.se/shop/product.asp?isbn=1592003494&msc...

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks

Permalänk
Medlem

Tja, WinAPI skall tas bort i senare Windows. Då kan det vara bra att ha ett abstraktionslager i mellan (SDL, eller om du gör det själv vilket blir en del kodande per plattform).

Visa signatur

Perl - Made by Idiots, Java - Made for Idiots, C++ - Envied by Idiots

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av rewel
litar på serkel, han e ganska säker på programering så :). men i open GL måste det finnas de delar som winAPI erbjuder. tex om man gör ett spel vill man göra en meny med tex när man är inne i openGL rutan. valt ett par böcker nu.

haha, nåja. Det finns nog en del i den här delen av forumet som är duktigare än mig, inte minst inom datorgrafik och windowsprogrammering.

Ang. menyer. GLUT har stöd för såna, men de är rätt fula och det känns inte så "snyggt" att använda dom. Sånt får man ofta skriva själv, men "Crazy Eddie" har gjort ett GUI-bibliotek som jag vet att dom använder bl.a. i OGRE (www.ogre3d.org). Här är citat från sidan:

Citat:

Crazy Eddie's GUI System is a free library providing windowing and widgets for graphics APIs / engines where such functionality is not natively available, or severely lacking. The library is object orientated, written in C++, and targeted at games developers who should be spending their time creating great games, not building GUI sub-systems!

http://www.cegui.org.uk/modules/news/

Det verkar trevligt, men har inte testat det själv än.

Ang. böckerna, så vet jag inte om du verkligen behöver två böcker i C++, men det är klart att det kan väl inte skada. De två andra böckerna har jag inte tittat på, men som någon sa så rekommenderar jag att kolla in recensionerna på www.gamedev.net. Även www.amazon.com har en hel del recensioner (och det kan bli billigt att beställa därifrån).

EDIT: Förresten är det srekel, inte serkel. Usch vad många det är som gör fel på det

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem

haha ok man täker inte på de.. ska kollar runt på recensioner på gamedev nu... tack!

Visa signatur

amd64 3000+ @ 2000mhz,socket 939 MSI K8T NEO2, Radeon x800xt PE Powercolor 256 vivo Idle 35c~, 2x 512 DDR kingston 400mhz (Dualchannel), maxtor 80GB 7200rpm, Nec duallayer DVD-RW CPU- idle: 35 ~ cpu full: 51 ~ . 3dmark 05: http://service.futuremark.com/compare?3dm05=653428 NY: 61103dmarks