Sanga wrote:
Yes, we *are* talking about similar ideas. The only difference is that I'm thinking along the lines of having the priorities (draw order) of the different "layers" vary, depending on the orientation of the character, as well as your idea of having extra "layers" to allow for different situations.
I was thinking of "layers" as separate spritesheets.
We are talking the same thing cause a separate layer is a separate sprite sheet. When you say "assigning priority" it the same when I say move the sprite to a lower layer does the same thing with out having to radically change the code, other then to allow for more layers (which you would have to do to make your idea work any way).
Sanga wrote:
theIdeally, what I would like to see is a system where the artist does *not* have to allow for other equipment (or the base sprite) when creating a new item - if the priorities are set correctly, and there are enough layers to allow for all possibilities, then ideally the artist would just create the item, and let the graphics code in the client take care of determining which parts are visible and which are obscured by other items or the base sprite.
(Note that I'm not sure that this is actually possible, mind you. But I think it's a good target to shoot for).
I *would* like to see your list of layers, and their rationale.
Multiple layer would go a long way to doing that but there might still be some layering problems. I mean no system is perfect.
As for being backwards compatibility more layers means that the old layers are still there in the right spot but we would have more layers so that we could have more new armor options. But of course new armor would not work on the old layers system, but the whole point is that the old layer system does not allow for the creation of something like long capes.
now for the layers expiation and reasons.
Crush wrote:The current drawing order is:
Code: Select all
BASE_SPRITE,
SHOE_SPRITE,
BOTTOMCLOTHES_SPRITE,
TOPCLOTHES_SPRITE,
HAIR_SPRITE,
HAT_SPRITE,
WEAPON_SPRITE
For my draw order I will avoid the terms back and front since they get confusing and are dependent on what direction you are facing. I will use the terms bottom (for the lower layers and top for higher layers). I have renamed Bottom and Top Clothes to Leg and Chest for clarity.
Base Sprite
Shield_Bottom_Sprite- would be used when the shield should be behind all a other layers, like when facing Up(North)
Weapon_Bottom_Sprite-For the same reasons as the shield. We could use this now even because if you look Closely at the bow attack up facing you see the top to the bow show up through the hats. I only noticed this when making the white cowboy hat because the top of the bow is so small I did not notice it until it was against some thing with a high contrast.
Shoe_Bottom_Sprite- would be used when shoe should not be seen above the pants armor, like long floor length Robes and dresses.
Cape_Bottom_Sprite- For the part of the cape that is seen behind legs and leg armor when facing down(south)
Leg_Clothes_Sprite- would stay unchanged for leg armor
Shoe_Top_Sprite- is for when you have a tall Boots on that come over pants legs, like a Cowboy Boot
Gloves_Bottom_Sprite- this could be optional but is for allowing gloves the option of hiding under th sleeves of shirts and other chest armors.
Chest_Clothes_Sprite- would stay unchanged for chest armor
Gloves_Top_Sprites- for gloves to go over top of shirt sleeves, like when the gloves have large cuffs or gauntlet style cuffs(Eskimo Fur mits are a good example). Could also be used for Bracelets and arm bands.
Cape_Top_Sprite- would be used for the cape in all views it appears over top of all other armor(side and up facing) down facing would only be for the part of cape that clasps around the neck. Could also be used for necklaces.
Hat_Bottom_Sprite-for the part of hats that should appear behind the head and hair
Hair_Sprite- remains unchanged
Hat_Top_Sprite-works the same as the current hat layer we have now
Weapon_Top_Sprite-for when you are facing side and front views
Shield_Top_Sprite-for when the shield should be in front of all other layers.
that is about as clear as I can make it.