Autor
| map editor screen 4
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 22 2007, 19:34   |
Well exactly. The meta-map is a map made out of pointers. Each pointer points out to a meta-tile. An meta-tile is a group of tiles.
Example we have a map of 256x256 tiles. Lets take a meta-tile that is 4x4 tiles. So the meta-map will be 64x64 (x2) = 8192 bytes. The other 8 kb (asuming you only use 16kb) can thus be used for the 'meta-tile-generator table' (simply those 16 bytes that make up the 4x4 meta-tile). After quit calc 8192/16=512 meta-tiles. Is this enough? Most likely is.
|
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 22 2007, 19:48   |
The problem you get on msx is that it is a little bit more cpu expensive. But if you gonna make a sonic you gonna need bigger levels than 8 screens wide, hence big meta-tiles.
In sonic 2 they use meta-tiles of 16x16 tiles if I recall correctly. (metamap 512b +62 tiles in our case)
(or even 256b +63 tiles, ie only high part pointer needed) |
|
norakomi msx professional Mensajes: 861 | Publicado: Mayo 22 2007, 22:46   |
Maggoo I have another problem: 
Vscreen Level Editor:
You cannot change the level width to a different size than 8
If you choose level width 1,2,3,4,5,6 or 7, then save, and then load again,
all your level data is corrupted.
A small bug I suppose....  |
|
norakomi msx professional Mensajes: 861 | Publicado: Mayo 22 2007, 22:50   |
Quote:
| Well exactly. The meta-map is a map made out of pointers. Each pointer points out to a meta-tile. An meta-tile is a group of tiles.
|
I get it 
Yes, that is an option I have been thinking about. However, the multilayer scroll I made now allready takes about 80% of 1 frame period. For now, I just want to use the fastest solution. I was thinking more of a game with rooms of 256x64 tiles or 128x128 tiles etc.
So a sonic like game (qua speed), but with different rooms you can enter. (maybe 2,3,4,5,6 or more rooms per level) |
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 23 2007, 19:30   |
Multilayer how? The fake way, or the real way?
In case of the real way meta-tiles might prove to be faster, kinda depents on the size of your tiles.
And in case of the fake way, I bet you use the methode ARTRAG described (switching to sc5 and copy stuff), right ?  |
|
Maggoo msx professional Mensajes: 576 | Publicado: Mayo 23 2007, 19:50   |
Quote:
| The problem you get on msx is that it is a little bit more cpu expensive. But if you gonna make a sonic you gonna need bigger levels than 8 screens wide, hence big meta-tiles.
In sonic 2 they use meta-tiles of 16x16 tiles if I recall correctly. (metamap 512b +62 tiles in our case)
(or even 256b +63 tiles, ie only high part pointer needed)
|
Well we did use Meta Tiles for MKID and it was ok because it was not very CPU intensive and you could do many stuffs while COPY commands were executed by the VDP. In Screen 4, most of the screen refresh is linear and done by the CPU so it woud probably suck a lot of the precious Z80 time... |
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 23 2007, 19:57   |
Whoops, I am talking nosence. The real way is only doable with pure horizontal or vertical scrolling and not multidirectional scrolling.
Why not gfx9000? You can have meta-tiles with very little cpu power, all tanks to the image space.  |
|
wolf_ online
 msx legend Mensajes: 4663 | Publicado: Mayo 23 2007, 19:58   |
Fantasm Soldier 2 had 'real' sc5 layers iirc. Not pixel-smooth ofcoz, but the game still impressed me back then.
|
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 23 2007, 20:05   |
@maggoo: well not that much, it is not like you have to build up the entire screen with meta-tiles. All you have to do is create a virtual image-space (IS), print one or two mtiles per frame into the IS and out the IS with a jump into 1 or 2 unrolled outi instructions lists. And obviously the IS will just wrap around.
|
|
Maggoo msx professional Mensajes: 576 | Publicado: Mayo 23 2007, 20:05   |
Quote:
| Whoops, I am talking nosence. The real way is only doable with pure horizontal or vertical scrolling and not multidirectional scrolling.
Why not gfx9000? You can have meta-tiles with very little cpu power, all tanks to the image space. 
|
Well then it's almost too easy *L* |
|
Maggoo msx professional Mensajes: 576 | Publicado: Mayo 23 2007, 20:10   |
Quote:
| @maggoo: well not that much, it is not like you have to build up the entire screen with meta-tiles. All you have to do is create a virtual image-space (IS), print one or two mtiles per frame into the IS and out the IS with a jump into 1 or 2 unrolled outi instructions lists. And obviously the IS will just wrap around.
|
I may give it a try to see how much CPU time it sucks. Problem with the Vscreen engine is that, in some occasion, the entire screen is refreshed at once, allows having no restriction on direction and speed whatsoever. And the restriction on level size is mostly an issue of level design. 256x96 is actually pretty large. May be a good idea to compress levels before playing them tho. Also I'm working on using combination of size like 512x48 or 1024x24 (horizontal only) or the other way around (vertical only) |
|
GhostwriterP msx addict Mensajes: 305 | Publicado: Mayo 23 2007, 20:24   |
Quote:
| I may give it a try to see how much CPU time it sucks. Problem with the Vscreen engine is that, in some occasion, the entire screen is refreshed at once, allows having no restriction on direction and speed whatsoever.
|
Tru, speed is limited. But how much depends on meta-tile sizes and on how many you place in the IS. It is quite doable to realise a max speed of 1 tile (8 pixels) per frame. And in combo with artrag's 'formula' it all does not take that much cpu power at all. |
|
norakomi msx professional Mensajes: 861 | Publicado: Mayo 24 2007, 15:41   |
Quote:
| Multilayer how? The fake way, or the real way?
In case of the real way meta-tiles might prove to be faster, kinda depents on the size of your tiles.
|
I copying first the background (768 bytes) and then on top of the backgound the foreground.
They scoll in 2 different speeds (omnidirectional) Quote:
| And in case of the fake way, I bet you use the methode ARTRAG described (switching to sc5 and copy stuff), right ? 
|
I experimented with that, but it doesnt seem to be possible (on a v9938) to switch to screen 5 and then do copy stuff (because in scr5 you cannot copy a 32x24 block to the screen4 name table. It doesnt work that way.) |
|
norakomi msx professional Mensajes: 861 | Publicado: Mayo 24 2007, 15:45   |
a maggo one more thing:
if you still want to change vscreen's editor could you make it possible to input the width and height manually(values from 24 to 256). ??
thanx!!
|
|
Maggoo msx professional Mensajes: 576 | Publicado: Mayo 25 2007, 00:01   |
Quote:
| a maggo one more thing:
if you still want to change vscreen's editor could you make it possible to input the width and height manually(values from 24 to 256). ??
thanx!!
|
No problem, I am not home this week so I don't have the source code or the compiler with me but I'll do it next week |
|
|
|
|