Unity & Unreal | GameDev
36K subscribers
2.99K photos
397 videos
2.15K links
Все для разработчиков игр на Unity и Unreal.
Неофициальное сообщество.

По всем вопросам: @kesh_keshh и @dimaa_dimaa

Ссылка на канал: https://t.me/+XfyJa-jxN343NWZi

РКН: https://vk.cc/cHWH1j

Биржа: https://telega.in/channels/unity_gamedev_unreal/card
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Ассет для анимации персонажей

Этот ассет подходит для создания анимации персонажей в изометрии. Он подходит для SLG/RPG в стиле ретро!

Скачать 👈
11👍1
Телепортация в Unity

С помощью небольших манипуляций и пару строчек в коде, вы сможете сделать систему телепортации в своей игре.

Посмотреть можно по ссылке

#туториал
15
Железный рыцарь человек

Скачать бесплатно 👈🏻

#модельки
12👍2🤣2
Undead pack

Скачать 👈

Может быть это подойдёт для хоррора?

#модельки
1👍72🤣1
The Ultimate Creature Artwork

Скачать 👈

#модельки
👍8
Музыка со старых мультфильмов

Скачать бесплатно 👈🏻

#Аудио
🤣112👍2🔥1
Unity + AI: Мечтает ли моб о электрических баранах?

Привет, гики и геймдевы!
Сегодня разберем одну из самых горячих тем: как искусственный интеллект меняет разработку под Unity и какие возможности открывает прямо сейчас.

Вот вам дамп мыслей ⤵️

Не только умные NPC

Долой патрулирующих по квадрату скелетов! Современный ИИ в играх — это:

1) Движки like GPT: Персонажи с настоящей памятью и уникальными диалогами, которые реагируют на любую реплику игрока. Прощайте, диалоговые деревья!
2) ИИ для анимации: Системы вроде Unity Muse и Motion Matching создают гиперреалистичные и плавные движения на лету, без тонк ручной работы.
3) Procedural Content Generation: ИИ генерирует целые миры, квесты и даже сюжетные повороты, делая каждую игру уникальной. Hello, бесконечный реиграбилити!

#Unity
#Ai
7👍4🤣2
У тебя возникли вопросы по Unity?

Не стесняйся - задавай их в нашем чате. Вместе мы точно найдём ответы!

Также этот чат - отличное место для обмена опытом и идей: делись своими работами, дари вдохновение и помогай другим участникам.

Удачи!
#полезно
👍61🔥1
The Ultimate Creature Artwork

Скачать 👈

#модельки
👍3🤯2
Unreal Engine + AI: что важно знать и как начать

Unreal Engine давно перестал быть просто движком для игр. Сегодня это мощная платформа для интеграции AI — от умного поведения NPC до генерации контента и синтетических данных для обучения моделей. Ниже — краткий обзор возможностей и конкретные идеи для ваших проектов.

Почему это круто
- Реализм: навигация, анимация и физика UE дают реалистичную среду для обучения и тестирования моделей.
- Скорость разработки: готовые инструменты (Behavior Trees, EQS, AIController) ускоряют создание сложного поведения.
- Синтетика для ML: возможность массовой генерации размеченных данных (различные ракурсы, освещение, сценарии).
- Интеграция с ML-фреймворками: Python API, ONNX, плагины (AirSim, UnrealCV) и нативные расширения.

Где применять
- Игры: адаптивные противники, динамичный сюжет, боты с LLM-диалогами.
- Симуляции и робототехника: обучение в виртуальной среде перед деплоем в реальный мир.
- Контент-генерация: процедурные ландшафты, анимации, лицевые выражения через ML Deformer.
- Обучение и тестирование автономных систем (автопилоты, дроны).

