madopew

Untitled

Apr 29th, 2020
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.98 KB | None | 0 0
  1. package kz.graphics;
  2.  
  3. import com.jogamp.newt.event.WindowEvent;
  4. import com.jogamp.newt.event.WindowListener;
  5. import com.jogamp.newt.event.WindowUpdateEvent;
  6. import com.jogamp.newt.opengl.GLWindow;
  7. import com.jogamp.opengl.GLCapabilities;
  8. import com.jogamp.opengl.GLProfile;
  9. import com.jogamp.opengl.util.FPSAnimator;
  10.  
  11. import kz.engine.MouseInput;
  12. //отображение окна
  13. public class Renderer {
  14.     //переменные для хранения окна
  15.     private static GLWindow window = null;
  16.     private static GLProfile profile = null;
  17.     //название игры
  18.     private static final String GAME_NAME = "Игра Дьявола";
  19.     //фпс
  20.     public static final int FPS = 60;
  21.     //размеры
  22.     public static final int WIDTH = 1040;
  23.     public static final int HEIGHT = 640;
  24.     //геттер
  25.     public static GLProfile getProfile() {
  26.         return profile;
  27.     }
  28.     //инициализация
  29.     public static void init() {
  30.         //создается новый профайл opengl версии 2
  31.         GLProfile.initSingleton();
  32.         profile = GLProfile.get(GLProfile.GL2);
  33.         GLCapabilities caps = new GLCapabilities(profile);
  34.         //создается новое окно с обработкой нажатий
  35.         //и событий
  36.         //а также названием
  37.         window = GLWindow.create(caps);
  38.         window.setSize(WIDTH, HEIGHT);
  39.         window.setResizable(false);
  40.         window.setSurfaceSize(WIDTH, HEIGHT);
  41.         window.addGLEventListener(new EventListener());
  42.         window.addMouseListener(new MouseInput());
  43.         window.setTitle(GAME_NAME);
  44.         //создается объект который вызывает события
  45.         //такие как init и display
  46.         //с фпс 60 кадров в секунду
  47.         FPSAnimator animator = new FPSAnimator(window, FPS);
  48.         animator.start();      
  49.         window.setVisible(true);
  50.         window.addWindowListener(new WindowListener() {
  51.             //при закрытии окна выключается объект созданный ранее
  52.             //и приложение закрывается
  53.             @Override
  54.             public void windowDestroyed(WindowEvent arg0) {
  55.                 // TODO Auto-generated method stub
  56.                 animator.stop();
  57.                 System.exit(0);
  58.             }
  59.  
  60.             @Override
  61.             public void windowGainedFocus(WindowEvent arg0) {
  62.                 // TODO Auto-generated method stub
  63.                
  64.             }
  65.  
  66.             @Override
  67.             public void windowLostFocus(WindowEvent arg0) {
  68.                 // TODO Auto-generated method stub
  69.                
  70.             }
  71.  
  72.             @Override
  73.             public void windowMoved(WindowEvent arg0) {
  74.                 // TODO Auto-generated method stub
  75.                
  76.             }
  77.  
  78.             @Override
  79.             public void windowRepaint(WindowUpdateEvent arg0) {
  80.                 // TODO Auto-generated method stub
  81.                
  82.             }
  83.  
  84.             @Override
  85.             public void windowResized(WindowEvent arg0) {
  86.                 // TODO Auto-generated method stub
  87.                
  88.             }
  89.  
  90.             @Override
  91.             public void windowDestroyNotify(WindowEvent arg0) {
  92.                 // TODO Auto-generated method stub
  93.                
  94.             }
  95.            
  96.         });
  97.     }
  98.     //входная точка программы
  99.     public static void main(String[] args) {
  100.         init();
  101.     }
  102. }
Add Comment
Please, Sign In to add comment