¿Cómo puedo grabar mi juego de gráficos vectoriales sin difuminar los gráficos?

15

Mucha gente pidió un avance para mi juego, porque las capturas de pantalla no le hacen justicia. He probado PlayClaw, Fraps, CamStudio, VirtualDub y algunas otras herramientas menores; ninguno ha producido un resultado viable. Mi juego utiliza gráficos vectoriales y está diseñado para ejecutarse a 60 fps, por lo que la compresión con pérdida de un video de captura de pantalla normal destruye el atractivo gráfico.

¿Cómo puedo grabar el juego sin difuminar mis gráficos y reducir la velocidad de fotogramas?

Speeder
fuente
2
Frapps es demasiado lento para ti? asegúrese de haberlo configurado para grabar a 60 fps, no a los 30 fps predeterminados.
David Young
¿Podrías hacer tu pregunta un poco más amplia? Creo que sería interesante saber no en línea sobre la grabación del juego en sí para un tráiler simple, sino también para producir videos que se mostrarán en el juego, las llamadas escenas de corte o incluso trailers con más efectos visuales como cambiar partes del video, etc. ... sugiriéndola a su pregunta ya que hay alguna pregunta similar en torno a i Belive ...
Prix
1
Premio que sería muy diferente ... ¡Hacer escenas de corte es otro campo de trabajo!
Speeder
3
Creo que realmente deberías reconsiderar los fraps. De todas las soluciones que he visto, tiene la mejor calidad y no hay logotipo para una pequeña inversión. (No dijiste gratis, en tu pregunta)
Jesse Dorsey
3
Estoy de pie con mi respuesta anterior. Si se puede reproducir de entrada y la fuerza (o volver a reproducirlo) el paso de tiempo, puede grabar marcos primas y hacer con ellos lo que quieras sin ninguna pérdida de calidad.
Kaj

Respuestas:

22

Haga que la velocidad de fotogramas de su juego sea independiente, para que pueda configurarla para jugar con un paso de tiempo fijo. Juega tu juego, graba la entrada. Reproduzca con paso de tiempo fijo, entrada grabada y escriba cada fotograma en un archivo, ya que reproduce con paso de tiempo fijo, no importa cuánto tiempo tome escribir un fotograma. De esa manera, el material de archivo de origen no está comprimido y puede decidir la calidad más adelante sin tener que sacrificar la velocidad o tener problemas técnicos debido a un programa de captura. Después de eso, entran en juego cosas como After Effects, al menos tendrás material de origen nítido.

Editado para agregar: sí, lo sé, lo que hace que la velocidad de fotogramas sea independiente para reproducir en un paso fijo es una tontería. Duh Bueno, si se trata de fraps independientes de framerate, también podría ser un problema menor; o) ¡Los juegos deberían ser framerate independientes de todos modos!

Kaj
fuente
55
La independencia de la velocidad de fotogramas y la reproducción determinista también son útiles para las pruebas. Noel Llopis tiene un buen artículo aquí: gamesfromwithin.com/back-to-the-future-part-1 (también hay una segunda parte vinculada).
celion
Entonces ... ¿su idea es recodificar todo el motor (que no hice por cierto) para que sea compatible con alguna forma de grabar la entrada y reproducir esa entrada mencionada perfectamente? Lo siento, pero esto no funciona, especialmente porque, aunque el juego es determinista (los únicos aleatorios son los efectos visuales), el motor de física puede fluctuar y no funcionaría correctamente ... Estoy preguntando sobre cosas de marketing, no de programación. .
Speeder
Si el motor de física puede fluctuar, no es determinista. La grabación de entrada (en la mayoría de los motores) se conecta en un solo lugar, apenas es 'recodificar todo el motor' ... de todos modos, te escucho. <b> La codificación de video es una operación bastante costosa, sin pérdidas, pero una buena compresión es más costosa . Sin embargo, si el problema es el acceso al disco duro, podría considerar configurar un disco RAM si tiene memoria de sobra. En cuanto a su comentario sobre marketing, lo siento, pensé que estaba buscando una solución, esto también lo prepararía para el futuro (¿y si necesita alta resolución?). Si está fuera de alcance, entonces ... intente ram-disk.
Kaj
¿Por qué "hacer que la velocidad de fotogramas sea independiente para reproducir en un intervalo de tiempo fijo es tonto"? Para que la salida de velocidad de fotogramas fija contenga la secuencia que grabó, debe ser independiente de la velocidad de fotogramas al grabar.
falstro
No necesariamente. Si el cuadro se ejecuta a una velocidad de cuadro fija garantizada (relativamente improbable, pero si), puede volver a reproducir la alimentación de las teclas tal como entraron y asumiendo el mismo paso de tiempo. Además, sonaba tonto: op
Kaj
8

