dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

API izvēle
Goto page Previous  1, 2, 3, 4, 5  Next
 
dev.gamez.lv Forum Index -> fleims/offtopics/draza
View previous topic :: View next topic  
Author Message
EDDY



Joined: 07 Oct 2005
Posts: 1610
Location: Dzimtā zeme, Latvija

PostPosted: Fri Jun 12, 2009 9:49 am    Post subject:

Man nav nekas pret GLFW un irrklang izmantošanu, jo diezin vai es varētu tagad uzrakstīt mp3 ielādes funkciju uz n-tām lapusēm.
Un kamēr Microsoft neuzrakstīs dll ar mp3_play("blabla.mp3", 2D, stereo, blablablabla ...., ....) tikmēr cilvēki meklēs visādus OpenAL un irrklangus, vai FMOD-us. Par FMOD gan ir pretenzijas - tas nekorekti atskaņo failus, ir jūtamas problēmas ar laika funkcijām.
Protams, wav un midi formātam jau tagad ir iespēja rakstīt no nulles.

Saprotams, ka lielākiem projekiem Ogre derēs, bet for very simply games nevajag.

Tad kāpēc Elvmans nerakstīja snake spēli uz Ogre? Tāpēc, ka ar SDL to ir ātrāk izdarīt.
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
gazz



Joined: 03 Jan 2004
Posts: 355
Location: Teika

PostPosted: Fri Jun 12, 2009 10:14 am    Post subject:

SDL arii ir savaa zinjaa 2D endzhins, tiesa vairaak kaa frameworks, bet arii abstrahee daudzas lietas. Tam ir savs event loops, savas teksturas/surfaces. ar entajiem plaginiem.
Back to top
View user's profile Send e-mail
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Fri Jun 12, 2009 10:34 am    Post subject:

Nesapratu par to microsoftu.
MS audio API piedāvā vairākus un visdažādākos.
Gan zema līmeņa: WinMM (deprecated), DirectSound (deprecated), WASAPI, XAudio2.
Gan arī augsta līmeņa: XACT - t.i. tāds, kurš māk dažādus failu formātus atskaņot un nav jāķēpājas ar buferiem/sourcēm un to strīmošanu.
mp3 atskaņošana (tb tā dekoderis) afaik nāk jau līdzi windowsam kopš ~9x laikiem. Sākot ar XP toč jebkurš windows māk bez palīglīdzekļiem atskaņot mp3.

Tāpēc, ka elvmans nemācijā kā ogrē programmēt. Elvmans mācīja kā vispār programmēt spēli. Tās uzbūvi. Principu in ženeral. Tu taču, C++ mācoties programmēt, nerakstīji ūber krutu GUI sistēmu ar templeitiem, eventiem un delegātiem un vēl sazin ko tur. Visdrīzāk rakstīji "Hello World" vai analogu programmu.
Back to top
View user's profile Send e-mail
EDDY



Joined: 07 Oct 2005
Posts: 1610
Location: Dzimtā zeme, Latvija

PostPosted: Fri Jun 12, 2009 11:01 am    Post subject:

Nezinu par XACT, dzirdējis esmu, bet niekojies ne.
Es vairāk domāju ne DirectX bāzētu.

Jā, uz WinMM iekš c# tīri labi der, tur nav vairāk par desmit rindiņām.

Mācoties C++ universitātē ne to vien bija jāraksta - ne tikai delegāti un predikāti, vai klašu mantošana un funkciju overdrive.

Skatos, esam atkal novirzījušies no tēmas.
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Fri Jun 12, 2009 11:19 am    Post subject:

WinMM ir vecs un aizvēsturisks mēsls. Un ar lielu latenciju. Uz NT sistēmām tas ir nelietojams precīzām darbībām. Ar xaudio2 man ir sanācais normālu audio strīmošanu panākt ar 4KB bufera izmēru. Ar DSound - 8KB, taču ar WinMM nekas labāks par 16-32KB nesanāca (atkarībā no OS/CPU/skaņas kartes). Ar mazāka bufera izmēriem skaņa raustījās. 44100Hz 16-bit mono skaņai tas nozīmē 370ms latenciju (tipa pasaki - sound->pause(), un tikai pēc 370ms tas paīstam notiek). Vienkāršām darbībām tas varbūt ir lietojams, bet nu pa nopietnam neredzu jēga tik aizvēsturiskas lietas supportēt.

Par to C++ es neparecīzi izteicos - tur piemirsu vārdu "sākot" [mācīties], tb kā pirmo reizi.

funkciju overdrive :D Tas ir kad kautkur pāri jāpārbrauc? :)
Tu nu gan esi forši "mācījies", ja pat parastu masīvu nemāki izveidot: http://dev.gamez.lv/viewtopic.php?p=19857#19857
Back to top
View user's profile Send e-mail
EDDY



