Re: Graphics developer needed

new topic     » goto parent     » topic index » view thread      » older message » newer message

> The library should have features like this:
> -320x200, 640x480, 800x600 and 1024x768 modes with 16.7M colors (also
> with 8- and 16 bit colors if possible)
> -clean, non-flickering, as truecolor is
> -very fast pixel drawing routine (no other
> routines(box,ellipse,etc.)needed
> :)
> -Here's a better(?) idea o' mine how to display stuff to screen: first
> you save screen stuff(while running) to sequence s1 in main program.
> Then when whole 'screen' is in s1, you call the routine
> DrawTrueScreen(s1) which draws then (hopefully fast ;) the whole screen.
> This means that the library could be optimized to play graphics very
> very fast cause it's been called only once with only one sequence, s1.
> The s1's form would be something like this:
> {{B1,G1,R1},{B2,G2,R2},...,{Bx,Gx,Rx}} (the drawing would always start
> from position 0,0 and end to scrMaxX,scrMaxY).

This is not the most most efficient way to store truecolor data in
Euphoria.  A Euphoria sequence has 20 bytes of overhead, and it always
stores at least 4 bytes for each element, so you're effectively wasting
29 bytes for *every* truecolor pixel.

> -If DrawTrueScreen() would be fast enough, no virtual screens, etc.
> would be needed. These 'extra' routines could be added later if
> necessary.

Your best bet for fast graphics is to poke pixel data into a memory buffer
acquired with allocate, then copy that memory into video ram.  Of course,
then your new bottleneck is how fast you can move that memory across the
bus.  Full-screen truecolor images consume a good chunk of memory and
limitations of hardware come into play.  AGP cards have a speed advantage
over PCI, and PCI is faster than ISA.

> I think many game developers (and why not other coders too) would find
> this kind of library very helpful indeed ;) The bottleneck to make fast
> games is almost always the graphics displaying.

Most helpful in my opinion would be wrappers to DirectX or OpenGL, where
we can take advantage of the hardware-accelerated operations on the
graphics hardware and let the cpu do more work on actual gameplay.

Later,
 _______  ______  _______  ______
[    _  \[    _ ][ _   _ ][    _ ]
[/| [_] |[/| [_\][/ | | \][/| [_\]
  |  ___/  |  _]    | |     |  _]
[\| [/]  [\| [_/] [\| |/] [\| [_/]
[_____]  [______] [_____] [______]
xseal at harborside.com  ICQ:13466657
http://www.harborside.com/home/x/xseal/euphoria/

p.s. some of you may think this kind of talk is a little "out of
character" for me, having written Neil and all...

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu