Разработка игр: автоматическое тестирование OpenGL и DirectX - PullRequest
1 голос
/ 05 января 2012

Я пишу магистерскую диссертацию по автоматическому тестированию переносимости, и мне было интересно, было ли какое-либо программное обеспечение для автоматического тестирования для разработчиков игр, когда они разрабатывали игру с поддержкой как OpenGL, так и DirectX?Теоретически можно записать экран во время автоматического запуска определенной последовательности в игре и проанализировать записи как OpenGL, так и DirectX, но есть ли какой-то технический аспект, который делает это невозможным?

Ответы [ 3 ]

2 голосов
/ 05 января 2012

Самое близкое, что я могу вспомнить, - это тесты в Wine, которые делают что-то в этом роде.

К сожалению, такое тестирование не возможно;тесты слишком сильно зависят от состояния системы, и реализации не гарантируют идентичность пикселям.DirectX действительно предлагает эталонную реализацию, которая может использоваться для многих целей тестирования, но я не знаю эквивалента OpenGL.

Запись экрана вносит еще больше ошибок, в зависимости от того, как он выполняется.Тесты, которые я видел, визуализируют изображение, затем работают с данными текстуры (аналогично записи на экране, но на одном кадре и, возможно, более точны).Тем не менее, все это подвержено небольшому количеству ошибок и может быть медленным.

1 голос
/ 05 января 2012

Из того, что я могу узнать из вашего вопроса, вы пытаетесь сравнить результаты рендеринга OpenGL и DirectX рендеринга, рендеринга одной и той же сцены.

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

Однако полезность такого сравнения спорна, на мой взгляд, так как трудно автоматически определить, является ли ошибка лишь небольшим несоответствием в реализации или фактически видимым артефактом, не говоря уже о оценке важности ошибки в восприятии пользователей. .

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

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

0 голосов
/ 05 января 2012

Я знаю, что при сравнении экранов, где было сделано 15 (?) Лет назад для разных графических чипов, я думаю, вам нужно искать метрики качества изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...