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

3D Modeļu ieladēšana
Goto page 1, 2  Next
 
dev.gamez.lv Forum Index -> OpenGL
View previous topic :: View next topic  
Author Message
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Sun Feb 17, 2008 6:05 pm    Post subject: 3D Modeļu ieladēšana

Sveiki, tātad man ir dots jauns uzdevums Laughing .

Man vajag uztaisīt 3D modeļu apskatītāju (3D Model Viewer) Exclamation, ar OpenGL scēnu jau visus darbus esmu padarījis, tikai man bija aizmirsies kā ielādēt modeļus uz scēnas. Metiet, lūdzu, visus iespējamos linkus, kur ir aprakstīt kā iemest 3D modeli uz scēnas (visus iespējamos formātos)

Vienkārši mums rādija kā ielādēt MD3 un DFX modeļu tipus, bet aizmirsu to progu iemest sev uz e-pastu.

Ā, un vēl formātu saraksts kurš man interesētu Embarassed

.MD3
.MD2
.MD5
.OBJ
.MDL
.3DS

Un protams ja atradīsiet vairāk būšu par 1 cepumu parādā :)

P.s - Vēlams Delphi valodā ! ! !
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: Sun Feb 17, 2008 6:14 pm    Post subject:

Valoda jau principā nav svarīga - visās normālās valodās var gan nolasīt datus no faila (floatus/intus/...), gan arī veidot masīvus, kas ir parasti vajadzīgs. Vajag tikai izlasīt kādā formātā modelis tiek glabāts failā un uzrakstīt nedaudz koda, as ielādēs šo modeli tā, kā vien tavams engīnam vai aplikācijai ir vajadzīgs.

Atliek vienīgi atvērt http://www.google.com/ un ierakstīt atbilstošos kverijus, lai atrastu modeļu formātu aprakstu:
md3 format
md2 format
md5 format
obj format
mdl format
3ds format
Tas nepavisam nav grūti - atvērt gūgli. Tici man.
Ja gribi jau gatavu delphi kodu, tad raksti apmēram šādus kverijus: "md3 model load delphi"
Back to top
View user's profile Send e-mail
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Mon Feb 25, 2008 7:02 pm    Post subject:

Ok, es vēlējos uztaisīt SpeedButtonus, lai varētu ielādēt katru modeli atsevišķi, tātad pieliku Dialogus un pārveidoju nedaudz to kodu Very Happy
Code:
 
  Model:=T3DModel.Create;            // Instance of T3DModel
  Model.LoadFromFile(3DSDialog.Filename);  // Load the 3DS file


Viss Unit1.pas nokompilējas, bet Units3DS (tas units kur aprakstīts ka ielādēt 3DS failu) notika savāda klūda
Code:

glBindTexture(GL_TEXTURE_2D, FGenTexture);
glDeleteTextures(1, FMaterial.FGenTexture);


Nu šīs rindiņas protams nav kopā (viena pēc otras) ierakstīta.
Un kļūda kapēc nekompilējas Units3DS ir
[Pascal Error] Unit3DS.pas(638): E2003 Undeclared identifier: 'glBindTextures'
[Pascal Error] Unit3DS.pas(675): E2003 Undeclared identifier: 'glDeleteTextures'

Kāda velna pēc vinš nesaprot parastās gl komandas? OpenGL pie uses ir pierakstītas pārbaudīju 3 reizes... jau 4 uz laimi :D

Help plzzz, kā vienmēs 1 cepums Rolling Eyes
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: Mon Feb 25, 2008 8:14 pm    Post subject:

Iespējams es dabūjis līku OpenGL failu, kurā nav attiecīgās fjas, vai arī tās ir nosauktas savādāk (bez gl prefiksa). Cita hipotēze - nepareizā vietā to uses esi uzrakstījis.
Back to top
View user's profile Send e-mail
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Mon Feb 25, 2008 9:08 pm    Post subject:

EDIT:

Atradu vecu (85-96 gada) GL.pas failu vismaz tajā bija glBindTexture un glDeleteTexture

Tagad kļūda izmainījās
Code:

  glDeleteTextures(1, FMaterial.FGenTexture);


[Pascal Error] Unit3DS.pas(675): E2010 Incompatible types: 'PGLuint' and 'Cardinal'
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: Mon Feb 25, 2008 10:09 pm    Post subject:

Atrodi lūdzams, kādu OpenGL tutoriāli priekš Delphiem, nevis katru sintaktisko kļūdu tagad te postēsi.

Tev tur problēma tāda, ka glDeleteTextures otrajā parametrā sagaida adresi uz mainīgo, nevis paša mainīgā vērtību. Lieto adreses operatoru @ lai dabūtu mainīgā adresi.

