Як визначити мінімальні вимоги до апаратного / програмного забезпечення для моїх ігор?


72

Зі мною в розрізі один, у мене є лише обмежені ресурси, тобто один ПК, з яким я розробляю і тестую гру. тому я знаю лише напевно, що моя гра працює з цією установкою.

Які варіанти я маю для тестування гри на багатьох різних комбінаціях апаратно-операційної системи? Це настільна гра Windows.


3
Це завжди було для мене великим розпливчастим явищем, тому я подумав, що дещо більше дискусій про це може бути добре.
Jari Komppa

Дивовижне питання! Мені це цікаво
Dream Lane

Відповіді:


29

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


1
Саме так. Просто випробуйте на широкому асортименті нижчих верстатів.
Девід МакГрау

1
Гаразд ... ти маєш рацію, але це те, що можна придумати пророчно кожному. Я дійсно не розумію, чому саме ця відповідь має занадто багато балів. Без образи, це абсолютно правильно.
Нотабене

24

Один з моїх улюблених способів знайти цю інформацію - це використання віртуальних машин.

Бачачи, як можна налаштувати апаратне забезпечення та пам'ять, що VM дозволено, ви можете протестувати широкий спектр налаштувань на своєму ПК. Це також дозволяє протестувати в декількох операційних системах.


7
Мінуси тестування на VM полягають у тому, що ви по суті завжди працюєте з однаковою тактовою частотою, а підтримка 3D все ще досить неприємна. Вони допоможуть прикрити ваші бази, переконавшись, що ваша гра працює на 32/64-розрядному і гаммі вибору Windows.
Помилка 454

Я згоден, хоча VM охоплює багато баз, у нього є обмеження. Судячи з безлічі відповідей, проте, я думаю, що запитувач буде просто чудовий ^ _ ^
Г. Девідс

1
@Error 454 Не з ESXi, як описано у моїй відповіді. Ви можете фактично контролювати кількість процесора та ресурсів пам’яті, якими ви хочете мати ОС
Ray Dey

@Ray Dey Вибачте, неправда, ESXi дає вам віртуальну SVGA, немає прямого доступу до вашої відеокарти: kb.vmware.com/kb/1011942
Помилка 454,

@Error 454 Я не був впевнений у можливостях відео, тому не коментував це. Я мав би зробити це зрозумілішим. Але дякую за те, що я очистив це :)
Рей Дей

16

Ви повинні мати деяке грубе уявлення про minspec лише розробляючи свою гру - наприклад, якщо ви вирішили вирішити чітко використовувати D3D10 +, ви, очевидно, виключаєте машини XP. Так що це місце для початку.

Знайдіть спосіб протестувати на якомога більшій кількості машин, в ідеалі, застосувавши якийсь спосіб автоматичного збору показників продуктивності (оскільки користувачі можуть бути недостовірними), а також непізнавальну інформацію про машину, на якій працює гра (процесор (и), кількість ядер, тип графічного процесора, оперативна пам’ять, ОС та ін. - погляньте на тип даних, які збирає обстеження апарату та програмного забезпечення Steam ). Один з найкращих способів зробити це - подарувати свою гру друзям та рідним, як це вже було запропоновано багато разів. Іншим способом може бути звернення до спільноти розробників ігор для хобі і подивитися, чи зацікавлені вони в тестуванні вашої гри. Я не впевнений, що таке стане відповідним питанням тут, на GDSE, але ви, ймовірно, можете знайти декількох людей у ​​зоні "чату", а також можете оглянути / опублікувати на таких веб-сайтах, як:

На всіх цих веб-сайтах є форуми чи підфоруми, присвячені якихось іграм, і тому, можливо, ви зможете отримати досить хороший відгук від них. Я б обов'язково розкрив наперед будь-яку статистику, яку збирає ваша гра та / або надсилає вам, і чому ви їх збираєте. Люди можуть це дратувати, якщо вони виявлять це після факту.

Зверніть увагу, що опитування Steam також є корисним інструментом для вимірювання того, яким має бути minspec - воно може допомогти вам зрозуміти, яке співвідношення витрат і вигод для підтримки певної функції або класу обладнання може бути для вас.


13

Перевірте:
- Скільки оперативної пам’яті вона використовує
- Скільки текстури + пам’яті GPGPU вона використовує
- Мінімальна частота кадрів / Поточна частота кадрів * Швидкість процесора * SpeedUpFactorOf (мінімальна кількість ядер, яку ви можете використовувати)
- Аналогічне рівняння для одиниць обчислення GPU
- який рівень opengl / directx / cuda, який вимагає ваш ігровий движок від графічного адаптера
- скільки дискового простору займає інсталяція + інформація про користувача ...

Тестуйте також різні апаратні конфігурації.


2
Для більшості програмного забезпечення ця залежність між кількістю ядер і частотою кадрів не є лінійною.
Ponkadoodle

2
Цей взаємозв'язок також означає, що гра обмежена процесором, що не так часто.
Кромстер

Я мав на увазі, що як загальний напрямок - кожен програміст повинен перевірити, якими технологіями він / вона користується і від яких ресурсів вони залежать. Я трохи змінив свою відповідь.
Danny Varod

8

В основному ви хочете протестувати на багатьох інших машинах, наскільки це можливо - від жорсткої ігрової установки вашого друга до машини для електронної пошти та Інтернету вашого грана. Особливо машина для електронної пошти та Інтернету вашого бабуся, оскільки вона, ймовірно, завантажена прошивкою та іншими речами, які заважатимуть і сповільнить вашу гру до сканування.

Тестування на сумісність з ПК - це велика неприємна форма глистів, і є причина, чому професійне тестування коштує дорого. Таким чином, ви хочете, щоб перевірити стільки різних незвичайних сценаріїв.

Бета-тестування - це я думаю, як з друзями та родиною, так і з ширшим колом у вашій фан-спільноті. Ключова річ - не покладатися на анекдотичні повідомлення. Ваші друзі можуть покластись на те, що вони дійсно відповідатимуть, але ширша спільнота не стане, якщо ви не полегшите їх.

Побудуйте вхід у свою програму, щоб надати ваші факти про FPS, час запуску тощо. Надайте користувачеві легкий опитувальник, ідеально вбудований у гру, де він зможе повідомити про те, чи добре вони хотіли. І щоб ця статистика та ведення журналу були легко доступними для передачі / передачі вам, щоб ви могли пізніше переглянути їх. Чим більше статистики ви отримаєте назад, тим краще відчуватимете, чи є ваш титул а) взагалі робота над іншими системами та б) хороша робота над іншими системами.


6

Тестуйте на якомога більше ПК (це також допоможе вам зловити всі конкретні помилки). Як розробник, ви повинні знати свої основні вузькі місця - зосередьтесь на їх наголосі. Ви можете запитати своїх друзів, колег по роботі, подругу, батьків, безліч людей на форумах.

PS Просто для довідки:

  • Вимога CPU = запустити гру з мінімальною роздільною здатністю або взагалі без GPU-рендерінгу (сподіваюся, що код візуалізації використовує мінімум CPU)
  • Вимога GPU = запустити гру на потужному процесорі з роздільною здатністю за замовчуванням і побачити, який графічний процесор достатній для виконання завдання, також згадайте мінімальну версію Direct3D / OpenGL
  • Вимога оперативної пам’яті = скільки оперативної пам’яті займає гра (наприклад, через TaskManager, стовпець розміром VM, щоб побачити всю виділену оперативну пам’ять, не тільки активну)
  • Звук = майже все підходить, просто згадайте про підтримку 2 / 5.1 каналів
  • Дисплей = вкажіть мінімальну роздільну здатність відтворення, куди підходять ігрові елементи управління
  • Мережа = кілька масових тестів на навантаження та дізнайтеся, яка пропускна здатність дозволяє це (модем 56k, DSL, T1, LAN)
  • Клавіатура / миша / планшет / джойстик тощо.

2
Отримавши ці цифри, ви, безумовно, захочете їх трохи збільшити, на випадок, якщо ваша гра працює з низьким обсягом використання пам'яті.
Качка комуніста

2

Для вимог я б припустив мінімальні речі, необхідні для запуску вашої гри. Це залежатиме від того, які технології ви використовуєте для розвитку своїх ігор.

Наприклад, якщо ви використовуєте конкретні API, такі як D3D9 або OpenGL 3.0, вам потрібно буде вказати це, оскільки деякі API не сумісні зі зниженням.

Якщо ви будуєте з Windows з .net Framework, вам також потрібно буде вказати це.

Для вимог до продуктивності спроба на різних машинах є найкращим способом, хоча ви можете виміряти відповідні показники за допомогою розрахунку.

наприклад, якщо ваша поточна відеокарта працює з частотою 60 кадрів в секунду, а інший комп'ютер із подібною конфігурацією, за винятком половини вашої швидкості, повинен працювати приблизно на половині швидкості роботи вашої машини. Знову ж таки, це лише оцінка, багато інших властивостей вплинуть на продуктивність по-різному, але ви можете використовувати цю базову інформацію для тестування своєї гри на цільових пристроях.

Сподіваюся, що це допомагає, і будь-хто бажає виправити мене з будь-яких причин.


1

