Guest User

Untitled

a guest
Jan 11th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.83 KB | None | 0 0
  1. #include <SFML\Graphics.hpp>
  2. #include <SFML\Window.hpp>
  3. #include "VectorOperations.h"
  4. #include <vector>
  5. #include <iostream>
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10. //Vector Pos(0, 0);
  11. float Pos;
  12. vector<Vector> ListOfPos;
  13. int t = 0, CurrentPosOfLerp;
  14.  
  15. //vector<Vector> ListOfPos;
  16. Vector vec1(0,0);
  17. // Create the main rendering window
  18. sf::RenderWindow App(sf::VideoMode(800, 600, 32), "SFML Graphics");
  19.  
  20. // Load the sprite image from a file
  21. sf::Image Image;
  22. if (!Image.LoadFromFile("sprite.jpg"))
  23. return EXIT_FAILURE;
  24.  
  25. // Create the sprite
  26. sf::Sprite Sprite(Image);
  27.  
  28. // Change its properties
  29. Sprite.SetColor(sf::Color(0, 255, 255, 128));
  30. Sprite.SetPosition(200.f, 100.f);
  31. Sprite.SetScale(1.f, 1.f);
  32.  
  33. // Start game loop
  34. while (App.IsOpened())
  35. {
  36. // Process events
  37. sf::Event Event;
  38. while (App.GetEvent(Event))
  39. {
  40. // Close window : exit
  41. if (Event.Type == sf::Event::Closed)
  42. App.Close();
  43. }
  44.  
  45. // Get elapsed time
  46. float ElapsedTime = App.GetFrameTime();
  47.  
  48. /*
  49. // Move the sprite
  50. //if (App.GetInput().IsKeyDown(sf::Key::Left)) Sprite.Move(-100 * ElapsedTime, 0);
  51. //if (App.GetInput().IsKeyDown(sf::Key::Right)) Sprite.Move( 100 * ElapsedTime, 0);
  52. //if (App.GetInput().IsKeyDown(sf::Key::Up)) Sprite.Move(0, -100 * ElapsedTime);
  53. //if (App.GetInput().IsKeyDown(sf::Key::Down)) Sprite.Move(0, 100 * ElapsedTime);
  54. */
  55.  
  56.  
  57. if(App.GetInput().IsMouseButtonDown(sf::Mouse::Left))
  58. {
  59. vec1.setVector(Event.MouseButton.X, Event.MouseButton.Y);
  60. //Sprite.Move(Event.MouseButton.X * ElapsedTime, Event.MouseButton.Y *
  61. ElapsedTime);
  62. ListOfPos.push_back(vec1);
  63.  
  64. }
  65.  
  66.  
  67.  
  68. if (App.GetInput().IsKeyDown(sf::Key::Up))
  69. {
  70. for (int i = 0; i < ListOfPos.size(); i++)
  71. {
  72.  
  73.  
  74. if(t<1)
  75. {
  76. //Pos.setVector(ListOfPos[i-1].getX()*(t-1) + ListOfPos[i].getX()
  77. * t, ListOfPos[i-1].getY()*(t-1) + ListOfPos[i].getY() * t);
  78.  
  79. Pos = ListOfPos[i-1].getX()*(t-1) + ListOfPos[i].getX() * t;
  80. Pos = ListOfPos[i-1].getY()*(t-1) + ListOfPos[i].getY() * t;
  81. vec1.LERP(ListOfPos[i-1], ListOfPos[i], t);
  82. }
  83. else
  84. {
  85. i++;
  86. t=0;
  87. }
  88.  
  89.  
  90. }
  91. }
  92.  
  93.  
  94. /*
  95. // Rotate the sprite
  96. if (App.GetInput().IsKeyDown(sf::Key::Add)) Sprite.Rotate(- 100 * ElapsedTime);
  97. if (App.GetInput().IsKeyDown(sf::Key::Subtract)) Sprite.Rotate(+ 100 * ElapsedTime);
  98. */
  99.  
  100. // Clear screen
  101. App.Clear();
  102.  
  103. // Display sprite in our window
  104. App.Draw(Sprite);
  105.  
  106. // Display window contents on screen
  107. App.Display();
  108. }
  109.  
  110. return EXIT_SUCCESS;
  111. }
Add Comment
Please, Sign In to add comment