NOBICE

Description
Администратор - @gallusination
ХОЗЯИН канала в АРМИИ
Навигация по каналу (реклама, новости и др.): https://t.me/nobice/416
Чат канала:
https://t.me/nobicechat
Как заполнить данные для применения промокодов в Unity Asset Store: https://t.me/nobice/950
Advertising
We recommend to visit
HAYZON
HAYZON
5,791,257 @hayzonn

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 1 month, 1 week ago

Architec.Ton is a ecosystem on the TON chain with non-custodial wallet, swap, apps catalog and launchpad.

Main app: @architec_ton_bot
Our Chat: @architec_ton
EU Channel: @architecton_eu
Twitter: x.com/architec_ton
Support: @architecton_support

Last updated 1 month ago

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

Last updated 1 month, 3 weeks ago

3 weeks, 6 days ago

🦊 Лисьи лайфхаки для C#6

Добрый день, разработчики!
Сегодня разберем, почему конкатенация строк может быть очень "дорогой" операцией.

💡 Как на самом деле работает сложение строк:

```
// Что мы пишем:
string result = "";
result += "Привет"; // Шаг 1
result += " мой"; // Шаг 2
result += " друг"; // Шаг 3

// Что происходит на самом деле:
// Шаг 1:
char[] массив1 = new char[6]; // Выделяется новый массив
Копируем "Привет" в массив1 // Копируются символы

// Шаг 2:
char[] массив2 = new char[9]; // Новый массив большего размера!
Копируем "Привет" в массив2 // Копируем старые символы
Копируем " мой" в массив2 // Добавляем новые

// Шаг 3:
char[] массив3 = new char[14]; // Опять новый массив!
Копируем "Привет мой" в массив3 // Снова копируем всё старое
Копируем " друг" в массив3 // Добавляем новое
```

🎯 А вот как работает StringBuilder:

```
var builder = new StringBuilder();
builder.Append("Привет"); // Сохраняет ссылку на кусок
builder.Append(" мой"); // Сохраняет ссылку на кусок
builder.Append(" друг"); // Сохраняет ссылку на кусок

// Только при ToString() все куски собираются в одну строку
// За один проход, без множества промежуточных массивов!
string result = builder.ToString();
```

🔍 Почему это важно:

При конкатенации каждый раз создается новый массив
Каждый раз копируются ВСЕ символы из старой строки
В цикле это может привести к огромным затратам памяти
StringBuilder хранит ссылки на куски и собирает их только один раз

🦊 Лисий совет: Представьте, что вы переписываете текст. При конкатенации вы каждый раз берете новый лист и переписываете весь текст заново. А StringBuilder как закладки - помечает нужные куски, а переписывает всё только в самом конце!

#CSharp #Unity #GameDev #StringBuilder #Optimization #ЛисьиЛайфхаки

4 weeks ago

🦊 Лисьи лайфхаки для C#: Оптимизация размера Enum

Привет, разработчики! Сегодня разберём, как правильно выбрать размер для ваших Enum'ов и почему это важно!

💡 Размеры Enum в C#:
byte (1 байт):

public enum SmallEnum : byte // 0\-255 значений{ Weapon, // 0 Armor, // 1 Potion // 2 }

Идеален для небольших списков (до 255 значений)
Для флагов: максимум 8 бит
short (2 байта):

public enum MediumEnum : short // от \-32,768 до 32,767 Для средних списков

Для флагов: максимум 16 бит
int (4 байта, по умолчанию):

public enum LargeEnum // от \-2,147,483,648 до 2,147,483,647 Стандартный размер

Идеален для флагов (32 бита)
long (8 байт):

public enum HugeEnum : long

Используйте только при реальной необходимости
Для флагов: максимум 64 бита

🎯 Где размер действительно важен:

Массивы и коллекции:

ItemType[] items = new ItemType[1000]; // byte: 1KB vs int: 4KB

Структуры:

struct Item { public ItemType Type; // byte: 1 байт vs int: 4 байта public int Count; // 4 байта }

Сетевая передача и сохранения:

[Serializable] class NetworkPacket { public PlayerState State; // byte: 1 байт vs int: 4 байта }

🦊 Лисьи советы:

Для простых списков до 255 значений → byte
Если нужно до 8 флагов → byte
Флаги до 32 → int
long только при острой необходимости

Всегда задавайте вопрос:
"Сколько значений мне реально нужно?"

Частая ошибка:

// Плохо \- 4 байта для 4\-х значений public enum WeaponType : int { Sword, Bow, Spear, Axe } // Хорошо \- 1 байтpublic enum WeaponType : byte { Sword, Bow, Spear, Axe }

Довольно потирает лапки
Надеюсь, этот компактный гайд поможет вам оптимизировать использование enum'ов в ваших проектах!

#CSharp #Unity #GameDev #Optimization #Enum #ЛисьиЛайфхаки

4 weeks, 1 day ago

4️⃣ Умное сохранение состояний:

```
C#
public class StateSaver
{
// Сохранение состояния в один int
public int PackState(bool isJumping, bool isRunning, bool isCrouching,
float health, int ammo)
{
int state = 0;

// Флаги в младших битах if (isJumping) state |= 1; if (isRunning) state |= 1 << 1; if (isCrouching) state |= 1 << 2; // Health 0\-100 упаковываем в 7 бит (0\-127) int packedHealth = Mathf.Clamp((int)(health * 1.27f), 0, 127); state |= packedHealth << 3; // Ammo 0\-255 упаковываем в последние 8 бит state |= Mathf.Clamp(ammo, 0, 255) << 10; return state; } // Распаковка состояния public (bool isJumping, bool isRunning, bool isCrouching, float health, int ammo) UnpackState(int state) { return ( isJumping: (state & 1) != 0, isRunning: (state & (1 << 1)) != 0, isCrouching: (state & (1 << 2)) != 0, health: ((state >> 3) & 127) / 1.27f, ammo: (state >> 10) & 255 ); }

}
```

💡 Лайфхаки и советы:

• Используйте константы для часто используемых масок
• Применяйте PopCount для подсчёта битов вместо циклов
• Кешируйте результаты битовых операций, если они используются часто
• Упаковывайте несколько значений в один int для экономии памяти
• Используйте uint вместо enum для больших наборов флагов

Преимущества этих техник:
• Меньше потребление памяти
• Быстрые битовые операции вместо условий
• Удобное сохранение/загрузка состояний
• Чистый и поддерживаемый код

#CSharp #GameDev #Optimization #Enum #BitOperations #ЛисьиУроки

1 month, 1 week ago
NOBICE
1 month, 1 week ago
***🎮*** РАЗДАЧА МУЗЫКАЛЬНОГО ПАКА ДЛЯ UNITY! …

🎮 РАЗДАЧА МУЗЫКАЛЬНОГО ПАКА ДЛЯ UNITY! 🎵

Hybrid Action Music Pack Vol.3 - набор высококачественной музыки для ваших игр (обычная цена $199)!

Что внутри:

Экшн музыка
Гибридные/электронные треки
Саундтреки в стиле sci-fi
Идеально для экшн-игр, триллеров и футуристических проектов
Как получить:

Переходим по ссылке на Unity Asset Store
Добавляем в корзину
Пост на канале: как заполнить данные (адрес и т.д.) чтобы не было tax
Вводим промокод: EPIKTONMUSIC
Забираем бесплатно!
🔥 Совместимость:

Unity 2021.3.4f1 и выше
Работает со всеми render pipeline (Built-in, URP, HDRP)
⚡️ Успейте до 5 декабря!

#gamedev #unity #indiedev #freeassets

1 month, 1 week ago
4 months, 1 week ago

Здаров всем, я живой, меня никуда на границу не забрали, не поломали моих принципов и не сделали ультра патриотом, если кто из новеньких так думал А если кто-то из новеньких даже и не знает, что я админ этого канала, которому осталось отслужить ещё 10 месяцев…

Telegram

NOBICE

Здаров всем, я живой, меня никуда на границу не забрали, не поломали моих принципов и не сделали ультра патриотом, если кто из новеньких так думал А если кто-то из новеньких даже и не знает, что я админ этого канала, которому осталось отслужить ещё 10 месяцев…

We recommend to visit
HAYZON
HAYZON
5,791,257 @hayzonn

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 1 month, 1 week ago

Architec.Ton is a ecosystem on the TON chain with non-custodial wallet, swap, apps catalog and launchpad.

Main app: @architec_ton_bot
Our Chat: @architec_ton
EU Channel: @architecton_eu
Twitter: x.com/architec_ton
Support: @architecton_support

Last updated 1 month ago

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

Last updated 1 month, 3 weeks ago