Среда, 18 Сентября 2019, 01:53

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » Lertmind [593]
Результаты поиска
LertmindДата: Среда, 27 Августа 2014, 18:07 | Сообщение # 561 | Тема: Запрет анимации из Update во время воспроизведения другой
заслуженный участник
Сейчас нет на сайте
Попробуй использовать animation.IsPlaying("KatanaTakeClip"), тогда ты узнаешь когда анимация закончилась и сможешь использовать if'ы с Joy.
А вообще надо использовать Animator (Mecanim), в нём делают систему анимаций и тогда только булево значение меняешь и он переходит в другое состояние.


Сообщение отредактировал Lertmind - Среда, 27 Августа 2014, 18:13
LertmindДата: Среда, 27 Августа 2014, 01:08 | Сообщение # 562 | Тема: Странности в связке выделение плюс перемещение
заслуженный участник
Сейчас нет на сайте
Проект выложи, здесь нет телепатов.

Добавлено (27.08.2014, 01:08)
---------------------------------------------
Вот сделал проект http://rghost.ru/57696771.
Вроде как должно быть, только не делал GUI.
Теги надо называть в единственном числе, в моём проекте Player.
Скрипт для игрока не писал, поэтому нет индексов, а скорости поворота и движения в коде GameManager.
Не использовал layerMask, сам настроишь. Проверял по тегу.
Разворачивался он вперёд, потому что в LookRotation нельзя передавать нулевой вектор.
Код если что:
Код
using UnityEngine;
using System.Collections;

public class GameManager : MonoBehaviour {
     
   public GameObject selectedPlayer; // выделенный юнит игрока (далее кратко "игроки")
   public static GameObject[] players; // массив игроков
   public Vector3 targetPos; // позиция клика мышки, куда будет перемещение/поворот
   bool go = false; // разрешает/запрещает двигаться/поворачиваться
     
   void Awake () {
    players = GameObject.FindGameObjectsWithTag("Player");
    selectedPlayer = players[0];
    targetPos = selectedPlayer.transform.position;
   }
     
   void Update() {
    if (Input.GetMouseButtonDown(0)) {
     Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
     RaycastHit hit;
     if (Physics.Raycast(ray, out hit)) {
      // Выделение игрока
      if (hit.collider.tag == "Player") {
       selectedPlayer.renderer.material.color = Color.white;
       selectedPlayer = hit.collider.gameObject;
       selectedPlayer.renderer.material.color = Color.blue;
       go = false;
      }
      // Поверхность
      else {
       targetPos = hit.point;
       targetPos.y = selectedPlayer.transform.position.y; // Не уходить в пол
       go = true;
      }
     }
    }

    // Поворот в сторону клика и движение туда же
    if(go) {
     float rotateSpeed = 10f;
     float moveSpeed = 5f;
     Vector3 curPos = selectedPlayer.transform.position;
     // Дошли до точки назначения
     if (curPos == targetPos) {
      go = false;
     }
     else {
      Vector3 direction = new Vector3(targetPos.x - curPos.x, 0f, targetPos.z - curPos.z);
      selectedPlayer.transform.rotation = Quaternion.Lerp(selectedPlayer.transform.rotation,
                     Quaternion.LookRotation(direction), Time.deltaTime*rotateSpeed);
      selectedPlayer.transform.position = Vector3.MoveTowards(curPos, targetPos, Time.deltaTime*moveSpeed);
     }
    }
   }
}


Сообщение отредактировал Lertmind - Среда, 27 Августа 2014, 02:09
LertmindДата: Вторник, 26 Августа 2014, 05:51 | Сообщение # 563 | Тема: Fat Knight Adventure [Gamiron #8]
заслуженный участник
Сейчас нет на сайте
Мои глаза... исчезающая тень это жестоко, особенно такая жирная. Просто оставляй её на земле. Остальное выглядит нормально.
LertmindДата: Понедельник, 25 Августа 2014, 22:22 | Сообщение # 564 | Тема: [3D] Покорители космоса
заслуженный участник
Сейчас нет на сайте
До сих пор не заменили чужую графику. Я понимаю что у Космических рейнджерах отличная графика, но нельзя так делать, да ещё с таким количеством игроков. Хотя вижу что вам не просто - весь интерфейс разрозненный.
LertmindДата: Воскресенье, 24 Августа 2014, 18:23 | Сообщение # 565 | Тема: Мир дверей (World of doors)
заслуженный участник
Сейчас нет на сайте
На самом деле, игра не обязана быть уникальной, всё равно потом будет играть роль только маркетинг. Кстати, одна из проблем сделать 1000 уровней уникальными.
LertmindДата: Воскресенье, 24 Августа 2014, 06:22 | Сообщение # 566 | Тема: Мир дверей (World of doors)
заслуженный участник
Сейчас нет на сайте
Цитата
Мир дверей (World of door)
World of doors

