Результаты поиска
Juwell Дата: Воскресенье, 06 Января 2013, 14:03 | Сообщение # 1 | Тема: движение карты с персонажем
участник
Сейчас нет на сайте
Создаешь JFrame. Делаешь в нем JPanel. Создаешь метод Код
public void paint(Graphics g){ super.paint(g); //Тут рисуешь все что тебе нужно g.translate(x,y); }
А и не забудь сделать основной игровой цикл(FPS)
Juwell Дата: Суббота, 05 Января 2013, 18:37 | Сообщение # 2 | Тема: Проблема при прорисовке в LWJGL
участник
Сейчас нет на сайте
Вот такая проблема Подскажите из-за чего она может быть Сам рендер Код
texture.bind(); GL11.glBegin(GL11.GL_QUADS); GL11.glTexCoord2f(0, 0); GL11.glVertex2f(CaveArena.player.x, CaveArena.player.y); GL11.glTexCoord2f(1, 0); GL11.glVertex2f(CaveArena.player.x+texture.getTextureWidth(), CaveArena.player.y); GL11.glTexCoord2f(1, 1); GL11.glVertex2f(CaveArena.player.x+texture.getTextureWidth(), CaveArena.player.y+texture.getTextureHeight()); GL11.glTexCoord2f(0, 1); GL11.glVertex2f(CaveArena.player.x, CaveArena.player.y+texture.getTextureHeight()); GL11.glEnd();
В основном классе инициализация Код
GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glViewport(0, 0, width, height); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GL11.glOrtho(0, width, height, 0, 1, -1); GL11.glMatrixMode(GL11.GL_MODELVIEW);
Juwell Дата: Среда, 02 Января 2013, 00:44 | Сообщение # 3 | Тема: LWJGL проблема с обновлением экрана
участник
Сейчас нет на сайте
при нажатии кнопок квадрат должен двигаться. вроде все правильно написано, но не пашет( подскажите в чем проблемаДобавлено (02.01.2013, 00:44) --------------------------------------------- для рендера текстур использовал slick. может из-за этого проблема?
Juwell Дата: Вторник, 01 Января 2013, 23:55 | Сообщение # 4 | Тема: LWJGL проблема с обновлением экрана
участник
Сейчас нет на сайте
Доброго времени суток форумчане! Изучаю LWJGL и столкнулся с проблемой обновления экрана. Вот исходники моего кода . Заранее спасибо Добавлено (01.01.2013, 23:55) --------------------------------------------- что никто не работал с lwjgl?
Juwell Дата: Пятница, 16 Ноября 2012, 17:58 | Сообщение # 5 | Тема: LWJGL vs AWT+Swing
участник
Сейчас нет на сайте
Всем спасибо за ответы! Буду изучать LWJGL.
Juwell Дата: Пятница, 16 Ноября 2012, 16:19 | Сообщение # 6 | Тема: LWJGL vs AWT+Swing
участник
Сейчас нет на сайте
Привет всем. Появилось желание сделать игру на Java. Используя авт и свинг делал 2д, но знакомый сказал, что лучше использовать LWJGL. Хотелось бы услышать ваше мнение о них. В чем преимущества/недостатки? Буду делать 2д игру Спасибо:)
Сообщение отредактировал Juwell - Пятница, 16 Ноября 2012, 16:20
Juwell Дата: Понедельник, 08 Октября 2012, 17:04 | Сообщение # 7 | Тема: Получение битрейта песни в Java
участник
Сейчас нет на сайте
Доброго времени суток. У меня возник такой вопрос: есть ли библиотеки для Явы для работы с аудио файлами? Ну и как в них получать битрейт песни? Заранее спасибо:-)
Juwell Дата: Понедельник, 23 Июля 2012, 15:58 | Сообщение # 8 | Тема: Java проблема в столкновениях
участник
Сейчас нет на сайте
да уже все работает
Juwell Дата: Понедельник, 23 Июля 2012, 14:40 | Сообщение # 9 | Тема: Java проблема в столкновениях
участник
Сейчас нет на сайте
Я в классе player дописал Code
public void moveRight() { x = x + xRightSpeed; } public void moveLeft() { x = x + xLeftSpeed; if(xLeftSpeed == -1){ xLeftSpeed = 0; } }
а в основном классе Code
public Rectangle getBounds(){ return new Rectangle(x, y, 100, 100); } public void actionPerformed(ActionEvent e) { checkCollision(); p.moveLeft(); p.moveRight(); repaint(); } public void checkCollision(){ Rectangle r1 = getBounds(); Rectangle character = p.getBounds(); if(r1.intersects(character)){ collision = true; } if(collision){ p.xRightSpeed = 0; p.xLeftSpeed = -1; collision = false; } }
и все вышло
Juwell Дата: Понедельник, 23 Июля 2012, 12:31 | Сообщение # 10 | Тема: Java проблема в столкновениях
участник
Сейчас нет на сайте
Делаю платформер на Джава и хочу сделать систему столкновений игрока и блока. Сделал набросок кода, герой не проходит через блок, но как сделать чтобы с него можно было выйти? Вот код Code
public void checkCollision(){ Rectangle r1 = getBounds(); Rectangle character = p.getBounds(); if(r1.intersects(character)){ collision = true; } if(collision){ System.out.println("STUCK!"); p.xLeftSpeed = 0; p.xRightSpeed = 0; collision = false; } else{ p.moveLeft(); p.moveRight(); } }
Добавлено (23.07.2012, 12:23) --------------------------------------------- Герой просто зависает возле блока и на нажатия клавиш не реагирует
Добавлено (23.07.2012, 12:31) --------------------------------------------- Все уже сам разобрался
Juwell Дата: Понедельник, 16 Июля 2012, 16:04 | Сообщение # 11 | Тема: Помогите сделать управление в игре под Андроид
участник
Сейчас нет на сайте
РАБОТАЕТ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! Code
public boolean onTouchEvent(MotionEvent event){ if(event.getAction()==MotionEvent.ACTION_DOWN || event.getAction()==MotionEvent.ACTION_MOVE){ if(event.getX() >= arrow_leftX && event.getX() <= arrow_leftX + arrow_width){ playerX = playerX - xSpeed; } else if(event.getX() >= arrow_rightX && event.getX() <= arrow_rightX + arrow_width){ playerX = playerX + xSpeed; } } return super.onTouchEvent(event); }
Juwell Дата: Понедельник, 16 Июля 2012, 15:45 | Сообщение # 12 | Тема: Помогите сделать управление в игре под Андроид
участник
Сейчас нет на сайте
Code
public boolean onTouchEvent(MotionEvent event){ if(event.getAction()==MotionEvent.ACTION_DOWN || event.getAction()==MotionEvent.ACTION_MOVE){ if(event.getX() == arrow_leftX){ gameLoopThread.setRunning(false); } else{ playerX = playerX - xSpeed; } } return super.onTouchEvent(event); }
Вот такой работает но двигает только влево а если дописать Code
if(event.getX() == arrow_rightX){ gameLoopThread.setRunning(false); } else{ playerX = playerX + xSpeed; }
то перестает работать
Juwell Дата: Понедельник, 16 Июля 2012, 15:38 | Сообщение # 13 | Тема: Помогите сделать управление в игре под Андроид
участник
Сейчас нет на сайте
Сейчас попробую изменить
Сообщение отредактировал Juwell - Понедельник, 16 Июля 2012, 15:41
Juwell Дата: Понедельник, 16 Июля 2012, 15:33 | Сообщение # 14 | Тема: Помогите сделать управление в игре под Андроид
участник
Сейчас нет на сайте
Пишу под Андроид! Кнопки виртуальные(я их вывожу на канаву) Вот мой код Code
public boolean onTouchEvent(MotionEvent event){ if(event.getAction()==MotionEvent.ACTION_DOWN || event.getAction()==MotionEvent.ACTION_MOVE){ if(event.getX() == arrow_leftX){ gameLoopThread.setRunning(false); } else if(event.getX() == arrow_leftX){ playerX = playerX - xSpeed; } else if(event.getX() == arrow_rightX){ gameLoopThread.setRunning(false); } else if(event.getX() == arrow_rightX){ playerX = playerX + xSpeed; } } return super.onTouchEvent(event); }
При нажатии на левую кнопку playerX = playerX - xSpeed При нажатии на правую кнопку playerX = playerX + xSpeed Вся проблема в том что мой код не работает Добавлено (16.07.2012, 15:33) ---------------------------------------------
Code
public class Game extends SurfaceView { /////////PLAYER////////////// private Bitmap player_front_left; private int playerX = 200; private int playerY = 351; private int xSpeed = 5; private boolean moveLeft = false; private boolean moveRight = false; /////////CONTROL//////////// private float touchX; private float touchY; private Bitmap arrow_up; private int arrow_upX = 710; private int arrow_upY = 250; private Bitmap arrow_left; private int arrow_leftX = 10; private int arrow_leftY = 250; private Bitmap arrow_right; private int arrow_rightX = 100; private int arrow_rightY = 250; /////////BLOCKS///////////// private Bitmap grass; //////////////////////////// private SurfaceHolder holder; private GameLoopThread gameLoopThread; public boolean onTouchEvent(MotionEvent event){ if(event.getAction()==MotionEvent.ACTION_DOWN || event.getAction()==MotionEvent.ACTION_MOVE){ if(event.getX() == arrow_leftX){ gameLoopThread.setRunning(false); } else if(event.getX() == arrow_leftX){ playerX = playerX - xSpeed; } else if(event.getX() == arrow_rightX){ gameLoopThread.setRunning(false); } else if(event.getX() == arrow_rightX){ playerX = playerX + xSpeed; } } return super.onTouchEvent(event); } public Game(Context context) { super(context); gameLoopThread = new GameLoopThread(this); holder = getHolder(); holder.addCallback(new SurfaceHolder.Callback() { public void surfaceDestroyed(SurfaceHolder holder) { boolean retry = true; gameLoopThread.setRunning(false); while (retry) { try { gameLoopThread.join(); retry = false; } catch (InterruptedException e) {} } } public void surfaceCreated(SurfaceHolder holder) { Canvas canvas = holder.lockCanvas(null); onDraw(canvas); holder.unlockCanvasAndPost(canvas); gameLoopThread.setRunning(true); gameLoopThread.start(); } public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } }); player_front_left = BitmapFactory.decodeResource(getResources(), R.drawable.player_front_left); grass = BitmapFactory.decodeResource(getResources(), R.drawable.grass); arrow_left = BitmapFactory.decodeResource(getResources(), R.drawable.arrow_left); arrow_right = BitmapFactory.decodeResource(getResources(), R.drawable.arrow_right); arrow_up = BitmapFactory.decodeResource(getResources(), R.drawable.arrow_up); } protected void onDraw(Canvas canvas) { canvas.drawColor(Color.CYAN); canvas.drawBitmap(arrow_left, arrow_leftX, arrow_leftY, null); canvas.drawBitmap(arrow_right, arrow_rightX, arrow_rightY, null); canvas.drawBitmap(arrow_up, arrow_upX, arrow_upY, null); canvas.drawBitmap(grass, 0, 410, null); canvas.drawBitmap(grass, 50, 410, null); canvas.drawBitmap(grass, 100, 410, null); canvas.drawBitmap(grass, 150, 410, null); canvas.drawBitmap(grass, 200, 410, null); canvas.drawBitmap(grass, 250, 410, null); canvas.drawBitmap(grass, 300, 410, null); canvas.drawBitmap(grass, 350, 410, null); canvas.drawBitmap(grass, 400, 410, null); canvas.drawBitmap(grass, 450, 410, null); canvas.drawBitmap(grass, 500, 410, null); canvas.drawBitmap(grass, 550, 410, null); canvas.drawBitmap(grass, 600, 410, null); canvas.drawBitmap(grass, 650, 410, null); canvas.drawBitmap(grass, 700, 410, null); canvas.drawBitmap(grass, 750, 410, null); canvas.drawBitmap(player_front_left, playerX, playerY, null); } }
Вот весь класс
Сообщение отредактировал Juwell - Понедельник, 16 Июля 2012, 15:34
Juwell Дата: Воскресенье, 15 Июля 2012, 16:10 | Сообщение # 15 | Тема: Помогите сделать управление в игре под Андроид
участник
Сейчас нет на сайте
Помогите сделать управление в игре под Андроид! У меня есть две кнопки - вправо и влево) Я писал код в прошлых темах, но ответы не помогли Напишите пожалуйста код чтобы при нажатии на кнопки спрайт двигался влево и вправо СПАСИБО ЗАРАНЕЕ
Juwell Дата: Четверг, 12 Июля 2012, 16:32 | Сообщение # 16 | Тема: Помогите с кодом под андроид
участник
Сейчас нет на сайте
Вот код написал, но при нажатии на левую кнопку спрайт движется вправо Помогите пожалуйста Code
public boolean onTouchEvent(MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_DOWN){ if(event.getX() == arrow_rightX){ gameLoopThread.setRunning(false); } else{ boyX = boyX + xSpeed; } } if(event.getX() == arrow_leftX){ gameLoopThread.setRunning(false); } else{ boyX = boyX - xSpeed; } return super.onTouchEvent(event); }
Juwell Дата: Среда, 11 Июля 2012, 13:12 | Сообщение # 17 | Тема: Помогите плз с кодом под андроид
участник
Сейчас нет на сайте
AVM - это типо измененная JVM)) Джавы под дроид вроде нету(Добавлено (11.07.2012, 13:12) --------------------------------------------- Или подскажите хоть какой слушатель для этого использовать
Сообщение отредактировал Juwell - Среда, 11 Июля 2012, 13:10
Juwell Дата: Среда, 11 Июля 2012, 13:08 | Сообщение # 18 | Тема: Помогите плз с кодом под андроид
участник
Сейчас нет на сайте
Добрый день игроделы) Начал изучать Андроид и наткнулся на проблему Как сделать чтобы по клику на картинку увеличевалося ее значение по Х?Добавлено (11.07.2012, 13:08) --------------------------------------------- Я вывожу их через Canvas
Juwell Дата: Понедельник, 13 Февраля 2012, 19:56 | Сообщение # 19 | Тема: LWJGL~OPENGL~JAVA
участник
Сейчас нет на сайте
Всем доброго времени суток:) я недавно начал изучать java и вот захотел сделать что-то в 3d. гуглил... узнал, что на яву opengl подходит. из библиотек решил использовать LWJGL. Вот мои(может и глупые) вопросы: Редактор для 3д графики какой подойдёт? Формат исходных файлов. Просьба сильно не пинать:) Я новичек в игрострое:)Добавлено (13.02.2012, 19:56) --------------------------------------------- Нужно ли будет их експортить в другой формат?
Juwell Дата: Понедельник, 30 Января 2012, 23:26 | Сообщение # 20 | Тема: Hack and slash rpg
участник
Сейчас нет на сайте
Прошу заметить, что я буду делать 3д игру! И на Диабло не похоже! Разве в Диабло есть добавление класов после прохождения???Добавлено (30.01.2012, 23:26) ---------------------------------------------kashey , можно про любую игру писать, что она клон какой-то игры))