Четверг, 28 Марта 2024, 17:47

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Есть ли способ сократить эти строки кода
Есть ли способ сократить эти строки кода
VostruginДата: Понедельник, 06 Июля 2020, 15:40 | Сообщение # 21
постоянный участник
Сейчас нет на сайте
Цитата Xakep ()
и видим что есть боксинг:


Боксинг/анбоксинг выполняется с помощью box, unbox, нет?






Сообщение отредактировал Vostrugin - Понедельник, 06 Июля 2020, 15:45
XakepДата: Вторник, 07 Июля 2020, 05:27 | Сообщение # 22
めちゃくちゃちゃ
Сейчас нет на сайте
Цитата drcrack ()
Nullable<T> это структура с 2 value type полями, нет там боксинга

Понятно.

Цитата Vostrugin ()
Боксинг/анбоксинг выполняется с помощью box, unbox, нет?

Боксинг обычно - это просто оборачивание каких либо переменных в инстанс класса, в Java это различные Integer, Float, которые оборачивают примитивы int и float в классы и таким образом они становятся nullable либо преобретают дополнительные свойства, но в C# с nullable поступили умнее.
VostruginДата: Вторник, 07 Июля 2020, 07:13 | Сообщение # 23
постоянный участник
Сейчас нет на сайте
Цитата Xakep ()
Боксинг обычно - это просто оборачивание каких либо переменных в инстанс класса

Спасибо, я знаю что такое боксинг/анбоксинг. Вопрос был к тому, что когда он происходит в IL ты увидишь вызов box/unbox соответственно, а в приведённом куске его нет. Вот пример с боксингом, в таком случае в IL ты видишь явно вызов box/unbox :)




XakepДата: Вторник, 07 Июля 2020, 15:27 | Сообщение # 24
めちゃくちゃちゃ
Сейчас нет на сайте
Цитата Vostrugin ()
Спасибо, я знаю что такое боксинг/анбоксинг. Вопрос был к тому, что когда он происходит в IL ты увидишь вызов box/unbox соответственно, а в приведённом куске его нет. Вот пример с боксингом, в таком случае в IL ты видишь явно вызов box/unbox

Ага, я уже это понял )
Storm54Дата: Вторник, 07 Июля 2020, 17:30 | Сообщение # 25
постоянный участник
Сейчас нет на сайте
Да, прошу прощения. Меня смутила инструкция newobj, но т.к. Nullable<T> - value type, то лишних выделений памяти не будет.
alexsilentДата: Четверг, 09 Июля 2020, 15:33 | Сообщение # 26
почти ветеран
Сейчас нет на сайте
В конечном итоге пришлось сделать мини функции для:
position (3 функции),
localPosition (3 функции),
localScale (3 функции),
localEulerAngles (1 функция на Z ибо 2D игра)
и Color (4 функции)
Или может стоит забить на эти функции и просто вектор в нужном месте подставлять, чтобы манипуляции провести с одной частью вектора или цвета.


Сообщение отредактировал alexsilent - Четверг, 09 Июля 2020, 15:36
GMasstaДата: Четверг, 09 Июля 2020, 16:38 | Сообщение # 27
частый гость
Сейчас нет на сайте
Код
private float speed = 10;
private Vector3 vAngle = Vector3.zero;

//При повороте
vAngle.Set(x, y, z);

//При движении
transform.Translate(vAngle, speed * Tme.deltaTime);


Или в чем сложность? Также можешь сначала объявить цвета, а потом их выбирать.


Make games, not war
Посмотри мои игры для мобилок, влепи лукаса!
Тут я делаю игры на Unity
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Есть ли способ сократить эти строки кода
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

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