Este artículo sobre Pixel Prospector puede ser lo que necesita:

Cómo grabar y editar videos de juegos

El juego utilizado en el video es NeonPlat 2, que también utiliza gráficos vectoriales.

El artículo cubre todo, desde la captura hasta la edición.

Loris
fuente
Ok, estoy otorgando la recompensa por esta, esa es la que realmente fue MUY correcta ... De todos modos, gracias a Kaj por mencionar las unidades de memoria RAM (resolvió el problema de la lentitud del disco), pero no puedo otorgarle ... la mitad -recompensas a cada respuesta.
Speeder
No hay problema. ¡Espero que hayas conseguido algo agarrado correctamente!
Kaj
2
La página archivada está aquí . Actualizaron la página parece una gran lista de software de grabación de pantalla
bobobobo
4

Para grabar el video de tu juego, puedes probar CamStudio , que es gratis. Sin embargo, creo que no funciona con juegos en modo de pantalla completa, por lo que querrás ejecutar tu juego en una ventana.

En cuanto a hacer el avance real, querrás un software de edición de video. Hay varias opciones comerciales costosas, pero si está buscando algo gratis, su elección es más limitada. Puedes probar Windows Movie Maker o iMovie si tienes una Mac, pero el mejor editor de video gratuito que he encontrado es Blender , más conocido como herramienta de animación y modelado 3D. La interfaz de usuario no es intuitiva, pero si dedicas algo de tiempo a aprenderla, también tendrás una herramienta de edición de video bastante buena.

Pekuja
fuente
3

Mi mejor experiencia es con Fraps pero utilicé la versión completa (parecía un pequeño premio único para pagar una gran utilidad) que no tiene límites ni logotipo. Puede establecer la velocidad de fotogramas de antemano, como David Young sugirió en su comentario. Al igual que muchas herramientas de captura de video, Fraps utiliza una compresión de bajo costo durante la grabación, que luego se puede convertir a un formato de compresión más alto de su elección. Para esto, generalmente uso VirtualDub.

No tuve problemas para ejecutar Fraps detrás de mi juego a toda velocidad (50 fps en mi caso) obteniendo capturas de alta calidad.

La cuestión clave aquí es que la captura requiere algo de rendimiento, y siempre debe intentar hacerlo en la mejor computadora disponible. Más específicamente, la herramienta de captura realiza grabaciones de disco sustanciales y continuas, por lo que elegir almacenar el archivo en un disco duro rápido es clave. Las computadoras portátiles a menudo vienen con discos duros de acceso más lento, por lo que esto puede afectar mucho el rendimiento. El uso de un tamaño de fotograma más pequeño durante la captura le da al disco duro un tiempo más fácil y puede mantener su velocidad de fotogramas alta. Fraps le permite establecer marcos de medio tamaño.

En el caso de Fraps, la calidad de la película final se ve muy afectada por la compresión que utiliza al convertir la captura AVI codificada con FPS1 a un formato distribuible. Si no considera la pérdida aquí, por supuesto, no importa qué tan bien funcione la herramienta de captura.

En serio, no creo que los programas que mencionas sean en general tan malos, pero necesito algo de configuración antes de que funcionen de manera óptima junto con tu juego específico.


