C++ :: How To Get Smooth Sprite Movement In SDL By Using Delta Time

Nov 30, 2014

I'm trying to get smooth sprite movement in SDL by using delta time. The way I'm calculating it is

long last = 0;
float deltaTime = 0.0;
...
long now = SDL_GetTicks();
//deltatime is in seconds
if (now > last) {
deltaTime = ((float)(now - last)) / 1000;
last = now;
}

And I'm updating the sprite like this:

virtual void update(float deltaTime) {
float dx = 100*deltaTime;
transform->position.x += dx;
}

But the movement is still noticeably jerky. Also, if I'm correct, my sprite should move 100 pixels to the right every second using this method, so it should take the sprite 8 seconds to reach the end of my window, since it's 800 pixels wide, but it takes it way longer than that. In other words the delta time I'm calculating can't be correct. Am I doing something horribly wrong? I'm guessing it has something to do with rounding, but I'm not sure.

View 2 Replies


ADVERTISEMENT

C++ :: 2D RPG Game - Smooth Sprite Movement (SDL)

Feb 7, 2015

I'm making a 2D rpg game, but I have some problem with the sprite movement. The sprite movement feels choppy. That's because I move the sprite 5 pixels per seconds. I now that I need somthing that have to do with SDL_getTicks and deltatime, but I dont know how to use/implement it.

Here is a little part of my code:

