Пятница, 22 Ноября 2024, 04:54

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Про создание игры типа шарики
ZVENДата: Вторник, 12 Января 2016, 23:00 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Здравствуйте, возник вопрос, если раньше задавали, то извиняюсь.
Как сделать игру типа шарики, lines. или как-нить еще.
То-есть интересует как разбить поле на квадраты и к ним что-нибудь привязать.
Может видео есть? Буду признателен, хочу реализацию посмотреть.
И кстати скажите плиз пару каналов на ютубе, можно зарубежных, где хоть что-нить кроме шутанов делают.
Лучше 2D игры, интересует данная тема.
8Observer8Дата: Вторник, 12 Января 2016, 23:45 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Цитата ZVEN ()
Лучше 2D игры

Вот здесь хорошие туториалы по 2D играм: http://noobtuts.com/unity

Тоже делаю Lines. Если найду тутор именно по Lines, то скину ссылку. В этой игре есть одна загвоздка, что придётся реализовывать алгоритм поиска кратчайшего пути. Скорее всего, волновый алгоритм.


Сообщение отредактировал 8Observer8 - Вторник, 12 Января 2016, 23:46
LapishДата: Среда, 13 Января 2016, 00:44 | Сообщение # 3
частый гость
Сейчас нет на сайте
Цитата ZVEN ()
И кстати скажите плиз пару каналов на ютубе, можно зарубежных, где хоть что-нить кроме шутанов делают.

Я Brackeys иногда смотрю. Платформер, понг etc
Brackeys


Сообщение отредактировал Lapish - Среда, 13 Января 2016, 00:44
ZVENДата: Среда, 13 Января 2016, 11:54 | Сообщение # 4
почетный гость
Сейчас нет на сайте
А на русском ничего подобного не видели?

Добавлено (13 января 2016, 11:54)
---------------------------------------------
Я вот думаю может наглядней будет на видео, где например интвентарь для какой-нить РПГ делают?
Там обычно все предметы по ячейкам лежат.

8Observer8Дата: Среда, 13 Января 2016, 12:21 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Цитата ZVEN ()
Я вот думаю может наглядней будет на видео, где например интвентарь для какой-нить РПГ делают?

Большой туториал из 42-х уроков -> Inventory

Правда, я его ещё не смотрел. Не уверен, что он подходит для Lines.

Следующий тутор тоже ещё не смотрел, но уверен, что он больше подойдёт для создания ячеек и не только: 2048: Build your First Complete Game with C# and Unity



Сообщение отредактировал 8Observer8 - Среда, 13 Января 2016, 12:27
ZVENДата: Среда, 13 Января 2016, 14:13 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Цитата 8Observer8 ()
Следующий тутор тоже ещё не смотрел, но уверен, что он больше подойдёт для создания ячеек и не только: 2048: Build your First Complete Game with C# and Unity


Туториал хороший, но он платный(
MANMANAДата: Среда, 13 Января 2016, 14:24 | Сообщение # 7
почти ветеран
Сейчас нет на сайте
Я бы в сторону Match3 посмотрел.
http://studentguru.gr/b....n-unity
Ссылочно: тутор по шарикам для iOs в XCode http://www.imaladec.com/story/primer_napisanie_igri_color_lines


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
8Observer8Дата: Среда, 13 Января 2016, 14:38 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
Цитата ZVEN ()
Туториал хороший, но он платный(

Для меня, из провинции (с нашим уровнем зарплат), это тоже очень дорогой тутор. $99 - если по курсу 76.331 рублей за доллар, то получается 7556 рублей. Хорошие курсы сейчас стоят очень дорого.


Сообщение отредактировал 8Observer8 - Среда, 13 Января 2016, 16:49
ZVENДата: Пятница, 15 Января 2016, 13:41 | Сообщение # 9
почетный гость
Сейчас нет на сайте
Вызываю Input.MousePosition, но проблема что позиция в виде от (0,0) до (1,1).
Можно ли как-нить сделать позицию как у объектов? То-есть по осям: например от -3 до +3
allodsДата: Пятница, 15 Января 2016, 16:02 | Сообщение # 10
почти ветеран
Сейчас нет на сайте
умножай на Screen.Weight /Screen.Height и узнаешь координаты в 2D
Для 3D кидай рейкаст либо конвертируй из 2D в 3D но ты получишь координату с Z = 0


Сообщение отредактировал allods - Пятница, 15 Января 2016, 16:07
ZVENДата: Пятница, 15 Января 2016, 18:46 | Сообщение # 11
почетный гость
Сейчас нет на сайте
Да, только косяк один, будут получаться постоянно положительные числа.
А мне нужно чтоб центр (0,0) был.
Слева отрицательные значения, справа положительные.
Ну например шар в 0,0 поставь и подвигай влево, получится (-3,0) и т.д
seamanДата: Пятница, 15 Января 2016, 20:28 | Сообщение # 12
старожил
Сейчас нет на сайте
Предлагаю повторить школьный курс арифметики.
8Observer8Дата: Пятница, 15 Января 2016, 20:31 | Сообщение # 13
заслуженный участник
Сейчас нет на сайте
Можно попробовать поставить на каждой ячейке по пустому объекту с коллайдерами. Так можно будет узнать на какую ячейку кликнул игрок. Хотя тут нужно учитывать выбранный подход к архитектуре проекта. Пока что архитектуру я не продумал до конца. Если честно, даже не начинал smile
allodsДата: Пятница, 15 Января 2016, 23:06 | Сообщение # 14
почти ветеран
Сейчас нет на сайте
Цитата ZVEN ()
Да, только косяк один, будут получаться постоянно положительные числа.
А мне нужно чтоб центр (0,0) был.
Слева отрицательные значения, справа положительные.
Ну например шар в 0,0 поставь и подвигай влево, получится (-3,0) и т.д


отнимай от x -0.5 и у - 0,5 а потом умножай как я писал выше
ZVENДата: Суббота, 16 Января 2016, 12:22 | Сообщение # 15
почетный гость
Сейчас нет на сайте
Спасибо я уже решил проблему немного по-другому.
Чет я насчет этого ваще не догадался.
Я решил это дело вот так:
Код

Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
Vector3 mp = new Vector3(ray.origin.x, ray.origin.y, 0);
Debug.Log(mp);
8Observer8Дата: Вторник, 19 Января 2016, 00:51 | Сообщение # 16
заслуженный участник
Сейчас нет на сайте
Наткнулся на такой туториал: Unity2D - Пишем игру Lines (Линии, Шарики)

В конце тутора можно пакетом проект скачать.

В Википедии написано:

Цитата
Для совершения хода необходимо, чтобы между начальной и конечной клетками существовал путь из свободных клеток.


Тут A* алгоритм: Unity 5 2D: Pathfinding


Сообщение отредактировал 8Observer8 - Вторник, 19 Января 2016, 00:51
ZVENДата: Пятница, 22 Января 2016, 19:25 | Сообщение # 17
почетный гость
Сейчас нет на сайте
Спасибо большое.
Тут появился вопрос как Particle System прикрепить к объекту и чтоб система частиц сначала не работала, а например при нажатии мышки включалась на 2 секунды?
Принципе у меня получилось при помощи Star() и Stop(), но есть 2 косяка:
1)С самого начала постоянно работает, выключаю через Stop()
2)Не могу сделать таймер на 1-2 секунды.
Помогите плиз

