[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Oh, just correcting the example code:
// Changes yellow to blue in some bitmap.
int x, y, color;
for (x = 0; x < bmp->h; x++) {
for (y = 0; y < bmp->w; y++)
color = getpixel(bmp, x, y);
if (color == makecol(255, 255, 0))
putpixel(bmp, x, y, makecol(0, 0, 255));
}
}
Victor Williams Stafusa da Silva
--- Victor <vwss1984@xxxxxxxxxx> escreveu:
>
> --- Elias Pschernig <elias@xxxxxxxxxx> escreveu:
>
> > On Mon, 2007-01-22 at 16:25 +0000, Victor wrote:
> > > OTOH non-integer pixels positions could slow down many allegro
> > programs
> > > which put/get integer pixels and blit in integer bitmap
> positions.
> >
> > Assuming that the OpenGL drivers will be the fastest available
> > drivers,
> > and those already use floating point natively, I doubt it. Also, on
> > desktop computers, there won't be a performance difference in using
> > floats or int.
> >
>
> For some platforms yes, but for some others no. There are many places
> which doesn't support hardware acceleration and/or OpenGL very well,
> mainly in older computers, but still common nowadays.
> EG: My older computer that is with my syster don't run any opengl
> games, though it uses Windows 2003 server (which IMO sucks). In my
> work, with Windows 2000 (when the boss isn't around :), no opengl
> too.
>
> > Even if Allegro is to be ported to some kind of handheld device
> which
> > doesn't support floating point in HW, it shouldn't run slower. If
> you
> > try to compile a program which already uses float, they simply are
> > cut
> > to ints (won't affect performace, as one conversion / gfx API call
> > can
> > be neglected compared to the vtables, clipping and color stuff
> going
> > on..).
> >
>
> Yes and no. It depends a lot in what the programmer does and how. It
> depends on compilers differences, hardware differences and lots of
> other things too. However about the vtables, i think you're right.
>
> > > May
> > > create some caveats on lots situations too.
> >
> > Which ones?
> >
>
> Many programs assume that pixels are integers. E.g:
>
> // Changes yellow to blue in some bitmap.
> int x, y, color;
> for (x = 0; x < bmp->h; x++) {
> for (y = 0; y < bmp->w; y++)
> color = getpixel(bmp, x, y);
> if (color == makecol(255, 255, 0))
> putpixel(bmp, x, y, makecol(255, 255, 0));
> }
> }
>
> If pixels aren't integers, things like that may fail or bug.
>
> > > It would be better to create new functions to put/get non-integer
> > > pixels and use non-integer blit, without deprecating or changing
> > the
> > > existing ones. Its important to note that they don't need to use
> > > OpenGL, it's feasible and not very complex to implement they by
> > hand
> > > _IF_ needed for whatever reason.
> >
> > There are no existing ones as it is yet to be written..
> >
>
> I am not sure if I am misunderstanding what you are talking about or
> if
> you went nuts. What about putpixel, getpixel, blit, line, hline,
> vline,
> polygon, circle, masked_blit, draw_sprite, rotate_sprite, floodfill,
> and many, many others which indeed exists for a long time ago?
>
> > --
> > Elias Pschernig
> >
>
> Victor Williams Stafusa da Silva
>
> __________________________________________________
> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/
>
>
-------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to
> share your
> opinions on IT & business topics through brief surveys - and earn
> cash
>
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> --
> https://lists.sourceforge.net/lists/listinfo/alleg-developers
>
__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/