Search Unity

Oxion Transonic (working title) development thread.

Discussion in 'Made With Unity' started by FuzzyQuills, Feb 4, 2016.

?

What do you think of this game?

  1. It's AWESOME!

    3 vote(s)
    23.1%
  2. It's good, but it needs more added to it.

    7 vote(s)
    53.8%
  3. Not a fan of sci-fi racers...

    3 vote(s)
    23.1%
  1. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    For those who enter this thread, this is a racing game project, alongside Plasma Fauna, that I am working on. I have archived the OP I made for reference as to where this project began; a $1 USD paid game on the Windows 10 store. (Due to a GST law change in Australia, it had to be taken down while I sort out the requirements for paid apps)

    In the time since February 2016 to now, the game has changed into an entirely different (and hopefully better optimized) creature, compared to the original game. As some who saw the game's previous name have noticed, I have changed the title a little bit (thanks to who in this thread pointed out how obscure the old name was) and am still working on a catchy title. (I'll accept feedback on what it should be too, so feel free to suggest a name you think may fit :))

    I have also cleaned up the target platforms list to be cleaner.
    For those who have been following me the last couple of years, you probably didn't expect this to show up... I'll tell the whole story of how this game came to be.

    In short, last year in the middle of November, I'd just graduated school, and there was at least three months of holidays before me. I wasn't sure what to do then, I was thinking maybe I could finish Jet Rat Speedway, or start work again on something else I had put down so I could finish school. Then on the Unity forums, I came across this in the top bar: http://forum.unity3d.com/threads/unity-game-developer-contest-2016.370883/

    That there alone gave me a good idea of how to spend most of my holidays; Why not make a game for a contest? Of course, I could have worked on one of my put down projects, but for some reason, I felt that it be a bit half-cooked if I did so. Plus, at the time, I was studying how some of the older games took off, and was originally going to make this game a Mode7-style racer. (That functionality, due to some weird technical limits, was removed later in development in favour of more vibrant 3D graphics...)

    Nonetheless, after a bit of writing of a few concepts, and experimenting with the racing mechanics, I came up with my concept. (Put in spoiler, as it's a bit... tl;dr :p)
    PROJECT MODE7
    Overview:
    For those reading this, I welcome you to project Mode 7, a concept that aims to combine several racers into one, and manage this using pseudo-3D (or pseudo-3d-like) techniques. This concept will hopefully blossom into a full game that will be submitted to the Unity Developer Contest 2016.
    The setting is this: It is the year 2042. In this time, war has finally ended on Planet Earth. With world peace a thing now, the world superpowers could finally put their money towards much better things for the human race. One of these is... entertainment. Even with TVs, video game consoles and smartphones, people still like heading outside every now and then. And one proposal to get everyone excited every year for something was put forward by an engineer going by the name of Jan-Ryukku.
    This man had built a prototype vehicle he dubs the Miraien, an electromagnetic vehicle capable of hovering above the ground and reaching astonishing speeds. he puts the vehicle and a set of race rules forward when the world superpowers send out a call to those willing to invent a new form of entertainment. The government decided to take the chance and test this idea out on a new track being built in Amsterdam. The first race held using these machines was a success, and the government approved the idea, resulting in the birth of the organization dubbed "type-m racing"
    Since then, the roller-derby style races became very popular, and contact with alien species established a trade for parts that powered these vehicles, with certain intergalactic nations willing to host races on their home planets. Soon, a well-defined grand-prix across the milky way galaxy formed, with each race packed to the brim with spectators.
    On the 26/10/2042, a massive tournament is going to commence, and such tournamnet is to last for a week. This tournamnet is the biggest in type-m history, and has one of the biggest cash-prizes ever seen in a type-m race. If you, the game player, decide to enter this intergalactic grand prix, you are up against both the veterans of type-m racing, and the filth who only aim to ruin the race for everyone else. Each race is a very tense and fast effort to not only come in first, but come in first with no scratch on your machine. Plus, you must have the reflexes to handle 768kph max speed at all times. Are you prepared entrant?
    This game will feature several types of vehicles, the ability to customize them a little, and very fast paced gameplay.
    Mechanics:
    - The game is a roller-derby style racer where you race the vehicles of the future through various courses throughout the milky way galaxy.
    - The in-race situation is that to win, you do what you do in basically every racer; be in the top four or something by the end of the race when you cross the line.
    - The in-race goal comes with a challenge; if pushed too far, the machines can overheat, and the condition of your vehicle affects how fast you go. Additionally, it is possible to attack (and be attacked by) other racers pushing for first place.
    - The vehicle can boost on command, of which can be used as an attack. However, the boost speed and duration are affected by the condition of your vehicle (aka. a heavily damaged engine will make a boost next-to-useless)
    - every lap, if you satisfy certain conditions, you may get a special attack. You can hold up to two at a time.
    - The end-of-race condition of your vehicle improves your overall pilot ranking, and winning a race (or coming in the top four) with a properly maintained vehicle in-race earns you bonuses for the next race. Additionally, the vehicles, no matter how damaged they are, will be repaired fully before next race begins.
    I will admit that not everything in there's been implemented yet into the game, (special attacks, we're looking at you. ;)) due to the contest deadline... :D Anyway, so I got to work on my concept, and for those interested, here's an early screenshot. The idea was to pre-render everything, including the flat mode7 maps in Blender to give it a semi-realistic look:
    ProjectMode7_MiraienTournament_EarlyWIP.PNG
    A note as well is that I decided that, rather than cheat mode7 with a textured plane, I would go and render it in a shader using a full-screen quad, that way, it stayed natural to the original effect... however, later on in development, I started to run into issues trying to re-scale a couple of the maps to the world scale, due to technical limits with the algorithm causing the tracks to look 'floaty' when driving over them. On top of that, it was very diffuclt getting the sprites to line up properly with the virtual road. I would have just put up with this, but after looking through some old files after christmas, I was kind of disappointed that one of my mobile shader frameworks was left sitting around on it unused...
    So a week before submission, I made a decision; I would go 3D instead, using my shader framework, and drop mode7. It was definitely easier to go down that route anyway, and it would mean that races and tracks could be longer than they were. I may as well give a screenshot of the current version of the track shown above:
    upload_2016-2-4_19-5-40.png
    This is using a current version of the mentioned framework, as during development, I upgraded parts of it substantially to suit the game. (I also coded in a workaround to waiting hours for lightmaps to compute...)

    Anyway, so since that, I worked hard getting two cups and six tracks into the current version for a small release. I've had some hard times making this the way it is, and there was a couple of times where I nearly quit:
    - The first showstopper was a Unity 5.2.2 bug, of which was fixed by upgrading...
    - Then later on into development, I ran into performance/unstable build issues that were so bad I was almost going to bite the bullet and see if 5.3 would help. (It actually did end up using 5.3.2 in the end) Well... I then discovered the simple solution of completely emptying the temp and prefetch folders of my hard drive, of which magically gave VS the ability to make stable builds again. (Thank you Google!)

    But after those issues were out of the road, lo and behold, my first attempted submission to the Windows Store was a success. (I managed to pass certs on the first try!) I then had to quickly update the game with a bugfix, and when that was done (My certs for my update passed in UNDER AN HOUR, BTW! :eek:) I finally had my submission for the Unity dev contest!

    Now, not only have I entered my first game dev contest, but I have also accomplished the first goal of any game developer; I have finally published my first game. :) So I present... Miraien Tournament!

    Essentially, this game is a test of speed and endurance; keep your vehicle in tip-top shape during the race, or have it perish. On top of this, you are facing off against 15 other racers, of which not all are friendly or willing to let you have first position. Are you prepared?
    In this game, you have a condition meter, and a temperature meter. Have the condition lower to 0, and you perish and have to start over... Have the temperature get too high, and you run the risk of an engine fire knocking you out of the race. Your speed is also affected by your condition, and when it gets very low, faint smoke will rise out of your vehicle engines...

    The following will cause the condition to lower:
    • Colliding with an opponent. Additionally, if you get hit by an opponent boosting, you suffer more damage from it. Hitting an opponent while boosting does nothing to you however, so this can be used as an effective attack method to knock out other opponents!
    • Hitting designated obstacles and barriers. The amount of damage you take depends on the speed you hit it at. Note that scraping against a marked obstacle won't damage you.
    • An engine fire.
    The following will affect the engine temps:
    • Boosting will make the temperature rise. Note that this doesn't happen if you ran over a plasma panel to get said boost; Use this to your advantage, as your top speed affects the cooling system's ability to cool down the engines!
    • Hitting a wreck (these appear where an opponent perishes from not being careful...) will cause an instant engine fire, so be careful!
    • the cooling rate is affected by the speed your travelling; Generally, faster vehicles cool down a bit quicker than slower ones. Additionally, using plasma panels to boost rather than forcing one with the space bar/RT trigger helps the cooling rate.
    Currently, the only goal is to win. In future content updates, I'll be adding more objectives to the game, such as bonuses obtained from keeping your car in good condition, keeping the engines' cool, etc.

    Below are the current and future platforms I have planned support for, along with their minimum system requirements:
    Please note that these requirements are not final, and are mostly based on absolute lowest graphics settings @60fps:
    Windows XP/Vista/7/8.1/10:
    CPU:
    Intel Pentium 4 or Athlon 64 2.9GHz (on the laptop side... will also run minimum on AMD C-60 with some hitches)
    GPU:
    - for D3D backend:
    DirectX 9.0c, SM2.0, 256MB VRAM (Recommended: SM3.0, 768MB VRAM)
    - for OpenGL backend: OpenGL 3.2 or higher, 128MB VRAM
    RAM: 2GB RAM (1GB for Windows XP)

    (A worthy note is that the absolute lowest config that can run the latest build is an Intel Atom N270 + GMA 950 pairing, at 30-60fps) Due to an update of Unity to 5.5.3f1, it may not run anymore, I'll be doing a test run soon.

    OSX:
    <Currently unknown, will need to get Mac builds out for testing which hardware tier is minimum>

    Linux (only tested on 64-bit):
    CPU: <Same as Windows>
    GPU:
    OpenGL 3.2 or higher, 256MB VRAM (the recent requirements change is due to the OpenGL 2.1 backend being removed in Unity 5.5)
    RAM: 2GB

    Android:
    OS:
    Android 4.0.3 or higher
    CPU: 1GHz NEON-capable ARMv
    GPU: OpenGL ES 2.0 minimum
    RAM: 768MB

    Other platforms I have planned support for:
    - New Nintendo 3DS. Certain things on Unity/Nintendo's side need to happen first though.
    - Windows 10 UWP (This may mean Xbox One support, but don't count on it)
    This platform is in danger however, as I'm slowly moving away from using Windows for
    development.


    For 2017 to 2018, I have edited this post to reflect the more recent changes (aka. the game's original build not being available anymore, the subsequent rebuild, etc) hence a lot of the original information (controls, download/purchase links, etc.) has been removed. I have also cleaned up a couple of sections to make them easier to read and understand.
     

    Attached Files:

    Last edited: Mar 14, 2018
  2. Farelle

    Farelle

    Joined:
    Feb 20, 2015
    Posts:
    504
    congratulations :D and this looks nice :)

    aww....just noticed i can not download it because I'm not on windows 10 :/
     
  3. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    What OS do you have? I am going to make this multi-platform in the coming months. :) If you have Windows 8.1, I was planning on getting an 8.1 build out for those who don't have 10 yet.

    On second thought, do you have a tablet? I am going to release a minor update soon to add touch controls. (And I mean very soon, I'm considering doing it before the contest date if I can)
     
  4. Farelle

    Farelle

    Joined:
    Feb 20, 2015
    Posts:
    504
    im having windows 8.1 currently, might update that at some point though :) and nope, I have no tablet

    edit: gonna wait then and look forward to it :D I always liked futuristic looking racing games like that :D
     
  5. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    I've just done a quick search, and it appears I can add windows 8.1 support. :) I am going to check that publishing one would be allowed for the contest first though. (I am aware that publishing to iOS and Android are allowed for the contest I'm entering, but I'm not sure about windows 8 just yet)

    And even though this initial version doesn't have as much content as I hoped, I do plan on adding more in the future. Due to when the judges actually give out results though, you might be waiting until April... :( (I'll definitely have touch controls in by then! :D)

    EDIT: Also remembered there is one other person I'm in contact with who wanted a windows 8.1 version... :D
     
  6. Farelle

    Farelle

    Joined:
    Feb 20, 2015
    Posts:
    504
    hehe until april i might have changed to windows 10 XD
     
  7. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    True. :) Hopefully Microsoft fix up most of it by then...
     
  8. Whiteleaf

    Whiteleaf

    Joined:
    Jul 1, 2014
    Posts:
    728
    Cool! I like the retro look of it.
     
  9. carking1996

    carking1996

    Joined:
    Jun 15, 2010
    Posts:
    2,609
    Any videos? I'm curious
     
  10. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Congrats, although you should tidy up the typos ;)
     
  11. carking1996

    carking1996

    Joined:
    Jun 15, 2010
    Posts:
    2,609
    Bought it. But there are lots of bugs and improvements that could be made..

    1) Options loads Enter Nickname, can't do anything
    2) Single player also loads that, but then it loads the next screen
    3) I want to be able to go through the courses to know what I'm driving on
    4) Cars are terribly difficult to steer
    5) WASD/arrow keys, unuseable, A for Go? why not W and the up arrow?
     
  12. iamthwee

    iamthwee

    Joined:
    Nov 27, 2015
    Posts:
    2,149
    Very nice fuzzyquills, any chance of a mac64 build. If you need any help with modeling or texturing pm me.
     
  13. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    In the windows store description? Half the time, I don't realise I've made them until I've submitted it... :D
    1) That's odd, you should be able to type into the name field... Click inside it, then start typing. (And hit enter when finished) Then click save when finished. Dare I hope something didn't screw up again while building the game... (My system's had some issues producing stable builds lately)
    2) Not sure what you mean by this one... broken transitions? Buttons don't work? A video of this would help, as everything works fine here.
    3) A tutorial level perhaps? Or maybe a small flyby to give you an idea? I'm open to suggestions. :)
    4) A couple were made deliberately like that, (Titan 9, I'm looking at you. ;)) but which ones? I am aware that the arrow keys have the gravity set a bit low... that's actually a leftover remnant of the old Miraien Tournament, when it was still Mode7.
    5) I could do that, but I've found that feels odd to me. I guess adding a dropdown to select the control scheme would help. As for WASD being unusable, I tend to try and depart from typical PC controls, but I guess the option should be there anyway...

    All in all, thanks for the constructive feedback. :) I'm thinking of putting out one more update to add touch, so I can definitely add some controls changes.

    Which screen were you looking at? :D Hopefully it wasn't the older one... it doesn't look like that anymore!

    You only have a Mac? I can definitely send one either way. :) As for modelling and stuff... I'll send something over soon. :)

    I might as well put down the future platforms now for those interested (If there's any you think should have the game, let me know!)
    - Windows 10 (Obviously... :D)
    - Windows 8.1 (Coming in an imminent update)
    - Windows x86-64
    - OS X
    - Linux
    - Android
    For those with iDevices, I apologize, but atm, I don't plan on porting to iOS, mainly because I don't have a Mac to build with.
    Might be thinking about these three below, I don't have the resources to do so yet:
    - Wii U
    - Nintendo 3DS/New Nintendo 3DS (Yes, I hope to get it to run on the original... :D)
    - Xbox One (Possibly easier than the other two...)
     
    Last edited: Feb 5, 2016
  14. Whiteleaf

    Whiteleaf

    Joined:
    Jul 1, 2014
    Posts:
    728
    Haha, I saw both. Still looks N64-ish to me.
     
  15. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Even with the shadows???? :D :) ;) :p
    Jk. Still, didn't expect that. :) I feel honoured... seriously. :D
     
    Last edited: Feb 5, 2016
  16. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Ok people, I have successfully tested a windows 8.1 build, expect backwards compatibility soon. :)
     
  17. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Ok people, the improvements update is on it's way, aka. Miraien Tournament 0.9.3! :)

    For those tech-savvy dudes, that's Windows 8.1 build 0.9.2 and Universal 10 build 0.9.3 (the windows 10 build number has to be higher for publishing backwards compatibility to work)

    Changes/Fixes:
    - Fixed performance regression in the shadow mapper, it turns out Unity's shadows were also running in-game when they shouldn't have been.
    - All tracks got some visual optimization; some texture glitches were fixed, and the game should run better on some devices now. :) (Especially on Double Jump, of which was notorious for lagging sometimes)
    - Loading times improved. This was a side-effect of optimizing some parts of the game for android. :)
    - Touch controls option added: in options, if you have a touch device, select "use touch controls" and upon entering a race, a control slider and button will appear. Race away gamers on the go!
    - Switched to using color-only ambient lighting instead of IBL (speedup)
    - x86 Windows 8.1 support :) (Windows Phone 8.1 support isn't coming yet however, the rules are a bit... weird. Plus, my game would probably blow the per-app memory limit without trying! ;))
    - Control layout changed: now the up and down arrows control acceleration and brakes. :)
    - Brakes fixed, it turns out it was never implemented in the game... (The "brakes code" I thought was there was actually inside a different project, whoops!) Note that the brakes were intentionally left out of the touch controls. (But boosting wasn't meant to be left out, check known issues...)

    Known issues:
    - If there's game lag, touch controls can become hard to use. The only solution atm is to use a faster device.
    - It is possible to get stuck in a pit area if anyone runs into you as you're entering. this bug affects mostly AIs, but human players can get it too. The workaround, unfortunately, is to restart the match if such bug is encountered... :(
    - The windows 8.1 build looked a bit small on upload... if it crashes, let me know, and I'll fix it. Since windows app certs for the 8.1 version passed locally however, I would expect it to work fine.
    - Music volume seems to be a bit low without using earphones... :-/
    - I completely forgot to implement boosting in the touch controls... (DAMMIT! :eek:) I'll have to fix that up tomorrow, and update again... :D For now, on touch systems, use either a keyboard or an Xbox controller to get boosting back, or really make skillful use of plasma panels!
    - Some systems still lag... it isn't as bad now however.
    - If the nickname isn't set, the trophy screen incorrectly shows "try again" to fix, set your nickname. If you had to go and enable touch controls, it's a good idea to enter this too.
    - On Windows 8.1 devices, the launch splash may look a bit weird...
    - Flickering lights in the last stage sometimes. This probably won't be fixed, as I haven't found a suitable workaround/fix yet.
    - Plugging in an Xbox controller in-game works, but unplugging it doesn't restore the cursor. This shouldn't happen!

    And that's all for now. Also, the game's size was reduced by compressing (and downsizing) some if not all the textures. ;) Enjoy the faster downloads!
     
  18. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Another update will be pushed to the servers today, this will be THE LAST UPDATE before the contest deadline. Once contest winners are announced, this game will begin to receive updates again.

    In the meantime... I'll put up a WIP thread on add-on content soon.

    Fixes:
    - (Thanks Carking1996 for pointing this out) Fixed a bug where having no Xbox controller connected would cause the name field in the options menu to not work. (Stupid UI module was stuffing around again...)
    - Fixed the touch controls; the buttons are a bit smaller and neater looking now, and the boost button's in. :) it is the green one above the steering slider.
    - Fixed my uber-shader used throughout the game to work on SM2.0 hardware. For those with age-old mini laptops, expect ok performance. (i.e. don't be expecting 60fps throughout, but it's actually quite playable otherwise!)

    Known issues:
    - On hardware without support for depth textures, I have a workaround where I use EncodeFloatRGBA to store the depth value. However, on some devices, this configuration's super buggy, so I suggest checking that your device supports depth textures before attempting to run this game This issue has been fixed now.
     
    Last edited: Feb 6, 2016
  19. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Miraien Tournament 0.9.5/0.9.6:
    Changes/Fixes:

    - Windows 8.1 support fixed, ARM architecture added; previously, there was a package conflict that lead to temporary removal of windows 8 support. It's back now, and adds Windows ARM devices to the list. :)
    - Windows 8.1 builds will run at reduced resolution (800x480) this behavior should be in windows 10 as well, but unity 5.2.3f1 has a bug where it ignores the width and height in universal 10.
    For those who like to run things at 4k or higher... I will in future make this an option. ;) (Thatand adding some other pre-configured resolutions)
    - Fixed: the shadow fallback for devices without depth textures was broken. This was the result of a multi-compile line I forgot to put back in during testing... :D
     
    Last edited: Feb 8, 2016
  20. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    bump!

    NOTE: Due to the usual windows store update delay, it isn't out yet... :-/ I recommend waiting until the update comes through automatically for those who have bought it. For those who haven't... look for the text field fix in the changelog to confirm.

    In future, I'll be including the build number up the top of the description to help identify when a new one comes out.

    EDIT2: On second thought... check the note on my original post for details, it turns out Microsoft's servers are screwing around with the app submission pipelines... :-/ that's why the app update hasn't come.
     
    Last edited: Feb 10, 2016
  21. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    An announcement: The update's now live! Although Microsoft appear to still be having issues, the update's up now, so for those waiting... come grab! :)
     
  22. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    A short update: for those wondering if I have abandoned this, worry not; now that the comp's over (I didn't win anything... maybe next time. ;)) I can work on it again. :) So... here's what I plan to do when I find some time to start work again:
    1. FIX THAT DAMN PIT AREA FREEZE GLITCH! I still haven't worked out what weird error or state is causing the cars to get stuck there sometimes if another one bumps into them during repair.
    2. Graphics optimizations. Another very high priority action, as the game's using a bit too much memory with the current engine. (My game's gotten one crash report due to an out-of-memory error, I still haven't figured out what device the person was using, probably a Windows RT tab with some silly memory restriction)
    3. More cars and tracks. All of you, feel free to throw ideas around! I also plan on giving all my tracks a visual update to make the more pleasing to the eyes. (and moulding better with the skyboxes I have for them)
    4. Graphics fixes. Some platforms had weird issues with my static shadows, most prevalent in the last course in the tunnel.
    5. Graphics enhancements: the cars do lack exhaust jets, of which weren't added before due to deadlines. If there's some resources left over as well after optimization, I may chuck in some settings for bloom, DOF, etc.
    6. Online play: after years of dreaming to add online play to one of my projects, I might make the jump with this one, and with all 16 players there to boot! :) The only issue is server hosting for non-local multiplayer.
    7. Battle mode. (Maybe) It's low-priority atm, but if more people want it, I'll bump it up higher on the list!
    8. Some physics-level fixes; collisions still fail sometimes, and there are some weird physics on the cars I want to fix, such as getting stuck in walls while thrusting.
    9. Better touch controls: atm, IMO, they're not the best in the world, but I want community opinion on what would be better for this game.
    10. LINUX SUPPORT: Now that I'm mainly using Unity for Linux, I may transition this project there to see how viable a work environment that could be! :)
    If anyone else took a crack at this game, let me know what you think, as that will help me make it better. (Any type of constructive criticism will do. :))
     
    iamthwee likes this.
  23. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    NOTE: This post was copied from that odd abomination that was the new forum. I'm doing this to permanently set this reply in stone for when unity give it a go a second time. It was also one of my last replies before the forum rollback. On top of that... the smileys from Lithium somehow got preserved. :D

    Hi guys, just bumping this to report what's been going on with this project the last couple of months:

    So, the reason the addon content hasn't arrived yet is because... After the contest finished, it's been a bit difficult working through my spaghetti mess of rushed source code to both optimize it and fix bugs. As a result, after I put Unity on my netbook (and found it ran really well, well enough to replace my uni laptop for small unity work! ) I've now decided to start again from scratch.

    And so far, that's come out quite performant; not everything's in yet, but the basic car movement physics, camera script, and basic AI is in. It runs all 16 player/CPU instances on an intel atom CPU without breaking a sweat.

    I've also planned on ditching shuriken for some particle effects, and hand-modelling and animating some myself. (example; the cars now have exhaust flares, but the "flare" is actually a scaled spinning mesh with an additive texture, kind of like F-Zero X's flame effects on cars)

    As for why I'm dropping Windows 10/8.1 support soon though... :-/ That's a long painful story. And it isn't entirely Microsoft's fault either.

    Basically, I found out a couple of months ago that Intel never properly supported the 2nd generation intel chipsets past Windows 7, and as a result, trying to get OpenGL anything running on Windows 10 on my laptop has been either slow and sluggish, glitchy or outright crashing. (Minecraft + Optifine, I'm looking at you) This I think is one of the reasons the editor crashes for me if I try to swtich to any OpenGL backend on Windows (Linux works a treat though, trust Linux drivers to be better. )

    That, and hearing how Microsoft have been forcing the Windows 10 upgrade on some people has prompted me to leave Windows 10 to rot, at least for now. atm, I'm still running it, but soon, I'll be reverting back to 7 and getting my good OpenGL drivers back. The anniversary update has practically turned my perspective on the current situation though, so since most of the advanced GL stuff works on Linux anyway (I use a UEFI dual-boot on my main machine) I'm sticking with it. Especially since Cortana's notable improvements, like android notifications, got in. Now I don't miss calls when I leave my phone somewhere in the house, lol...

    Anyway, back on topic... so for those wondering in future where my windows store link has gone... that may be what's happened. I'm sorry for any future inconvenience caused, should I go and revert to Windows 7 in the future...

    On the bright side though, expect a reborn release of this game soon, with a far better optimized graphics pipe. That, and some new content. It's time I got back in the development game again.

    EDIT: Made some changes; Windows 10 build 1607 aka. the Anniversary update changed my outlook on Windows 10. that, and now that I think of it, I've liked supporting windows phone for some reason... :D

    2017 edit: The original dev machine is no longer used, I now use a Toshiba laptop running Windows 10 to develop unity titles, with the original, little-bit-more-powerful machine there for my gaming and game testing needs. Thus, UWP is here to stay

    2018 update: Windows phone is a dead dodo, the dev laptop is now running Linux due to issues with Windows 10 FCU on it, I have one machine left running Windows 10 FCU (the Desktop PC I use to play games on these days) but due to a small SSD can't use Visual Studio. Basically, UWP/Windows Store support is no longer planned for this game, I apologise for any inconvenience caused.
     
    Last edited: Mar 14, 2018
    Whiteleaf likes this.
  24. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Hello all! :) So... I haven't got around to getting condition + temps working yet, but the basic AI and vehicle physics are in the new 'reborn' version. :)

    I'll be posting a little progress video soon. I was also considering making both a Facebook page and a subreddit. Yay or nay? :D
     
  25. iamthwee

    iamthwee

    Joined:
    Nov 27, 2015
    Posts:
    2,149
    I'd say yay, publicity is always good. Do you have a new mac build for me to try?
     
  26. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    So, progress report; things around here have been a bit slow, and as a result, I haven't done much as of late. However, I do plan on adding in the rest of the barebones, along with a primitive online multiplayer implementation. (This will hopefully include matchmaking, but I'm not sure whether UNET's CCU limit would allow for that. Or I could use Forge Networking...)

    WOOOOW, my stupid notifications aren't working... again. That's something Unity should look at when they're bringing back the new forum. (If they do... hopefully, it won't be so ugly next time. ;))

    It isn't much atm, (very barebones test track without a lap counter) but yes, a mac build is definitely a possibility, I'll send one over when I have a bit more stuff in.
     
  27. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    So, I decided to redesign double jump a little bit... ;)
    Still the same engine so far, although I'm now adding code for the track spawns so I don't have to manually place the cars in every single time. :p Expect further improvements soon.
    I will also be posting a little video clip soon. :) Watch this space.
     
    Whiteleaf and iamthwee like this.
  28. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Some more stuff I've added so far:
    - Added ranking barebones.
    - Added several pre-built camera setups for various modes. I have: 1-player, 2-player local splitscreen and a special camera designed to emulate the dual screens of the 3DS. The latter is for when I obtain financial means of making a Nintendo 3DS/Wii U version

    For those wondering where the video clip went, I had some issues with all of my screen recording programs breaking after the anniversary update, (Windows 10 Game Bar's not even compatible anymore, due to my intel chipset having it's support cut off a while ago) so things have been a bit difficult. I do however have access to a powerful alienware machine at my uni I can use to post one, so expect something soon. :)

    Update: I may also be able to setup my mini 9 as a screen recorder as well... that thing is seriously amazing for a machine it's age!
     
    Last edited: Aug 17, 2016
  29. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Hey guys, just saying that this project is not dead, (it definitely seems that way tbh) it is being worked on still.
    It is due to Project Hovercats (previously named Jet Rat Speedway, still deciding on that project's final name) taking up a lot of my time, as it is now effectively my uni assessment. :)

    On the other hand, i was bored today and decided to open up the new engine for this project, and fix the lighting up. So,
    Changelog:
    - Added Alternator Power's lighting engine to the game:
    This includes dynamic light sampling on dynamic geometry, and dynamic projection shadows clipped by static geometry
    - Added Alternator Power's cinematic motion blur to the game.
    - Updated copyright text.


    YouTube link to the latest build preview, showcasing the (not complete) lighting and motion blur:

    I had also lowered the player count to 6. Forgot why now, the final game should still have 16. :)

    Also note that the motion blur is much smoother than that recording, that's due to the framerate dropping a little under 60 when I recorded it.
    It blits the accumulation buffer every second frame to avoid streaking, making the actual feed an effective 30fps.
    The missing shadows in one section is due to the lightmap not baking properly, making the shadow transition to a normally-shadowed area really obvious. (For some reason, it wouldn't bake shadows, no matter what I tried)
     
    Last edited: Apr 11, 2017
    Whiteleaf likes this.
  30. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    New changes:
    - The graphical side was overhauled:

    This was to address mobile performance issues, and some inconsistent lighting results coming from the fact that dynamic objects had a weird blending formula. It's now been fixed. A second pre-pass was added to replace the old light sampling system, and now baked shadows affect dynamic objects better.
    - The game now has a render scale setting: On supported platforms, Anti-aliasing in all scales is used as well.
    - The Miraien Oxion 1 as a playable car is now in the new codebase.
    - Updated the physics settings.
    The fixed frame rate normally goes at 30 ticks, but if needed, it can go down to 20 tick. (if a CPU bottleneck makes the framerate drop below 20, it is then below realtime speed)
    This helped eliminate stuttering on lower-end mobile devices.

    To give an idea of how this final version will run, here's the test hardware for the current set of platforms:
    PC:
    • Rig 1: TOSHIBA NB550D (development machine)
      • CPU: AMD C-60 APU
      • GPU: Radeon HD 6290
      • 4GB RAM
      • Framerate: over 60FPS (80-100FPS during testing)
    • Rig 2: "Kirby"
      • CPU: Intel Core2 Duo E7500 (3.2GHz)
      • GPU: Nvidia GeForce GT 640
      • RAM: 4GB
      • Framerate:
    • Rig 3: DELL Latitude E6220 (I use it as my Steam Machine now, it was my previous development machine):
      • CPU: Intel Core i3 2.1GHz
      • GPU: Intel HD Graphics 3000
      • RAM: 6GB as of the time of writing (it originally had 4GB)
    Mobile (please note that for power saving and stability reasons, double VSync is used on mobile)
    • Samsung Galaxy J1 SM-J100Y:
      • CPU: Spreadtrum
      • GPU: Mali 400
      • RAM: 768MB
      • Framerate: 29-30fps
    • Samsung Galaxy J1 Ace SM-J110F
      • CPU: Marvell ARMADA PXA1908 1.2GHz
      • GPU: Vivante GC7000UL
      • RAM: 768MB
      • Framerate: <same as first J1>
    • Elephone P8000
      • CPU: MediaTek MT6753
      • GPU: Mali-T720
      • RAM: 3GB
      • Framerate: 32fps
    • Pendo Pad 4.0 PP4MT-7 (the absolute lowest-end device I've got):
      • CPU: Allwinner A10
      • GPU: Mali 400
      • RAM: 1GB (I think, I haven't been able to confirm)
      • Framerate: 20fps (this device ONLY JUST achieves real-time requirements)
    And for now, that's it, I hope to have something here soon.
     
    Last edited: Mar 14, 2018
  31. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    New Changelog. The engine's core is nearing completion, and as soon as that happens, I will be able to develop a lot faster!

    CORE:
    - Fixed a performance regression due to an oversight on the bootstrap object:
    When trying to track down one particularly bad build's bottleneck, I found the bootstrap camera wasn't setup properly and the game was accidentally rendering the scene twice. This has now been fixed, and has substantially boosted the framerate on GPU-constrained platforms. (The extra camera is actually there to clear the screen in UI only scenes)
    Additionally, the game's bootstrap also checks for cameras already present in a UI scene. Should hopefully eliminate future bottlenecks.
    - Added in vehicle temperature + condition simulation: The repair stations are coming later, I'm currently fixing the 3D model up for game use (the original codebase used a pre-rendering that wouldn't be suitable here)
    - Added the game's icon back in. It's now at a stage where some of the branding can be reimported into the game.
    - Added respawns: Finally, vehicles are respawned when going off-course.
    - On race finish, the old cinematic camera now works: I finally added this one back in a couple of days ago.
    - rebalanced all the vehicle stats.
    - Fixed a bug where the bootstrap wasn't choosing vehicles from the array properly for AIs, resulting in some vehicle types never showing in-game on AI racers.


    VISUALS:
    - Rewrote the shading framework... again:
    Now the vertex-lit pipeline + a custom shadow mapping engine is used to shade the scene. Static geometry is baked with Enlighten for soft shadows, with a massive pre-computed shadow map stored at runtime for dynamic shadowing from static objects. For dynamic vehicle shadows, I did something naughty and hacked in a 4-tap bilinear filter to smooth the shadows out. Surprisingly enough, this works on mobile without a hitch, probably due to the VertexLM/LMRGBM passes not doing much else for static objects. (lightmap + bilinear shadowmap + reflection cubemap + diffuse)

    Additionally, any dynamic object can be lit with up to four dynamic local lights. (This includes the directional light) Shadows are only rendered for either the first directional light, or a "fake light" that points 90 degrees downwards. A final note that these new shadows will work on ALL devices, INCLUDING NVIDIA Tegra chipsets lacking the GL_OES_Depth_Texture extension!

    I also plan on releasing this game's shading framework at a later date for people to fiddle with. :)
    - Fixed a rendering oversight causing the scene to be rendered twice. Being that this was coming from the bootstrap, it's been included in the core section as well.
    - Altered the texture size thresholds based on the platform the game is running on. Now some mobile platforms that were texture bandwidth limited should perform better with realtime shadows.

    Known issues/Bugs:
    - Occasionally, respawning will result in the in-game AI losing track of the course, resulting in the AI getting confused and driving back off the track.
    - The ranking system occasionally shows the wrong rank on the HUD.
    This is actually because the old ranking system can't handle the density of Double Jump's new checkpoint layout. (This is due to the AI needing a higher density)
    - On slopes, the vehicles sometimes start burying themselves in the ground. This results in a speed reduction, causing problems if the vehicle can't quite make a jump. Fortunately, the respawns are there to catch any stray vehicles.

    I had time to record a playthrough FROM MY PHONE of the latest snapshot, apologies for the quality, I was trying to keep the file size of the video file down, as my phone's SD card is a mess. :D
     
    Whiteleaf likes this.
  32. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    New Changelog incoming:
    Right now, at it's current stage, the core of Miraien Tournament's second codebase is practically in complete state. I can now start adding the modes in, make/remaster maps and polish it all up!

    CORE:
    - Added vehicle selection:
    No map selection... yet.
    - Fixed a massive oversight in boost speed calculation: Now the vehicles are much easier to control, and certain ones are less broken than they were.
    - Vehicle stat balancing pass: Mostly to compensate for the boost speed fix
    - Ranking issues we're fixed: It has been rewritten to use a dot product check against invisible planes. It's a heck of a lot more reliable as well.
    AI still uses the proximity based system to make sure they get their target.
    - Pit areas are back in the game
    - The game will now use exclusive fullscreen
    - fully fixed some in-game stuttering by making my own rigidbody interpolation.
    - AIs now have better control over the speed they're going:
    They will now decelerate around corners, and use the brakes if needed, depending on how sharp the turn is. They will also slow down and head into pit areas when damaged or overheating, although this has some issues at the moment. (AIs occasionally overshoot their target and fall off... )

    VISUALS:
    - removed D3D11 backend for now:
    There are some shader inconsistencies and performance issues in the D3D11 renderer right now that need to be addressed. (The game right now can use either Direct3D 9 or OpenGL Core)
    - Added soft shadows for higher end machines: Will be toggleable. Disabled on Mobile. Can be performance hungry.
    - Water is in! It still has some rough edges (particles aren't reflected yet, the refraction doesn't clip above the water, etc.) but it's working and looking good. It is also very demanding of GPU resources, and thus will have options for switching off certain elements to save framerate.
    - Added FSAA option: Also a WIP feature, I don't have proper converging of samples yet.

    KNOWN ISSUES
    - If Alt+F4 is used to exit, the D3D9 backend often crashes and leaves Windows in a strange state.
    This appears to be a unity bug + my water causing issues. Still tracing down where the source of the crash is. OpenGL isn't affected. Update: this crash is now fixed by upgrading to Unity 5.4.5f1
    - Water is a little too perf hungry
    - AIs sometimes overshoot pit areas when trying to enter them
    - Steering feels a little laggy with a Keyboard

    Will post screenshots and a YouTube upload soon.
     
    Last edited: Sep 19, 2017
    Whiteleaf likes this.
  33. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    So... I had time today to revive an ancient beast, the Dell Insprion Mini 910. As some may know, this netbook has the infamous GMA950 chipset. Yep, that one. And an Intel Atom, back when they were heavily underpowered.

    Nonetheless, I have managed to get the game running, although with reduced visual quality, on this hardware. :)

    Anyways, new changelog:
    Core:
    - Removed OpenGL Core: now it's crashing on exit...
    Most likely an issue with the water frame timing.

    Visuals:
    - Boosted performance of the water on lower end computers and on mobile.
    Only static objects render in the refractions in this mode, and reflections only render the skybox. Full desktop water still uses full reflection/refraction
    - Added edge blending to the high-end water: Will only work on platforms with Depth Texture support. (Basically all of them... Except mobile and SM2.0 Graphics cards)
    - Added SM2.0 support: This mode is literally for the oldest of XP machines that were once the best gaming beasts of 2005... Or was that one netbook that always had issues with games; the GMA950 in my test SM2.0 machine made it tough to optimize this area of the game, but it is now running at 30fps with occasional dips in one section of track. (A fix is pending, as it's drawcall batch related)

    The following is disabled on SM2.0:
    - Water edge blend
    - Water reflection (only the sky is rendered)
    - Water refraction on dynamic objects
    - Specular highlights on auxillary lights
    - ALL shadow filtering is off in this mode to save on pixel fillrate
    - Mesh optimization pass on the pit area: Due to the pit areas originally being pre rendered, the imported mesh had some issues, so I did an optimization pass. Managed to get the model down to under 800 vertices. (There was a ton of unnecessary loop cuts for some reason, and I was able to fuse them all together)
    There is one more pass to get the drawcalls down to 1, that's coming soon
    - Added HDR support with a Gaussian based glare effect: It does require some GPU bandwidth to run well, but that said, it runs @25-30fps on an AMD Radeon HD 6290. Both vehicle flares and engine fire glow quite distinctly since this change. SM2.0 disables this effect. It will also fail to work on cards that can't use HDR
    - The game will now adjust a fair bit of visual code depending on what it is running on. This should allow acceptable perf on all supported platforms and graphics cards.
    - Readjusted particle systems to work better on fillrate constrained GPUs
    - Fixed a bug with depth texture generation not culling back faces. This caused the water to vanish or clip weirdly when using edge blend, and the camera was inside an object.


    Known Issues:
    - Frame dips on GMA950 chipset in one section towards the finish. (I've found the cause and will have a fix soon)
    - Flame particles that indicate overheating/damage stopped working on the player's car. Probably broke something in the optimization pass


    Meet the PC Test rigs:
    "Kirby":
    Intel Core2 Quad Q6600 @2.4GHz, quad core
    Nvidia GeForce GT 640, 1GB DDR3
    4GB DDR2 RAM
    Windows 7 Pro 64-bit
    Tested at 1680x1050

    "Dell Inspiron Mini 910"
    Intel Atom N270 @ 1.6GHz, single core hyperthreaded
    Intel GMA 950, 128MB shared RAM
    2GB DDR2 RAM
    Windows XP professional SP3
    Tested at 512x384/640x400

    "Toshiba NB550D" (NOTE: development machine)
    AMD Fusion APU, C-60 dual-core @1GHz. (Can turbo to 1.3)
    AMD Radeon HD 6290
    4GB DDR3 RAM
    Windows 10 Pro 64-bit
    Tested at 1024x600/800x480

    "DELL Latitude E6220"
    Intel Core i3 Sandy Bridge @2.1GHz dual-core hyperthreaded
    Intel HD 3000
    6GB DDR3 RAM
    Windows 7 Home Premium SP1 64-bit
    Haven't tested the latest build here yet

    And that's all right now, I'll be posting clips soon.
     
    Last edited: Sep 19, 2017
  34. ToshoDaimos

    ToshoDaimos

    Joined:
    Jan 30, 2013
    Posts:
    679
    You should reconsider the name of your game. Nobody is going to be able to pronounce or remember that "M" word.
     
  35. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Agreed, I have considered changing the name as it doesn't quite suit anymore, and yea, it is near impossible to work out how to say it.
    (Also, FYI, it's pronounced "Mir-eye-n," I can't remember what words I combined together to make that now...)
     
  36. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,487
    Hey FuzzyQuills, nice looking game! Judging by your avatar pic, do you like Judge Dredd? Just wondering ? :)
     
  37. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    looks like the fzero guy to me.
     
  38. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Log of latest changes:
    Core:
    - Added graphics settings menu:
    Now all the options are tweakable within the game itself. Saves me a lot of pain rebuilding the game just to test settings... It also means at some point, I can probably disable the normal unity graphics settings by default (I'll have it accessible with "alt" held down while starting it)
    - (in progress) Adding a new map: MOUNTAIN RAPIDS. A map designed by my mother. It takes you through a mountain range with a river running through it.
    Assets still being modeled and finished, so the initial track isn't all that impressive... yet.

    Visuals:
    - Completely overhauled the post processing:
    Now all of my code for post processing is in a single separate module, whereas before, some options were in my camera tracking script, and others were in a self-written bloom effect I imported, then later changed a bit
    - For graphics backends, I have been able to re-add both OpenGL Core and D3D11, with D3D11 being the default backend. Strangely enough, D3D11 runs a little better on my development machine. (My more powerful testing rig eats all the APIs for breakfast however, with usually over 600fps uncapped) This doesn't change SM2.0 compatibility; D3D9 is still included, and will be for the game's lifespan, however long that will be :)
    - Fixed the HDR brightness on some objects: Some objects weren't quite being detected by the glare effect, and would flicker if animated. I've fixed it now by adjusting the HDR brightness a tiny bit.
    Next stop for HDR may be tonemapping.
    - Completely overhauled Supersampling: Now 2x supersampling works with glare, and can even be used at lower scene render scales (keep in mind however that using a low render scale for perf, then turning on 2xSSAA is kinda... pointless :D That said, 75% scale + SSAA looks really good, and saves at least some of the fillrate cost!)
    - Fixed a bug where the shadows weren't turning off if the setting was off in the options: Thanks layermasks for being totally obvious... not. Nonetheless, it's fixed.

    And finally, SOME DAMN SCREENSHOTS:
    75% render scale, no AA, hard shadows, HDR:
    MiraienEngine_2_2017_09_25_16_09_25_568.png
    50% render scale + SSAA, soft shadows, HDR:
    MiraienEngine_2_2017_09_25_16_11_02_227.png
    100% scale + SSAA:
    MiraienEngine_2_2017_09_25_16_13_18_044.png
    100% scale + MSAA:
    MiraienEngine_2_2017_09_25_16_13_57_307.png
    And a random shot of me flying into the water. Don't try this at home!
    MiraienEngine_2_2017_09_25_16_13_28_188.png

    And that's all for now. Hopefully, in the next week or two, I'll have a playable build ready for testing. Chit-chat time!
    Yes, it's Captain Falcon ;) I'm actually not sure who Judge Dredd is, I'm awful with movie culture :D

    And thank you, I'm actually getting the game's basic "quick-run" mode (as in, just pick a car, track, then race) ready for some beta testing and feedback. It's about time I put something out in the wild given the time it's taken me to get this in it's current state.
     
    hippocoder likes this.
  39. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Updated the OP to reflect the changes since the game's original build release.
     
  40. John3D

    John3D

    Joined:
    Mar 7, 2014
    Posts:
    441
    I must say it looks interesting. Good luck with your project!
     
    FuzzyQuills likes this.
  41. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Change Log:
    CORE:
    - Added back the Elizabeth 7 to the game:
    A machine with really small engines for it's class. It shows too, with the vehicle not being able to boost as fast as the others. This is offset by it's excellent grip and very high acceleration, due to it's lightweight body.
    - Rebalanced the vehicles after adding the Elizabeth 7. The "test vehicle" (the gold one shown in my last post) is still a bit broken however, as it doesn't have too much of a penalty for boosting. This is being investigated, and I may end up basing overheat rate on a separate value, rather than the boost grade.
    - Tuned the AI a little bit: Now the AI, instead of adjusting the "controls" every frame update, do navigation calculation and other logic at 33 ticks per second. This should help computers use the CPU more efficiently in situations where the game is running with an uncapped framerate ("uncapped" technically is still capped, just capped at a very high rate VS VSynced framerates)
    - Altered the steering acceleration to respond a bit faster: This mostly coincided with the AI tick rate change, as AIs weren't able to turn quick enough and would often fly off the track or take too wide a turn. Since the steering angle calculation is universal, (both AIs and Human players have the same limits) this adjustment has also improved steering responsiveness for human players.
    - Altered skidding calculation: Also coincided with the steering angle acceleration adjustment. I noticed vehicles that should have been slipping (low grip stat) weren't really slipping much at all. With this adjustment, all vehicles now skid a fair bit more than they used to. (High grip vehicles aren't too affected though, which is intended)
    - Tweaked Mountain Rapids a fair amount: Now the track has a very obvious curved bump running along it, barring the starting line and pit area locations. This makes the track quite challenging, although still a bit short. (I may add a higher lap count to compensate)

    VISUALS:
    - Optimized the Glare effect's gaussian blur:
    Courtesy of this article for both the initial implementation and the optimized version of the gaussian blur: http://rastergrid.com/blog/2010/09/efficient-gaussian-blur-with-linear-sampling/
    Internally, the game uses 5 horizontal/vertical blur passes to construct the glare, and thus, will still be a bit heavy for some hardware. However, hardware that should have run better should now do so with this change, as I was able to eliminate 4 extra samples for both passes
    - Added toggleable vector-based motion blur: Based entirely on my own shader + Unity 5.4's motion vectors, this greatly enhances the sense of speed in the game. RGHalf texture support required, can be a bit heavy depending on GPU memory bandwidth available to the graphics card.
    - Pit areas now activate their electricity effects when a car stops inside, rather than being active all the time:
    This also toggles the point light on and off, which should save some vertex/pixel processing on GPU-constrained systems when the pit areas aren't active. Also looks really cool!
    - Adjusted the Water effects to only render if they're visible: This change was necessary for mountain rapids, as this course has two bodies of water at different altitudes. (This requires two renderings due to the clipping being wrong otherwise, and filtering out cars in the bigger body of water)
     
  42. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Been a while since I posted one of these, mostly due to final assessments for the semester, but here goes anyway. I've also changed my changelog format.

    Changelog:

    Features & Changes:
    - Added a pause menu:
    This menu at the moment can also be used to exit a completed race. No need anymore to restart the game to play another round. (Finally)
    - Implemented dynamic resolution scaling: Basically does what it says on the tin; it adjusts the resolution based on how long the last frame took to render. Lower than 60, adjust down until it's hitting it. above/hitting 60, gradually sharpen. Recommended to use with MSAA as it does sometimes cause "pixel crawl" when resizing, which the MSAA helps hide. I'm still working on this feature.

    Technically, the game should use the settings render scale in this mode to set the minimum, but for some reason, it's broken (it instead uses the editor set value which is wrong)
    - Removed trees on Mountain Rapids: Once I have a more optimized/complete tree model, they will be added back in, as at the moment, they're causing frame drops on some hardware.
    - LightShade was re-written to take advantage of Forward Rendering (ported over from Alternator Power's code, which had some improvements) takes full advantage of Normal Mapping and emission, even on lightmapped objects!
    - Added back in OpenGL Core support.
    - The game will now start in Direct3D11 mode by default.
    If the platform doesn't support at least DirectX 10.1, it'll fall back to Direct3D9. If Direct3D9 fails as well, it'll try OpenGL. Best performing backend thus far seems to be Direct3D11, although VS Direct3D9, it's about the same, with DX11 being a tad smoother. (Sadly, on my dev laptop, OpenGL was a slide-show, but for that, I blame my AMD driver)
    - Optimized the soft shadows for lower end cards: Should help bandwidth limited graphics cards run this feature better.

    Fixes:
    - Fixed a VRAM leak if motion vectors are active.
    I'd missed a RenderTexture.ReleaseTemporary() while implementing Dynamic Scaling then wondered why the entire game went black after a few seconds with the settings maxed out... It's fixed now.
    - Optimized SM2.0 performance, and added a special case of activating Vertex-lit rendering on GMA chipsets only. (It otherwise renders everything invisible, with only the water showing) Now runs at almost 60fps most of the time, with the lowest being about 32fps. On 70% scale as set by the game's auto scaling, 1024x600@60Hz
    - Improved the motion blur effect: Should eliminate the flickering that was occasionally there if the game dropped a few frames with motion blur on. It also takes a few more samples as a fair performance trade-off.

    Known issues:
    - Auto scaling is temporarily broken on Mountain Rapids (always uses 100% scale)
    This is caused by the same bug affecting the minimum scale.
    - OpenGL Core runs a bit slower than Direct3D: This I think is mostly caused by the AMD driver on my laptop, but I'm yet to run tests on a NVIDIA card to confirm this is indeed the case. EDIT: The issue was found to be possibly a Unity Engine bug, I'm researching it now; could possibly be a combination of Unity + the GPU driver acting up
    - HDR Glare runs a bit worse than it should: I feel there's a bottleneck somewhere, so I'll be doing an optimization pass on this once again soon. (Most likely I'll be adding some settings to allow the quality to be lower)

    Updated System Requirements:

    Windows XP/Vista/7/8/8.1/10:
    - CPU: AMD Athlon 64 or Pentium 4 2.9GHz minimum, Intel Core 2 Duo/Quad recommended:

    NOTE, THE MIN REQ IS NOT TESTED, it is based on the performance of the Intel Atom N270, which is quite weak. When I release the alpha build later today, if someone has an old P4/Athlon64 machine in the cupboard you're happy to help test with, let me know either here or by PM!
    - GPU: DirectX9 compatible video card with 256MB VRAM and SM2.0 support, recommended to use any SM3.0+ capable GPU with 512MB/1GB VRAM. 640x480 minimum resolution. Special exception is the GMA950 which runs this game fine, to my surprise.

    The following graphics features REQUIRE SM3.0 support:
    - HDR glare
    - Motion Blur
    - Any form of shadow filtering
    - 1GB RAM on Windows XP SP3, 2GB RAM on Windows Vista or higher.
    - Keyboard will work fine, but a gamepad is recommended.
    If played on a Steam Machine, I'll be adding a default config for the Steam Controller when published.
    - will play at 640x480 minimum, 720p/900p/1080p recommended.

    Linux:
    - CPU: same deal as Windows
    - GPU: OpenGL 2.1 capable GPU with 512MB VRAM, OpenGL 3.2 recommended
    - RAM: depends on Distro; the game itself only runs ~200MB unless on an Intel graphics system, where the Video RAM is in the process memory.
    - Gamepad recommended, will work with Keyboard.

    OSX: Unknown, yet to test on a Mac.


    Android: Unknown

    I'll be soon releasing an alpha build for initial testing; it's finally at a point where I can give everyone a playable preview on PC. I also would really be interested in seeing how a really old CPU runs this game, so again, P4/Athlon64 users, please let me knowhow the game runs!
     
    Last edited: Nov 23, 2017
  43. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    micro-change log

    Fixes:
    - Fixed dynamic scaling never scaling up after finding a comfort setting then finding more headroom.
    - Fixed dynamic scaling on Mountain Rapids.
     
  44. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    It has come; the first alpha build. I haven't settled on a version number scheme yet, so the version number format may change.

    Oxion Transonic Build 0.1.0 Alpha 1:
    Link to Windows build: https://1drv.ms/u/s!Aq_7qd6RYJ_DrgyZe0gnCX6GxZWs
    If there is a particular OS you want to test on, please post in this thread, and I'll make more uploads. Due to my upload speed in Australia being pitiful, uploading is a little slow.

    Changes since last changelog:
    - Removed background music.
    No need to hear an artist's work until it's done. the final mix will replace it.
    - Added version number to menus.
    - Removed menu background.
    Same reason as music; no need to have one there... yet.
    - Removed OpenGL Core backend... again. I'm currently running into a bug on some machines where Gfx.WaitForPresent takes a mountain of CPU time only on this backend, and only when cars are in view.

    Currently in this build:
    - Singleplayer race mode, AIs + one human player.
    - Pause function. This is also the only way to exit a race after it is finished. this will definitely change.
    - Xbox 360/Steam Controller support. The latter requires adding this test build as a non-steam game, and setting the game controller to the default "Gamepad" config in Steam. This can be done through the Big Picture overlay.


    Controls:
    - W = accelerator, S = brake (On Gamepad, the X360 A button is accelerator, X360 X is brake)
    - A/D = turn left/right (X360 LS on controller)
    - Space = Safety override trigger; boosts speed, but heats up engines in the process. Don't let it get too high!
    (On controller, I remember mapping X360 B to safety override)


    KNOWN ISSUES:
    - Boosting is poorly balanced gameplay-wise at the moment;
    This is being worked on.
    - Safety override button allows infinite boosting while held down: This shouldn't actually happen, and is being fixed quickly.
    - The tracks are missing thermal booster pads: This is due to the lack of a basic testing model. I am working on it.
    - Some hardware may incorrectly scale down the render resolution on auto scale when they can actually use native or a higher scale fine. This is mostly due to the thresholds the engine uses to scale the image.
    - It may be a little difficult to turn on Mountain Rapid's turns: This is mostly due to design, but at the same time, I think the track may be a little too narrow. I'll wait for your feedback first before making adjustments.

    POSSIBLE PROBLEM AREAS:
    - Mountain Rapids on the first turn; because in this level there are two water surfaces rendered, this requires also rendering the reflection and refraction render targets for each one. This means the scene in total is re-rendered max 4 times per frame in this turn. (The water is designed not to update the targets at all if it isn't visible however)
    - The third jump before the 360 degree loop in Double-Jump; This has been a problem area for some time, although adding LODs to the pit areas has helped. Probably won't be an issue on a higher-end PC.

    Thank you for testing!
     
  45. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    @ any an all moderators; can you please move this thread to Works In Progress? I feel it has got to a point where it's more suited to be there now, rather than in "Made With Unity"
     
  46. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,871
    Oxion Transonic 0.2 changelog:

    CHANGES:
    - Added water quality dropdown to options:
    Should make it easier to cut down on rendering time if there is a GPU vertex processing bottleneck
    - Reworked Double Jump's texturing: Now it looks a little nicer. I'm still working out the final aesthetic for this race track that looks nice while not destroying low end laptop GPUs.
    - Fixed a bug where "ghost" shadows would crawl on the ground with realtime shadows disabled.
    - Fixed the GPU name in options being hidden:
    Forgot to fix the text colour when I removed the backdrop... oops
    - Slamming the throttle wide open now has a cooldown of about 3/4 a second: This helps balance the boosting a little, although for different reasons, the AI is still too easy to beat. (Shouldn't be an issue if versing a human opponent)

    KNOWN ISSUES:
    - AI braking in turns is too aggressive.
    This has resulted in the AI often lagging behind the human player, sometimes to the point of being lapped.
    - Penalty for being damaged is still too low. It may be necessary to have a harsher collision damage penalty to balance the speed of the vehicles, such as a curved speed response to being damaged. (currently, it's linear)
    - Culling cost in Unity 5.5.3f1 has gone up a bit. This has resulted in the water effects taking more CPU time than they used to, currently looking for workarounds I can use to cut the CPU usage.
    - (Update) OpenGL minimum requirement has now gone up as a result of the engine upgrade.
     
    Last edited: Mar 14, 2018