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

GLFW print text
Goto page Previous  1, 2, 3  Next
 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Mar 04, 2007 2:58 pm    Post subject:

tiy wrote:
Tads jautajums, sanak ka ieksh Squares 3D, visur ari tika izmantoti tikai *.tag bildes?


Nē, tikai izmantots .tga formāts. Atver data.zip arhīvu un paskaties, tur viss ir redzams.

Taču saproti pats, ka tas nav vienīgais formāts, ko tu vari izmantot. Tu vari izmantot vienalga kādu formātu - bmp/png/jpg/dds/whatver. Vis-vis-labāk ir izmantot tīrus bildes raw datus, tad tekstūru ielāde būs visātrākā. Protams, developēšanas stadijā visizdevīgāk ir izmantot kādu viegli rediģējamu formātu, kuru vari viegli un ātri pamodificēt, kad vajadzīgs..
Back to top
View user's profile Send e-mail
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Sun Mar 04, 2007 3:54 pm    Post subject:

Ka namainit krasu es zinu.
Ieksh draw() es uzlieku krasu(zalsh) fps printam, pirms tam ieladeju texturu, bet kad zimeju kubu finsh ari ir zala krasa, man vajaga, lai kubs nebutu zalsh, tikai texturets.
Back to top
View user's profile
Tenjou



Joined: 22 Nov 2005
Posts: 275

PostPosted: Sun Mar 04, 2007 5:12 pm    Post subject:

Kubam ir norādītas texturas koordinates? Esi eneiblojis texturēšanu ar glEnable(GL_TEXTURE_2D)? Jo pēc idejas ja ir aktivizēta teksturēšana un kam nebūs norāditas koordinātes būs baltā krāsā.
Back to top
View user's profile
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Tue Mar 06, 2007 12:40 am    Post subject:

Es izdariju ta sakuma pie ielades ir glEnable(GL_TEXTURE_2D), tad notiek piesaiste un gldisable(GL_TEXTURE_2D) vai ta ir parezi darit?

Otrs, lai saku chakaret tas krasas pec fps izvadishanas ja uzliek 1.0f 1.0f 1.0f jeb laikam starta pelete, tad tas teksturas iegus isto krasu.

Paskatijos ka ir strukturets Squares 3D redzeju ka uz tag failiem, rodas jatajums ar kadu programmu tag failus var atri zimet un mainit (free)?

By the way pati spele man neaizgaja meta erroru VC++ runtime library error 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 Mar 06, 2007 1:02 am    Post subject:

Par kādiem tag failiem tu visu laiku runā?
tga? Tad tiem mēs izmantojām GIMP.

glEnable/disable (GL_TEXTURE_2D) vienkāršotie izsakoties ietekmē tekstūru parādīšanos uz ekrāna, kad tu definē virsotnes (glVertex) ar tekstūru koordinātēm (glTexCoord), bet nevis tekstūru ielādi.
Back to top
View user's profile Send e-mail
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Tue Mar 06, 2007 9:18 pm    Post subject:

Ja tga faili (blin mazak web jakode Smile ). Es atradu Right Click Image Converter programma sver maz un strada atri.
Back to top
View user's profile
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Fri Mar 16, 2007 11:18 am    Post subject:

Kad es mainu bidu (',''.') kameru talak tuvak sakuma strada tad, arguments klust -1 un objekti (cubi), pazud. Kas varetu but par vainu.
fails te
http://yy.lv/upload/index.php?ACT=4&f=31247&ext=7Z
Code:

//------------ camera ------------------------------------------ >>>
float angle_x,angle_y,angle_z,pos_x,pos_y,pos_z=12.0f;
POINT MouseBod;
const float piover180 = 0.01745329252f; // pi/180
float tmp_y,tmp_x;

void ChangeCameraPosition()
{   float mys_x,mys_y,step;   
           
   glLoadIdentity();               
   if(glfwGetKey('R'))
     {
      angle_x=0;
      angle_y=0;
      angle_z=0;
      pos_z=12.0f;
      pos_x=0;
      pos_y=0;
      keys['R']=0;
     }
     
   
   if(glfwGetKey('Q'))step=1.0f/fps;else step=5.0f/fps;   
   if (glfwGetKey(','))      
   {   
       tmp_y = angle_y*piover180;
       tmp_x = angle_x*piover180;
                     
      pos_x += step * (float)sin(tmp_y) * (float)cos(tmp_x);
      pos_y -= step * (float)sin(tmp_x);
      pos_z -= step * (float)cos(tmp_y) * (float)cos(tmp_x);
   }
   if (glfwGetKey('.'))   
   {
      pos_x -= step * (float)sin(angle_y*piover180) * (float)cos(angle_x*piover180);
      pos_y += step * (float)sin(angle_x*piover180);
      pos_z += step * (float)cos(angle_y*piover180) * (float)cos(angle_x*piover180);
   }


   GetCursorPos(&MouseBod);   ///glfwGetMousePos(mx,my); //                     
   SetCursorPos(400,320);            
   mys_x= ((float)MouseBod.x - 400)/10;   
   mys_y= ((float)MouseBod.y - 320)/10;   
   if     (glfwGetKey(GLFW_KEY_DOWN))mys_y=1;   
   else if(glfwGetKey(GLFW_KEY_UP))mys_y=-1;   
   if     (glfwGetKey(GLFW_KEY_RIGHT))mys_x=1;   
   else if(glfwGetKey(GLFW_KEY_LEFT))mys_x=-1;   
   angle_x+= mys_y;
   angle_y+= mys_x;

   if(angle_x>90.f) angle_x = 90.f;
   if(angle_x<-90.f) angle_x = -90.f;

   glRotatef(angle_x,1,0,0);
   glRotatef(angle_y,0,1,0);
//   glRotatef(angle_z,0,0,1);
   glTranslatef(-pos_x, -pos_y, -pos_z);
}
//------------ camera ------------------------------------------- <<<
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 Mar 16, 2007 11:56 am    Post subject:

Kāpēc tu lieto GetCursorPos/SetCursorPos nevis glfwGetMousePos? Nav jau īsti jēga lietot glfw, ja tu turpini pa tiešo izmantot WinAPI.

Kas ir arguments, kurš kļūst -1?
Back to top
View user's profile Send e-mail
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Fri Mar 16, 2007 12:59 pm    Post subject:

glfwGetMousePos es meginaju ,bet kat ka nesanaca, glfw nevareju atrast
SetCursorPos. Kadiem jabut tad nodifinetiem x un y pireksh f-jas glfwGetMousePos()? Argumenti ir -pos_x, -pos_y, -pos_z, tani linka uz faila ir tieshi debug kur rada ka vini mainas un kad pazud. Doma bija nogluchi tad kad sin = -1 vai 1, tomer tas ta nebija.

int *x, *y

glfwGetMousePos(&x,&y)
mys_x= ((float)&x - 400)/10
ta ?(nezinu vel loti labi tos pointeru un addreshu padarishanu)
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 Mar 16, 2007 1:10 pm    Post subject:

Nesaprotu, ko tu vēlies? int mainīgo kā float? Vajag darīt tieši tāpat kā tu ar to MouseBod mainīgo daries:
Code:
int x, y;
glfwGeMousePos(&x, &y);
mys_x = ((float)x - 400)/10;


Apskaties taču glfw piemēra programmas, kas nāk līdzi glfw. Tur viss ir.
Arī glfwSetMousePos ir. Dokumentāciju palasi: http://glfw.sourceforge.net/Reference.pdf (22 lpp) un http://glfw.sourceforge.net/UsersGuide.pdf
Back to top
View user's profile Send e-mail
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Fri Mar 16, 2007 1:55 pm    Post subject:

Kad es izdaru shita
Code:

   glfwGetMousePos(&x, &y);
   SetCursorPos(400,320);         
   mys_x= (x - 400)/10;   
   mys_y= (y - 320)/10;

Tad man palaizot programmu kamera uzreizs aizlido augsha.

Es velos panakt, lai man varetu bidit kameru pa Z asi. Tagad bidas, bet pazud kad argumenti zpos,xpos,ypos iegust vertibu -10.

TE var apskatities tad vares saprast
http://yy.lv/download.php?f=31247
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 Mar 16, 2007 2:42 pm    Post subject:

Es tak tev iepriekš prasīju jau - kāpēc tu izmanto SetCursorPos, nevis glfw piedāvātās fjas?
Dažādu API fjas (tavā gadījumā WinAPI un GLFW) jaukt kopā gandrīz nekad nav prātīgi.
Back to top
View user's profile Send e-mail
tiy



Joined: 12 Jan 2007
Posts: 28

PostPosted: Fri Mar 16, 2007 3:43 pm    Post subject:

Tad uzliku shita viss kamera rada ta ka vajaga.
glfwGetMousePos(&x, &y);
glfwSetMousePos(x, y);
mys_x= (x - 400)/10;
mys_y= (y - 320)/10;

Tomer, palika veca problema, kad sak bidit pa Z pazud kubi, kad
glTranslatef(-pos_x, -pos_y, -pos_z) jeb glTranslatef(-10.0f, -10.0f, -10.0f);

Code:

      pos_x += step * (float)sin(tmp_y) * (float)cos(tmp_x);
      pos_y -= step * (float)sin(tmp_x);
      pos_z -= step * (float)cos(tmp_y) * (float)cos(tmp_x);
 

      pos_x -= step * (float)sin(angle_y*piover180) * (float)cos(angle_x*piover180);
      pos_y += step * (float)sin(angle_x*piover180);
      pos_z += step * (float)cos(angle_y*piover180) * (float)cos(angle_x*piover180);

Vai shis ir pareizas formulas?
Back to top
View user's profile
Tenjou



Joined: 22 Nov 2005
Posts: 275

PostPosted: Fri Mar 16, 2007 5:58 pm    Post subject:

Kapēc tu vispār pēc glfwgetMousePos lieto glfwSetMousePos? o.O
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 Mar 16, 2007 7:08 pm    Post subject:

Lai dabūtu relatīvās koordinātes. Pabīdi peli pa kreisi - dabū (-10,0), nevis (390, 320).
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Goto page Previous  1, 2, 3  Next
Page 2 of 3

 
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