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

Problema ar Tile dzini un kameru
Goto page Previous  1, 2, 3, 4  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: Fri Jun 11, 2010 10:35 pm    Post subject:

Tad neredzu problēmu kāpēc auto nebūtu jākustas. Jāskatās viss pārējais kods - kā tu no kameras izdomā kādu pasaules daļu zīmēt, utml..
Back to top
View user's profile Send e-mail
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Fri Jun 11, 2010 11:31 pm    Post subject:

Te būs: http://pastebin.com/VxR39sgy
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 10:12 am    Post subject:

Te viena kļūda:
Code:
if (ksKeyboardState.IsKeyDown(Keys.W))
361.                {
362.                    AutoAkseleracija();
363.                   
364.                }
365.                else if (ksKeyboardState.IsKeyUp(Keys.S))
366.                {
367.                    AutoDeAkseleracija();
368.
369.             if (ksKeyboardState.IsKeyDown(Keys.S))

Trūkst "}", kuru atradu funkcijas beigās...

un te otra:
Code:
if (iProgramMode == 0)
612.            {
613.               
614.                spriteBatch.Draw(PlayerX, new Vector2(520,350), null, Color.White, Rotacija, new Vector2(PlayerX.Width / 2, PlayerX.Height / 2),1.0f, SpriteEffects.None, 1);
615.            }

-neesmu XNA speciālists, bet izskatās, ka padotais [520,350] vektors ir pozīcija mašīnai, kura stāvēja uz vietas. Smile
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 11:08 am    Post subject:

Auto Pozicijas vektors ir tads lai auto paliek ekrana centra.Kā to nomaina uz Poziciju auto kustas bet kamera ne.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 11:12 am    Post subject:

Kam attiecībā pret ko jākustas?
Ja gribi, lai auto paliek kameras centrā un braukā pa pasauli, tad tur (spritebatch.draw izsaukumā) ieliec auto reālo pozīciju. Un kameras pozīciju arī uzstādi kā vienādu ar auto pozīciju.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 11:24 am    Post subject:

Code:
   cam.KamerasPozicija.X = Pozicija.X;
   cam.KamerasPozicija.Y = Pozicija.Y;
   cam.KamerasPozicija.X = (float)Math.Round(KamerasPozicija.X);
   cam.KamerasPozicija.Y = (float)Math.Round(KamerasPozicija.Y);

zem ši man vēl ir 2klases

Code:
spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.SaveState, cam.TransformacijaK(Kamera));

Zem ši atrodas tile karte jeb viss kas kustas.
spritebatch.end();

Code:
Spritebatch.begin();
te ir viss kas nak līdz ar kameru(gui...untt)
spritebatch.end()


ja izdaru kā saki auto kustas bet kamera ne.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 11:31 am    Post subject:

Vajadzētu kustēties.
Pēdējā spritebatch.draw neaizmirsi ielikt auto reālo pozīciju?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 11:34 am    Post subject:

ja ieliku
Code:
spriteBatch.Draw(PlayerX, Pozicija, null, Color.White, Rotacija, new Vector2(PlayerX.Width / 2, PlayerX.Height / 2),1.0f, SpriteEffects.None, 1);


kad noņemu
Code:
 //cam.KamerasPozicija.X = (float)Math.Round(KamerasPozicija.X);
 //cam.KamerasPozicija.Y = (float)Math.Round(KamerasPozicija.Y);


Tad kamera kustas bet ~ 3reizes lenak un auto var aizbraukt arpus redzes loka.
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 11:48 am    Post subject:

Pirmais minējums - kaut kādas problēmas ar transformāciju kodu.
Diemžēl neko labāku pagaidām galvā atrast nevaru. Razz
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 12:04 pm    Post subject:

jam ja tev nekas galvā nešaujas tad man visp melna bilde Very Happy

Code:
 public Vector2 PozicijaK
        {
            get { return KamerasPozicija; }
            set { KamerasPozicija = value; }
        }
        public Matrix TransformacijaK(GraphicsDevice graphicsDevice)
        {
            Transformacija =
            Matrix.CreateTranslation(new Vector3(-KamerasPozicija.X, -KamerasPozicija.Y,0));
           

            return Transformacija;
        }
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 12:26 pm    Post subject:

Es ceru, ka ar projekcijas matricu viss ir OK. Tā būtu vienīgā neapskatītā lieta...
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 12:53 pm    Post subject:

Tadas nav Laughing
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 1:16 pm    Post subject:

Tāda vienmēr ir. Jautājums ir tikai: kāda tā ir.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
WhiteFalcon



Joined: 16 May 2010
Posts: 102
Location: Rīga

PostPosted: Sat Jun 12, 2010 8:41 pm    Post subject:

Ar "Tādas nav" domāju ka vēl nēsmu izveidojis. Bet kam vinju ? man tak nav 3d spele (nesi bargs ar 3d spelju kodēšanu nestrādāju)
Code:
Matrix.CreatePerspectiveFieldOfView(.....)
Back to top
View user's profile
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sat Jun 12, 2010 9:07 pm    Post subject:

Hmm. Varbūt arī viņa te nav vainīga. Tehniski varētu būt, bet diez vai API pats viņu bojās.

Būtu labāk, ja tu debuggerī ieliktu breakpointu īstajā vietā (pie tām vietām, kur kodā tiek lietota kameras pozīcija un auto pozīcija) un paskatītos, vai tās vērtības netiek kaut kā nevēlami izmainītas ar "Step Over".

EDIT: Vienīgais, ko es nesaprotu tajā kodā, ko iedevi - kāpēc pēdējam SpriteBatch'am nav transformācijas?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Goto page Previous  1, 2, 3, 4  Next
Page 3 of 4

 
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