Cik atceros no senajiem laikiem, kad vēl Delphi programmēju, tad labākie OpenGL headeri bija šie:
http://www.delphi3d.net/dot/index.htm
vai http://www.delphigl.com/download.php?cat=5

Nezinu gan tik vai tagad varbūt ir kāds labāks uzradies..
Back to top
View user's profile Send e-mail
Storm



Joined: 11 Apr 2006
Posts: 742

PostPosted: Tue Feb 26, 2008 8:38 am    Post subject: Re: 3D Modeļu ieladēšana

^suny^ wrote:
Sveiki, tātad man ir dots jauns uzdevums Laughing .


Ja nav nosleepums, kas tev to uzdevumu uzdod? O_o
_________________
Izraadaas ka dazu dev.gamez.lv lietotaaju absurdaa ignorance meedz eksisteet arii augstaakas paakaapees : http://www.gamedev.net/community/forums/topic.asp?topic_id=411552
Back to top
View user's profile
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Tue Feb 26, 2008 5:03 pm    Post subject:

Storm:
Es staigāju uz OpenGL kursiem un man skolotājs uzdeva uztaisīt #D modeļu vieweru, es jau visas scēnas un UI uztaisīju vajag tikai ielādēt modeļus.. UN visu laiku parādas aizvien jaunākas kļūdas un fascinējošas tagad man vinsh nesaprot ko nozīme Panel2.Width un pie uses nesaprot vārdu Controls...
Tad nu es un nezinu ko darīt, jo TIK jautri man vēl nebija klājies Idea Arrow
Back to top
View user's profile
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Tue Feb 26, 2008 7:38 pm    Post subject:

bubu wrote:
Iespējams es dabūjis līku OpenGL failu, kurā nav attiecīgās fjas, vai arī tās ir nosauktas savādāk (bez gl prefiksa).


bubu:
Atsūti lūdzu man savu OpenGL.pas failu, jo es paskatījos iekšā tajā faila un man tur nebija to divi man vajadzīgo komponentu, ja liek vecās opengl bibliotēkas tad tipi nesakrīt GLenum un PCardinal ... meklēju jau pašu ajunāko, bet atrast nevaru un tie linki kurus tu man devi arī nepalīdzēja Sad
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: Tue Feb 26, 2008 9:06 pm    Post subject:

Man nav nekāda OpenGL.pas faila :D Es Delphi sen jau neprogrammēju (gadus 4-5).

Tajos linkos, kurus devu ir 100% strādājoši OpenGL headeri.
Back to top
View user's profile Send e-mail
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Wed Feb 27, 2008 7:16 pm    Post subject:

OK, biju atradis to Undeclared cēloni, jau izlaboju Smile
Viss nokompilējas, bet pēkšņi atveras logs "Debugger Notification" un tur klūda Read access 0000000 read access 00000000 un kaut kas tur vēl un ja es savā progā kaut ko nospiežu (kaut vai uz formas) man proga izslēdzas.
Kādi varētu būt cēloņi?
P.s saprotu ka jau esmu apnicis, bet...
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 Feb 27, 2008 7:30 pm    Post subject:

Cēlonis ir tikai viens - līks kods. Laid programmu debugerī un skaties, kurā rindiņā debugeris saka, ka kods krašo.
Back to top
View user's profile Send e-mail
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Wed Feb 27, 2008 8:42 pm    Post subject:

Rādija uz
Code:

Application.Run;


Tagad rāda kļūdu
[Pascal Fatal Error] F2039 Could not create output file 'C:\Documents and Settings\Edgars\My Documents\md3view\MD3App.exe'
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 Feb 27, 2008 9:28 pm    Post subject:

Vai tik nepaskatījies uz call-steka augšējo galu, kurā Application.Run atroda. Vajadzēja uz otru galu skatīties - pašu apakšu.

Par to kļūdu - visdrīzāk jau tas MD3App.exe fails ir palaists, tāpēc tam virsū nevar uzrakstīt jaunu. Paskaties task managerī un nokillo esošo, ja nav vajadzīgs.
Back to top
View user's profile Send e-mail
^suny^



Joined: 30 Nov 2007
Posts: 57

PostPosted: Wed Feb 27, 2008 9:56 pm    Post subject:

Jā, tik tiešām Task Manadžerī bija MD3App.exe kuru es arī nokiloju, bet problēma aizvien paliek.
Rāda to pašu Access violation of adress 00000000.Read of adress 00000000.
Debuggers neko nerāda.
Back to top
View user's profile
Display posts from previous:   
dev.gamez.lv Forum Index -> OpenGL All times are GMT + 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
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