Как начать — простой план
1. Освойте базовые AI-инструменты UE: AIController, Behavior Tree, NavMesh, EQS.
2. Подключите Python API для обмена данными и пайплайнов обучения.
3. Для сложных нейросетей экспортируйте модели в ONNX и запускайте их в UE или через сервер инференса.
4. Используйте AirSim/UnrealCV для генерации датасетов и симуляций.

Пример: запрос к внешнему LLM из UE (псевдокод Python для сервера)
from flask import Flask, request
import requests

app = Flask(__name__)

@app.route('/chat', methods=['POST'])
def chat():
scene_state = request.json['state']
# отправляем контекст в LLM (пример)
resp = requests.post('https://api.example.com/llm', json={'context': scene_state})
return resp.json()

#UE5
#Ai
6👍1🔥1
Unity: быстрый гайд по движению персонажа за 2 минуты

Коротко и по делу — как сделать простое движение персонажа, оптимизировать и что дальше изучать.

Что нужно знать:
- Input — считываем оси Horizontal/Vertical.
- Transform vs Rigidbody — для простого не-физического перемещения можно использовать transform.Translate. Для физики — управляем через Rigidbody и FixedUpdate.
- Кэшируйте компоненты, избегайте частых вызовов GetComponent в Update.
- Профайлер и сборка билдов помогут найти узкие места.

Пример базового скрипта (3D, не физика):

using UnityEngine;

public class PlayerMove : MonoBehaviour
{
public float speed = 5f;

void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
Vector3 dir = new Vector3(h, 0, v).normalized;
if (dir.magnitude > 0.01f)
transform.Translate(dir * speed * Time.deltaTime, Space.World);
}
}


Полезные советы:
- Для физики — используйте Rigidbody.MovePosition в FixedUpdate.
- Оптимизация — object pooling для частых инстансов, batching для рендеринга, минимизируйте аллокации в Update.
- Архитектура — разделяйте логику ввода, движения и анимации на отдельные компоненты.
- Учебные ресурсы: Unity Learn, документация Unity Manual и официальный форум.

#Unity
#Туториал
9🔥5🤯1
Я для тебя шутка что ли?...

#Unitymemes
🤣416🔥3
Быстрый лайфхак для производительности — Object Pooling

Проблема: частые Instantiate/Destroy приводят к флюктуациям фреймрейта и повышенным сборкам мусора. Особенно заметно в проектах с большим числом временных объектов (снаряды, частицы, враги).

Почему это работает: повторное использование объектов снижает аллокации и время на создание/удаление, что даёт более стабильный FPS и меньшую нагрузку на GC.

Простой пример пула на C# для Unity:

using UnityEngine;
using System.Collections.Generic;

public class SimplePool : MonoBehaviour
{
public GameObject prefab;
private Queue<GameObject> pool = new Queue<GameObject>();
public int initialSize = 10;

void Start()
{
for (int i = 0; i < initialSize; i++)
{
var obj = Instantiate(prefab);
obj.SetActive(false);
pool.Enqueue(obj);
}
}

public GameObject Get()
{
if (pool.Count == 0)
{
var obj = Instantiate(prefab);
return obj;
}
var go = pool.Dequeue();
go.SetActive(true);
return go;
}

public void Release(GameObject obj)
{
obj.SetActive(false);
pool.Enqueue(obj);
}
}


Короткие практические советы:
- Пулить объекты, которые часто создаются/уничтожаются (пули, эффекты, враги).
- Следите за состоянием при повторном использовании — очищайте скрипты/таймеры/коллайдеры.
- Используйте Profiler чтобы найти аллокации: включите Deep Profiling при отладке, но не оставляйте его в релизе.
- Для больших проектов посмотрите на Unity Addressables и UnityEngine.Pool/ObjectPool<T> (в новых версиях Unity есть встроенные решения).
- Не пытайтесь пулить всё подряд — это тоже требует памяти; оценивайте по профайлу.

Полезные ссылки:
- Unity Manual — Profiler
- Addressables
- UnityEngine.Pool / ObjectPool<T> overview

#Полезное
#Unity
9