Воскресенье, 22 Сентября 2019, 15:33

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Форум игроделов » Записи участника » Bo [77]
Результаты поиска
BoДата: Пятница, 29 Декабря 2017, 06:38 | Сообщение # 1 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
В Unity3D есть прекрасный компонент Collider2D. Но вот что мне непонятно. Зачем для обработки столкновений необходимо кроме компонента Collider2D навешивать еще и Rigidbody? Зачем нужна физика для этого?
BoДата: Воскресенье, 24 Декабря 2017, 14:36 | Сообщение # 2 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
drcrack, большое спасибо! Идеально.
BoДата: Воскресенье, 24 Декабря 2017, 13:03 | Сообщение # 3 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Вопрос. Написал скрипт движения персонажа.

Код
void Update () {

transform.position = new Vector2 (Mathf.Clamp(transform.position.x, -6.6f, 6.6f), Mathf.Clamp(transform.position.y, -4.9f, 4.9f));

  if (Input.GetKey ("up"))
   transform.Translate (Vector2.up * Time.deltaTime);
  if (Input.GetKey ("down"))
   transform.Translate(Vector2.down * Time.deltaTime);
  if (Input.GetKey ("right"))
   transform.Translate(Vector2.right * Time.deltaTime);
  if (Input.GetKey ("left"))
   transform.Translate(Vector2.left * Time.deltaTime);  
    }
}


Хочу его переделать так, чтобы проверка (ограничние) Mathf.Clamp была в самом условии IF.
При это хотелось бы оставить конструкции Vector2.up /down/left/right
(т.е. чтобы не пользоваться, например вариантом типа

Код
float yMove = Input.GetAxis("Vertical") * Time.deltaTime;
     transform.Translate(0f, yMove, 0f);
      Vector3 clampedPosition = transform.position;
      clampedPosition.y = Mathf.Clamp(transform.position.y, -4.1f, 4.1f);
      transform.position = clampedPosition;


и сохранить лаконичность и читаемость
BoДата: Пятница, 22 Декабря 2017, 05:33 | Сообщение # 4 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Два вопроса:

1) В примерах очень часто вижу, что при Instantiate используется as Rigidbody а не as GameObject. С чем это связано?
Код
rocketInstance = Instantiate(rocketPrefab, barrelEnd.position, barrelEnd.rotation) as Rigidbody


2) Где можно почитать разъяснение (для понимания) что такое Time*deltaTime ? Я понимаю как его использовать, но не могу въехать как конкретно оно связано с FPS


Сообщение отредактировал Bo - Пятница, 22 Декабря 2017, 05:33
BoДата: Пятница, 01 Декабря 2017, 20:08 | Сообщение # 5 | Тема: Стоит ли покупать курсы от unity3dschool.ru ?
почетный гость
Сейчас нет на сайте
Вопрос: Есть указанный в теме сайт unity3dschool.ru. На нем есть 4 курса по Юнити
(кроме курса по пиксель-арту "СОЗДАНИЕ ПИКСЕЛЬ АРТ ГРАФИКИ ДЛЯ ИГР В PHOTOSHOP" - по нему вопросов нет, автор всегда делал качественный контент, на него денег не жалко)

Но на другие курсы цены не маленькие , тем более что никакого вменяемого превью нету.
Может кто покупал, пользовался? Хотелось бы услышать фидбэк.

p.s. Не знаю как оформить так чтобы не воспринималось как реклама. Никакого отношения к создателям курса не имею.


Сообщение отредактировал Bo - Пятница, 01 Декабря 2017, 20:25
BoДата: Четверг, 30 Ноября 2017, 21:47 | Сообщение # 6 | Тема: На каком конструкторе легче сделать такую игру?
почетный гость
Сейчас нет на сайте
Для арканоида - Clicktem Fusion 2.5 / GameMaker Studio / Construct
BoДата: Четверг, 30 Ноября 2017, 20:45 | Сообщение # 7 | Тема: На каком конструкторе легче сделать такую игру?
почетный гость
Сейчас нет на сайте
Buratino, чтобы Вам что-то посоветовать надо знать как минимум:
- какие именно игры Вы хотите делать? Может Вы художник или писатель и хотите делать визуальные новеллы или простые квесты? Тогда посмотрите соответствующие конструкторы. Или это платформеры, 2д стрелялки - тогда выбор будем иным
- что Вы умеете делать сами? Вы рисуете? пишете тексты? что именно?
- владеете ли вы английским языком (или иным другим - японским, немецким). Далеко не все конструкторы имеют ру/укр локализацию.


Сообщение отредактировал Bo - Четверг, 30 Ноября 2017, 20:45
BoДата: Среда, 29 Ноября 2017, 23:11 | Сообщение # 8 | Тема: На каком конструкторе легче сделать такую игру?
почетный гость
Сейчас нет на сайте
Цитата Buratino ()
Куда зайти, что скачать, с чего начать?

