Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.
Kinslayer

Kinslayer

Medlem
  • Registrerad 2002-07-04
  • Antal inlägg 13

Foruminlägg

De senaste inläggen Kinslayer har skrivit i forumet.

1
Citat:

quote:Skapades ursprungligen av: KentH:
C++ har viss overhead som man inte vill ha med, men å andra sidan så är det ganska mycket lättare att skriva i.. eftersom man inte behöver att skicka med sin mega stora stuktur med variabler till varje funktion som ska arbeta på den...

Man behöver inte skicka in sin megastora struktur i en C funktion... enklast är att skicka in den ofantligt stora (32 bitar ; )) adressen till strukturen. C++ gör ju samma sak, fast det gör ju pekararitmetiken implicit om man använder referensanrop. Har personligen aldrig gillat det då man aldrig vet ifall man skickar kopior eller referenser.

Portbar kod behöver inte betyda att man skyr alla OS-specifika anrop, utan att man delar upp programmet i lager så att man ifall man nu vill det kan byta ut komponenter (tex renderingsmotorn eller audiomotorn) utan att paja hela programmet. Detta gör det lättare att fixa buggar, då man inte behöver riskera några följdfel (i större utsträckning) i andra moduler. Det skall i sådana fall (teoretiskt sett) inte vara några större problem att byta renderare från OpenGL till Direct3D (ingen anledning att göra detta) eller QuickDraw3D (RAVE). Samma sak gäller audiosystemet, det bör gå att byta ut OpenAL mot SoundSprocket utan att detta orsakar några större följdfel.

Angående assambler: ja det är sant att dagens kompilatorer genererar oerhört väloptimerad kod, detta gäller särskilt till PPC då den processorserien är designad med dagens kompilatorer i åtanke. Men en del saker gör sig bättre i assambler, som jag nämde tidigare så är detta ganska användbart vid normalisering (detta används vid ljussättning i OpenGL). En instruktion som kan användas då är frsqrte, den är ca 16 ggr snabbare än att skriva 1.0/sqrt(a), inte lika stor precision iofs, men det kan åtgärdas med lite matematisk magi (typ Newton-Rhapson). I och med att normaler behöver beräknas ganska ofta om man har animationer på 3d-modeller så kan en sådan liten optimering göra ganska mycket... Dock så bör man skriva rena C-funktioner av allt som skrivs i asm (lättare att avlusa programmet).

Eh, hoppas att jag höll mig på en förstålig nivå... ; )

Citat:

quote:Skapades ursprungligen av: Jont Olof:
Få se nu, ville vi verkligen uppnå portbarhet?

/JO

Nej, men det är generellt sätt bra kodning att skriva portbar kod. SDL, OpenGL och OpenAL bör även användas av den anledningen att det är enkelt och skulle reducera kodskrivandet en bra bit.

Jag har ännu inte sett en 3d-motor (i realtid) skriven i ObjC. ObjC har inte särkilt mycket overhead, men det är avsevärt mycket overhead om man jämför med C. Ett metodanrop i ObjC kan i värsta fall resultera i över 20 efterföjande funktionsanrop. Om man istället hade anropat en c-funktion så hade overheaden minskat avsevärt.

ObjC kan användas till mindre prestandakritiska delar. Det är ganska vanligt att man väljer att göra just så.

Tro mig, jag har bra koll på detta ämne också. ; )

För att uppnå portbarhet så borde man använda SDL, OpenGL och OpenAL. Man behöver därmed inte använda Obj-C i någon större mån. SDL är dessutom oerhört lättanvänt jämfört med t.ex. CoreGL. Angående programmspråk så ger C störst prestanda och är att föredra iallafall för en spelmotor, andra språk kan vara användbara till användargränssnitt och dyl. Dessutom så finns det en del saker som man kan göra i assambler ca 6 ggr snabbare än i C, tex normalisering av normaler (förkortning så att en normal får längden 1.0).

Min rekommendation är så mycket i ren C som möjligt, allt som skrivs i asm bör även skrivas i C, initiering och användargränssnitt kan gärna skrivas i andra språk typ Obj-C, C++ etc.

Hade glömt detta. Är programmerare (igentligen högskolestudent), kan C, C++, Obj-C samt minimala mängder assambler, ska ha en kurs i asm efter sommaren så det kanske klarnar då. Av detta så är jag bäst på ren C. Är särskilt intresserad av datastrukturer och minneshantering (ju lägre nivå destå bättre). Kan en del OpenGl, SDL och lite mer Cocoa. Kan koda Windows också (bläh!)...

Hur gör man livet svårt för buset? Enkelt: gör som trollen i tomtar och troll, dvs gå ut en klunga och skandera "BRÄNN, BRÄNN, BRÄNN".

Eventuella gudar skulle ju kunna spela en liten roll här. Till exempel, ifall folkuppbådet har spårat en förövare och har lite problem med busen, vips så slår det ner en blixt (från klar himmel), buset får sig en "liten" tänkare och Tor (eller Vite Krist beroende på trosuppfattning om nu det läggs in) har talat...

Musikförslag: Skandinavisk folkmusik med anpassat instrumentval.

Ett par saker:

1. Det fanns inga druider i det forna Norden. Jag tror mer att den korekta termen är gode (maskulinum) eller gydja (femeninum).

2. Varför ha med magi överhuvudtaget. Själv gillar jag mer att slåss utan magi så att man kan följa en någolunda realistisk taktik. De som är duktiga ledare bör vara chefer, inte de som slänger en "massive compulsion" på alla spelare han träffar.

