¿Las tablas blendop no funcionan en 32 bits?

Started by osk, August 26, 2009, 03:59:15 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

osk

Hola.
Estoy probando algunos ejemplos de uso de las tablas blendop (los que hay en la wiki, por ejemplo) y he visto que funcionan bien en 16 bits, pero si pongo el modo vídeo a 32, cuando se aplica una tabla blendop al gráfico siempre le pasa lo mismo: se deja de ver de la pantalla. ¿Es normal? ¿Hay algo que se me escapa? ¿Los ejemplos hay que actualizarlos?
Graciaaaas!!

Drumpi

¿Se habían llegado a actualizar las funciones de blendop a 32 bits? ¿Cuanto ocuparían dichas tablas a 32 bits si ya a 16 gastaban 1/4 de MB?
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)

splinter_work

#2
Blendop no tiene soporte 32 bits... solo es para 16 bits...

osk

Ok. Tampoco se prevee añadir el soporte, entiendo...
Por curiosidad: ¿es por puro concepto de no tener sentido? ¿O por dificultad técnica?
Gracias.

splinter_work

#4
yo mas bien diria una limitacion tecnica... sentido podria tener, pero no como tablas... ya que hacer tablas para esto implicarian muchisima memoria (creo que era 4GB x sizeof(int32) x 2 por tabla, lo cual es una locura)...
sin embargo, hacer las transformaciones constantemente en runtime seria pesadisimo...
para hacer esto ultimo, deberia modificar bastante del blendop y del blitter (libgrbase y librender respectivamente), ya que en vez de (o ademas de) usar tablas que se propagan en la estructura (para 16 bits) deberia tener un puntero a la funcion blendop a usar... pero, ahora que lo pienso creo que no serviria tampoco eso, ya que si no me equivoco las operaciones blendop son operaciones aditivas, esto es, que se pueden aplicar unas sobre otras, y hacer esto constantemente seria definitivamente una locura ademas de casi imposible...
otra opcion seria tener tablas reducidas con solo los colores existentes en el grafico, pero esto seria tambien lento, porque implicaria hacer busquedas de dichos valores key... ademas de que implica actualizarlas si el grafico cambia... como sea, no serian tablas generales, serian tablas propias de cada grafico...

por otro lado, las operaciones blend directas sobre el grafico (apply) si serian posibles, si aplica una sola operacion sobre el grafico o previamente se crean tablas reducidas...

como sea, al ser un sistema incompleto no me parece razonable incluirlas para 32 bits...

como siempre se escuchan ideas...

osk

Gracias. Muy interesante la explicación.

P.D...entonces creo que lo de las tablas blendop no lo voy a poner en el tutorial.

Drumpi

Hombre, como estar, están, e incluso salían en el ejemplo que se hizo para Fenix. Creo que deberían incluirse, aunque hayan perdido interés siguen estando y siguen ofreciendo utilidades interesantes en 16bits. Quizás debería estar en un capítulo aparte, a modo de curiosidad, de miscelaneo o de avanzado, no se.
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)

darío

Si incluyes un capítulo de blendops te aseguro que me lo leo! Jeje, es una de las cosas que no he probado nunca...

En cualquier caso seguro que haces un manual la ostia de bueno :).
My sites:
Smart Fpg Editor - Painless FPG Edition for Bennu and PixTudio
fenixlib - .NET support for manipulating PixTudio, Bennu and Div graphic formats

SplinterGU

incluye un apartado, quizas en un futuro, cuando haya aceleracion por hard, esto se incluya en 32 bits...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2