Суббота, 20 Июля 2019, 22:56

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 3 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Форум игроделов » Записи участника » InsaneSystems [99]
Результаты поиска
InsaneSystemsДата: Вторник, 17 Июля 2018, 13:55 | Сообщение # 41 | Тема: Переход с UnityScript на Csharp для не программиста
почетный гость
Сейчас нет на сайте
alexsilent,
Код
yourList.Insert(0, item);

Как вариант, вот так. Добавляешь item в первую позицию, сдвигая остальные.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Вторник, 17 Июля 2018, 11:14 | Сообщение # 42 | Тема: Переход с UnityScript на Csharp для не программиста
почетный гость
Сейчас нет на сайте
alexsilent, это точно так же делается с помощью static, и все переменные скрипта тоже должны быть статик (кроме внутренних в самих функциях/методах). Как альтернатива - использовать паттерн Singleton. Он очень прост в понимании даже без особых знаний C#, почитайте. Если коротко, в скрипте можно написать вот такой код:
Код

public class YourScript : MonoBehaviour
{
    public static YourScript instance {get; private set;}

    void Awake()
    {
         instance = this;
    }

    public void TestMethod()
    {
         Debug.Log("It works");
    }
}


А потом метод TestMethod можно вызвать из другого скрипта вот так:
Код
YourScript.instance.TestMethod();


Но тогда этот скрипт должен всегда быть на одном из объектов сцены. Как вариант - отказаться от MonoBehaviour, но это будет чуть сложнее.

P.S.: в идеале это всё делается более красиво, я для простоты понимания укоротил реализацию.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Вторник, 17 Июля 2018, 11:16
InsaneSystemsДата: Вторник, 17 Июля 2018, 10:48 | Сообщение # 43 | Тема: Переход с UnityScript на Csharp для не программиста
почетный гость
Сейчас нет на сайте
Цитата
1) Как инициализировать?

Код
List<int> yourList = new List<int>();

Данный код создаёт пустой список типа int (целочисленный). Дальше в него можно добавлять элементы.

Цитата
2) Как добавлять Add и Push

Код
yourList.Add(1);

В скобках - ваш объект. В данном случае это число, поскольку список типа int. Элемент добавится в конец списка.

Цитата
3) и как удалять один слот RemoveAt?

Код
yourList.RemoveAt(0);

Где 0 - позиция удаляемого элемента.

Цитата
4) Как очищать весь массив?

Код
yourList.Clear();

Полная очистка всего списка.

Почему, собственно, вы не можете остаться на версии 2018.1? Там поддерживается UnityScript. А, как известно, погоня за последними версиями - не всегда хорошо.

