Понедельник, 25 Ноября 2024, 21:38

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Результаты поиска
SunMilleДата: Среда, 25 Сентября 2013, 18:20 | Сообщение # 1 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
Помогите исправить скрипт для игры типа bejeweled, чтобы при нажатии на спрайт проходила проверка на наличие как минимум 3 таких же спрайтов вокруг и их удаление. Вот мой код(не работает sad )
Код
void Update(){
   if(Input.GetMouseButtonDown(0)){
    RaycastHit hit;
    Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
    if(Physics.Raycast(ray, out hit))
    if(hit.transform != null){
     if(hit.transform.gameObject.name.Equals("Green")){
      float x = hit.transform.gameObject.transform.position.x;
      float z = hit.transform.gameObject.transform.position.z;
      StartCheck(hit.transform.gameObject, x ,z);
     }else if(hit.transform.gameObject.name.Equals("Pink")){
      float x = hit.transform.gameObject.transform.position.x;
      float z = hit.transform.gameObject.transform.position.z;
     }else if(hit.transform.gameObject.name.Equals("Blue")){
      float x = hit.transform.gameObject.transform.position.x;
      float z = hit.transform.gameObject.transform.position.z;
     }else if(hit.transform.gameObject.name.Equals("Yellow")){
      float x = hit.transform.gameObject.transform.position.x;
      float z = hit.transform.gameObject.transform.position.z;
     }
    }
   }
  }
  private List<GameObject>m_listOfObjectsToRemove = new List<GameObject>();
  private int m_minimumNoOfObjects = 3;
    
  private void StartCheck(GameObject startObject, float x, float z){
   m_listOfObjectsToRemove.Add(startObject);
   CheckNeighbours(startObject, null, x, z);
     
   GameObject previousStartObject = startObject;
     
   for(int i = 1; i < m_listOfObjectsToRemove.Count; ++i){
    CheckNeighbours(m_listOfObjectsToRemove[i], previousStartObject, x, z);
    previousStartObject = m_listOfObjectsToRemove[i];
   }
     
   if(m_listOfObjectsToRemove.Count > m_minimumNoOfObjects){
    for(int i = 1; i < m_listOfObjectsToRemove.Count; ++i){
     Destroy(m_listOfObjectsToRemove[i]);
    }
     m_listOfObjectsToRemove.Clear();
   }
  }
   
  GameObject leftNeighbourObject;
  GameObject rightNeighbourObject;
  GameObject aboveNeighbourObject;
  GameObject belowNeighbourObject;
   
  GameObject GetObject(float x, float z){
   GameObject Block = null;
    
   Vector3 position = new Vector3(x, 0, z);
    
   Collider[] cols = Physics.OverlapSphere(position, 0.0f);
   float dist = Mathf.Infinity;
   foreach(Collider col in cols){
    float d = Vector3.Distance(position, col.transform.position);
    if(d < dist){
     dist = d;
     Block = col.gameObject;
    }
   }
   return Block;
  }
   
  private void CheckNeighbours(GameObject startObject, GameObject previousStartObject, float x, float z){
   leftNeighbourObject  = GetObject(x+1, z);
   rightNeighbourObject  = GetObject(x-1, z);
   aboveNeighbourObject  = GetObject(x, z-1);
   belowNeighbourObject  = GetObject(x, z+1);
    
   if(leftNeighbourObject != null){
    if(leftNeighbourObject != previousStartObject){
     m_listOfObjectsToRemove.Add(leftNeighbourObject);
    }
   }
   if(rightNeighbourObject != null){
    if(rightNeighbourObject != previousStartObject){
     m_listOfObjectsToRemove.Add(rightNeighbourObject);
    }
   }
   if(aboveNeighbourObject != null){
    if(aboveNeighbourObject != previousStartObject){
     m_listOfObjectsToRemove.Add(aboveNeighbourObject);
    }
   }
   if(belowNeighbourObject != null){
    if(belowNeighbourObject != previousStartObject){
     m_listOfObjectsToRemove.Add(belowNeighbourObject);
    }
   }
  }


