tratamiento tonica tartamudez tartamudeo infantil fonoaudiologico disfemia definicion causas adultos performance libgdx

performance - tonica - Tartamudeo incluso en los proyectos más simples



tartamudez tratamiento (1)

Después de probar algunos métodos diferentes (promediando delta / promediando delta en bruto / usando delta en bruto / bajando la velocidad de cuadros a 30 / usando un delta set en cada fotograma) obteniendo el mismo tartamudeo en cada uno y luego buscando en el tartamudeo en modo ventana:

Me gustaría proponer que el tartamudeo no es causado por LibGDX en sí mismo, sino que es un problema general que ocurre en el modo de ventana y que puede tener una cantidad de causas cercanas al hardware. Vea aquí un ejemplo y explicación: https://gamedev.stackexchange.com/questions/47356/why-would-a-borderless-full-screen-window-stutter-occasionally

Hice un pequeño "juego" para probar algunos tartamudeos que había notado en mi juego real, y no puedo entender por qué sucede esto. Hice el proyecto más simple posible para probar esto, pero sigo teniendo un tartamudeo bastante pesado. El FPS sigue siendo 60, pero cada pocos segundos, a veces más, el juego va a tartamudear.

Lo he probado tanto en una PC móvil como en una de gama alta, y curiosamente, es más notable en la PC, aunque todavía se produce en el móvil.

No puedo subir un video de él, ya que no figura en la grabación, así que puede compilar el proyecto usted mismo si quiere probarlo. Aquí está el código:

public class LagTest extends ApplicationAdapter { SpriteBatch batch; Texture dot; float x; float y; float speed; float dotWidth; int screenWidth; @Override public void create () { batch = new SpriteBatch(); dot = new Texture("dot.png"); x = 100; y = Gdx.graphics.getHeight()/2 - dot.getHeight()/2; speed = 500; dotWidth = dot.getWidth(); screenWidth = Gdx.graphics.getWidth(); } @Override public void render () { Gdx.gl.glClearColor(0.2f, 0.4f, 0.8f, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); batch.begin(); batch.draw(dot, x, y); batch.end(); if (x < 0) { speed = 500; } if (x > screenWidth - dotWidth) { speed = -500; } x += speed * Gdx.graphics.getDeltaTime(); } }

Si alguien tiene alguna pista de lo que podría estar causando esto, soy todo oídos.

Editar:

Entonces aquí hay algo divertido. Esto solo parece ocurrir en modo ventana, no en pantalla completa. Esta también podría ser la razón por la que funciona mejor en dispositivos móviles. Quizás esto es un error entonces?