Цитата
Сам я нихрена не умею(
Тогда зачем ты команде? Если ты будешь вкладывать деньги, организовывать - это уже другое дело.

Цитата
ну зато идея уникальна, я таких не видел игр, а вы?
В описании нет ничего уникального, игр с дверями полно.

Цитата
Бюджет планирую собрать на Бум/Кикстартере (где лучше?).
Нигде не соберёшь. Во-первых, кто будет вкладывать деньги в f2p игру? Ты им что купонов раздашь?


Сообщение отредактировал Lertmind - Воскресенье, 24 Августа 2014, 06:22
LertmindДата: Воскресенье, 24 Августа 2014, 05:58 | Сообщение # 567 | Тема: как за раз удалить массив текстур SDL2 ?
заслуженный участник
Сейчас нет на сайте
Alkosha, там по ссылке код немного неправильный, надо после ещё удалить память для указателей float*.
Код
float **ptrarray = new float* [2];
for (int count = 0; count < 2; count++)
      ptrarray[count] = new float [5];

for (int count = 0; count < 2; count++)
      delete [] ptrarray[count];
delete [] ptrarray;
*ptrarray = 0;

И ты хотел написать:
for(int i=0;i<64;i++)
delete[] collisMap.bitmap[i];


Сообщение отредактировал Lertmind - Воскресенье, 24 Августа 2014, 05:59
LertmindДата: Суббота, 23 Августа 2014, 21:53 | Сообщение # 568 | Тема: Игра QuietBall (Андроид)
заслуженный участник
Сейчас нет на сайте
Зону перехода лучше обозначить не стрелкой, а каким-то полем, например зелёным полупрозрачным прямоугольником.
Доски расположенные впритык выглядят лучше, чем с зазорами.
Графику можно сделать получше, как минимум, стоит добавить разнообразных спрайтов для досок, главное чтобы не казалось, что у них другой физический материал.
Кнопку рестарта делать как О не очень круто, замкнутая стрелка всем понятнее. Можно вообще вынести рестарт в выпадающее меню вместо Х, тогда нельзя будет выйти случайным нажатием на Х.
Управление тоже можно улучшить, сделать оттягиванием и главное ограничить максимальную скорость, чтобы дальше определённого радиуса нельзя было кинуть сильнее. Также линия траектории не помешала бы.
LertmindДата: Пятница, 22 Августа 2014, 23:32 | Сообщение # 569 | Тема: Как сделать 2D физику в BGE?
заслуженный участник
Сейчас нет на сайте
Нативной поддержки нет, можно просто поставить камеру сбоку и фиксировать одну из осей. Хотя есть дополнения для упрощения работы над 2D игрой, типа 2D Sprites, но лучше избегать создания 2D.

Сообщение отредактировал Lertmind - Пятница, 22 Августа 2014, 23:33
LertmindДата: Пятница, 22 Августа 2014, 21:15 | Сообщение # 570 | Тема: столкновение не для всех объектов
заслуженный участник
Сейчас нет на сайте
Забавно, я тоже подумал про невидимую плоскость) Только казалось, что так будет выглядеть топорно, зато проще.
LertmindДата: Пятница, 22 Августа 2014, 20:51 | Сообщение # 571 | Тема: столкновение не для всех объектов
заслуженный участник
Сейчас нет на сайте
Не смогу ответить, я нуб.
Есть одно предположение: можно написать код, который будет в зависимости от группы объектов выталкивать объекты из какой-то области, считающейся водой. Т. е. если дерево, надо прикладывать силу выталкивания.
LertmindДата: Пятница, 22 Августа 2014, 19:52 | Сообщение # 572 | Тема: столкновение не для всех объектов
заслуженный участник
Сейчас нет на сайте
Можно использовать Collision Group и Collision Mask. Они в свойствах Physics, Group указывает группу столкновений, Mask указывает какие группы будут с ним взаимодействовать. Т.е. в одну группу добавляешь объекты для поверхности, в другую которые пролетят, на "воде" убираешь выделение первой группы.
LertmindДата: Пятница, 22 Августа 2014, 09:16 | Сообщение # 573 | Тема: не работает анимация
заслуженный участник
Сейчас нет на сайте
silver52rus, лучше было бы скинуть проект, легче проверить.

