02/07/2021

El resize parecía mal configurado, lo pude solucionar en base a las medidas de éste proyecto.

Pude reestablecer con la cámara del tipo ortogonal, modificando algunos valores, ya que los tenía incompatibles con éste proyecto también, sin tener en cuenta la cámara y dimensiones adecuadas. Quedó así:

glOrtho(-globals::get_globals()->w/2.f, -globals::get_globals()->w / 2.f, globals::get_globals()->h / 2.f, globals::get_globals()->h / 2.f, -1, 1);

El viewport lo establecí también reconfigurando, ya que estaba adaptado para dividir la pantalla en 2 (split screen), lo cual no deseo de momento, y quedó asi:

glViewport(0, 0, global->w, global->h);

En canvas, reparé la función de división de grillas, ya que dividía a otro tamaño. Ésto es porque consideré como escala 1:1 la pantalla, cuando en realidad 1:1 es la mitad. Ahora lo convertí a 2:2 lo cual es funcional completamente.

Mi siguiente plan es poder hacer que se dibuje un efecto al ingresar en las grillas, según la posición del mouse.

13/07/2021

En el 3° vivo de la fecha he incorporado el mouse, agregando la función correspondiente a GLUT. Estuve adaptando medidas dinámicas a las cosas, se fixeo la resolución para que sea dinámica también, y por otra parte se trabajó en obtener el grid segun la posición del mouse, lo cual se lleva avanzado.

 

15/07/2021

Cuesta acostumbrarse a trabajar con miembros estáticos de por medio así como clases… una clase estática, si apunta a otros miembros de otra, por lo general el llamado tambien debe ser estático. Y si haces una cosa estática, que usabas en otro lugar, debes cambiar toda esa linea estática. Es realmente un dolor de cabeza por donde se vea, pero así es C++, requiere especificar hasta la última coma.

16/07/2021

El glOrtho sigue estando mal. Mismo si se omite de poner, el programa funciona. He probado diferentes valores y ninguno está funcionando como debería.

Había 2 con signo negativo en GLOrtho. El arreglar ésto hizo que ya pueda trabajar con valores normales, y partiendo desde el eje central sin conversiones, por lo tanto tuve que quitar todas las conversiones y situar en el borde superior izquierdo el pivot

glOrtho(-globals::get_globals()->w /2.f, globals::get_globals()->w /2.f, -globals::get_globals()->h /2.f, globals::get_globals()->h/2.f, -1, 1); // unidades = pixeles

glTranslatef(-global->w/2.f, -global->h/2.f, 0.f); //Seteo inicio borde izquierdo provisoriamente

 

 

 

16/07/2021

OpenGL devuelve el mouse con la coordenada Y invertida. Para restituirlo hay que neutralizar usando el alto de la pantalla.

y = global->h – y; //Fix inverted Y axis

glutPassiveMotionFunc es la función que venía usando. Solo sirve para el mouse cuando no se presionan botones

glutMouseFunc Es para leer el mouse ante evento de presión

el error STACKS UNDERFLOW por lo general indica que falta algo. En realidad mi caso es que sobra algo… tenía el cierre de una matriz, cuando ya había cerrado todas.