Как инвалид инвалида хочу спросить - Вы хотите чтобы к Вам относились именно как к инвалиду, или просто как к участнику форума? Потому что если второе, то следовало хотя бы не задавать вопрос в чужой теме, а хотя бы немного ознакомиться с правилами форума. Для Вас: https://segfault.kiev.ua/smart-questions-ru.html
BoДата: Понедельник, 07 Августа 2017, 23:18 | Сообщение # 9 | Тема: Ищу "Паттерны проектирования" серии Head first
почетный гость
Сейчас нет на сайте
Ищу книгу "Паттерны проектирования" серии Head first (Эрик Фримен, Элизабет Фримен - Паттерны проектирования Head First O'Reilly)
На сайтах продается только бумажная версия (на русском).
Интересует изначально компьютерная версия.
Зрение у меня и так плохое и ломать глаза об DjVu (скачал как и плохо отсканированный и переведенный в PDF вариант)
я бы не хотел.
Если у кого-то есть эта книга или кто знает где её можно купить в изначально качественном цифровом варианте - напишите плиз.

p.s. Вот в таком виде https://vk.com/doc2237....7dc5bad - не надо.
Надо вот в таком: http://storage.piter.com/upload....5_p.pdf


Сообщение отредактировал Bo - Понедельник, 07 Августа 2017, 23:35
BoДата: Понедельник, 07 Августа 2017, 01:14 | Сообщение # 10 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Цитата seaman ()
Т.е. не так: foreach(var child in transform.childs), а просто in transform. Потому что Юнитеки сделали именно трансформ IEnumerable. Ну и вообще у трансформа нет такого свойства childs. Т.е. получить всех его детей можно только перебрав их.

Да, спасибо , на само деле проблема в том, что я интуитивно воспринимаю transform как нечто в единственном числе.
При использовании дот-нотации типа transform.child это бы воспринималось именно как перечисление.
А так за transform не видно массива. Он воспринимается просто как свойство объекта
BoДата: Воскресенье, 06 Августа 2017, 23:29 | Сообщение # 11 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
b_eat, еще раз спасибо.
Дело в том, что я все равно не могу вот чего понять: ну есть у нас компонент типа Transform,
У нас есть локальная переменная child (которая, как я понимаю инициализируется и существует исключительно внутри
цикла), но transform (lower case) это же по сути свойство объекта. Почему мы перебираем свойства, а не объекты, если уж на то пошло. (Я понимаю что наверное уже утомил, но я действительно не въезжаю до конца, а я хотел бы уже понять наконец)
p.s На англоязычном форуме так же предлагалось использовать
Код
enemy.transform.SetParent(child)
вместо
Код
enemy.transform.parent = child
, однако для меня оба эти выражения выглядят дико.
p.s Плюс утверждается что (не проверял)
Цитата
Unity developers made their own realisation of the interface for foreach, so it return its children if called on transform. And it`s 100% not equal to regular array. If you want to get into this deeper - you need articles about IEnumerable interface in C#.


Сообщение отредактировал Bo - Воскресенье, 06 Августа 2017, 23:38
BoДата: Воскресенье, 06 Августа 2017, 22:53 | Сообщение # 12 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Цитата b_eat ()
могу конечно ошибаться, но это примерно как в Дельфи и других IDE

Дело в том, что тут речь идет конкретно о Unity, в котором любой GameObject обязательно имеет компонент Transform. Поэтому в данном случае речь идет не о сферическом ООП в вакууме а о работе с конкретным движком.

То что Вы пишете - понятно (и спасибо), но это не даёт ответа на поставленный вопрос: почему мы перебираем компоненты, а не объекты?
BoДата: Воскресенье, 06 Августа 2017, 20:48 | Сообщение # 13 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
b_eat, мне не понятно почему мы вообще имеем дело с Transform, а не с GameObject.
Transform, как я понимаю (и согласно документации) - компонент. Почему мы перебираем компоненты, а не объекты?
Выполняет ли child функцию обычной переменной (видимой лишь внутри foreach) или это ключевое слово несущее еще какой-то смысл?
BoДата: Воскресенье, 06 Августа 2017, 20:08 | Сообщение # 14 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Прохожу сейчас курс онлайн (на английском) по Unity.
Обычно на все вопросы отвечают понятно и вразумительно, но тут реально затык - не въезжаю, не могу понять.
Есть код:

Код
foreach (Transform child in transform) {
  GameObject enemy = Instantiate (enemyPrefab, child.transform.position , Quaternion.identity) as GameObject;
  enemy.transform.parent = child;
}

И вот это выражение "Transform child in transform" просто не укладывается у меня в голове.
Прочитал на эту тему тут: http://answers.unity3d.com/questio....je.html
Но все равно не догоняю. Может кто-нибудь на русском ликбез провести?

p.s. Вопрос не про то как работает foreach, например в случае с
Код
foreach (int fVar in myArr)
Console.WriteLine("{0} Squared is equal to {1}",fVar,fVar*fVar);
всё понятно.
Вопрос именно с указанной конструкцией.


Сообщение отредактировал Bo - Воскресенье, 06 Августа 2017, 20:11
BoДата: Воскресенье, 14 Мая 2017, 19:02 | Сообщение # 15 | Тема: Поиск движка для игры
почетный гость
Сейчас нет на сайте
Цитата martuk ()
Я вообще все еще пользуюсь ClickTeam Fusion 2.5 =)

Кстати вариант ClickTeam Fusion 2.5 + Firefly для 3D
BoДата: Суббота, 13 Мая 2017, 22:36 | Сообщение # 16 | Тема: Поиск движка для игры
почетный гость
Сейчас нет на сайте
Цитата SpilMand ()
Нет, это должен быть не мод. Это будет полноценная игра со своими особенностями, своими противниками, своим оружием своим сеттингом и тд. От DOOM'а и Quake'а в ней будет только динамика.

Без программирования (хотя бы в виде visual, flowgraph, blueprints) этого не произойдёт.
BoДата: Суббота, 13 Мая 2017, 22:11 | Сообщение # 17 | Тема: Поиск движка для игры
почетный гость
Сейчас нет на сайте
Цитата SpilMand ()
Bo, интерфейс не нравится. Запутанно всё как то.

Я бы предложил CopperCube5 , но если в Unity интерфейс показался запутанным, то уж с CC - тем более. Боюсь тогда только UDK или UnrealEngine-4.
Хотя не совсем понятно что вы хотите получить в итоге. Может проще сделать мод под DOOM/Quake...

Если бы не Ваше странное отношение к интерфейсу Unity, то можно было бы посоветовать Unity+uFPS+PlayMaker


Сообщение отредактировал Bo - Суббота, 13 Мая 2017, 22:18
BoДата: Суббота, 13 Мая 2017, 21:46 | Сообщение # 18 | Тема: Поиск движка для игры
почетный гость
Сейчас нет на сайте
Цитата SpilMand ()
Unity не очень нравится.

И чем же?
BoДата: Воскресенье, 07 Мая 2017, 21:12 | Сообщение # 19 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Вопрос из разряда очень нубских.
Делал проект в 4.6. Доделал, решил перенести его в 5,6 чтобы была возможность выгрузить в WebGL.
И тут обнаружились забавные вещи.

раньше в Unity 4.6 можно было написать что-нибудь типа

Код
this.rigidbody2D.velocity = ....


но в Unity 5 теперь надо делать так:

Код
shipRigidbody = GetComponent<Rigidbody2D>();


и только после этого обращаться к компоненту rigidbody2D

Раньше можно было написать

Код
audio.Play
rigidbody2D.velocity += tweak

выглядело коротко, читалось легко

Код
GetComponent<AudioSource>().Play();
GetComponent<Rigidbody2D>().velocity() += tweak;

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

Вопрос: зачем эти изменения нужны (а они ведь явно не просто так сделаны, все таки не дураки писали)
Я прочитал пару статей по аксессорам в Unity, но та ки не понял почему для одних компонентов это работало, а для других нет.
В общем если кто-то по простому и по русски напишет буду признателен (ну или за линк на материал для чайников)


Сообщение отредактировал Bo - Воскресенье, 07 Мая 2017, 21:12
BoДата: Суббота, 22 Апреля 2017, 12:48 | Сообщение # 20 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
Зачем в конструкциях типа:

Код
DateTime date = new DateTime(2000, 1, 1);


указание типа используется И в левой части выражения (для указание типа переменной/объекта) И в правой при создании экземпляра.
Т.е. вот пример допустим:

Код
Vector3 ballPosision = new Vector3 (0.5f, 0, 0);

Вроде если в левой части у нас указан тип Vector3, то в правой там ничего другого быть не может. (Поправьте, возможно я ошибаюсь)
Тогда зачем это указание на Vector3 справа? Может быть кто-то может привести пример когда это нарушается.
Почему нельзя написать
Код
ballPosision = new Vector3 (0.5f, 0, 0);

или
Код
Vector3 ballPosision = new (0.5f, 0, 0);

Выглядит избыточно. Хотелось бы понять логику зачем это нужно


Сообщение отредактировал Bo - Суббота, 22 Апреля 2017, 12:52
Форум игроделов » Записи участника » Bo [77]
  • Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Поиск:

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