Duda sobre center_set()

Started by kestrel, May 23, 2010, 12:40:58 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

kestrel

Hola. En primer lugar me gustaría felicitaros a todos, tanto desarrolladores del lenguaje, por su trabajo, como a los formáis parte de esta comunidad, porque estais haciendo que Bennu sea realmente algo grande, divertido y prometedor.

Quisiera preguntaros sobre una duda que me ha surgido sobre los puntos de control en un gráfico y el comportamiento de la función center_set(). He tratado de encontrar algo en la wiki pero no veo respuesta que me lo aclare. Supongamos que tenemos un gráfico de 100x100px como proceso en la pantalla. Al utilizar center_set() le paso las nuevas coordenadas del punto de control 0, que tendrán como límites las dimensiones del gráfico, o así lo entiendo yo.

La duda me surge si ahora en tiempo de ejecución modifico la variable 'size' del proceso, suponemos que inicialmente estaba a 100 y la subimos a 200. El gráfico será ahora de 200x200px pero, ¿cómo debería indicar las coordenadas si quisiera volver a utilizar set_center()?.

       1.- Utilizando los límites originales del gráfico, osea 100x100px, presuponiendo que set_center() ya tiene en cuenta el factor de escalado.

       2.- Indicando yo mismo las coordenadas ya modificadas por el factor de escalado.


¿Me podéis aclarar este aspecto, por favor?.

Un saludo

Drumpi

Lo cierto es que Bennu oficialmente lo lleva una persona... aunque claro, si contamos con el apoyo de librerías no oficiales, y de todos los que hicieron Fenix, el "padre" de Bennu, y DIV como lenguaje, ahí sí, hay unas cuantas personas :D

Respecto a tu pregunta, es simple: set_center y todas las funciones afectan siempre al gráfico sin tener en cuenta rotaciones o escalados (lo digo por set_center, set_point, map_put_pixel...). La única función que no cumple esta norma, que yo recuerde ahora, es get_real_point por motivos obvios, que es para obtener un punto de la pantalla según posición, ángulo y rotación para colocar un arma, perseguir un punto...
Lo que ya no tengo tan claro es que set_center esté limitado por el tamaño de la imagen, creo que se podía colocar fuera de ella, al fin y al cabo, no son más que unas coordenadas relativas.

Por cierto: bienvenido, espero que lo pases bien programando, y para lo que sea, aquí estamos.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

kestrel

Qué velocidad Drumpy  :D, gracias por responder tan rápido.

Osea que si en el gráfico anterior de 100x100px, cuando size=200, al establecer center_set() en las coordenadas (100,100), a nivel de pantalla dicho punto de control quedaría en la esquina inferior derecha del gráfico, y no en el centro... ¿no es así?.

Respecto a los desarrolladores, totalmente de acuerdo en que Bennu se lo debemos a SplinterGU. No se mal entienda el plural; como también me he referido a la comunidad, estoy seguro de que habrá aquí gente que conocieron el DIV, DIV2, eDIV, Fenix y luego Bennu, luego mi enhorabuena era en realidad extensible a todos los que gracias a su esfuerzo en un modo (desarrolladores del lenguaje) u otro (entusiastas de la programación de juegos), han conseguido que DIV no muerese con Hammer :)

Y por supuesto eso incluye a SplinterGU, al que desde luego le rindo la debida pleitesía  :P

Gracias por la bienvenida  ;D

SplinterGU

hacia tiempo que no posteabas, bienvenido nuevamente y gracias.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Fede

Ala!, yo tambié me uno a los saludos.  :D
Si quieres ser sabio, aprende a interrogar razonablemente, a escuchar con atención, a responder serenamente y a callar cuando no tengas nada que decir.

FreeYourMind


Drumpi

Kestrel: la rapidez se ha debido a pura casualidad, no te mal-acostumbres ;D
Por cierto, ten cuidado: si el gráfico es de 100x100, la esquina inferior derecha es la posición (99,99), la posición superior izquierda es la (0,0) ;)
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)