| Mirage Source http://miragesource.net/forums/ |
|
| Tileset file format http://miragesource.net/forums/viewtopic.php?f=201&t=721 |
Page 1 of 2 |
| Author: | Lea [ Mon Nov 06, 2006 2:58 am ] |
| Post subject: | Tileset file format |
Hi folks... I've been thinking a lot about what I want in an engine, and I've made a few decisions. I'm going to be coding from scratch, starting with the basics: How graphics are stored and loaded. I've got a lot of ideas, more than I can really manage in my mind! XD So I have started documenting what I think about. I have the format in an excel spreadsheet. Could you guys take a look at what I am thinking, see if it's as clear to you as it is to me, and give me any suggestions you may have? Also, let me know what kind of possibilities you think would be possible with this format, and anything I could add to make it more flexible! Thanks! [link will be up in a moment... turning on the Valk server for this http://www.eternalflameonline.com/tilesetformat.xls Edit: This will work until the DNS updates: http://72.128.67.193/tilesetformat.xls |
|
| Author: | Obsidian [ Mon Nov 06, 2006 10:34 pm ] |
| Post subject: | |
that's a really good way of writting it, but how are you going to do the "animations" with the number of frames, i assume you're either going to go up/down or left/right? is that going to be a problem?... although it does sound awesome to have more than 1 "animation" per tile. and what does this mean for valkoria? |
|
| Author: | Lea [ Mon Nov 06, 2006 10:50 pm ] |
| Post subject: | |
The pointer to the graphics data will be pointing to the start of the first frame. The "Number of frames" will multiply the height of one frame to be the height of all the frames frames, which will then switch at a regular interval which I have yet to decide (or maybe I could make that settable in the tileset? (I think I will!)) Any other questions? |
|
| Author: | Obsidian [ Mon Nov 06, 2006 10:56 pm ] |
| Post subject: | |
so are you separating your tiles out or continuing to use a large set where they're all included in one? and is this something you're doing for valkoria, or as a completely "rebuilt" valkoria or just for fun? |
|
| Author: | Lea [ Mon Nov 06, 2006 10:58 pm ] |
| Post subject: | |
Tiles will be seperated, and in a custom file format making it (nearly?) impossible to rip them unless they know the file format, and how to read it. This will be completely rebuilt from scratch. I am hesitant to say it will become Valkoria, though |
|
| Author: | Obsidian [ Mon Nov 06, 2006 11:59 pm ] |
| Post subject: | |
so are you stopping work completely on the current valkoria then? |
|
| Author: | Lea [ Tue Nov 07, 2006 12:55 am ] |
| Post subject: | |
It's bugged past the point I feel it's worth it. I've had so many new ideas lately, that would make it bigger and better, it's more plausable to start from scratch. |
|
| Author: | Lea [ Tue Nov 07, 2006 3:59 am ] |
| Post subject: | |
Anyone else going to take a look? I was hoping you guys would expand on this and give me any other ideas you pop into your mind, no matter how bizzare they may be, or any changes you would make. |
|
| Author: | Dr. Spoon [ Tue Nov 07, 2006 4:15 am ] |
| Post subject: | |
I will be looking into it soon .. I may be able to offer some ideas for this.. edit: hmm looks pretty decent so far question about using multiple sheets for graphics how big would each sheet be? you would then have to identify which sheet each tile came from as far as the animations I would say if the mapper wants animation then they click on the option then you allow them to select which ever tiles they want to add to the animation sequence (keeping the tile numbers as a part of the maps data) I guess you could limit the animations to the same sheet of the specific tile they are animating just a couple of ideas/questions |
|
| Author: | Lea [ Tue Nov 07, 2006 4:49 am ] |
| Post subject: | |
Each sheet would be as big as they wanted it to be. I would be cashing graphics, and unloading the ones that arent needed I would be allowing them to plot the tile with or without the animation. I will add some "Identification information" to the top of the tile set, however you're more moving into the mapping In-game animations, like Mirage but more frames, would be possible. The automatically animated tiles I would see being used for water and fire type applications. Stuff that would NEVER stand still. |
|
| Author: | Dr. Spoon [ Tue Nov 07, 2006 5:18 am ] |
| Post subject: | |
okay just curious.. |
|
| Author: | Dragoons Master [ Tue Nov 07, 2006 3:59 pm ] |
| Post subject: | |
I read it yesterday but I didn't have time to answer, now I do. Well, I don't have much to say about it. It's prety good, I don't think you'll need much more things... Just keep the basics. If it works it's perfect. |
|
| Author: | Lea [ Wed Nov 08, 2006 8:15 pm ] |
| Post subject: | |
I didn't want just the basics, I wanted the most feature-capable tileset ever made I think it's nearing the limit for the features that can be included in a tileset alone, without moving into the area of maps (I can tell you guys are thinking maps and not tilesets) |
|
| Author: | Lea [ Thu Nov 09, 2006 2:29 am ] |
| Post subject: | |
Hah, started programming it today. Just the application layout, nothing too big yet. I realized something: Game programming is TONS different from application programing. I was in the process of setting up my game loop and initializing Direct X and I realized... "Hey... I don't need any of that stuff... delete..." Hahahaa... I'm a bit rusty! Took me a while to figure out how disable text boxes and the like... textboxname.enabled = false... pfft why didn't I think of that sooner! It will take a bit of work! But I am already having fun and I've only written less than 50 lines of code... My girlfriend will have to tolerate me not paying as much attention to her the next few days (and weeks?!) I hope she doesn't get mad I'm still looking for feedback. I added some more options to make the tile set more efficient (while disabling animation for the entire set, or making the entire set uniform size) because not everyone will need those features. Anything else you guys think of, please LET ME KNOW! ~ edit: updated my tilesetformat.xls. Same download as above. Take a look please! |
|
| Author: | Obsidian [ Thu Nov 09, 2006 2:35 pm ] |
| Post subject: | |
How about instead of Tile Width and Tile Height, you just make a "size", as byte... then you just have like Size 1 = 32x32 Size 2 = 32x64 Size 3 = 64x64 etc. it might get a bit confusing later... but it would save a byte per tile, which is always nice |
|
| Author: | Lea [ Thu Nov 09, 2006 9:51 pm ] |
| Post subject: | |
K I will! I was going to support non-square tiles, but I will add an option for only square tiles. |
|
| Author: | Shannara [ Fri Nov 10, 2006 12:25 am ] |
| Post subject: | |
The way I do it is as follows: 1. Tileset bitmaps can be named in any way you like. 2. They can be any size that works for most graphic cards, I usually stick with 256x(whatever). When the engine loads the map, the map have a lookup table in the header of tilesets used in the map and an assigned number from 1 - 127. The engine loads the tilesets required, parses out the tiles needed (based on the map), and then unloads the tileset from memory (keeping the tiles). This use the least amount of video ram possible. Each "tile" structure contains a pointer to the sprite structure. So when rendering a map, just pass the pointer to directx, and it'll render I just encrypt and compress my tilesets. I can decompress and unencrypt them in memory and pass off a pointer to that memory address to load create the surface. Could also just keep it in memory and parse out the tiles into their own little surfaces, that way, you will only have the tiles you absolutely need in memory ... If you have tons of tilesets, it is usually always a bad idea to load them into memory (especially if you have 50+ MB of graphics). Only load the ones you need. ... ala Graal, Astonia, Ashen Empires, Shadowbane Another option is to load all graphics in system memory, then push over surfaces to video memory when you need them. Like during the loading of a map. Then you can cycle out tiles you dont need when a new map is loaded. Btw: non squared tiles are supported on newest NVidia, and ATI drivers for all their cards. So you can do 3D sprites of 32x64 or whatever. But we're only talking about the basics right now, eh? |
|
| Page 1 of 2 | All times are UTC |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|