Залежно від вашого цільового ринку (я припускаю, що це не найсучасніший 3D, тобто потрібні дорогі відеокарти), я б роздивився, як підбирати підбірку старих відеокарт звідкись, як EBay, щоб ви могли протестувати як на NVidia, так і на ATi картки.


1

Це завжди ідеально отримати зворотній зв'язок спільноти, як згадувалося. Але де взяти громаду та людей, які спробують її перевірити? Опублікувати його на деяких форумах для інді-ігор допоможе, але проблемою буде отримання фактичного відгуку.

Лише кілька відсотків людей, які перевірять цю гру, напишуть вам їх точну конфігурацію та проблеми, які виникли. Люди просто цього не роблять. Набагато кращий спосіб - це включити якийсь тест із налаштуваннями системи читання користувачів. Попросіть користувача запустити якийсь орієнтир однієї кнопки. Запропонуйте кілька номерів і разів (так людям подобається :-)) і дозвольте йому порівнювати з іншими користувачами (з надсиланням даних) ... Це допоможе.

І тоді у вас є база даних, повна конфігурацій, роздільної здатності екрана, часів візуалізації та несправних функцій ...

Якщо ви перебуваєте у вікні, що викликає DXdiag, допоможе вам прочитати конфігурацію користувачів. Але є деякі програми, якими можна користуватися в інших системах.


1

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

Я також хотів би запропонувати використовувати ESXi. Це рішення віртуальної машини від VMWare. Не відкладайте, тому що це рішення VM. ESX набагато нижчий рівень.

Це, мабуть, було б ідеально для вас, оскільки у вас є одна машина. Ви можете протестувати різні операційні системи, налаштування обладнання (впорядкувати графічне обладнання, ESXi буде використовувати все, що встановлено на вашій машині).

В основному це власна дуже зменшена операційна система, на яку можна встановити інші операційні системи. Ми використовуємо його на роботі для сумісності серед багатьох ОС. Це дуже швидко і надійно, майже так само чуйно, як і машина для ванілі.

Я знаю, що ви шукаєте апаратні вимоги - це те, що ви шукаєте, і ESXi має дуже приємну функцію, де ви можете обмежити кількість оперативної пам’яті, процесора або дискового простору операційною системою і потенційно може наслідувати, як ваша гра працюватиме на чомусь від низького рівня кінцевий процесор або мало пам’яті, до топ-процесора або використання пам’яті (обмежено фактичним обладнанням).

Тож якщо у вас був досить високий специфікаційний ПК, ви могли б встановити на нього ESXi, встановити будь-які операційні системи, які ви хотіли, і пограти з використанням процесора та пам’яті (я вважаю, ви можете навіть змінити кількість ядер, якими користується ОС!)

Ось посилання на нього: http://www.vmware.com/products/vsphere-hypervisor/index.html

Найкраще про це? Це на 100% безкоштовно!


0

Запуск якогось інструменту профілювання був би одним із способів. Для програм Java ви можете використовувати VisualVM ( https://visualvm.github.io/ ). У Вікіпедії перелічені деякі інші. Дивіться: https://en.wikipedia.org/wiki/List_of_performance_analysis_tools . Те саме стосується налагодження пам’яті. Дивіться: https://en.wikipedia.org/wiki/Memory_debugger

В основному це означає перевірку пам’яті та використання процесора на певному регулярному інтервалі під час запуску програми / гри. Тоді ви обчислюєте деякий середній діапазон, і саме це потребує більшої частини часу. В ідеалі це буде автоматизовано (для послідовності та точності), і ви хочете виключити кількість тих ресурсів, які споживаються, використовуються або використовуються іншими процесами. Там може бути кілька пріоритетних питань , що приховують те , що ваша програма може використовувати більше пам'яті , якщо вона була доступна. Тобто, якщо ОС була надто зайнята, ваша програма могла б створити трішки від недостатньо достатньої кількості пам'яті.

Зрештою, ви повинні протестувати / орієнтир / профіль, а потім проаналізувати ці тести. Добре мати попередньо визначений показник ефективності для порівняння. Наприклад, у FPS, можливо, ви хочете 30+ FPS для ігрових / приємних ігор. Виходячи з цього, ви б встановили мінімальну смугу в / вище технічних характеристик, необхідних для задоволення цього 30+ FPS деякий відсоток часу (користувач завжди може запустити занадто багато часу і спричинити збої та зависання).

Як говорили інші, вам справді потрібні інші люди, щоб протестувати це на різних апаратних засобах. В ідеальному світі у вас є група груп із подібним обладнанням у групі та проводити якесь тестування контролю та експерименту, щоб побачити, чи більше / менше пам’яті, процесора, gpu має значення, коли інші фактори залишаються постійними.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.