@sunmille
SunMilleДата: Пятница, 30 Августа 2013, 12:44 | Сообщение # 2 | Тема: Android сохранение большого Bitmap
был не раз
Сейчас нет на сайте
При сохранении большого bitmap вылетает программа из-за OutOfMemory. Подскажите плз как исправить. Маленькие изображения сохраняет без проблем.


@sunmille
SunMilleДата: Пятница, 28 Июня 2013, 13:46 | Сообщение # 3 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
error111, У меня с самсунгом вышло после установки kies. Гугловские дрова только для нексусов. С офф сайта грузани менеджер (по типу Kies) и при установке ставит нужные дрова. Ну и отладку по usb на девайсе держи включенной.

@sunmille
SunMilleДата: Вторник, 25 Июня 2013, 12:01 | Сообщение # 4 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
Подскажите пожалуйста сильно ли порежут производительность тригеры на андроиде? Например 3 тригера на сцену?

@sunmille
SunMilleДата: Четверг, 20 Июня 2013, 12:53 | Сообщение # 5 | Тема: Gamiron 5 уже рядом!
был не раз
Сейчас нет на сайте
Ограничения какие-то есть? Лучше до конца лета. Будет больше качественных игр

@sunmille
SunMilleДата: Среда, 05 Июня 2013, 16:40 | Сообщение # 6 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
Использую связку Unity+Photon cloud. Подскажите как сделать чтобы игроки двигались нормально(с каждого окна контролируешь своего персонажа). У меня выходит что они двигаются и крутятся вместе sad Выложите код, если кто-то сталкивался с такой проблемой. Спасибо

@sunmille
SunMilleДата: Суббота, 01 Июня 2013, 18:10 | Сообщение # 7 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
Stark2003 , я экспортирую в .3ds. материалы экспортирует отлично, а именно эффект огня не работает. делаю его через sphere gizmo. в файлах модели гизмо есть, но огня нету

@sunmille
SunMilleДата: Суббота, 01 Июня 2013, 18:00 | Сообщение # 8 | Тема: Вопрос-[ответ] по Unity
был не раз
Сейчас нет на сайте
Доброго времени суток. Подскажите как в unity 4.1.3 экспортировать огонь с 3д макса. Модель экспортирует на ура, но огня нету.

@sunmille
SunMilleДата: Понедельник, 13 Мая 2013, 16:35 | Сообщение # 9 | Тема: LWJGL вращение игрока за курсором
был не раз
Сейчас нет на сайте
Цитата (goldsphere)
player.angle = atan2(player.x-mouse.x, player.y-mouse.y)

я так уже пробовал. идет вращение по кругу при нажатии, а мне надо именно чтобы спрайт следил за курсором
Код

    float angle = (float) Math.atan2(DonutDefender.player.position.x-getMouseX(), DonutDefender.player.position.y-getMouseY());
    GL11.glRotatef(angle, 0.0f, 0.0f, 1.0f);


Вот класс игрока
Код

public class Player {

  public Texture texture;
   
  public Vector3f position;
   
  public Player(){
   position = new Vector3f(100.0f, 100.0f, 0.0f);
  }
   
