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

API izvēle
Goto page 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: Wed Jun 10, 2009 11:28 am    Post subject: API izvēle

Tāds vienkāršs jautājums.
Sakarā ar vēlmi pāriet uz vienota API, ir divas neskaidras lietas.

1. Ja izvēlos OpenGL, tad nezinu kā izveidot DirectX-ā esošo inverso matricu.

2. Ja izvēlos DirectX, tad vai ir tāds GLSL2HLSL? Cik zinu, tad ir HLSL2GLSL, bet otrādi ne. Bet esmu tā pieradis pie GLSL, ka pāriešana uz HLSL ir smagi jāapgūst.

Kādas idejas?
_________________
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: Wed Jun 10, 2009 11:37 am    Post subject:

1. Izmantojot matemātiku protams: http://en.wikipedia.org/wiki/Inverse_matrix#Methods_of_matrix_inversion
Bet divriteni nevajag izgudrot. Lieto kādu gatvu matemātikas libu - tajā viss jau būs iekšā. Iesaku cml: http://cmldev.net/ vai Eigen: http://eigen.tuxfamily.org/ Ļoti jaukas, mazas un optimizētas C++ matemātikas bibliotēkas tieši piemērotas vektoriem, matricām un tml zvēriem.

2. GLSL uz HLSL jau ir taču dikti līdzīgi. Pārrakstīt vienu uz otru, vai otro uz pirmo ir taču nieks. Pat sintakse vairumā sakrīt. Atliek tikai korekti nodefinēt uniformus/varyingus un floatX nomainīt uz vecX. Tieši tā esmu pārrakstījis gan šurp, gan turp vairākus šeiderus.
Back to top
View user's profile Send e-mail
EDDY



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

PostPosted: Wed Jun 10, 2009 1:37 pm    Post subject:

Nu, paldies!
_________________
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: Wed Jun 10, 2009 4:05 pm    Post subject:

Un kāda vaina ir gatavam enginam, piemēram, Ogre vai Irrlicht. Ar Ogre ir pat radīti produkti, ko var veikalu plauktos redzēt (http://www.ogre3d.org/2009/04/28/new-featured-commercial-projects). Dažus pat tepat Latvijā esmu pamanījis.
_________________
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: Wed Jun 10, 2009 4:08 pm    Post subject:

elvman, edijs taču nevar izlemt starp diviem grafiskajiem API. Jau piecdesmit trešo reizi mētājas starp vienu un otru. Kur nu vēl veselu spēles dzini izvēlēties.. tur tak izvēles atliku likām - katrai nedēļai pa vienam pietiks :)
Back to top
View user's profile Send e-mail
EDDY



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

PostPosted: Thu Jun 11, 2009 7:12 am    Post subject:

Gatavam dzinim ir tā vaina, ka tev jāpēta tas dzinis.
Šajā gadījumā es pats varu izvēlēties ko un kā es veidoju.

Nu nav nekāda problēma pašpikot no šiem dziņiem.
_________________
Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
Back to top
View user's profile
Kamazs
Guru
Guru


Joined: 17 Jan 2003
Posts: 829
Location: The glorious ancient city of Loja

PostPosted: Thu Jun 11, 2009 7:53 am    Post subject:

Starp citu, manā skatījumā galvenā gatavo 3D dziņu problēma ir tas, ka tu dabū vairāk nekā tev varbūt vajag. Un tad spēle sanāk smagnēja, šķietami sarežģīta utt. Plika API izmantošana (vai ar ērtām palīgbibliotēkām) ļauj paņemt tikai to, ko tev vajag.

Protams, ja spēle ir tāda, kurā var izmantot visas 3D dziņa iespējas vai vismaz lielāko daļu, tad droši vien tur ir vērts ieguldīt gan laiku, gan enerģiju.
_________________
...un es uzskatu, ka Fallout ir etalons
Back to top
View user's profile Send e-mail Visit poster's website
EDDY



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

PostPosted: Thu Jun 11, 2009 8:02 am    Post subject:

Pareizi, nav jēgas pētīt mēnešiem ilgi dzini, ja varu uzrakstīt vienkāršu prāta spēli gandrīz no nulles.

Mēģināšu pārtulkot to GLSL uz HLSL.
_________________
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: Thu Jun 11, 2009 10:49 am    Post subject:

EDDY wrote:
Pareizi, nav jēgas pētīt mēnešiem ilgi dzini, ja varu uzrakstīt vienkāršu prāta spēli gandrīz no nulles.

LOL, ātrāk ir mēnešiem ilgi izvēlēteis starp diviem API.
_________________
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: Thu Jun 11, 2009 12:48 pm    Post subject:

Kamazs wrote:
Starp citu, manā skatījumā galvenā gatavo 3D dziņu problēma ir tas, ka tu dabū vairāk nekā tev varbūt vajag. Un tad spēle sanāk smagnēja, šķietami sarežģīta utt. Plika API izmantošana (vai ar ērtām palīgbibliotēkām) ļauj paņemt tikai to, ko tev vajag.

Tas saucās steep learning curve. Jo vairāk ar to darīsies, jo vienkāršāks viss šķitīs. Arī C++ pilnīgam iesācējam var likties smagnējs un vairāk nekā vajadzīgs. Tikai pēc pailga laika saproti, cik tomēr daudzas lietas tur ir nodarīgas un kā tās strādā.

Quote:
Gatavam dzinim ir tā vaina, ka tev jāpēta tas dzinis.

Un plikam API tev nemaz nav jāpēta kā inverso matricu izrēķināt, kā meņu nocentrēt, kā šeideri uzraksīt? Tas viss no dzimšanas tev zināms?
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 7:09 am    Post subject:

Pētīt defaulto API (OpenGL 2.0, DirectX 9.0-11.0) ir tak daudz reizes vieglāk, nekā pētīt neskaitāmos engines, nu šajā gadījumā kaut vai to pašu Ogre.
Kāpēc uzskatat, ka es mēnešiem ilgi izvēlos API? Gan ar laiku iemācīšos abus. Tas ir tāpat kā ar sievietēm - ir blondīnes un ir brunetes. Abām atšķirīgas gaumes un pieeja, bet izvēlēties grūti.

Es vismaz orientējos abos API. Rolling Eyes
_________________
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 7:42 am    Post subject:

Quote:
Pētīt defaulto API (OpenGL 2.0, DirectX 9.0-11.0) ir tak daudz reizes vieglāk, nekā pētīt neskaitāmos engine

Kāpēc?
API ir API. Vai tas 3D api, vai tas spēles engine API, vai datubāzes API. Kur ir atšķirība? Manā pieredzē neesmu manījis lielo atšķirību.

EDDY wrote:
Es vismaz orientējos abos API. :roll:
Saki?
Ko tad nozīmē, piemēram, šis topiks? http://dev.gamez.lv/viewtopic.php?t=1709
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 8:29 am    Post subject:

Paskaties uz datumu, tas visu izsaka. Vakar vēl nezināju, šodien jau zinu.
Un neesmu teicis, ka pārvaldu - tikai orientējos. Tās ir divas dažādas lietas.

Par API. Nē, engine API nav tas pats, kas parastais API.

Es varu rakstīt šādi:

Code:
Draw_kvadrats(..........);


un varu rakstīt šādi:

Code:
glPushMatrix();
glBegin(GL_QUADS);
.................
..............
glEnd();
glPopMatrix();



Vai tavuprāt es ietu mainīt tās engine funkcijas? Protams, ka nē. Tad no engine vispār nav nekādas jēgas. Tā ir koda ērtākai pārskatei, nevis kā savādāk. Var jau visu engine pa savam pārveidot, tad kāda jēga? Veltīgs darbs.

Es pats rakstu savas funkcijas. Bet tas neliedz man pašpikot no citiem kādu fragmentu.
_________________
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 9:02 am    Post subject:

Es augstāk runāju par apgūšanu, nevis modificēšanu. Endžīnes api tāpat ir api - funkcijas un klases, apraksts ko tās dara un kā. Kur tur ir atšķirība no ogl/dx?
(ņem pie tam vērā, ka spēles engīni ir iespēja modifcēt, taču ogl/dx iekšējo darbību - ne mazākās).

Un par ērtāku koda pārskatu - tā jau nu nav gatavas endžīnes vaina. Tā ir tava vaina - kā tu organizēsi kodu, tik arī ērts tas būs.
Tu izklausies pēc tipiska divriteņa izgudrotāja, kas saslimis ar Not Invented Here ;)
Back to top
View user's profile Send e-mail
gazz



Joined: 03 Jan 2004
Posts: 355
Location: Teika

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

plashi pieejamaas engines parasti ir radiitas ar meerkji ka uz vinjaam tiks radiitas reaalas speeles ne tikai tech demo ar sheideriem vai pickingu, kur kubs. Tajaas parasti ir jau ietverts scene graph, savs objektu formaats/populaaraakie formaati ko taa speej aatri ielasiit un atteelot, audio API eerts wrapers, wrapers prieskh kontroleem, run loops & event modelis un veel kaudze noderiigu lietu kas pasham nau jaaraksta. Protams ka to visu var meegjinaat rakstiit pats, bet maac dikti lielas shaubas ka tev tas sanaaks kaut piekto dalju tik labi. vienu gan zinu noteikti - IT jomaa nau naakotnes ja nespeej aatri iebraukt citu rakstiitos API, biblioteekaas, freimworkos.
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 1, 2, 3, 4, 5  Next
Page 1 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