float spriteDstY;
float spriteDstX;
float speed = 5;
while(SDL_PollEvent(&event)!= 0) {
if (event.type == SDL_QUIT)

[Code] ....

View 8 Replies View Related

C++ :: How To Use Time For Time Based Movement

May 1, 2013

So I'm trying to learn how to use time for time based movement and what not. I did this only knowing the command time(&variable)

time_t timer;
int I, X;
void main() {
time(&timer);
X=timer;
while(I==5) {

[Code] ......

There's probably some other better way to do it... Obviously but for now I see it as putting current time in X.

start while
take in time constantly until I is 5
constantly asking is time>X(preset time 5 seconds ahead)
if it is
display message and add one to I

Why doesn't this display my message after 5 seconds?

View 1 Replies View Related

C :: Detect Mouse Movement

Aug 17, 2013

i was trying to write a program in c language which can detect mouse movement, but the program which i have written can only detect the mouse click or scroll the program which i have written given below..

Code:

#include<stdio.h>
#include<string.h>
#include <ncurses.h>
int main() {
}

[code]....

run the programme with linked-lncurses. improve my program which also detect when the mouse moves.

View 1 Replies View Related

C :: History Of User Movement

Feb 27, 2013

I want to make history of user's movement. Whenever the user inputs something, and the input is valid, then the input information will be stored into something. And later on, the history shows up whenever I pick the choice.

I have the specific program to make history.

View 3 Replies View Related

C++ :: Controlling The Object Movement?

Mar 7, 2013

I am currently working on quite complex project. Anyway, im not gonna go into deeper details. What I am stuck with is following function.

What I've got so far is basically a picture, and what I am trying to do is to set continuous movement to it, allow the user to control the directions of its movement by pressing "Up" , "Down", "Left " and "Right" key. The best example I can base my idea on is "Snake" game.

I don't have much of a code, however I am willing to upload it upon request.

View 1 Replies View Related

C++ :: Sine Wave Movement With The Saucer

May 4, 2014

I am currently working on an arcade game for my final assignment this year. I am struggling to get a sine wave movement with the saucer. Here is the code for it:

void ArcadeGame::spawnSaucer() {
Texture* pTexture = getTexture("saucertexture");
m_pSaucer = new GameObject(pTexture, "saucer");
m_pSaucer -> setPosition(1000, 300);
m_pSaucer -> setVelocity(-1, 10 * sin(1 * 3 * PI / 180), sin(1) * OBJECT_DEFAULT_SPEED);
addGameObject(m_pSaucer);
m_pSaucer->setSolid(true);
}

View 8 Replies View Related

C++ :: 2D Sprite Shakes While Being Followed By Camera

Jan 28, 2013

I'm making my view follow around my players ship, so it is always in the center, however at any angle other than 0/90/180/270 the player sprite starts shaking, more so when speed is increased and when the angle is closer to 45/135/225/315

I'm using SFML2, I would take a screenshot but it only captures one frame, which doesn't actually show it shaking.

void ViewFollowPlayer(sf::View& View, sf::RenderWindow& Window, double Delta)
{
double pSpeed = Player.getSpeed();

[Code].....

View 3 Replies View Related

C++ :: Getting Sprite To Animate With SFML

Dec 10, 2013

So this is my first try animating on my own, without a reference right in front of me. It's not working, I did check some of the projects I've made in the past, but for one those were done with Allegro, and really it should be able to move over to SFML quite easily, but it's not. It does display on the window in the correct place, but there are 3 pictures in the file and I want it to cycle through them, but it shows all three at the same time, and it only works once. if I press space a second time, only one of the pictures shows up, and it doesn't cycle at all. Here is my .cpp file :

#include "headers.h"
#include "SwordSprite.h"
int top = 0;
int left = 88;
int right = 132;
int bottom = 35;
SwordSprite::SwordSprite() {

[Code] .....

View 2 Replies View Related

Visual C++ :: OpenGL - 2D Movement With Respond To Keypress

Mar 4, 2014

I'm trying to implement keyboard controls to move a sphere(Player) with respond to keypress. Currently, when I press any key my character will move to the right by 0.1. How can I move my character with w(up),a(left),s(down),d(right) in their respective directions using respond to keypress?

Code:
class Player {
private:
double x, y;
public:
Player(double a, double b){x=a;y=b;}
void respondtokeypress(char a)

[Code] ....

View 8 Replies View Related

C++ :: How To Move Sprite Depending On Rotation

Jan 13, 2015

how I want my sprite movement to work: if my sprite is faced upwards and i press W, it will move up. If my sprite is faced to the right and i press W, it will go right. etc. // It doesn't work like that right now and how to do it.The sprite's rotation works fine.

if(sf::Keyboard::isKeyPressed(sf::Keyboard::Q)) {
playerSprite.rotate(-0.08 * dt);
} else if(sf::Keyboard::isKeyPressed(sf::Keyboard::E)) {
playerSprite.rotate(0.08 * dt);

[code]....

My question is how do I move the character depending on the rotation?

Also, you might see the "if(havePlayersCollided == false) {playerSprite.move(yadiyada)}" . yes i dont need the haveplayerscollided function because it doesnt work the way I want it to. I might make a thread for it in the future, but right now I need to get the rotation movement fixed before I move onto the collision detection between players.

View 7 Replies View Related

C++ :: Make Object Rotate Until It Looks At The Sprite?

Oct 10, 2013

Is there a way to make an object rotate until it looks at the sprite?

View 1 Replies View Related

C++ :: Allegro Sprite Is Not Showing Up In Right Spot

Jun 8, 2013

So I have a small game I'm making using OOP principles, I know it's a little bit of overkill but it's just for educational purposes. I have a sprite character that can be moved around with no problems, but I made a sword for him as a separate sprite that doesn't follow him. The sword sprite is supposed to cover his arm and his body as it swings, but it just stays in the upper left corner.

I messed around with the initialization of the sword in the main.cpp and I changed in sword.cpp and sword.h and it still is showing up in the same place. I even looked at the GetX() and GetY() statements I made and they seemed to work fine and when I debugged it, the variable values showed up correctly, but the sword doesn't move.

View 3 Replies View Related

C++ :: Draw The Same Sprite Multiple Times (SDL)?

Sep 7, 2014

I have a question about SDL and drawing sprites (SDL surfaces). My idea is that the user can create a wall of separate sprites by create one sprite each time in the current mouseX and mouseY position, when the user push down the e-key. The problem is that I have no idea how I could draw the same sprite multiple times without to delete the previous one.

View 3 Replies View Related

C/C++ :: Draw Sprite On The Window Of Third Party Application

May 8, 2014

How can I draw a sprite/graphic on the window of an third party application? E.g. I want to draw a graphic beneath each tab of Firefox for additional information. The position of the sprite needs to be relativ to the position of firefox, so if you move firefox, the sprite moves with it.

The solution needs to work on mac and pc. So I'll use a crossplatform framework like c++ boost or something.

Of course I can get the position and then just redraw it. But what's the best way to draw it?

Just found a tool which does what I need. Basically a HUD like this: [URL] .... The boxes with the numbers are what I need.

View 2 Replies View Related

C/C++ :: Round Robin Execution With Gantt Chart - Arrival Time And Burst Time

Mar 10, 2015

This is a round robin execution. with gantt chart. arrival time and burst time. I think there is an error in my formula to get the right answer,i cant resolve it but my program is running. What is the code or the right formula??

#include<stdio.h>
int main(){
int i,j=0,n,time,remain,flag=0,ts;
int sum_wait=0,sum_turnaround=0,at[10],bt[10],rt[10];
int ganttP[50],ganttStartTime[50];
printf("Enter no of Processes : ");
scanf("%d",&n);
remain=n;

[Code] ....

View 2 Replies View Related

C++ :: Time-in Time Out Function?

Mar 18, 2013

make a time-in time-out fuction which extracts the no. of hours and minutes from a string entered by the user.

#include <iostream>
#include <fstream>
#include <string>

[Code].....

View 3 Replies View Related

C# :: Design Time And Run Time

Mar 6, 2014

when we would use add items at design time and when we would add them at run time

does it have anything to do with the page load method? if so, can i type this in source code instead?

View 2 Replies View Related

C++ :: Why NGrade Comes Out As 0 Every Time

Nov 13, 2013

why nGrade comes out as 0 every time?

Its as if im not inputting the values into the dynamic arrays in int main.

#include <iostream>
using namespace std;
void Calc(int a_anScores[], int a_anPerc[], int a_nTotal){
for( int iii = 0; iii < a_nTotal; ++iii){
a_anScores[iii] = (a_anScores[iii] * (a_anPerc[iii]/100));
}
int nGrade=0;

[Code]...

View 2 Replies View Related

C++ :: How To Add The Time Into Function

Jul 23, 2014

I have created this code with the classes for time and message. Basically the point of this code is to give the information of the sender, recipient, time, and message and im having issues with the time part.

#include <iostream>
#include <string>
#include <ctime>

[Code].....

so when you run this you can see i left a spot for the time but I just cant figure out how to figure out the Time part of this.

View 2 Replies View Related

C/C++ :: How To End A While Loop After Set Time

Feb 28, 2014

I am trying to make this while loop cut out / self break after 3 seconds. It is part of a simple game I am creating that gives the users 3 seconds to react otherwise it moves on to the next part.

while(1) {
key=getch();
if(key=='a'||key=='k'||key=='g') {
break;
}
}

All I need is it to end after 3 seconds, the rest of the code is working fine.

This sort of thing:

long startTime = System.currentTimeMillis(); //fetch starting time
while(false||(System.currentTimeMillis()-startTime)<10000)
If it IS for C, then I implemented it wrong or something.

View 10 Replies View Related

C/C++ :: Time Conversion Between EST And UTC

Apr 1, 2013

I want to convert time from est to utc. Is there any function for this.

View 3 Replies View Related

C++ :: Coding And Debug Time Per LOC

Mar 23, 2013

I just spent 3 hours writing and debugging 37 lines of code. Is this normal or am I "below average" in coding abilities. I come from a C background and decided to write C++ code that I finally got right as shown below for the specific example:

Code: #include <iostream>
#include <fstream>
#include <string>
#define SPACE_SEARCH 10
using namespace std;

[code].....

I think it was more the learning along the way that consumed atleast 75% of my time for this specific case. But then again, I read that programming always entails learning along the way and so its somehow no excuse for the long time taken in this specific case.

So as a matter of interest, what pace do all of you operate on, on average? i.e. LOC/day, Debugs per day or any other indicator of productivity?

View 3 Replies View Related

C++ :: Simple Calculation Going To 0 Every Time

Aug 8, 2013

I tried to write a simple program to calculate monthly yield, APR, and principle in various directions. Anyway, here's some code to get the APR from the principle and monthly yield. When I run it though, it spits 0 at me every time! What the problem is; the other functions work just fine and the code line for the APR calculation is just what it ought to be - I see neither a math nor tech problem here.

Here is the offending function:

Code:
void calculateAPR() {
int principle, monthlyYield, apr;
cout<<"
Please input the principle:";
cin>>principle;
cin.ignore();

[code]....

View 4 Replies View Related

C :: Subtract Two Time Intervals?

Mar 12, 2014

I am looking for simple code that subtract two time interval. I have time t1=5hour 30 minute and other time in 24 hour format. This code i written but it not working as expected. it not printing 5:30 minute subtract

Code:
main() {
intTime1;
intTime2;
int hour=10;
int minute=5;
int second=13;
int h;int m;
doubleNtime;

[Code] ....

View 3 Replies View Related

C :: Trigger Different Timers At The Same Time

Mar 6, 2015

The issue is that I am trying to run a code which can trigger different timers at the same time. That is, when 3 is typed by the user, the firstimer is triggered. If before expiration another 3 is introduced, the second timer will be launched, and the difference between both triggers will be shown. Under this circumstance, timer_gettime only works once. I tried all the things I could imagine but still, it_value_tv_sec and _nsec return zero after the first expiration.

-Theoretically, and following the manuals, once the timer is restarted the gettime function should work as it does the first time.
-I have also tried to removed the timer and start it again, but in this case the timers are still being triggered, but the gettime outputs(even the first time) are nonsense.

Here is the code I am testing: [CODE]#include<stdio.h>

Code:
#include<signal.h>
#include<time.h>
timer_t firstTimerID;
timer_t secondTimerID;
timer_t thirdTimerID;

[Code] ......

View 1 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved