webForumDet fria alternativet

nedtryckning av tangent slöar ned animation

Java

7 svar · 280 visningar · startad av jme

Medlem sedan maj 20012 237 inlägg
Frågan#1

Hej!

Försöker pilla lite med spelskapande.

När man håller ned en tangent för att t ex styra ett objekt på skärmen så slöas animationen ned. Hur skulle man kunna förhindra detta?

Medlem sedan nov. 20022 355 inlägg
#2

Om du släpper tangenten, slutar animationen då? Om, så skulle man kunna göra så att om man trycker ner en tangent säg "pil ned" så ska abinationen fortsätta tills man trycker på en annan tangent.. kanske sabbar spelupplevelsen dock. Vet att i C# med GDI+ finns det ett par funktioner för att göra animationerna mer flytande, kanske finns ngt likandne i Java!?

Medlem sedan maj 20012 237 inlägg
#3

Vad jag menar med animation i detta fall är att en ruta rör sig antingen åt höger eller vänster, beroende på om jag trycker på höger- eller vänsterpilen.

Då jag trycker på nån av pilarna så rör sig rutan men då rör den sig hackigt.

Medlem sedan nov. 20022 355 inlägg
#4

Ok, kolla på Dubble Buffering om du inte redan använder den, den ska man kunna använda för att "rita" ett objekt utanför spelet och när det är färdigritat så ploppar det ut direkt på skärmen istället för att ritas ut efter hand på skärmen. I c# så blir det mkt bättre flyt i animationer på detta sätt.

Medlem sedan maj 20012 237 inlägg
#5

Jo, me doublebuffering förhindrar man att det flimmrar och jag kör med doublebuffering...*men* :) det h a c k ar. Det är det som är problemet och det inträffar ändast då jag håller ned tangenten.

Medlem sedan aug. 20021 752 inlägg
#6

Har du "rita på skärmen" och "läs tangentbort" i två olika trådar eller i samma tråd? Om du har de i samma tråd så försök att dela upp dem så att de ligger i olika tråda och inte låser varandra.

/Viktor

Medlem sedan maj 20012 237 inlägg
#7

Viktor! Smart! Att jag inte tänbkt på det. :q
Tror inte jag har dem uppdelat i två olika trådar...skall testa det...återkommer sen....

Medlem sedan sep. 2001961 inlägg
#8

Jepp... Tänk dock på risken att totalt få i trådarna om du börjar med trådar... ;-)

254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)