Conmigo yendo solo en el desarrollo, solo tengo recursos limitados a mi disposición, es decir, una PC con la que desarrollo y pruebo el juego. así que solo sé con certeza que mi juego funciona con esa configuración.
¿Qué opciones tengo para probar el juego en las diferentes combinaciones de hardware / sistema operativo? Es un juego de escritorio de Windows.
hardware
requirements
testing
Hoja Crippeo
fuente
fuente
Respuestas:
De lo mejor de mi cabeza, sugeriría intentar ejecutar el juego en algunas otras PC de amigos o familiares. Después de eso, es posible que desee considerar alguna forma de prueba beta, es decir, publicar una demostración o algo para que pueda obtener comentarios de la comunidad.
fuente
Una de mis formas favoritas de encontrar esta información es mediante el uso de máquinas virtuales.
Al ver cómo puede configurar el hardware y la memoria que permite la VM, puede probar una amplia gama de configuraciones en su propia PC. Esto también le permite realizar pruebas en múltiples sistemas operativos.
fuente
Deberías tener una idea aproximada de la especificación de minas solo desarrollando tu juego; por ejemplo, si hiciste una elección explícita de usar D3D10 +, obviamente estás eliminando las máquinas XP. Entonces ese es un lugar para comenzar.
Encuentre una manera de probar en tantas máquinas como sea posible, idealmente después de implementar alguna forma de recopilar métricas de rendimiento automáticamente (ya que los usuarios pueden ser poco confiables), así como información no identificable sobre la máquina en la que se está ejecutando el juego (procesador (es), recuento de núcleos, tipo de GPU, RAM, sistema operativo, etc., eche un vistazo al tipo de datos que recopila Steam Hardware & Software Survey ). Una de las mejores maneras de hacer esto es dar tu juego a amigos y familiares, como ya se ha sugerido muchas veces. Otra forma podría ser acercarse a una comunidad de desarrolladores de juegos de hobby y ver si están interesados en probar tu juego. No estoy seguro de que tal cosa sea una pregunta apropiada aquí en GDSE, pero probablemente podría encontrar algunas personas en el área de 'chat' y también podría buscar / publicar en sitios web como:
Todos esos sitios web tienen foros o sub-foros dedicados de alguna manera a mostrar juegos, por lo que es posible que pueda obtener una respuesta razonablemente buena de ellos. Sin embargo, me aseguraría de revelar por adelantado las estadísticas que su juego recopila y / o envía, y por qué las está recopilando. Eso puede molestar a las personas si lo descubren después del hecho.
Tenga en cuenta que la encuesta de Steam también es una herramienta útil en sí misma para medir lo que debería ser una especificación por minuto: puede ayudarlo a ver cuál es la relación costo / beneficio de admitir una característica particular o una clase de hardware para usted.
fuente
Compruebe:
- Cuánta RAM usa
- Cuánta textura + memoria GPGPU usa
- Velocidad de fotogramas mínima / Velocidad de fotogramas actual * Velocidad de CPU * SpeedUpFactorOf (número mínimo de núcleos que puede usar)
- Ecuación similar para unidades de cálculo de GPU
- qué nivel de opengl / directx / cuda que su motor de juego requiere del adaptador de gráficos
: cuánto espacio en disco ocupa la instalación + información del usuario ...
También pruebe en varias configuraciones de hardware.
fuente
Básicamente, desea probar en tantas otras máquinas como pueda, desde la plataforma de juegos de núcleo duro de su amigo hasta la máquina de correo electrónico e Internet de su abuela. Especialmente la máquina de correo electrónico e Internet de tu abuela, porque probablemente esté cargada de software y otras cosas que interferirán y ralentizarán tu juego.
Las pruebas de compatibilidad con PC son una gran lata desagradable de gusanos, y hay una razón por la cual las pruebas profesionales son caras. Por lo tanto, desea probar tantos escenarios extraños diferentes como sea posible.
La prueba beta es el camino a seguir, creo, tanto con amigos y familiares como con un círculo más amplio en su comunidad de fanáticos. Lo clave: no confíe en informes anecdóticos. Se puede confiar en que sus amigos realmente responderán, pero la comunidad en general no lo hará, a menos que se lo facilite.
Cree el inicio de sesión en su aplicación para brindarle datos concretos sobre FPS, tiempo de inicio, etc. Entregue al usuario un cuestionario fácil, idealmente integrado en el juego, donde puede informar si lo jugó bien o no. Y tenga esas estadísticas y registros fácilmente enviables por correo electrónico / transmisibles, para que pueda estudiarlos más tarde. Cuantas más estadísticas obtenga, mejor será la idea de si su título es a) trabajando en absoluto en otros sistemas yb) funcionando bien en otros sistemas.
fuente
Pruebe en la mayor cantidad de PC que pueda (eso también lo ayudará a detectar todos los errores específicos). Como desarrollador, debe conocer sus principales cuellos de botella: concéntrese en estresarlos. Puede preguntar a sus amigos, colegas en el trabajo, novia, padres, mucha gente en los foros.
PD Solo para referencia:
fuente
Para los requisitos, asumiría las cosas mínimas necesarias para ejecutar su juego. Dependerá de las tecnologías que utilice para desarrollar sus juegos.
Por ejemplo, si usa API específicas, como D3D9 u OpenGL 3.0, necesitará especificar eso, porque ciertas API no son compatibles con versiones anteriores.
Si compila con Windows con .NET Framework, también necesitará especificar eso también.
Para los requisitos de rendimiento, probar diferentes máquinas es la mejor opción, aunque es posible que pueda medir el rendimiento relacionado mediante el cálculo.
por ejemplo, si su tarjeta de video actual funciona a 60 fps, y otra computadora con la configuración similar, excepto la tarjeta de video es la mitad de la suya, debería correr aproximadamente la mitad de la velocidad de su máquina. Nuevamente, esto es solo una estimación, muchas otras propiedades afectarán el rendimiento de manera diferente, pero puedes usar esa información básica para probar tu juego en dispositivos específicos.
Espero que ayude, y cualquiera puede corregirme por cualquier motivo.
fuente
Dependiendo de su mercado objetivo (supongo que no es de vanguardia en 3D, es decir, se necesitan tarjetas gráficas caras), consideraría elegir una selección de tarjetas gráficas más antiguas de algún lugar como EBay para que pueda probar en NVidia y ATi tarjetas
fuente
Siempre es perfecto recibir comentarios de la comunidad como se mencionó. Pero, ¿dónde conseguir la comunidad y las personas que intentarán probarlo? Publicarlo en algunos foros de juegos independientes ayudará, pero el problema será obtener comentarios reales.
Solo un pequeño porcentaje de personas que probarán un juego te escribirán su configuración exacta y los problemas que ocurrieron. La gente simplemente no hace eso. Una forma mucho mejor es habilitar algún tipo de punto de referencia con la lectura de la configuración del sistema de los usuarios. Solicite al usuario que ejecute un punto de referencia de un botón. Ofrezca algunos números y horarios (sí, a la gente le gusta :-)) y permita que se compare con otros usuarios (con el envío de datos) ... Será de gran ayuda.
Y luego tiene una base de datos llena de configuraciones, resolución de pantalla, tiempos de renderizado y características fallidas ...
Si está en Windows, llamar a DXdiag lo ayudará a leer la configuración de los usuarios. Pero hay algunos programas que puede usar en otros sistemas.
fuente
Como lo mencionaron otros, la mejor manera es obtener una versión beta y recopilar comentarios de la comunidad para obtener resultados confiables.
También me gustaría sugerir el uso de ESXi. Es una solución de máquina virtual de VMWare. No se desanime porque es una solución de VM. ESX es mucho más bajo nivel.
Esto probablemente sería ideal para usted ya que tiene una máquina. Puede probar diferentes sistemas operativos, configuraciones de hardware (excluyendo el hardware de gráficos, ESXi usaría lo que haya instalado en su máquina).
Básicamente, es su propio sistema operativo muy reducido que puede instalar otros sistemas operativos. Lo usamos en el trabajo por compatibilidad entre una gran cantidad de sistemas operativos. Es muy rápido y confiable, casi tan sensible como una máquina de vainilla.
Sé que los requisitos de hardware son lo que está buscando y ESXi tiene una característica muy agradable en la que puede limitar la cantidad de RAM, CPU o uso del espacio en el disco por parte del sistema operativo y podría emular cómo su juego se ejecutaría desde un nivel bajo CPU final o poca memoria, para CPU de uso superior o uso de memoria (limitado por su hardware real).
Entonces, si tuvieras una PC con altas especificaciones, podrías instalar ESXi en ella, instalar los sistemas operativos que quisieras y jugar con la CPU y el uso de la memoria (¡creo que incluso puedes modificar la cantidad de núcleos que usa el sistema operativo también!)
Aquí hay un enlace: http://www.vmware.com/products/vsphere-hypervisor/index.html
Lo mejor de esto? ¡Es 100% gratis!
fuente
Ejecutar algún tipo de herramienta de creación de perfiles sería una forma. Para los programas Java, puede usar VisualVM ( https://visualvm.github.io/ ). Wikipedia enumera algunos otros. Ver: https://en.wikipedia.org/wiki/List_of_performance_analysis_tools . Lo mismo ocurre con la memoria de depuración. Ver: https://en.wikipedia.org/wiki/Memory_debugger
Básicamente, esto equivale a verificar el uso de la memoria y la CPU en un intervalo regular mientras ejecuta el programa / juega el juego. Luego calcula un rango promedio y eso es lo que necesita la mayor parte del tiempo. Idealmente, esto estaría automatizado (por coherencia y precisión) y querría excluir las cantidades de esos recursos consumidos, compartidos o utilizados por otros procesos. No podría haber algunos problemas prioritarios que ocultan el hecho de que su programa podría usar más memoria si estuviera disponible. Es decir, si el sistema operativo estaba súper ocupado, su programa podría fallar un poco por no tener suficiente memoria.
En última instancia, debe probar / benchmark / profile y luego analizar esas pruebas. Es bueno tener una métrica de rendimiento predefinida para comparar. Por ejemplo, en un FPS, es posible que desee más de 30 FPS para juegos jugables / agradables. En base a eso, establecería la barra mínima en / por encima de las especificaciones de hardware necesarias para cumplir con más de 30 FPS en algún porcentaje del tiempo (siempre es posible que el usuario ejecute demasiado de una vez y cause bloqueos y bloqueos).
Como han dicho otros, realmente necesita que otras personas lo prueben en una variedad de hardware diferente. En un mundo ideal, tendría un grupo de grupos con hardware similar dentro de un grupo y realizaría algún tipo de control frente a pruebas experimentales para ver si más / menos memoria, cpu, gpu importaban cuando los otros factores se mantenían constantes.
fuente