Joined: 07 Oct 2005
Posts: 1610
Location: Dzimtā zeme, Latvija

PostPosted: Fri Jun 12, 2009 12:20 pm    Post subject:

Labi, ne overdrive, bet overloading. Embarassed
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Fri Jun 12, 2009 2:20 pm    Post subject:

Jāmēģina man arī tevi, EDDY, pārliecināt par dziņa nepieciešamību.

API
Bez dziņa - domā ilgi, kuru API lietot, pārkodē pusspēli katru reizi, kad pārdomāji.
Ar dzini - nomaini renderētāju pēc garastāvokļa, mākoņu daudzuma, apgaismojuma kvalitātes istabā, etc. - kā gribi.

Objektu zīmēšana
Bez dziņa -
Code:
glBegin();
glVertexXX(); x100
// sākas cits objekts - ievēro, ka glEnd varētu tā nejauši pazust..
glBegin();
glVertexXX(); x200
glEnd();
glBegin();...

un rezultātā viss zīmējas daudz lēnāk kā vajadzētu
Ar dzini -
Code:
//Startup'ā:
AddText();
AddGUIObject();
AddModel();
SetShader();
//Katrā kadrā:
Draw();

un zīmējas viss ļoti ātri

Atskaņošana
Bez dziņa -
fread( file, sizeof(wavheader), 1, &wavheader );
memcpy( &buffer, &wavdata, wavheader.datalength );
...
un brīnies, kāpēc [ne]strādā..
Ar dzini -
LoadWAVFile();

P.S. Tas, ka es nekādus dziņus savam galvenajam projektam nelietoju, nav iemesls aizslaucīt manus argumentus. Es vēl tikai mācos. Bet tu jau esi visādas skolas pabeidzis.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
EDDY



Joined: 07 Oct 2005
Posts: 1610
Location: Dzimtā zeme, Latvija

PostPosted: Fri Jun 12, 2009 2:27 pm    Post subject:

Ar dzini -
Code:
:
//Startup'ā:
AddText();
AddGUIObject();
AddModel();
SetShader();
//Katrā kadrā:
Draw();


un zīmējas viss ļoti ātri
----------------

Hm, to pašu es daru arī savā OpenGL piemērā.
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Fri Jun 12, 2009 2:43 pm    Post subject:

Nē, snake5. Tas ko tu uzrakstīji nav ar dzini. Tās ir kautkādas prastas funkcijas.
Back to top
View user's profile Send e-mail
EDDY



Joined: 07 Oct 2005
Posts: 1610
Location: Dzimtā zeme, Latvija

PostPosted: Fri Jun 12, 2009 3:04 pm    Post subject:

Uzraksti saviem vārdiem vienā teikumā, kas tavuprāt ir dzinis.
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Fri Jun 12, 2009 4:00 pm    Post subject:

EDDY wrote:
Uzraksti saviem vārdiem vienā teikumā, kas tavuprāt ir dzinis.

Esmu no amazones vairākas grāmatas pasūtījis, lai izprastu so jautājumu, bet tā arī vienotu atbildi neesmu saņēmis. Diezvai vispār tāda pastāv.
Varu vienīgi iekopēt tekstu no wikipedijas (ko tu pats ļoti vienkārši varēji izdarīt): A game engine is a software system designed for the creation and development of video games.
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Fri Jun 12, 2009 5:53 pm    Post subject:

bubu wrote:
Nē, snake5. Tas ko tu uzrakstīji nav ar dzini. Tās ir kautkādas prastas funkcijas.

Tas nedrīkst būt C valodā rakstīts dzinis?
Vari iedomāties, ka pirms katras dziņa funkcijas ir "pEngine->", bet vai tas kaut ko reāli mainīs?
Quote:
Hm, to pašu es daru arī savā OpenGL piemērā.

Bet tavu kodu nav pārbaudījuši tik daudz cilvēki, cik uz dziņa kodu skatījās.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
DeRatizators



Joined: 27 Apr 2006
Posts: 492

PostPosted: Fri Jun 12, 2009 7:41 pm    Post subject:

"pEngine->" ? Heh, ja nu vienīgi iet runa par Evitas dzini :)

Kaut kas līdzīgs pEngine->xyz drīzāk būtu tieši API gadījumā nevis dziņa.
_________________
Any PANCAKE has to be long and thin and short and fat. Not to mention being an excellent insulator and a superb conductor.
Back to top
View user's profile
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Fri Jun 12, 2009 8:04 pm    Post subject:

Pārāk šaura tev izpratne par dzini, sneik.
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Fri Jun 12, 2009 8:22 pm    Post subject:

klases metode jau tāda pat funkcija vien ir. Vienīgi papildus slēpts this arguments tiek padots.
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> fleims/offtopics/draza All times are GMT + 2 Hours
Goto page Previous  1, 2, 3, 4, 5  Next
Page 2 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group