I’ve ticked the bell. Don’t wanna miss anything :)
@goddessesstartrekonlinefle30618 ай бұрын
Looks great! One thing I noted was when the yellow car is distant it's details start looking oblong vs rounded when it gets closer. Not sure how your doing scaling, but if your doing pre-prepared scale sizes in memory you could maybe have something to adapt the edges to make the scaled sprite less entirely oblong with obvious flat edges (aka everyones a critic, and this looks fantastic, amazing work!). I found that if most objects aren't entirely round, cropping the 4 corner pixels when scaling down helps make it still look rounded at a distance (though obviously, thats a small detail and your work as show looks amazing already).
@gridleaderretro8 ай бұрын
Thank you! I ended up recreating the pre-scaled car sprites using a slightly different method (for unrelated technical reasons), and I think they're looking a bit better than previously. There's a new video up on Twitter at twitter.com/RetroRacing/status/1774190348144631897 and I'll post an updated video here in the coming days.
@jinxterx8 ай бұрын
Looks brilliant so far!
@gridleaderretro5 ай бұрын
Thanks!
@jamesfmackenzie8 ай бұрын
Super smooth!! 😎
@gridleaderretro8 ай бұрын
Might be dropping a few frames here and there as I add sound and further game logic, but I'm fighting hard to retain that 50fps!
@noelsaw8 ай бұрын
Nice! Fast and smooth 👍
@gridleaderretro8 ай бұрын
Thanks! Fast and smooth is indeed the objective here, even if it means losing out in graphical richness.
@kometbomb8 ай бұрын
Definitely very un-ST-like feel with the impressive framerate! I think it helps with the whole perspective illusion, seems much more real. Maybe the brain has less time to process each frame so it is fooled. :) Also, the routine seems to be quick enough to travel back in time from April 2024 to March 2024 ;)
@gridleaderretro8 ай бұрын
Oops! I have corrected the title. Yes, the great thing about having a high framerate is that it seems to be possible to get away with a lot of imperfections that would be very obvious and jarring at a lower framerate.
@Maraka77i8 ай бұрын
Nice transition from night to morning sky. Any weather effects planned like on the Jag XJ220? Maybe a choice for multiple Le Mans winning cars from the 80/90's 😇
@gridleaderretro8 ай бұрын
I'm deliberately keeping a limited feature set for this one - I want a short development timeframe and therefore a project I can actually finish for a change :) Weather effects would be nice but I think I'd need to drop to 25fps in order to do so, which is not a compromise I'm willing to accept on this project. The fluidity of 50fps is extremely important on this one!
@salem_ok67328 ай бұрын
Impressive WIP already! Did you reuse some code from your previous works or are you building everything from scratch?
@gridleaderretro8 ай бұрын
Thank you! It's a mix of stuff cobbled together from previous projects, and newly written stuff. The compiled sprite generator, road curvature algorithm and time of day transitions are new. Everything else is adapted from previous projects.
@nekononiaow7 ай бұрын
This is really nice! Correct me if I am wrong but there seems to be only two levels of "scaling" and the road movements are currently faked right? This is 100% fine at this stage since I presume your initial objective is to determine the feasibility of the rendering objective and drawing objects larger than they will be in the end is a good idea. Be aware though that computing a realistic perspective correct raster road is not free so keep a little bit of CPU available in your budget for that! Looking forward seeing future progress! ❤
@gridleaderretro7 ай бұрын
There are 8 sizes for each sprite, and yes, the road curvature is completely faked. This is the best I can do at 50fps within the constraints of 1 meg of memory and 8MHz :) This engine won't be changing too much for the initial release - my plan is to get sound, collision detection and gameplay elements added in, and then release it. After that, I'll be exploring what else might be possible for a version 2 release by upping the memory limit to 4 meg. It's possible that filling large amounts of memory with precalculated data might offer the opportunity to add fancy things like hills while still retaining the 50fps framerate :)
@nekononiaow7 ай бұрын
@@gridleaderretro Oh, 8 levels of scaling? So much for my quick visual estimation. 😅 Looking back at the video frame by frame, I was indeed able to count 8 scaling levels, my bad. However, looking at their respective sizes I now understand why I thought there were only two: their variation in size as a function of distance is not perspective correct. The furthest pylons for example should barely be a few pixels in height when they are visible in the distance but instead they are quite tall. Also, the variation in size does not seem to match perspective as well: they grow much too little when far away and much too fast when close. This said, I presume that this is not yet final and you will have plenty of time to adjust their widths and heights as a function of distance (normally, they should vary proportionally to 1/Z). Another thing I noticed is that you seem to do the same as Super Hang On, that is you continue to display sprites which are so far away that their sprite index is in effect inferior to 1, so this means those sprites stay visible at the lowest size even though technically they should be scaled to much smaller sizes. I personnally find this a bit unnatural since your index 1 sprites are still quite big but I presume this is far from final as well. As for the fake curvature, I think it is possible to make a real one instead and I would strongly recommend trying to do that since fake curves look unnatural and are very tricky to negotiate properly from a control stand point: it's never too clear how the player should handle them since the curve can change quite unpredictably. Of course this is just my point of view, do what you feel is the best!
@gridleaderretro7 ай бұрын
Thank you@@nekononiaow - all your feedback is welcome and appreciated. I do intend to revisit the sprite.scaling (both the size of each variation and how/when it appears) - I know it's not quite right at the moment.. I'm not going to revisit the curvature for the initial release, and I'm not going to add hills. Top priority is to release something in a timely fashion that runs on a 1 meg STE at 50fps. Once I start trying to implement hills or improve the curvature, I have a nasty feeling that I'm going to start hitting memory and CPU time limits, and the release date and/or the memory requirement will start getting pushed out as I look further into those avenues :) After this is released, I'll look at a sequel that uses all available 4 meg of the STE to hopefully build some lookup tables to do hills and proper curvature without any MULs and DIVs. Once I introduce any significant number of MULs and DIVs, might as well say goodbye to 50fps!
@nekononiaow7 ай бұрын
@@gridleaderretro 👍 Yeah, DIVs are a big no-no, MULs can be tolerated in some circumstances but oftentimes they are best replaced with lookup tables.
@scottelkington76618 ай бұрын
Super fast and smooth! Is there any possibility of any hills, or is that pushing it a bit too much?
@gridleaderretro8 ай бұрын
I'm deliberately avoiding doing hills on this particular game - not necessarily because it's not possible, but because I want to release the first 50fps "into the screen" racer, and I want to complete it within a sensible timeframe without getting stuck in development hell. Hopefully I'll be able to build upon what I've learned on this first iteration into future games - maybe there'll be a subsequent game still running at 50fps with hills too!
@nekononiaow7 ай бұрын
@@gridleaderretro You have your priorities in the right order! 👍