Guardar cada fotograma individual en PNG probablemente no sea una buena idea si ya tiene problemas con la velocidad. Probablemente consumiría más tiempo de CPU y disco porque necesitaría que cada cuadro se almacenara con toda su información. Al codificar y almacenar una película, muchos codificadores usan una serie de fotogramas clave que están completos y permiten que los fotogramas sucesivos después de ellos se definan como la diferencia entre un fotograma y el siguiente. Esto puede ser una gran reducción de tamaño, pero no le permite sacar un cuadro y leerlo sin el cuadro clave.

No solo el tamaño de cada marco será mayor si intenta volcarlos en archivos separados, sino que también obtendrá una sobrecarga del acceso al archivo. Esto se debe a que debe abrir un nuevo identificador de archivo para cada fotograma en lugar de mantenerlo y transmitirlo a un archivo como en el caso de la película.

Su mejor opción sigue siendo grabar una película sin pérdidas y extraer los fotogramas de ella, O para capturar un número finito de fotogramas, como capturas de pantalla durante la reproducción.

Staffan E
fuente
Fraps también tiene un modo de grabación sin pérdidas. Por supuesto, requiere aún más rendimiento de disco y RAM. Si compra la versión completa (que recomiendo), el logotipo y el límite de tiempo desaparecen.
Sorteo del
¿Por qué extraería marcos? ¡Quiero todos los marcos! @Banana sé que Fraps tiene el modo sin pérdidas, es el modo que he mencionado que Fraps maquillaje consiguen lenta y hacen que el juego para conseguir poco firme (decorosa Fraps cuando lenta en lugar de pérdida de fotogramas de alguna manera ralentización del juego)
reductor de velocidad
Ok, claro, pero mi punto es que obtienes incluso menos velocidad si intentas volcar cada fotograma en archivos de imagen individuales.
Staffan E
2

Dispositivos como estos son súper baratos, y apuesto a que puedes conseguir una segunda computadora para ejecutarla (no necesita nada especial) para que puedas capturar tu juego desde tu máquina de juego (asegúrate de tener una computadora con salida de S-Video para esta versión barata). También hay algo como esto para una captura de mayor calidad: http://www.blackmagic-design.com/products/intensity/ pero requiere USB 3 y es más costoso, pero puede capturar HDMI y una resolución más alta. Realmente no veo una mejor opción que cualquiera de estos dos.

Fotograma clave
fuente
1

He usado Windows Media Encoder un par de veces para grabar videos de mis juegos y herramientas, es gratis y produce videos de buena calidad.

Aunque, me he preguntado la misma pregunta también, porque grabar un video es solo la mitad del proceso (si eso es así). La otra mitad es editarlo, agregar efectos, etc. Windows Movie Maker funciona un poco, pero es bastante simplista ... y caótico.

Srekel
fuente
because recording a video is only half the processBuen punto, también me pregunto que, como se indica en el comentario de la pregunta inicial ...
Prix
1

Si está en Windows, grabe usando PlayClaw si desea un video de juego sin apenas ralentizar su computadora. En Linux tienes glc .

Fuego
fuente
1

No lo he usado, pero es posible que desee probar Taksi .

Andrew Brockert
fuente
Por alguna razón se niega a "enganchar" en mi juego :(
speeder
1

Básicamente, los problemas fueron:

Calidad en un juego basado en vectores. Cantidad de CPU tomada. Cuello de botella de E / S.

Qué software usar para editar.

Para resolver la calidad, necesitaba un códec sin pérdidas o sin compresión. Cuanto menor sea la compresión, más problemas de E / S tendré, pero cuanto más CPU tome, más problemas de CPU tendré (doh).

La solución fue usar un RamDrive para resolver el cuello de botella de E / S, por lo tanto, ahora me quedaba con la cantidad de CPU que quería tomar (es decir, la más pequeña posible). Por lo tanto, teóricamente, lo mejor sería no tener compresión alguna, pero ninguna compresión en un problema de espacio de impacto de memoria RAM disponible ...

Así que investigué y descubrí que el códec sin pérdidas más rápido (no importa cuánto se comprima realmente), y fue CamStudio Lossless

El software que utilicé fue VirtualDub (CamStudio en sí mismo no puede capturar el contenido de la ventana, captura toda la ventana, desperdiciando espacio).

Ahora software de edición: Bueno, nadie aquí dio una buena sorpresa, y tampoco lo haré, pero se pueden encontrar otras listas en otros lugares.

Speeder
fuente
3
Noté que subiste tu video a Youtube . Tenga en cuenta que Youtube vuelve a codificar todos los videos en H.264, por lo que después de todo este saludo, terminó usando un códec con pérdida de todos modos.
BlueRaja - Danny Pflughoeft
0

Es posible que desee probar vnc2flv , pero no hará el audio en sí (aunque puede agregar una pista de audio más adelante). Sin embargo, no estoy seguro de si su CPU lo odiará al intentar hacer codificación FLV en tiempo real junto con un juego en ejecución.

coderanger
fuente
0

Probablemente suene obvio, pero ... No juegues a pantalla completa mientras grabas el video; de lo contrario, "obviamente" será increíblemente lento porque captura la resolución de la pantalla. Supongo que esto es por lo que estás siendo mordido.

FRAPS se encargará de esto muy bien. También lo harán muchos otros, pero encontré que FRAPS es el más conveniente y fácil de usar.

Utilicé FRAPS para grabar y Windows Movie Maker para armar algunos mapas que hice en Starcraft II - ejemplo .

David McGraw
fuente
En realidad ... ni siquiera lo intenté en pantalla completa, todas mis pruebas fueron en modo ventana.
Speeder
0

Esto es lo que he hecho en el pasado para hacer trailers de solo video:

  1. Haz que tu juego sea ejecutable con un paso de tiempo fijo. Eso significa pasar el tiempo entre ahora y el último fotograma explícitamente en lugar de calcularlo internamente en tu ciclo de juego.
  2. Después de renderizar un marco, vuélvalo a un formato de imagen sin pérdida como .tiff con el número de marco como su nombre. Esto facilita que otra aplicación codifique una serie de imágenes en una película.
  3. Vuelva al codificador de video apropiado (escribí uno simple usando DirectShow) para convertir a .avi o cualquier formato de video que desee.
MSN
fuente
0

la mejor manera es hacer que tu juego sea autograbable. La manera fácil es guardar cada fotograma con una velocidad de fotogramas fija. Con SSD toma "no" tiempo. La forma más difícil es hacer tus propios "fraps". Si lo haces. Puedes comunicarte directamente con tu juego.

samboush
fuente
0

He hecho un trailer recientemente para mi juego. El motor me ayudó un poco, lo que permite capturas de pantalla lo suficientemente rápido como para animarlo. Lo que hice:

  • Aunque no fijé la velocidad de fotogramas, las capturas se realizaron a intervalos fijos, 25 por segundo. Grabé mi sesión de juego, que generó miles de imágenes en el disco.
  • Luego importé estas imágenes en un clip en kdenlive
  • Se agregaron algunos títulos, música, logotipos, desvanecimientos y desvanecimientos para darle un aspecto más agradable

En realidad, capturar las imágenes directamente significaba que no podía obtener los sonidos del juego, pero obtuve una calidad de imágenes mucho mejor. Agregar algo de música más que compensado.

pequeño_duck
fuente
-6

Si tiene dos PC, use la función para compartir pantalla de Skype. Juega el juego en una PC y luego usa la otra para capturar el video. De esta manera, no afectará su juego y los recursos no serán escasos para el programa de captura de video.

Por el contrario, puede comprar una tarjeta de captura de video para su PC.

Criatura
fuente
pero ... . .
David McGraw
3
Skype no puede enviar video mágicamente sin codificarlo, que es lo que quitará el tiempo de CPU del programa.
1
Esta es la peor idea que he visto.
Mathias Lykkegaard Lorenzen