Aura
Moderator: MaxCoderz Staff
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
Trust me, it's actually much more visible on-calc, except for the blurring when the sprite is in motion (can't be helped, it's because of the masking.)
As to how I did the masking, I used Omnicalc to OR the mask to the screen, then XORed an inverted sprit, so then the sprite is inverted over the mask and comes out looking right. Works just as well as masking with AND and XOR. I'm currently reworking some of my background sprites to reduce the level of noise, an I'll try enlarging the white border around the character. I decided to go with a very high detail approach as I wanted to give the sense of a sprawling, less conforming- more alien- world. I can have as many types of sprites as I want, and they don't have to conform to a grid, because my maps are actually stored in pic files. Collision detction is done with lists that hold the coordiantes of each corner of an object as well as the type of object and what action to take when the character is nearby.
Anyways, I really appreciate all the enthusiasm. If ever I regain interest in asm, this WILL go greyscale- and I had greyscale in mind when originally designing these sprites, but I just can't see that happening in the near future. I'm too involved with C++ and Java to spend the time with z80.
As to how I did the masking, I used Omnicalc to OR the mask to the screen, then XORed an inverted sprit, so then the sprite is inverted over the mask and comes out looking right. Works just as well as masking with AND and XOR. I'm currently reworking some of my background sprites to reduce the level of noise, an I'll try enlarging the white border around the character. I decided to go with a very high detail approach as I wanted to give the sense of a sprawling, less conforming- more alien- world. I can have as many types of sprites as I want, and they don't have to conform to a grid, because my maps are actually stored in pic files. Collision detction is done with lists that hold the coordiantes of each corner of an object as well as the type of object and what action to take when the character is nearby.
Anyways, I really appreciate all the enthusiasm. If ever I regain interest in asm, this WILL go greyscale- and I had greyscale in mind when originally designing these sprites, but I just can't see that happening in the near future. I'm too involved with C++ and Java to spend the time with z80.
Last edited by dysfunction on Wed 12 Jan, 2005 1:17 am, edited 1 time in total.
"You're very clever, young man, but it's turtles all the way down!"
-
- New Member
- Posts: 60
- Joined: Tue 11 Jan, 2005 1:48 am
- Location: The Dark Tower, The Middle of Everywhere
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
I revamped the collision detection engine, the screenshots didnt show it in effect but it was fairly slow before. Now it's about three-quarters as fast as the screenshots, whereas before i was about a quarter as fast. Now I'm beginning work on the biggest eye-candy yet; overhead sprite masking. This will allow objects such as tree branches, doorways, arches, etc. to be masked over the character as he walks under them.
"You're very clever, young man, but it's turtles all the way down!"
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
I worked out all the bugs in the collision detection, and have got the second layer masked sprites working. Now I just need to write the algorithmn to detect whether you're approaching from in front or behind the object. I also set up Zelda-style scrolling, where it smooth-scrols the entire screen when you reach the edge (not sure if I'm gonna keep it, though- it requires the pic vars for the map to be held in RAM, and s I need 4 pics total for the char sprites and more for masked environment sprites, I can only fit 4 or so in pics 1-10. However, without scrolling I can just store all my map pics as pics 11-256 with the 256 Pic program).
"You're very clever, young man, but it's turtles all the way down!"
Nice! I was thinking about adding that kind of scrolling (vertical only) in my platform game but the memory and speed might be a pb. However I don't recommend using the 255 pic program to store your maps because some of them get corrupted with some calc OS. The picture 40 program would work but I recommend using xLIB to store your maps in matrices so they are twice smaller and you can easyli change them if some special events occur in the game. I have a map editor in my grayscale package that you could use but it's very slowdysfunction wrote:I worked out all the bugs in the collision detection, and have got the second layer masked sprites working. Now I just need to write the algorithmn to detect whether you're approaching from in front or behind the object. I also set up Zelda-style scrolling, where it smooth-scrols the entire screen when you reach the edge (not sure if I'm gonna keep it, though- it requires the pic vars for the map to be held in RAM, and s I need 4 pics total for the char sprites and more for masked environment sprites, I can only fit 4 or so in pics 1-10. However, without scrolling I can just store all my map pics as pics 11-256 with the 256 Pic program).
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
I could write my own map editor for XLIb, but while what I'm doing requires more memory its the only way to have as much sprites as I need- with XLIB you only get what you can store in a pic file. This is the way it's going to be, and I've coded too much of the engine to change now.
"You're very clever, young man, but it's turtles all the way down!"
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
Ok, I scrapped the whole Zelda-style scrolling idea (however I'll file it away for use in future projects). I AM going to use XLIB in the battle engine so I can have scrolling. I've got double-layer masked sprites up and running, I'll post a screen as soon as I get my calc back from my mom (she took it away because I hadn't done enough work on scholarship essays). The overhead sprite masking is a litle slow. Well, not really slow, just you can actually see the object you're walking under flicker, which unfortunately reduces the illusion that you're actually walking under stuff.Should look better on an SE though. The speed is roughly as fast as Kevin's older ASCII rpgs (which is impressive considering it's rerendering the entire screen, then two character sprites, then two overhead objects sprites, every time you walk, as opposed to one ascii character).
"You're very clever, young man, but it's turtles all the way down!"
Omnicalc have an option (like Zapi) that allow you to save your sprite into the graph buffer and display it later so it wont flicker and it would be faster.dysfunction wrote:just you can actually see the object you're walking under flicker, which unfortunately reduces the illusion that you're actually walking under stuff.Should look better on an SE though.
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
Ok, I'll look into that.Kevin wrote:Omnicalc have an option (like Zapi) that allow you to save your sprite into the graph buffer and display it later so it wont flicker and it would be faster.dysfunction wrote:just you can actually see the object you're walking under flicker, which unfortunately reduces the illusion that you're actually walking under stuff.Should look better on an SE though.
"You're very clever, young man, but it's turtles all the way down!"
- dysfunction
- Calc Master
- Posts: 1454
- Joined: Wed 22 Dec, 2004 3:07 am
- Location: Through the Aura
Finaly came up with a ruse to get my calc back (said I needed it for compsci class), but she can't find out where she left it. Hopefully I'll get it back soon so I can post some oh so sweet screens (I hadn't backed up the latest improvments to my comp yet when she took it away).
"You're very clever, young man, but it's turtles all the way down!"