(Sega Saturn homebrew) Sonic Z-Treme

Discussion in 'Fangaming Discussion' started by XL2, Jul 7, 2017.

  1. Spinksy

    Spinksy

    Member
    219
    0
    16
    UK
    I've finally just burnt the sage demo - will be playing it tonight at long last (a lot going on right now)

    I think everything about this project is amazing - and the fact this is probably the closest we'll ever get to playing Sonic xtreme (especially on a saturn) blows my mind! Great work, loved testing the PAL version!
     
  2. XL2

    XL2

    Member
    48
    1
    6
    I'm not discouraged nor saying that I'm cancelling the project right now, but I will spend time away from it to focus on other things.

    I'm just getting fed up of people requesting impossible or contradictory things or just asking for stuff like they are at a McDonald's.

    Like Andrew said, some things like the Sonic sprites sound easy for the average people, but when you look at it it's impossible to store it all in VRAM, so you need to store it in main RAM.
    Even then you need to store it compressed, uncompress it each frame, DMA it to vram each frame.
    It takes a lot of memory (maybe 400 KB compressed or more just for Sonic), but people are also asking for larger maps at the same time, which just doesn't work.
    After spending like 2-3 weeks writing a model converter allowing per-vertex animation, with realtime gouraud shading and a 2 player mode, I just don't get it why anyone would complain about it and request to have sprites instead just to look more like the original cancelled game.
    It's not like I just need to flip a switch to make it happen either, that would require lot of work.
    If it was on PC, with so much RAM and horsepower, it wouldn't even be an issue, it would take me 10 minutes to make it work, not hours.

    Anyway, that's just one example, but most comments I see online are something like that, someone "requesting" something or complaining about something else, so at the moment this project feels more like work than a hobby, so it really doesn't make sense to continue this way since there is nothing to be gained in the end.
     
  3. XRick

    XRick

    Member
    It's quite unfortunate that it happens.
    It usually ends up being like that, fan-projects that get a lot of attention tend to attract people with unreasonable expectations or standards.
    And in the end, all they do is get the creator so fed-up that he/she literally gives up on the project.

    I can't blame you for feeling down like that, nor do I have the right to push you to keep going when you have little to gain of it.
    Just remember that I, and possibly many others, have been enjoying your project so far and can only hope it can go on for as long as possible.
     
  4. SubCog

    SubCog

    Member
    22
    0
    0
    In terms of polygons or sprites, I get the desire to use sprites, as they match the look of the x-treme videos. However, I think the sprites would get boring after the first few minutes. The low-poly model used in z-treme has loads of charm, but looks better overall and has more lasting appeal.
     
  5. Ritz

    Ritz

    Subhedgehog Member
    I'm all in for another project. I'd rather play a platformer than an FPS with a Saturn pad, but as far as X-treme goes, you've gone further than the original devs in a fraction of the time and made the dream sufficiently real, and that's plenty. I just want to see what you can do with the Saturn, so follow your curiosity.
     
  6. Unfortunately, nothing helps. No matter what I do, it tells me it "Can't initialize ISO-File Virtual Drive", unless I use the built-in bios, then it tells me "Can't initialize Game"
     
  7. XL2

    XL2

    Member
    48
    1
    6
    Emulators all have different issues, but for sure on phone it's really not the best way to play it.
    Did you unzip the file?
    If so, try to open the cue file, if that doesn't work try the iso, but you won't have music.
    Try it on pc, it should run in most emulators, but for sure a real Saturn would be better.
     
  8. Strangely enough, running the ISO does make it work.
     
  9. I feel like the problem with Z-treme is too many players are tossing it aside "cuz old" when this is a glowing, technical achievement that's also a lot of fun to play. You can tell that the TSSZ review missed the fact that there's actually a goal and multiple levels and I get the feeling they aren't the only ones. It's a shame that you'll be putting this project on hiatus as it was a major highlight at SAGE for me personally, but I hope you'll come back to it soon.

    I also wanted to add, because I may sound a little demanding, that you do not owe anyone anything. Don't feel bad about your decisions with this project, both from design and how much you work on it. That's entirely up to you, and especially with it being free, there's no reason for you to ever feel like you owe someone for your work.
     
  10. Spinksy

    Spinksy

    Member
    219
    0
    16
    UK
    That's one thing on this forum thats always annoyed the hell out of me, someone can release a sonic game thats basically a sonic 1 level with a different colour palette and everyone loves it - something like this gets released, which as others have said is a great technical achievement - and it hardly gets looked at.

    It was the same when all the leaked sonic xtreme stuff got uploaded and talked about a few years ago - hardly anyone was interested yet a single old inch square magazine picture from 1990 from a sonic 1 supposed beta gets everyone buzzing lol.

    Anyway I played the SAGE build and still love it, my 5 year old girl enjoys it too (although she dies within seconds lol)
     
  11. itsstillthinking

    itsstillthinking

    Member
    167
    0
    0
    Sonic Adventure 1 & 2 Dreamcast Website, Sega Saturn Netlink Voip
    Due to people asking here is the version i used that has X-Treme music in it, just for those who want the 1996 feel :specialed:
    http://www.mediafire.com/file/ie78uh4h0mebxvz/SONIC_Z_TREME_SAGE_Music.zip/file
     
  12. Andrew75

    Andrew75

    Technical Artist Member
    1,948
    19
    18
    Project AXSX(Sonic Xtreme) + Misc Projects
    Sigh, me and Jolly worked out asses off on getting the beta builds released to the public here on retro with multiple builds dropping left and right, and it felt like no one really cared, I bet that almost nothing was added to the wiki even, I dropped a lot of other info during the release as well. Including emails from Mike Wallis , Xtreme is so unloved ... anyways this was the reason Jolly dropped out from redoing the gameplay mechanics in the original builds. He made it pretty far with optimization for the visuals on Saturn including fisheye at 60fps in smaller levels. But yeah he didn't want to release any of that cause of the underwhelming responses for the hard work he put in on the other releases. I have a few of these builds sitting around and even have a level injector tool which replaces levels in the ISO. I got that for testing and tweaking level format so they could work with his custom engine version.

    Sucks that this project is going that way too. But I wish the best of luck on whatever you desire to do , and please keep sharing your other Saturn work here! With time , you will only squeeze more power out of the hardware !
     
  13. XRick

    XRick

    Member
    Since my account wasn't active at the time, all I could do was keep watching each of these threads.
    And yes, it's quite saddening very little people cared about these projects so far...
     
  14. Spinksy

    Spinksy

    Member
    219
    0
    16
    UK
    this makes me genuinely sad! Is there no way any of it can be released? Everything about Sonic xtreme gets me excited so really sad to hear this.

    (and its another reason I was so hyped to test and play ztreme - and why I bug you for updates on axsx lol)

    Just know there are people that are in awe of all this and ztreme/axsx and Sonic xtreme stuff are the only thing keeping me coming back to this forum!
     
  15. VectorCNC

    VectorCNC

    Member
    508
    0
    16
    CNC Sculpture/Artwork
    Not that anyone cares what I think, but I love this stuff, but I have nothing really to add so I just lurk in the background. Probably a lot of people do. Seeing this stuff really stokes my nostalgia.

    I don't know if this has anything to do with anything, but sometimes it seems like there are clicks around retro, and unless you're one of them it's hard to get many people to even acknowledge anything you say. That's me anyway.
     
  16. Asagoth

    Asagoth

    Behold! The mighty, the flawless, salted cod eater Member
    Man... you shouldn't give up because of poor attention on your work... or complaints... just follow your heart... be proud of yourself... do what you do best... the rest don't matters... complaining about something is easy... doing better is another different thing... now concerning the wiki (I've no inttention in offending you people... I've the utmost respect for you Folks)... Sonic Retro has 22181 members ... I can count with my fingers those who edit the wikis... if you guys have valuable info about something just go to the wiki an add it there... I know is not easy in the first time (I never edited a wiki before I joined Retro... and I have much to learn yet...and my English sucks sometimes... but is as easy as learning to ride a bycicle...) do not expect others to do it for you (no offense)...
     
  17. XL2

    XL2

    Member
    48
    1
    6
    I'm not giving up, but after scratching my head for months about occlusion culling because of Sonic X-Treme's weird mix of maps, I decided to just go "screw it" and try to build a bsp compiler or portal system, which would work for sure in a FPS game, but maybe not in Sonic X-Treme's maps.

    But the Saturn being the Saturn, everything is super complicated, so I'm not even sure where to go and there is 0 documentation or tutorial online for it, as everything is about "normal" 3D, not Saturn's weird take at 3D.

    Like, if you take a BSP tree, you need to subdivide your polygons to create convex regions.
    On PS1 and N64, it's all good, you just need to modify your texture coordinates in these newly subdivided polygons to keep the same texture and make it seamless. You can also clip the polygons on your portals for a faster rendering.

    On Saturn, well, like usual, it just doesn't work, you will end up with really ugly walls and textures.

    I'm a really huge fan of Lobotomy Software's work on the system, but it's far from perfect.
    See this image from Duke Nukem 3D, you can see how the subdivision of the polygons creates so many problems, like the "narrow" monitors and the ugly floor.
    The map is very obviously auto-partitionned with a BSP tree.

    [​IMG]


    You can hide these issues to a certain degree with gouraud shading, but on colorful maps like in Sonic X-Treme it won't work and will look ugly.

    Creating simply a portal system can avoid this problem since you don't need convex sectors only - so no need to subdivide your polygons - but good luck placing portals in Sonic X-Treme's maps and you will still need to use a z distance sorting, which creates many z fighting issues.
    And since the sectors aren't convex only, you are limited for the clipping because of how it works on Saturn (you can use a user clip draw command, which will clip within a rectangle on screen, but the distance from the camera must be carefully planned else it just won't work since it clips on the following draw commands).


    The other solution I played with is a PVS system within an octree, sampling as many points as possible.
    The problem is that it takes forever to compile (more than 1 hour on my i5 6600K) and even then it's not perfect since your nodes can have a wall right in the middle, making the occlusion culling useless.

    The other solution is to just forget occlusion culling and just draw everything, which is what I'm currently doing.
    Thanks to the LOD system and mipmapping, it's an acceptable solution, but if you just add gouraud shading it quickly increases the rendering time by maybe 20% or so, which hurts the framerate too much in some areas.
    It also increases the CPU load since you need to transform more vertices and polygons that are being occluded, so it's not a very good solution.
     
  18. XRick

    XRick

    Member
    Well, from what I've been reading around as of late, the Saturn really seems to be a programming mess or something.

    Unfortunately, I have no programming knowledge, so I can't help you in any way.
    I can only hope you manage to find some useful intel or get in touch with someone in the scene capable of giving you some tips.

    Anyway, there's people in here who are attentive of your work and praying for the best to you.
     
  19. XL2

    XL2

    Member
    48
    1
    6
    Surprisingly, it seems like most maps from Sonic X-Treme are working with the BSP compiler I (quickly) wrote.
    Here is a shot of Jade Gully in OpenGL (PC, for testing) after the BSP subdivision.


    [​IMG]

    I just simulate the Saturn behaviour in OpenGL for faster testing, mainly for the lack of texture coordinates on Saturn (but it's not perfect).
    I'm using a solid leaf bsp tree from the MrGamemaker famous bsp tutorial.

    You can see, just like Saturn Quake and Saturn Duke Nukem 3D, how it creates issues with textures because of the lack of texture coordinates.
    The way around this is to declare some quads as entities instead of parts of the map to avoid diagonal subdivisions.
    Some maps just don't work with it, such as Super Mario 64's peach castle.
    Crystal Frost didn't work, but I think it's because of the massive cuts I made to the level's geometry in october of last year to get a demo ready for Retro Barcelona.

    I still have not implemented portals and pvs, so I don't know if the maps that currently work will still work after.
    It should help reducing the overdraw, allowing fast gouraud shading, and speed up collision detection a lot, maybe allowing proper collision detection against the map for ennemies too.

    I also did a quick test with E1L1 from Saturn Quake (before implementing the BSP compiler), and it ran at mostly 30 fps on real hardware with OK draw distance.
    [media]https://imagizer.imageshack.com/v2/4032x3024q90/922/fF2Ilw.jpg[/media]
     
  20. CollectiveWater

    CollectiveWater

    Member
    134
    0
    0
    John Linneman at Digital Foundry did a DF Retro Extra episode covering SAGE 2018 (he did one for 2017 last year as well), and "Sonic Z-Treme" is the first game covered in the video. (He also highlights several other games from this year's event.)

    Very well-done as always by John. Hope y'all enjoy, if you haven't seen it yet: