Manipular pixels

Started by Hola, December 08, 2008, 11:48:03 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Hola

Hola, por mas que quiero y busco y busco no puedo encontrar la manera de manipular un pixel, es decir. Crear un pixel y moverlo por pantalla, etc.
De seguro lo que me recomendaran es crear un proceso con un grafico parecido a un pixel moverlo pero el caso es que creando 2000 procesos de pixeles graficos se empieza a ralentizar, a lo que me refiero es que necesito crear como 1.000.000 pixeles graficos, he pensado que la funcion Put o algo por el estilo ayudaria pero nose como hacer para moverlo. Osea, poner el grafico de pixel con Put y moverlo nose como.

Nose, quizas existen otras formas, gracias de antebrazo.

DCelso

#1
Tendrás que usar la tecnica de toda la vida de dibujar en cada frame la pantalla entera usando unas variables para guardar las coordenadas del punto (o puntos).
Consiste en poner en el bucle principal un clear_map con un color negro, y luego usar put_pixel para poner el pixel (o pixeles)en las coordenadas nuevas guardadas por tus variables.

Tambien puedes hacerlo en vez de directamente sobre la pantalla sobre el graph de un proceso creado con new_map con las dimensiones de la pantalla entera.( para poder diferenciar o tener un fondo de graficos de pixeles)
Sería como hacer en cada frame de su bucle un map_clear con color transparente y luego un put_pixel para dibujar cada pixel de tus variables guardadas.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

kim-elet-o

por cierto..., una pregunta tonta, para que necesitas manipular un 1 millon de pixeles?.  ??? ??? ??? ???
|/
|\im-elet-o el yayo programador.

Drumpi

¿Y que tal usar un cuadrado de un pixel de lado?
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)

laghengar

Y porque no modificar el buffer de la pantalla directamente???
!!!Blender Blender Blender yuhuuuuuuu¡¡¡ novato o_O

DCelso

laghengar ¿y qué crees que dije en mi respuesta?  :o
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

laghengar

Que yo sepa no es eso a lo que me refería, aunque creo recordar que los lenguajes de ahora no permiten lo que yo digo, por cuestiones de seguridad.
!!!Blender Blender Blender yuhuuuuuuu¡¡¡ novato o_O

SplinterGU

se puede cualquier opcion...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

laghengar

No se, no estoy actualizado con el tema, yo pensaba en el método que optenías el puntero del buffer y luego podías manipularlo. Pero no se como irá ahora eso. Es que este método para manejar solo un pixel sería el más rápido. Claro que si quieres manejar muchos más ahí me lo pensaría, que yo recuerde es un poco engorroso el código para ello.
!!!Blender Blender Blender yuhuuuuuuu¡¡¡ novato o_O

SplinterGU

eso es obtener el buffer de un mapa, y la pantalla es un mapa tambien... pero hay que saber que una cosa es la pantalla y otra el fondo de pantalla...
uno sera sobrescrito por el engine grafico, lo cual no tiene sentido dibujar sobre este...
y el otro se usara para sobreescribir el anterior, pero hay que tener en cuenta que esto es el fondo, cualquier grafico por encima tapara nuestro fondo.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2