Запитання з тегом «resource-management»

4
Як ігри C ++ поводяться з помилкою розподілу пам'яті?
Мені відомо кілька ігор, які написані на C ++, але не використовують винятки. Оскільки поводження з помилкою розподілу пам'яті в C ++, як правило, будується навколо std::bad_allocвинятку, як ці ігри впораються з таким збоєм? Вони просто виходять з ладу, або є інший спосіб впоратися з помилкою, що не залишилася в …

1
Як я повинен структурувати систему завантаження розширюваних активів?
Для двигуна ігрових ігор на Яві я хочу кодувати простий, але гнучкий менеджер ресурсів / ресурсів. Активи - це звуки, зображення, анімація, моделі, текстури та інше. Після кількох годин перегляду та деяких експериментів з кодом я все ще не впевнений, як створити цю річ. Зокрема, я шукаю, як я можу …

2
Якщо класи "ResourceManager" вважаються поганими, які існують альтернативи?
Я чую суперечливі думки, такі як: "Виділені класи менеджера майже ніколи не є правильним інженерним інструментом" "Виділені класи менеджера - це (зараз) найкращий спосіб вижити великий проект із тисячами ресурсів" Візьмемо класичний клас ResourceManager, який має такі функціональні можливості: Завантажує об’єкти (текстури, звук, тривимірні моделі тощо) Забезпечує завантаження активів лише …

1
Дизайн ігрового двигуна - Ubershader - Дизайн управління шейдером [закрито]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередило увагу на одній проблемі, лише відредагувавши цю публікацію . Закрито 2 роки тому . Я хочу впровадити гнучку систему Ubershader з відкладеним затіненням. Моя теперішня ідея - створити …

1
Проектування класу ResourceManager
Я вирішив, що хочу написати центральний клас ResourceManager / ResourceCache для мого ігрового двигуна, але у мене виникають проблеми при розробці схеми кешування. Ідея полягає в тому, що ResourceManager має м'яку ціль для загальної пам'яті, яка використовується всіма ресурсами гри разом. Інші класи створять ресурсні об’єкти, які будуть у не …

2
Як мені поводитися з відсутніми ресурсами?
Ваша гра очікує завантаження певного активу, але він не знайдений. Як слід вирішувати ситуацію? Наприклад: Texture* grassTexture = LoadTexture("Grass.png"); // returns NULL; texture not found Mesh* car = LoadMesh("Car.obj"); // returns NULL; 3D mesh not found Користувач може бути випадково видалений, зіпсований або неправильно написаний під час розробки. Деякі можливі …

3
Чому для активів потрібне спеціальне управління пам’яттю?
Практично всі ресурси, що стосуються програмування ігор, особливо 3D-ігри з відкритим світом, говорять про те, як вам доведеться постійно вивантажувати та перезавантажувати активи на диск і з нього, системну пам'ять та відеопам'ять. Я можу це зрозуміти на консолях, оскільки вони мають дуже прості схеми управління пам'яттю, які не можуть вирішити …

5
Як створити новий GameObject, не додаючи його на сцену?
Я створюю те, що по суті є моєю власною збірною системою. Ігрові об’єкти визначаються за допомогою файлу даних, читаних людиною. Я хотів би створити порожній GameObject, завантажити його з компонентами, визначеними у файлі даних, і мати його готовим і чекати Instantiate()дзвінка. Однак щоразу, коли я використовую GameObject go = new …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.