3. I det vikingatida Norden så var heder och ära viktigare än livet. Detta bör kanske återskapas i spelet, eller? Särskillt poängsystem kanske med en poäng i heder och en i ära. Detta skulle också kunna få folk att ej göra affärer med folk med låg heder då man vet att de ljuger mycket. "Titta där kommer Erik Ormtunga!" Vilket kommer sporra spelarna att inte försöka sig på några tjuvknep. Ära skulle man få för stordåd, strid och annat som gör en ryktbar. Mycket minuspoäng ära och heder ifall man helt sonika skulle slå ihjäl en obeväpnad man, en kvinna eller ett barn till exempel.

Två ord: PLUNDRA KLOSTER!!!

Det hade varit ganska häftigt... för att inte säga provocerande. Tänk er när de oskyldiga munkarna faller ner på knäna, gör korstecknet mumlandes "a furore norrmanorum, libera nos domine" bara för att få skallarna klyvda av brutala skäggyxor...

Fast jag vet inte riktigt hur det skulle passa in i "bygga by-tanken".

En annars riktigt seriös idé är att låta religion spela en ganska stor roll, dvs Vite Krist mot asadyrkare, hade lett till en del intriger då båda sidorna försöker omvända de andra och får bonuspoäng för varje lyckad konvertering (minuspoäng för en våldsam konvertering ala Olav Tryggvasson och Norge)...

Citat:

quote:Skapades ursprungligen av: Mattias Hedman:

På svenska:
Anser mig själv vara duktigt.

För att säga det på Amerikanska.
I fucking rock at it.

Från The Jargon Files:

perfect programmer syndrome n. Arrogance; the egotistical conviction that one is above normal human error. Most frequently found among programmers of some native ability but relatively little experience (especially new graduates; their perceptions may be distorted by a history of excellent performance at solving toy problems). "Of course my program is correct, there is no need to test it." "Yes, I can see there may be a problem here, but _I´ll_ never type `rm -r /´ while in root mode."

Ska iofs själv inte säga något... Jag är fett bra på C (bäst på institutionen ialla fall)

Kanske licensproblem med den motorn, fast den motorn är nog den mest intressanta som jag har sett hittils.

"$100 per programmer seat (think of it the same as you would a compiler). You can release your game for free, allow open beta testing or demos. You own your intellectual property, but you must publish through GarageGames if you want to make money from your game."

Citat:

quote:Skapades ursprungligen av: ace4711:
Rätta mig om jag har fel:
1) Vi som konsumenter får köpa Region-1 skivor precis bäst vi vill.
2) Staten och EU struntar fullständigt i regionskodningar.
3) Du eller jag kan göra en film imorgon och sälja den över hela världen som en regionsfri DVD.

Grundproblemet är att det är dom som äger rättighetern till filmerna som vill ha begränsningar, och implementera dom. Jag är absolut ingen vän av regionskodning.

Du har i grund och botten rätt, så som jag har uppfattat det så finns det inga direktiv eller andra lagar som förhindrar folk att köpa Reg. 1 skivor. Däremot så fastställde EG-domstolen för ca 1 år sedan att försäljning av parallellimporterade varor inte skulle vara tillåten. Ett hårt slag mot konsumenterna... detta resulterar i att Reg. 1 DVD filmer (de som finns i reg 2 varianter) ej får säljas eftersom de redan importeras av annan. Domstolens beslut påverkar även andra varor som tillexempel Levis´ jeans.

I grund och botten är sådan lagstiftning framlobbad av stora bolag för att de skall kunna ha kontroll på vart varorna säljs och på så vis anpassa priserna lite mer efter omgivningen. Varför nu inte DVD-priserna då är högre i USA där man har en högre lön än inom EU är en bra fråga, vilket även konkurrenskommisionär Monti har ställt sig. Se på tex Estland, där kostar en laglig CD-skiva ca 120 SEK. Folk där tjänar också mycket mindre än i Sverige, här kostar samma skiva 180 SEK, enda skillnaden är den Estniska skivans tryck "Not for sale within the EU". Skivorna borde ju rimligtvis ha samma produktionspris, och jag tvivlar på att momsen kan stå för allt... ; )

Ursäkta slutet av det förra inlägget (lite ot), har spenderat för mycket tid på slashdot tror jag. ; )

[ 05 Juli 2002, 20:48: Meddelandet ändrat av: Kinslayer ]

Varning, politiskt inlägg!!1 ; )

Handlar inte EU och "the common market" om att öka konkurrensen inom Unionen? Varför har då de "konfederala" myndigheterna beslutat att paralellimport är olagligt. Hur kan företag överhuvudtag kunna lobba bort konkurrens på sin marknad?

Min åsikt är att inget företag skall få kontrollera distributionen av sina produkter. När det handlar om imateriella varor som tillexempel film och musik så har producenterna redan ett monopol på produkterna. Monopol = dyra varor. Om man då har monopol på distributionen också så resulterar detta i den enkla ekvationen: monopol + monopol = ännu dyrare varor.

**resten bortklippt, sorry för det (var trött tror jag)**

[ 05 Juli 2002, 20:21: Meddelandet ändrat av: Kinslayer ]

Grundprinciperna är desamma såvitt jag vet. Däremot använder man olika kodbibliotek till de olika plattformarna. Mac OS 9 använder soundmanager, OS X använder CoreAudio (enligt uppgift bland det snabbaste som finns, CA slår BeOS med kortare fördröjningar). SoundManager finns till OS X och är byggt ovanpå CA. Till Windows använder man andra bibliotek, typ DirectSound(?) och dyl.

En mer spelinriktad API som finns till OS X, Linux, Win, etc är OpenAL.

1