P.S.: справка microsoft - ад. Лучше уж найдите что-то поадекватнее. Можно почитать тут первые две главы - metanit.com. Написано простым русским языком, коротко, с примерами. Правда насчёт качества уроков по основам я не знаю, я их изучал не там.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Вторник, 17 Июля 2018, 10:52
InsaneSystemsДата: Понедельник, 25 Июня 2018, 23:07 | Сообщение # 44 | Тема: Правильная подгрузка 3д моделей
почетный гость
Сейчас нет на сайте
radion, если у вас модели фурнитуры на одном этаже вызывают проблемы с производительностью, то возможно стоит оптимизировать сами модели, а не способ их отображения. А так же посмотреть в сторону Static и Dynamic Batching, использовать Level of Detail (LOD).

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Понедельник, 25 Июня 2018, 23:09
InsaneSystemsДата: Понедельник, 25 Июня 2018, 21:28 | Сообщение # 45 | Тема: Правильная подгрузка 3д моделей
почетный гость
Сейчас нет на сайте
radion, самый простой способ - отключать ненужные объекты, пока игрок непосредственно не имеет к ним доступа. Делать это можно с помощью простого триггера во время перехода с этажа на этаж. Ещё вариант - Occlusion Culling. Правда не подскажу, насколько он хорош в закрытых помещениях.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Воскресенье, 24 Июня 2018, 13:56 | Сообщение # 46 | Тема: (Unity) (2d) Spawn противников по карте.
почетный гость
Сейчас нет на сайте
gamedevlogin, изучите Object Pooling. Является решением вашей проблемы. Если "некогда", то просто ввключайте объекты по мере прохождения уровня.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Четверг, 21 Июня 2018, 21:01 | Сообщение # 47 | Тема: Плавная прозрачность у боков картинки
почетный гость
Сейчас нет на сайте
Или пойти более простым и быстрым путём, если некогда разбираться с масками - растрировать стили слоя и пройтись ластиком с жесткостью 0%.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Четверг, 21 Июня 2018, 19:11 | Сообщение # 48 | Тема: Вопрос-[ответ] по Unity.
почетный гость
Сейчас нет на сайте
orkons, чем больше масштаб, тем больше ресурсов. Это же очевидно. :D


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Четверг, 21 Июня 2018, 19:11
InsaneSystemsДата: Суббота, 16 Июня 2018, 16:20 | Сообщение # 49 | Тема: Продвижение игр за процент с оплат. Есть сервис?
почетный гость
Сейчас нет на сайте
Вообще-то в Google Play по-моему есть возможность сделать ссылку с встроенным промо-кодом или реферальную, и при установке приложения этот код автоматически передаётся в приложение.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Суббота, 09 Июня 2018, 09:29 | Сообщение # 50 | Тема: Как сделать одну фразу?
почетный гость
Сейчас нет на сайте
UnityKoshksanda, изначально переменная должна быть false. Менять переменную по нажатию кнопки прыжка. Но вам в соседней теме правильно посоветовали - лучше начать с чего попроще, а именно изучить основы программирования, иначе у вас на каждом этапе будут подобные проблемы. :(

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Суббота, 09 Июня 2018, 09:29
InsaneSystemsДата: Пятница, 08 Июня 2018, 19:27 | Сообщение # 51 | Тема: Как сделать одну фразу?
почетный гость
Сейчас нет на сайте
UnityKoshksanda, yourBoolVar дословно переводится как "ваша булевая переменная", о которой говорится в начале темы. Очевидно, что во время прыжка, если нужно отменить гравитацию, эту переменную нужно сделать true, а когда нужно вернуть гравитацию - false. :)

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Пятница, 08 Июня 2018, 19:19 | Сообщение # 52 | Тема: Как сделать одну фразу?
почетный гость
Сейчас нет на сайте
UnityKoshksanda, куда вам нужно. В теме было сказано, что должно зависеть от переменной bool, я и написал про переменную код. Если нужно, чтобы во время прыжка менялась переменная - меняйте её при нажатии на кнопку прыжка, а этот код вставьте в Update.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Пятница, 08 Июня 2018, 19:19
InsaneSystemsДата: Пятница, 08 Июня 2018, 19:01 | Сообщение # 53 | Тема: Как сделать одну фразу?
почетный гость
Сейчас нет на сайте
UnityKoshksanda,
Код
if (yourBoolVar)
    Physics.gravity = new Vector3(0f, 0f, 0f);
else
    Physics.gravity = new Vector3(0f, -9.8f, 0f);


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Воскресенье, 03 Июня 2018, 12:59 | Сообщение # 54 | Тема: Как сделать темноту в юнити
почетный гость
Сейчас нет на сайте
xxxlio, верхнее меню, там пункт Window. В выпадающем списке находите Lighting, там Settings. В открывшемся окне будет пункт Environment Light и там подпункт Ambient Color (цвет общего освещения сцены). Его нужно поставить на более тёмный. Если такого пункта не будет, то поменяйте чуть выше параметр Source на Color.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Воскресенье, 03 Июня 2018, 12:59
InsaneSystemsДата: Пятница, 01 Июня 2018, 21:40 | Сообщение # 55 | Тема: Battlecruiser
почетный гость
Сейчас нет на сайте
НезНaл, к вашему сведению, существует такое понятие, как стиль. Компьютерные игры с начала времён разрабатываются в абсолютно разных графических стилях, выбор одного из которых обусловлен задумкой авторов и/или наличием ресурсов (про другие, более глубокие для геймдева вещи вам, в виду ваших сообщений на форуме, говорить пока что бессмысленно), поэтому ваши заявления в этой теме изначально не имеют никакой пользы. Существует множество успешных и популярных игр с абсолютно разной графикой, которая, по вашему мнению, может быть недостаточно профессиональной. Один из таких примеров - Minecraft. Надеюсь, ясно донёс свою мысль.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Пятница, 01 Июня 2018, 21:41
InsaneSystemsДата: Понедельник, 21 Мая 2018, 17:51 | Сообщение # 56 | Тема: Дерево функций
почетный гость
Сейчас нет на сайте
andarky, можно ещё попробовать Rider, он хотя бы выгодно отличается от блокнотов типа VS Code полноценным функционалом IDE. Лично мне не нравится, но альтернатива студии неплохая, и по мнению многих людей, работает гораздо быстрее. Я с этим мнением, опять же, не согласен. В общем, попробуйте, понравится или нет - решать вам. :)

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Понедельник, 21 Мая 2018, 17:52
InsaneSystemsДата: Воскресенье, 20 Мая 2018, 10:26 | Сообщение # 57 | Тема: Создание общих объектов в мультиплеере (Network).
почетный гость
Сейчас нет на сайте
xxxlio, используйте NetworkServer.Spawn. Только делать это можно исключительно на сервере, поэтому от клиентов необходимо будет передавать некий запрос на спавн объекта, который после обработки сервером будет исполнен.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Суббота, 19 Мая 2018, 11:25 | Сообщение # 58 | Тема: Sky Powder: Robots vs Spring [Gamiron №14]
почетный гость
Сейчас нет на сайте
Цитата
почему игра 2d на основе программы 3d?