  public void LoadTexture(){
   try {
    texture = TextureLoader.getTexture("PNG", ResourceLoader.getResourceAsStream("res/graphics/player/spaceship.png"));
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
   
  public void Render(){
   this.texture.bind();
   GL11.glBegin(GL11.GL_QUADS);
    GL11.glTexCoord2f(0,0);
    GL11.glVertex2f(position.x, position.y);
    GL11.glTexCoord2f(1,0);
    GL11.glVertex2f(position.x+texture.getTextureWidth(), position.y);
    GL11.glTexCoord2f(1,1);
    GL11.glVertex2f(position.x+texture.getTextureWidth(), position.y+texture.getTextureHeight());
    GL11.glTexCoord2f(0,1);
    GL11.glVertex2f(position.x, position.y+texture.getTextureHeight());
   GL11.glEnd();
  }
   
   
}


@sunmille
SunMilleДата: Понедельник, 13 Мая 2013, 15:38 | Сообщение # 10 | Тема: LWJGL вращение игрока за курсором
был не раз
Сейчас нет на сайте
Доброго времени суток. Подскажите как сделать вращение игрока за курсором используя LWJGL и если можно его последующее перемещение по этой траектории.
Спасибо

Добавлено (13.05.2013, 15:38)
---------------------------------------------
Что никто не знает? sad Это как вращение игрока в тдс


@sunmille
SunMilleДата: Воскресенье, 28 Апреля 2013, 23:01 | Сообщение # 11 | Тема: OpenCV 2.4.5 обнаружение лиц на фотографии
был не раз
Сейчас нет на сайте
Цитата (x_X)
в гугле на эту тему все написано и разжевано, пиши конкретно, что неполучается

Я искал в гугле. Там половина кода не работает(может из-за древних версий OpenCV). Конкретно нужно добавить нахождение лиц

Добавлено (28.04.2013, 23:01)
---------------------------------------------
Разобрался

Код
#include <opencv/cv.h>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/objdetect/objdetect.hpp>
#include <opencv2/imgproc/imgproc.hpp>

#include <stdlib.h>
#include <stdio.h>

using namespace std;
using namespace cv;

IplImage* image = 0;
CvMemStorage* pStorageface = 0;
CvHaarClassifierCascade* face_cascade = 0;

void Detect(IplImage* image){
     
    CvSeq * pFaceRectSeq;

    pStorageface = cvCreateMemStorage(0);
     
         pFaceRectSeq = cvHaarDetectObjects
                 (image, face_cascade, pStorageface,
                 1.1,                       // increase search scale by 10% each pass
                 3,                         // merge groups of three detections
                 CV_HAAR_DO_CANNY_PRUNING,  // skip regions unlikely to contain a face
                 cvSize(1,1));            // smallest size face to detect = 40x40
   
   int i;
     
         for(i=0;i<(pFaceRectSeq? pFaceRectSeq->total:0); i++ )
         {
                 CvRect* r = (CvRect*)cvGetSeqElem(pFaceRectSeq, i);
                 CvPoint pt1 = { r->x, r->y };
                 CvPoint pt2 = { r->x + r->width, r->y + r->height };
                 cvRectangle(image, pt1, pt2, CV_RGB(0,0,255), 3, 4, 0);
         }
   
         cvShowImage("Third Eye", image);
}

int main( int argc, char** argv ){

  face_cascade = (CvHaarClassifierCascade *)cvLoad("C:\\Program Files\\opencv\\data\\haarcascades\\haarcascade_frontalface_alt_tree.xml", 0 , 0, 0);

  char* filename = argc == 2 ? argv[1] : "C:/many1.jpg";
   
  image = cvLoadImage(filename,1);

     cvNamedWindow("Third Eye",CV_WINDOW_AUTOSIZE);

  Detect(image);

    //cvShowImage("Third Eye",image);
   
  printf("INFO ABOUT IMAGE %s\n", filename);
  printf("Channels: %d\n", image->nChannels );
     printf("Pixel depth: %d bits\n", image->depth );
     printf("Width: %d pixels\n", image->width );
     printf("Height: %d pixels\n", image->height );
     printf("Image size: %d bytes\n", image->imageSize );
     printf("Width step: %d bytes\n", image->widthStep );

     cvWaitKey(0);

     cvReleaseImage(& image);

     cvDestroyWindow("Third Eye");

     return 0;
}


@sunmille
SunMilleДата: Воскресенье, 28 Апреля 2013, 20:39 | Сообщение # 12 | Тема: OpenCV 2.4.5 обнаружение лиц на фотографии
был не раз
Сейчас нет на сайте
Помогите написать код для обнаружения лиц на фотографии(выделение их квадратом) средствами OpenCV 2.4.5.
Вот мой код который выводит изображение. Пытался прикручивать к нему код с туториалов разных - не вышло sad
Код
#include <opencv/cv.h>
#include <opencv2/highgui/highgui.hpp>

#include <stdlib.h>
#include <stdio.h>

IplImage* image = 0;

int main( int argc, char** argv ){

   char* filename = argc == 2 ? argv[1] : "C:/people.png";
     
   image = cvLoadImage(filename,1);

      cvNamedWindow("Third Eye",CV_WINDOW_AUTOSIZE);

      cvShowImage("Third Eye",image);
     
   printf("INFO ABOUT IMAGE %s\n", filename);
   printf("Channels: %d\n", image->nChannels );
      printf("Pixel depth: %d bits\n", image->depth );
      printf("Width: %d pixels\n", image->width );
      printf("Height: %d pixels\n", image->height );
      printf("Image size: %d bytes\n", image->imageSize );
      printf("Width step: %d bytes\n", image->widthStep );

      cvWaitKey(0);

      cvReleaseImage(& image);

      cvDestroyWindow("Third Eye");

      return 0;
}


@sunmille

Сообщение отредактировал SunMille - Воскресенье, 28 Апреля 2013, 20:45
SunMilleДата: Пятница, 15 Февраля 2013, 13:50 | Сообщение # 13 | Тема: Помогите выбрать графическую библиотеку для игры на C
был не раз
Сейчас нет на сайте
Чистый OpenGL)) Или SDL

