Size: a a a

Чат геймдизайнеров | MeetGDCuffs

2020 September 17

n

norlin in Чат геймдизайнеров | MeetGDCuffs
вообще на GC не стоит полагаться в плане подсчёта объектов или что-то такое. Оно само по-себе работает, чистит когда ему захочется.
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
а при релоаде карты убивается вообще всё, что не привязано к UGameInstance
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Посоныдевчата, а есть кто шарит как зафиксировать, что GC в Unreal отработал и собрал старые UObject?
А то чот я вроде UPROPERTY указываю, но заметил, что у меня при каждом запуске итератор в имени всё больше и больше. Даже после релода карты. Вот понять не могу, течёт или это ок
но думаю нас сейчас за оффтопик попрут, можно продолжить в анриловском чате - @unrealengine4
источник

n

n4nn31355 in Чат геймдизайнеров | MeetGDCuffs
norlin
а при релоаде карты убивается вообще всё, что не привязано к UGameInstance
Возможно важная деталь. Я запускаю в редакторе всё это
Итератор - постфикс имени объекта который я после BeginPlay создаю
источник

n

n4nn31355 in Чат геймдизайнеров | MeetGDCuffs
norlin
но думаю нас сейчас за оффтопик попрут, можно продолжить в анриловском чате - @unrealengine4
Полезный чатик, спасибо)
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Возможно важная деталь. Я запускаю в редакторе всё это
Итератор - постфикс имени объекта который я после BeginPlay создаю
про итератор всё ещё не понял %) причём тут имя объекта...
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Возможно важная деталь. Я запускаю в редакторе всё это
Итератор - постфикс имени объекта который я после BeginPlay создаю
ааа, имеешь в виду, что у тебя циферка в имени объекта апается? это имя ты сам задаёшь или это то, что в движке создаётся? если движковое - то не обращай внимания, на имена не стоит полагаться, они ,как минимум, не консистентны и нестабильны между запусками
источник

n

n4nn31355 in Чат геймдизайнеров | MeetGDCuffs
norlin
ааа, имеешь в виду, что у тебя циферка в имени объекта апается? это имя ты сам задаёшь или это то, что в движке создаётся? если движковое - то не обращай внимания, на имена не стоит полагаться, они ,как минимум, не консистентны и нестабильны между запусками
Да, да, оно. Ну ладно, забью пока... пока не упадёт =D
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Да, да, оно. Ну ладно, забью пока... пока не упадёт =D
вообще, GC собирает объекты либо после Actor->Destroy(), либо если не остаётся ни одной ссылки в других учитываемых объектах
источник

n

n4nn31355 in Чат геймдизайнеров | MeetGDCuffs
Ну теорию я знаю, а как проверить это, учитывая, что к моменту остановки\следующего запуска у меня уже нет поинтера на старый объект в голову не приходит. Деструктор у деривативов UObject переопределить нельзя, так что не знаю как залогировать
источник

A

Andrey in Чат геймдизайнеров | MeetGDCuffs
Уважаемая публика, если не трудно, накидайте, плз, реальных тестовых заданий на позицию ГД... Надо не для приема на работу и не для выхода на работу, а в связи с тем, что появилась оперативная необходимость апнуть этот скилл...
источник

DE

Daniel Erased in Чат геймдизайнеров | MeetGDCuffs
Andrey
Уважаемая публика, если не трудно, накидайте, плз, реальных тестовых заданий на позицию ГД... Надо не для приема на работу и не для выхода на работу, а в связи с тем, что появилась оперативная необходимость апнуть этот скилл...
ГД разными бывают.

ГД-математик
ГД-разработчик
ГД-нарративщик

Смотря что апнуть хочешь
источник

A

Andrey in Чат геймдизайнеров | MeetGDCuffs
Daniel Erased
ГД разными бывают.

ГД-математик
ГД-разработчик
ГД-нарративщик

Смотря что апнуть хочешь
первые два.
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
Andrey
Уважаемая публика, если не трудно, накидайте, плз, реальных тестовых заданий на позицию ГД... Надо не для приема на работу и не для выхода на работу, а в связи с тем, что появилась оперативная необходимость апнуть этот скилл...
посмотри вот это, например https://t.me/meetgdcuffs/115958
источник

A

Andrey in Чат геймдизайнеров | MeetGDCuffs
о! круто, спасибо, а я пропустил=)
источник

DE

Daniel Erased in Чат геймдизайнеров | MeetGDCuffs
Andrey
первые два.
Посмотри в сторону JS тогда и Canvas игр на том же Phaser. Не обязательно именно в геймдев уезжать. Это как инструмент поддержки. Да и JS (как и Lua) может быть полезен, если используется внутри игры как дополнительный язык.

На нем можно накидывать ту же рекламу интерактивную "мы покажем играбельный кусок игры в браузере";  

У match-3 часто такую рекламу можно увидеть, которая действительно играется.
источник

A

Andrey in Чат геймдизайнеров | MeetGDCuffs
Daniel Erased
Посмотри в сторону JS тогда и Canvas игр на том же Phaser. Не обязательно именно в геймдев уезжать. Это как инструмент поддержки. Да и JS (как и Lua) может быть полезен, если используется внутри игры как дополнительный язык.

На нем можно накидывать ту же рекламу интерактивную "мы покажем играбельный кусок игры в браузере";  

У match-3 часто такую рекламу можно увидеть, которая действительно играется.
Спасибо, за рекомендацию, но я не программист.
Наверное, вышла ошибка при определении понятий.
ГД-математик, в моем понимание — это человек, который работает с балансом (сводит дебит с кредитом).
ГД-разработчик — это тот кто:
1. может составить инструкцию (схема, тз по пунктам);
2. понять какие параметры запихнуть в админку, чтобы потом не лазить программисту в код.
В общем тот человек, который с программистом говорит на примерно одном языке.
источник

n

n4nn31355 in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Ну теорию я знаю, а как проверить это, учитывая, что к моменту остановки\следующего запуска у меня уже нет поинтера на старый объект в голову не приходит. Деструктор у деривативов UObject переопределить нельзя, так что не знаю как залогировать
Таки нашёл чо хотел:

  virtual void BeginDestroy() override
 {
   UE_LOG(LogTemp, Error, TEXT("Destroing: %s"), *GetName());
   Super::BeginDestroy();
 };
источник

n

norlin in Чат геймдизайнеров | MeetGDCuffs
n4nn31355
Таки нашёл чо хотел:

  virtual void BeginDestroy() override
 {
   UE_LOG(LogTemp, Error, TEXT("Destroing: %s"), *GetName());
   Super::BeginDestroy();
 };
а зачем оно? чисто проверить работает ли GC? %)
источник
2020 September 18

IO

Ivan Ozerov in Чат геймдизайнеров | MeetGDCuffs
Хэй, а может быть у кого-то есть статейка по проектированию игр с множественными концовками?)
источник