Unity уже давно предназначена не только для 3D. Если зайти на официальный сайт и почитать, они сами настоятельно просят не использовать больше приставку 3d к слову Unity, это путает людей. Движок называется просто Unity.

alexsilent, приятный стиль графики, надеюсь, доведёте проект до конца - выглядит весьма интересно.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Вторник, 15 Мая 2018, 16:19 | Сообщение # 59 | Тема: Как сделать реалистическую мигалку?
почетный гость
Сейчас нет на сайте
Atrek, справку в любом случае стоит изучать почаще, однако точного ответа на все ваши вопросы там может и не быть. У Unity есть блоги, там много гайдов, но найти сходу нужное сложно. Можно гуглить что-то вроде: Unity point light, Unity spot light, Unity light flares, Unity material emission, Unity post processing bloom и так далее.

t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.
InsaneSystemsДата: Вторник, 15 Мая 2018, 12:10 | Сообщение # 60 | Тема: Как сделать реалистическую мигалку?
почетный гость
Сейчас нет на сайте
Atrek, потому что это основополагающие знания, и ответ на ваш вопрос приходит сам, если вы понимаете программирование и разбираетесь в логике. Задача настолько примитивная, что по ней не требуется какой-то туториал. К тому же, из вашего вопроса неясно, что именно вы не можете сделать. А как известно - какой вопрос, такой и ответ.

Конкретно в видео-уроке по таймкоду используется по-моему лишь вращение двух разноцветных источников света. Гайд не смотрел, но это делается в одну строку кода, не считая того, что юнити генерирует в скрипте при старте.

Для того, чтобы сделать как в GTA 5, нужно работать не столько с источниками света, сколько с свойством Emission материала сирен, это позволит подсвечивать объект даже без освещения. Чтобы сделать анимацию, самое простое - подставлять в поле Emission разные текстуры с нужным интервалом времени. Подобный код будет выглядеть примерно так:

Код

public class Siren : MonoBehaviour
{
    [SerializeField] Texture[] textures;
    [SerializeField] Light[] lights;
    [SerializeField] new Renderer renderer;
    [SerializeField] float delay = 0.25f;

    int currentLightId = 0;

    private void Start()
    {
        StartCoroutine(SirenWork());
    }

    IEnumerator SirenWork()
    {
        while (true)
        {
            lights[currentLightId].intensity = 0f;

            currentLightId++;

            if (currentLightId >= textures.Length)
                currentLightId = 0;

            renderer.material.SetTexture("_EmissionMap", textures[currentLightId]);
            lights[currentLightId].intensity = 1f;

            yield return new WaitForSeconds(delay);
        }
    }
}


В renderer подставляется Mesh Renderer сирены, в textures - список Emission-текстур с нужной подсветкой, в lights - соответствующие цвету текстур по списку источники освещения. delay - время смены освещения.
Результат: Ссылка на видео

Пример текстуры подсветки:


Хочу так же отметить, что для того, чтобы Emission красиво работал - необходимо использовать пост-эффект Bloom, это позволит создать красивое свечение (на видео он использован). Если игра ночная - это отличный выбор. Днём лучше попробовать использовать настройки Halo или Flare у источников освещения.

Для реализации разных вариантов скорости мигания, как в ролике про GTA 5, нужно использовать всё то же самое, только добавить несколько вариантов поведения. Например, можно раз в N секунд менять свойство delay. Чтобы мигалки подсвечивались по-другому - через те же N секунд менять набор текстур, который им задаётся по проходу delay. Тут можно либо несколько массивов сделать, либо использовать ScriptableObject, в котором задаётся нужный набор текстур, в общем, вариантов - масса.


t.me/insanesystems - Telegram-канал с материалами по геймдеву и полезными советами по Unity.

Сообщение отредактировал InsaneSystems - Вторник, 15 Мая 2018, 12:27
Форум игроделов » Записи участника » InsaneSystems [99]
  • Страница 3 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:

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