Сообщение отредактировал Lertmind - Пятница, 22 Августа 2014, 10:04
LertmindДата: Четверг, 21 Августа 2014, 21:01 | Сообщение # 574 | Тема: Кнопка "назад" на адроид устройствах
заслуженный участник
Сейчас нет на сайте
Вот код:
Код
if (Application.platform == RuntimePlatform.Android)
{
    if (Input.GetKeyDown(KeyCode.Escape))
    {
     // Здесь вставляешь код
     // или Application.Quit(); для выхода
    }
}


Кнопка опций - KeyCode.Menu, но чтобы её показать надо сделать ещё ряд операций.


Сообщение отредактировал Lertmind - Четверг, 21 Августа 2014, 21:12
LertmindДата: Вторник, 19 Августа 2014, 03:54 | Сообщение # 575 | Тема: Базовый прототип классической змейки на Java.
заслуженный участник
Сейчас нет на сайте
Нет проверки на то, что яблоко попадёт на змею.
Чтобы змея не пыталась повернуть на себя и врезаться можно сделать так:
* Добавить новую переменную int newDir
* В функцию restart() добавить dir = newDir = 2;
* В функции tick() изменить код после if (end) {}:
Код
if (keys[KeyEvent.VK_W] && dir != 1) newDir = 0;
if (keys[KeyEvent.VK_S] && dir != 0) newDir = 1;
if (keys[KeyEvent.VK_A] && dir != 3) newDir = 2;
if (keys[KeyEvent.VK_D] && dir != 2) newDir = 3;
    
if (ticks++ % 30 == 0) {
  dir = newDir;
LertmindДата: Понедельник, 18 Августа 2014, 20:21 | Сообщение # 576 | Тема: Оптимизация - выгрузка объектов из памяти.
заслуженный участник
Сейчас нет на сайте
robertono, да. Я про слова MANMANA, из-за которых можно было подумать, что видюха будет рендерить что за камерой.
LertmindДата: Понедельник, 18 Августа 2014, 17:59 | Сообщение # 577 | Тема: Оптимизация - выгрузка объектов из памяти.
заслуженный участник
Сейчас нет на сайте
MANMANA,
Нет, если работает только Frustum Culling, объекты вне камеры не будут нагружать.
Occlusion Culling - просто круче, оно не будет рендерить, то что скрыто за объектами в пределах камеры.
Только что прочитал здесь.


Сообщение отредактировал Lertmind - Понедельник, 18 Августа 2014, 18:11
LertmindДата: Понедельник, 18 Августа 2014, 03:20 | Сообщение # 578 | Тема: Появляются черные полосы между кубов, как убрать?
заслуженный участник
Сейчас нет на сайте
Если кому интересно, сделал похожую демку через Quad. Полос нет.
Импортируете в пустой проект и тыкаете на сцену Main.
Скачать

Там два скрипта: Cube - создаёт вокруг себя Quad, LevelCreator - cоздаёт кучу из Cube.
LertmindДата: Понедельник, 18 Августа 2014, 01:01 | Сообщение # 579 | Тема: Появляются черные полосы между кубов, как убрать?
заслуженный участник
Сейчас нет на сайте
scorp2007, шутишь? Майнкрафт по-твоему как работает? Когда надо - грани появляются, с кубами тормоза были бы жуткие. Почитай статьи типа этой http://forum.unity3d.com/threads.....198651.

Сообщение отредактировал Lertmind - Понедельник, 18 Августа 2014, 01:01
LertmindДата: Понедельник, 18 Августа 2014, 00:43 | Сообщение # 580 | Тема: Появляются черные полосы между кубов, как убрать?
заслуженный участник
Сейчас нет на сайте
Решить легко, ставить рядом не кубы, а меши, например Quad стандартный. Если ты хочешь типа майнкрафт замутить, то придётся разбирать как строить меши.
Форум игроделов » Записи участника » Lertmind [593]
Поиск:

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