The Sprites System!
Displaying 1-9 of 9 total.
1
geronimo
|
.... so what of the new sprites system is actually implemented at this build?
Also, what of the new sprites system is actually implemented at this time on vecna's computer?
Posted on 2004-05-09 05:53:26
|
vecna
|
that which was documented is implemented.
I just got back from vacation so I'm starting up work on the engine again.
Posted on 2004-05-10 23:00:07
|
geronimo
|
ah.. the only reason i'm not using it yet is, i didn't see a way to have some sprites drawn on top of all my other draw layers, and some between. not sure of a good way to handle that, but was your plan to just have them all drawn on top of all the other stuff that was blitted to the screen?
Posted on 2004-05-11 00:55:43
|
Gayo
|
Could you set a sprite's think cycle to every one timer tick and use it in place of a HookTimer?
Posted on 2004-05-11 03:29:21
|
vecna
|
geronimo - Yeah, the sprites system isn't terribly useful right now. But it will be when its fully implemented. Regarding your layer question specifically, it's the plan for sprite.layer[] to allow you to place the sprite between any map layer. However I haven't worked out exactly how it will work. My main concern is to allow sprites to work without any map loaded at all (in addition to with maps) - rendering the sprites can't be tied specifically to the Render() command.
So I am thinking something like the following for sprite.layer[] values:
0 - default - drawn on top of EVERYTHING, when ShowPage is called.
1 through something - map layer to render on top of or something. Possibly, just an index to renderstring objects so that you could for instance put some sprites below the retrace special and some after it.
Some other predefined sentinel number like -1 or 322323023 that would have a builtin #define would draw on top of the map render but below the showpage. This is necessary because there's no way to do something like a fadeout with the sprites that are rendered at showpage. (and you could use the sentinel value instead of having to have a different 'top number' depending on the number of layers of each map)
I'm open to suggestions on how the layers could work, tho.
Gayo: Yes, but it would have the same problems. The sprite won't ACTUALLY think until it's drawn. Also, you would have to give the sprite an image, because a sprite with image=0 is considered inactive. But you could put the coordinates offscreen (and it would still think).
Posted on 2004-05-11 03:59:42
|
geronimo
|
you could possibly have like, multiple layers to the screen image/thing, in addition to the map layers. that way you could draw, for example a background on screen layer 1 and foreground on screen layer 3, and have some sprites assigned to layer 2
or, a sprite mode that excludes them from an automatic drawing phase, and instead requires that you make a call like drawspritelayer(1)
Posted on 2004-05-11 04:45:51 (last edited on 2004-05-11 04:46:30)
|
Gayo
|
Actually I was just being retarded.
By the way, does V3 have an option to render a single layer? I don't need it anymore, but that was on my wishlist back when I used V2, since it would have allowed me to fuck around in between layers inside a master loop without needing a renderstring.
Posted on 2004-05-11 06:12:11 (last edited on 2004-05-11 06:14:19)
|
mcgrue
|
Quote:Originally posted by Gayo
Actually I was just being retarded.
By the way, does V3 have an option to render a single layer? I don't need it anymore, but that was on my wishlist back when I used V2, since it would have allowed me to fuck around in between layers inside a master loop without needing a renderstring.
I've been badgering zeromus for things like that, so I could do things like burning a hole into a layer dynamically ala FF5's see-through-the-forest effect. So far, tho, no go. ;_;
Posted on 2004-05-11 08:18:44
|
Interference22
|
I'd like to add to that badgering the need for layer lucency control at runtime. I want my layer-based day and night cycles!
SetLayerLucent(int layer, int lucency) will solve all my problems!
Posted on 2004-05-11 10:44:44
|