|
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
|
Originally posted by wwwarea
Umm, I went back to page 7th and he said it will be release at the 15th... He marked out 7th and put it to 15th.
Well... hmmm... yeah... Sorry again.
I'll have 4 days off next weekend (from saturday to tuesday) because of Easter, so I thought it would be much more logical to finish it over the weekend release it just after that. Besides, messiaen just gave me the code to patch to enable extended RAM use (but don't blame him for the delay, I didn't exactly put any pressure on him to give me the code earlier).
Now, there's one thing that didn't help with the delay, is that I don't know exactly how to deal with a particular feature of the importer. Maybe you guys could help me figure out the best way to implement it.
Note: it's a very complicated problem that's hard to easily explain, and that's essentially why I stumbled and stopped working on TT64 two days ago, trying to find a viable solution...
Here's my problem:
When you want to change any parameters, or import an updated version of the .obj polygon file, the whole level data will be deleted and re-created. To avoid losing all your level objects (0x24 objects for example), I thought about having the 0x24 command list optionally saved so that when you "re-create" the level you can keep the existing objects. There's already a planned feature (which almost fully works now) which enables you to save to and load from a "level file" which will contain all the polygon importer parameters (scale, offset, terrain type, bank selections) and will also include the .obj data and the texture data inside the same file. So I planned to also include in the level files the 0x24 commands, which will be nice since a level file can be used to recreate the exact same level in a different ROM.
Here's the problem with that approach:
It's all about when the 0x24 objects should/can be saved to the level file. Logically, when you press "Save Level File" all parameters AND the 0x24 will be saved into the currently open level file. But 0x24 editing happens in the main level editor window, so you'd have to go back and forth between the importer and the editor to save anytime you make a change. Unless I add an option to automatically save 0x24 commands to the level file when the ROM is saved (either by pressing the Save ROM button, or with the auto-save option).
That's all fine, when the level you're editing happens to be the one that was created using the currently open level file (only one level file can be open at a time, and the "create/save level to ROM" button will create the level in the currently selected slot, replacing the currently selected replacing level). But what if you try to edit another custom level for which you don't have the level file open? Changes to 0x24 commands wouldn't be saved to the level file unless TT64 tracks where are the level files for all the custom level slots in a given ROM. One way to do that would be to save the file path of each one in the "File table" list that TT64 will be writing to the ROM.
But I really dislike the idea of having your ROM dependent on the path of multiple files possibly scattered around your HDD. What if you move one of the level files? It's simply too much things to track down and it complicates the process needlessly.
To avoid these problems entirely, the best thing is to use the existing 0x24 commands found in the ROM if you want to keep them when "re-creating" the level when importing or changing importation parameters. But if I only give this option, you lose the very useful feature of being able to use a saved level file to re-create the same level in multiple ROMs, mixing and matching levels if you want. It would be especially sad not to include the ability to save 0x24 objects to the level file when it contains everything needed to re-create a specific level.
My solution involves having three option when saving a custom level to ROM:
1. "Keep objects from ROM"
2. "Use objects from level file"
3. "Use empty objects".
Since option 2 would now only be really useful when wanting to move a level from a ROM to another, I guess I could let go of all the auto-save problems and only save the 0x24 objects to the file when the "Save level file" button is pressed. Still, there could be a problem where you'd import a level, go edit the 0x24 objects, save them to the file, go back to the editor, edit 0x24 objects in another custom level slot, and comming back to the importer to save, without realizing that you'd only save 0x24 objects from the last imported level into the last open level file... Saving the 0x24 objects to the previously imported level would require re-opening the right level file.
Ultimately, a solution to all these problems would be to use a single file for all levels of a given ROM, instead of one file for each level. But it would change the whole paradigm of the current importer, and I would have to create another complex interface to individually manage levels found in that file (to enable you to mix and match levels from multiple files into a single ROM). Furthermore, this single "levels file" could end up being relatively big, especially with the additional space that the extended RAM will provide.
Originally posted by luigiman1928
I have a suggestion for the Importer. Why not add the feature of adding Your own texture!
I'm not sure if that's what you're suggesting, but it was already planned to work like that. You'll have to import your own texture in the level importer interface.
____________________
|
  |
|
|