Добавлено (20 января 2016, 19:52)
---------------------------------------------
Никто не подскажет?

Добавлено (20 января 2016, 20:13)
---------------------------------------------
Также интересует вопрос
Тут по таймеру вызывается отображение нового предмета, после того как мы его задели.
Таймер работает 1 раз, потому что по фрейма не меняется.
Как в Update нормально и красиво засунуть чтоб таймер сработал?

Добавлено (20 января 2016, 20:14)
---------------------------------------------
Вот сам код

Код

    void OnTriggerEnter(Collider other)
    {
  if (other.gameObject.CompareTag ("Give me"))
  {
   other.gameObject.SetActive(false);

   float timer = Mathf.RoundToInt(Random.Range(5f, 10f));
   if (timer > 0)
   {
    timer = timer - Time.deltaTime;
    Debug.Log(timer);
   }
   if (timer < 0)
   {
    other.transform.position = new Vector3(Random.Range(-8f, 8f), Random.Range(-4f, 6f), 0f);
    other.gameObject.SetActive(true);    
   }

  }
    }

Добавлено (22 января 2016, 19:25)
---------------------------------------------
Таймер научился делать и вызываю его через корутин, правда с particle system не работает.
Как проверить выходит ли объект за границы камеры?

chupakaberДата: Суббота, 30 Января 2016, 05:21 | Сообщение # 18
был не раз
Сейчас нет на сайте
Цитата ZVEN ()
чтоб система частиц сначала не работала

достаточно убрать эту галочку
http://clip2net.com/s/3tCYKGx

Цитата ZVEN ()
2)Не могу сделать таймер на 1-2 секунды.

Цитата ZVEN ()
Таймер работает 1 раз, потому что по фрейма не меняется.

очевидно нужно его вынести из метода
хранить в виде свойства класса например

Код
public float timer2sec = 0.0f;
public Collider other;

public void StartTimer(Collider collider)
{
  other = collider;
  timer2sec = 2.0f;
}

public void EndTimer()
{
  if(other != null)
  {
    other.transform.position = new Vector3(Random.Range(-8f, 8f), Random.Range(-4f, 6f), 0f);
    other.gameObject.SetActive(true);
  }
}

void Update()
{
  if(timer2sec > 0.0f)
  {
    timer2sec -= Time.deltaTime;
    if(timer2sec <= 0.0f)
    {
      EndTimer();
    }
  }
}

void OnTriggerEnter(Collider collider)
{
  if (collider.gameObject.CompareTag ("Give me"))
  {
    collider.gameObject.SetActive(false);
    StartTimer(collider);
  }
}


так можно удобно следить за изменением свойств в инспекторе, а так корутин тоже вариант

Цитата ZVEN ()
Как проверить выходит ли объект за границы камеры?

преобразовывать реальные координаты в координаты вида при помощи матрицы вида например

Код
камера.worldToCameraMatrix


или при помощи готовых методов, что удобнее. например:

Код
Vector3 координаты_на_экране = камера.WorldToViewportPoint(объект.transform.position);


координаты кажется в диапазоне от 0 до 1, но лучше проверь сам через Debug.Log
ZVENДата: Четверг, 04 Февраля 2016, 17:08 | Сообщение # 19
почетный гость
Сейчас нет на сайте
Цитата chupakaber ()
чтоб система частиц сначала не работала

достаточно убрать эту галочку
http://clip2net.com/s/3tCYKGx

Все нормально, но как программно вызывать на несколько секунд Particle System?
AntrixДата: Суббота, 06 Февраля 2016, 00:39 | Сообщение # 20
почетный гость
Сейчас нет на сайте
Вызвать и уничтожить через определенное кол-во секунд. Или же поменять lifetime у партикла.
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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