@sunmille
SunMilleДата: Четверг, 14 Февраля 2013, 16:36 | Сообщение # 14 | Тема: C или с чего начать лепить платформер
был не раз
Сейчас нет на сайте
Сам OpenGL не сложный если понять основы и не лениться гуглить. На простой GL_QUADS накладуешь текстуру и дальше обработка событий. Используй лучше С++, хотя можешь пробывать на С. Алсо загугли уроки OpenGL от NeHe. Там все расписано классно. Удачи:)

@sunmille
SunMilleДата: Среда, 13 Февраля 2013, 14:01 | Сообщение # 15 | Тема: C или с чего начать лепить платформер
был не раз
Сейчас нет на сайте
Для начала инициализируй окно:) После сделай игрока в виде банального куба. После добавь обработчика нажатий(чтобы куб начал передвигаться по форме). Потом таким же примитивом сделай пол и стены. Настрой столкновения. А дальше добавляй контент и остальное

@sunmille
SunMilleДата: Понедельник, 14 Января 2013, 19:57 | Сообщение # 16 | Тема: Есть ли смысл делать 3D движок на Java?
был не раз
Сейчас нет на сайте
Я и думал на основе lwjgl. Попробую сделать для опыта)

@sunmille
SunMilleДата: Понедельник, 14 Января 2013, 17:45 | Сообщение # 17 | Тема: Есть ли смысл делать 3D движок на Java?
был не раз
Сейчас нет на сайте
Есть ли смысл делать 3D движок на Java? И есть ли какие-то перспективы в этом направлении? Ну и напишите, что хотели бы видить в нем:)

@sunmille
SunMilleДата: Суббота, 12 Января 2013, 16:33 | Сообщение # 18 | Тема: Сделать курсор мыши не выходящим за пределы окна (LWJGL)
был не раз
Сейчас нет на сайте
Код
if(!Mouse.isInsideWindow()){
Mouse.setCursorPosition(width/2, height/2);//не помню точное название функции т.к. пишу с мобы
}

попробуй так. Width ширина окна. Height высота окна. Название функции для выставления курсора не помню. Глянь в гугле


@sunmille

Сообщение отредактировал SunMille - Суббота, 12 Января 2013, 16:37
SunMilleДата: Суббота, 12 Января 2013, 12:15 | Сообщение # 19 | Тема: Java GUI или собственный OpenGL GUI?
был не раз
Сейчас нет на сайте
Обработку пишешь сам. Ну в меню например координаты клика можна сравнивать с координатами кнопки. И если совпадает то делаешь дальше что-то

@sunmille
SunMilleДата: Суббота, 12 Января 2013, 12:09 | Сообщение # 20 | Тема: Java GUI или собственный OpenGL GUI?
был не раз
Сейчас нет на сайте
В OpenGL есть куча слушателей для миши и для клавиатуры. Для игры вполне чем достаточно. Есть либа для контролеров, но название не помню... Или я не правильно понял что ты имеешь в виду под обработчиками событий?

@sunmille
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг