Track: Dyson Speedway

Track: Dyson Speedway

Postby RX1 » 01 Jun 2021, 11:29

Hello everyone,

I'd like to present you my second STK track Dyson Speedway.
After I completed Toy Block Raceway last year (https://forum.freegamedev.net/viewtopic ... 18&t=14214), I started this one as another personal learning project for 3D modeling with Blender. Later it turned more into an individual art project. I also spent lots of time making new textures for the track with Inkscape and Gimp.

First of all, something about the idea behind the track:
Many people I play STK online with, enjoy high speed tracks and so do I. Space environments seem to be popular, too.
So my plan was to create an ultra high speed race track that fully utilizes STKs gravitation feature.

The basic idea was to race inside a dyson-sphere-like construct. A dyson-sphere is a hypothetical spherical megastructure in space, constructed around a star (https://en.wikipedia.org/wiki/Dyson_sphere). One of these theories describes a closed shell, with its own gravitation. The first time I heard about this, was in an episode of Star Trek - The Next Generation, back in the 1990s. Of course the dimensions of my model do not quite reach those of the one from that TNG episode. Instead my sphere is more similar to a space station. To keep up the SciFi topic, I imagine that this sphere is still being built and later it would hold a warpcore factory of the fictional RX1 corporation. While this factory is under construction, it is open for the intergalactic STK community to race on a colorful temporary speedway. ;) :)

Image

I spent a lot time with this track, but it never was intended to become part of STKs main source, because I am aware that it violates many of your design guidelines. So I am going to upload it to STK add-on site and hope that many people play and enjoy it. I decided not to upload the work in progress versions so far, because I figured out that there are many gamers who install add-ons, but never update them. The track can't be driven in reverse yet, and there are some other open tasks.

Here are some facts about the track and my work:
  • Supported mode: Forward race. Reverse race and egg hunt will follow soon.
  • A large sphere in space with windows, a dome and force field gates.
    Image

  • The track comes with lots of new textures, incl. seven new zipper arrows.
    Image

  • A dark but colorful design that uses lighting, lots of PBR effects (mostly glow and reflections) and some particle effects (like a burning banana field). It was important for me to make the track look good with and without improved graphics. The following picture shows a screenshot made with the lowest graphics setting (top) and another one at the same view that was done with improved graphics activated (bottom).
    Image

  • Wide turns and large straights with lots of ground zippers and some obstacles for interesting high speed racing. I have locally modified the STK scripts to make higher zipper speeds possible. The modified scripts will be included in the source archive.
  • Upside down straights, turns, twists and wall rides with gravitation and high speed boost pipes.
  • An upside down area and a wall ride surface without gravitation, where the players slide over something that looks like a force field.
    Image

  • Several special features and secrets:
    • Three big sphere with different behaviors if you hit them. The blue sphere shocks the player, the green one bounces you away, the orange one pulls you inside and then shoots you into the central sphere star.
    • a few small intended jump (and nitro) short cuts
    • a hidden cannon
    • a hidden alternative line with an extra strong "nuclear boost" zipper (the purple one)
  • 15 movables: rolling balls and bubbles and few movable cargo boxes
    https://rjotz.uber.space/sc/index.php/s/5NLHewFyjzrds9s/preview
  • Polygon count: currently around 100.000 tris

I have already tested the track online with a few fellow gamers. The responses were good and the track seems to perform well online (no lag experienced so far).
While the track mostly is very wide, to deal with the high speeds, it still has sections that require precise steering and some practice.

Here is a demo video of the track: https://rjotz.uber.space/sc/index.php/s/doFpm2HabwaQwzB
It shows me racing one lap on Dyson Speedway. I was running STK without any of the improved graphical features.

If you like, you can see more pictures of the track here: https://rjotz.uber.space/sc/index.php/s/sLnz7JPMDE4zYa7
To try the tracks WIP state you can download the installation files here: https://rjotz.uber.space/sc/index.php/s ... b/download

During the construction I had several problems and I still have some unanswered questions. I will explain / ask those things in my next post here.


Greetings

RX1
Attachments
DS_inside3_xxs2.png
Dyson Speedway force field gate
Zippers_RX_xxs.png
seven new zipper textures
DS_inside_Qs_xxs2_v.png
comparing the differnt graphics quality modes
DS_inside1_xxs2.png
inside the Dyson Speedway sphere
DS_outside2_xxs2.png
Dyson Speedway sphere in space
Last edited by RX1 on 17 Jun 2021, 23:31, edited 1 time in total.
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby QwertyChouskie » 01 Jun 2021, 18:35

Looks sick! I'll definitely have to give it a shot on my lunch break ;)
Contributor to/fan of STK (Upstreamed Cartoon theme, numerous random big fixes/tweaks)
User avatar
QwertyChouskie
 
Posts: 559
Joined: 29 Jun 2016, 14:57

Re: Track: Dyson Speedway

Postby RX1 » 01 Jun 2021, 20:41

Hello again,

like mentioned before, here are some things that are causing problems:
Note: I am still using Blender 2.7.9b and the respective STK scripts for this version.

Transparencies:
I'm using a lot of transparent textures. Unfortunately overlapping transparent textures are often not displayed correctly in STK.
DS_transparencyError_s.png
transparency errors
I followed the trouble shooting advises on STK website, which say that this most probably is a sorting issue. Like suggested, I created multiple separate objects, but it didn't change anything. After all I changed the shader mode of most transparent textures from "Alpha Additive" to "Alpha See Through" or "PBR Cutout Transparency", which solved the most important problems but required the redesign and addition of several textures. Is there another way to solve this sorting issue?

Start line positions:
The start-finish line is very wide and I want lots of karts to start side by side. I also want the first kart to start right in the middle of the first row and the higher positions further outside. This is not possible with the normal starting grid settings. However, I figured out that explicitly defined start positions (intended for battle or CTF mode) overwrite the respective starting grid positions for races, if the "CTF only" check box is not set and the track is not a battle arena. This way I was able to manually specify the front row positions, while higher starting karts are lined up automatically, like specified by the starting grid settings in blender.
I somehow doubt that this work around is very reliable, when thinking of possible future STK versions. That is why I have to ask: Will this kind of starting grid specification also be supported in future STK versions or is this rather just a temporary glitch?

Dirvelines - loading delay:
Because of the pipes and alternative lines, my track needs many additional drivelines. Otherwise it can happen that karts get reset a long way back down the track. After I added all these drivelines, the track took extremely long to load. I found out that removing some of these lines fixes this issue. So I had to set 3 lines to ignore to get the track from a loading time of over half a minute back to about 7 seconds. I am not sure, but maybe this is related to the following message which STK writes, when loading the track: "[info ] CheckLine: Object crosses line, but wrong height ...". The more drivelines I have, the more of these messages it generates. It would help if I would understand what exactly this message means. I suspect it might be related to checklines that are not touching any driveline.

Backface culling:
With the STK scripts I am using, I have no "backface culling" option in the STK image properties section. Blenders own backface culling option seems to have no effect. Backface culling is always active. So the back sides of faces are never displayed, unless a transparent shader is used. This is the reason why I had to duplicate several faces and I wonder if this is worse for the performance of the track, compared to backface culling turned off.

Greetings

RX1
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby benau » 02 Jun 2021, 01:15

alpha sorting is a won't fix in the near future https://github.com/supertuxkart/stk-code/issues/1448

explicitly defined start position is only for battle mode and will never be implemented for racing mode

maybe your checkline order is wrong

you can also use solidify modifier, drawing few more triangles has little performance impact
Image
benau
STK Moderator
 
Posts: 505
Joined: 08 Dec 2015, 17:32

Re: Track: Dyson Speedway

Postby RX1 » 02 Jun 2021, 01:23

benau {l Wrote}:explicitly defined start position is only for battle mode and will never be implemented for racing mode

But it already works. :?

benau {l Wrote}:you can also use solidify modifier, drawing few more triangles has little performance impact

That means the backface culling option is history and it wont be back?
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby tempAnon093 » 02 Jun 2021, 01:31

This is an amazing track! This graphic design is the kind I would expect from trained gamedev professionals, so it's wonderful to see it here in SuperTuxKart :)
It's always nice to see when track makers are able to take advantage of all the features that the game has like magnets/gravity, particle effects and zippers. On top of that, you've also been able to take advantage of scripting to fix up networking and add sounds to improve the atmosphere. I always love when a level designer makes an experimental art project out of a level like with my own Frozen Drive and Powder Rush, to lesser degree.
The high speed is very fun, although it is annoying when I fall off or am hit with a weapon and slow down to nothing watching the others go past haha :)

Thank you for all the effort you've put into this and Toy Block Raceway! I will love to see it in the add-ons once you think it's ready.
aka. GumballForAPenny
User avatar
tempAnon093
 
Posts: 416
Joined: 02 Feb 2019, 12:09

Re: Track: Dyson Speedway

Postby eltomito » 02 Jun 2021, 09:45

I tried your track. It's fantastic including the music. Great job,!
User avatar
eltomito
 
Posts: 300
Joined: 15 Mar 2013, 09:25

Re: Track: Dyson Speedway

Postby RX1 » 02 Jun 2021, 11:40

Thanks alot tempAnon093 and eltomito! :) :)

tempAnon093 {l Wrote}:The high speed is very fun, although it is annoying when I fall off or am hit with a weapon and slow down to nothing watching the others go past haha

Yes, i agree. If you are reset or get shot, you have to hang on and suffer a little while, until you reach the next zipper pad. But this can happen to the other players, too.
On the start straight, the track edges also have a zipper boost. So if you get shot and no zipper is close, you can move aside and get up to speed a little faster if you drive over the blue arrow texture.
DS_startStraightEdgeBoost_s.png
Dyson Speedway start straight edge boost
I'm going to add this feature or somthing similar to other sections of the track, too.

tempAnon093 {l Wrote}:I always love when a level designer makes an experimental art project out of a level like with my own Frozen Drive and Powder Rush, to lesser degree.

I really like Powder Rush. It is a really cool experimental track. :)
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby sridharkumar » 03 Jun 2021, 12:28

Wow! Looks really good. Great job RX1!
sridharkumar
 
Posts: 34
Joined: 30 May 2021, 15:46

Re: Track: Dyson Speedway

Postby RX1 » 17 Jun 2021, 01:54

Hello everyone,

I think that the track is ready for its first official release in STK now.

In the last two weeks I spent lots of time to:
  • make it drivable in reverse direction
    DS_reverse_arrow_s.png
    Dyson Speedway, big green zipper (appears only in reverse)
    DS_reverse_topGateJump_s.png
    Dyson Speedway, reverse top gate jump
  • optimize the track surface
  • optimize and correct the drivelines, which included:
    • finding out what causes the loading delay and reducing it
    • dealing with the rather complex track layout with many vertical and upside-down sections
    • minimizing the risks of faulty resets
  • adding some more specials and secrets to explore
    • in reverse you can even leave the sphere now to explore the outer space side and do crazy things there, which will be especially interesting for egg hunt mode
  • many many details that I can not list here

Things I want to add later are:
  • Egg Hunt mode (for sure)
  • maybe more (environmental) sounds
  • maybe more animations (as long as the track keeps running well)

After my first post here, many people I play STK online with, downloaded the test versions. The amount of positive responds was great. :) :D
I would like to thank everyone who joined the testing and who gave responds. It helped me to further improve the track and last but not least we had a huge load of fun (maybe I'll post some links to videos here later)! :lol: Especially I'd like to thank fodoman and Luva9497 for setting up dedicated test servers for Dyson Speedway. :D :cool:



:!: :!: :!: Unfortunately I can not release the track because the Add-ons site says it is too large. :!: :!: :!:
The track and source files are both around 45 MiB. The track has many new textures and I already optimized the texture sizes. All textures already have a size in KiB or byte range. All simple texture already are in byte or low KiB range. Some of the more complex textures are in higher KiB range, but none of them is over 1 MiB large. This way I already saved around 20 MiB. Further reducing the texture sizes would make the track look worse and reduce the reusability of the more complex textures, which might be interesting for other STK projects, too.

I don't know who is responsible for this limit, but: Could you please increase it or make an exception for this track? Currently the site doesn't even give a responds about what size would be allowed.

For now I have uploaded the track and the source archive to my private cloud again:

Greetings

RX1
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby benau » 17 Jun 2021, 02:24

45MB is a lot....

maybe you can use jpg for some texture

https://github.com/supertuxkart/stk-addons/issues/117

it's 40MB by the way
Image
benau
STK Moderator
 
Posts: 505
Joined: 08 Dec 2015, 17:32

Re: Track: Dyson Speedway

Postby RX1 » 17 Jun 2021, 15:17

40 MB, OK ...
I'd suggest to change track size limit to 50 MB and source archive limit to 100 MB. But that is just my opinion. :|
I can't remember that there was any information on the STK tutorial pages and the add-ons site about this limit, but maybe I missed it. Beside that, there are some more things that should be updated / fixed, like the 140 sign limit for track / kart descriptions.

If you keep the 40 MB limit, this will affect my plans for further track projects. I have another work-in-progress track, which is a rather large track, too. Maybe the limit wont be an issue there because its not as colorful as Dyson Spedway and supposed to be more of a classic STK track, possible suitable for main source. But I still would like to be able to realize many new ideas, to make it exciting and interessing.
Here is a concept sketch of that track:
Image
Attachments
RecyclingIslands_Concept_xs.png
STK Coconut Islands concept sketch (image link)
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby RX1 » 17 Jun 2021, 16:19

benau {l Wrote}:maybe you can use jpg for some texture


Alright, I just figured out that I can reduce the texture size of the fog textures alot if I use jpg with 90 % quality, with a probably acceptable loss of quality. I didnt expect that. These textures already are blury to a certain degree and they are animated / moving in game. Most important is that the color intensity must not be lost.
So I guess I can get the track under 40 MB.
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby RX1 » 17 Jun 2021, 23:41

OK, I made it. It was close, but now finally the track and source archive are uploaded. :cool:
Just the Descent font sets I wanted to include in the source archive were removed by the add-ons site. :|
I noted that in the License.txt of the source archive and referenced another source for those files there. I hope that is OK.
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby theodorepringle » 18 Jun 2021, 00:55

That Coconut Islands sketch seems really cool, that could be a nice replacement for Volcan Island in the main game.
User avatar
theodorepringle
 
Posts: 19
Joined: 29 Aug 2019, 00:32

Re: Track: Dyson Speedway

Postby sridharkumar » 20 Jun 2021, 19:28

Dyson Speedway is not loading on my pc. I waited for like two minutes staring at the loading screen. I tried this like 5 times. Is there a problem? I am using Windows-10 and latest version of supertuxkart.
sridharkumar
 
Posts: 34
Joined: 30 May 2021, 15:46

Re: Track: Dyson Speedway

Postby tempAnon093 » 21 Jun 2021, 00:25

sridharkumar {l Wrote}:Dyson Speedway is not loading on my pc. I waited for like two minutes staring at the loading screen. I tried this like 5 times. Is there a problem? I am using Windows-10 and latest version of supertuxkart.

It works on mine (different OS) but it does take more time to load (6 seconds for me, Cocoa Temple takes 2 seconds, using an SSD hard drive not an HDD drive). What graphics settings are you using? It's a very big, detailed map so lowering them could help, but I'm not sure it will.
Can you find the stdout.log file in the config folder? Check near the bottom to see if any errors came up.
On Windows: It is in %APPDATA%/supertuxkart/config-0.10 (you can enter that in the Explorer and it will take you there)
aka. GumballForAPenny
User avatar
tempAnon093
 
Posts: 416
Joined: 02 Feb 2019, 12:09

Re: Track: Dyson Speedway

Postby sridharkumar » 21 Jun 2021, 06:17

I am using SSD and graphics on 3. But, I will look at the file later.
sridharkumar
 
Posts: 34
Joined: 30 May 2021, 15:46

Re: Track: Dyson Speedway

Postby RX1 » 21 Jun 2021, 12:43

sridharkumar {l Wrote}:Dyson Speedway is not loading on my pc. I waited for like two minutes staring at the loading screen. I tried this like 5 times. Is there a problem? I am using Windows-10 and latest version of supertuxkart.

I'm sorry that the track doesn't start on your system. I hope we can find out why.
Beside my Linux Systems I have tested the track on Win10 / STK v1.2 official release / "custom graphics settings with most effects enabled" and it runs very well here.
Thank you tempAnon093 for trying to help.

The rather long loading time is not related to the details of the track. The polygon count is around 100.000 tris (130.000 in blend file, but not all of that is exported). As far as I remember Cocoa Temple for example is around 250.000 tris.
The reason for the longer loading time is related to the complexity of the driveline in combination with the length of the track and the required number of checklines. If I delete all additional drivelines and keep only the main one, the track also loads in one or two seconds. Like I described before:
RX1 {l Wrote}:Dirvelines - loading delay:
Because of the pipes and alternative lines, my track needs many additional drivelines. Otherwise it can happen that karts get reset a long way back down the track. After I added all these drivelines, the track took extremely long to load. I found out that removing some of these lines fixes this issue. So I had to set 3 lines to ignore to get the track from a loading time of over half a minute back to about 7 seconds. I am not sure, but maybe this is related to the following message which STK writes, when loading the track: "[info ] CheckLine: Object crosses line, but wrong height ...". The more drivelines I have, the more of these messages it generates. It would help if I would understand what exactly this message means. I suspect it might be related to checklines that are not touching any driveline.
benau {l Wrote}:maybe your checkline order is wrong


It is correct. But the game still puts out hundreds of those messages when loading the track. Maybe that is a problem.

To explain the situation: The track basically has 14 checklines, but in most cases I have multiple instances for one checkline. That means, I made copies to cover a bigger (in most cases vertical) range of the track to minimize the risk of players missing a line. Nothing is more annoying than losing a lap because of a missed checkline, which for example can quickly happen if you jump unintentionally. I have upside down sections and almost vertical sections with alternate lines that required multiple instances of a checkline, to cover the whole track safely. I saw this solutions on other tracks and though it was pretty good. However, I wish there were checkplanes in STK instead of checklines.

Following picture shows checkline 10, which actually consists of the checklines 10a, 10b and 10c.
DS_checkline10.png
checkline "instances" (red) in a 45° banked section of Dyson Speedway
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby QwertyChouskie » 21 Jun 2021, 18:24

I think there's some way to adjust checkline height somewhere in the exporter options, but I could be wrong.
Contributor to/fan of STK (Upstreamed Cartoon theme, numerous random big fixes/tweaks)
User avatar
QwertyChouskie
 
Posts: 559
Joined: 29 Jun 2016, 14:57

Re: Track: Dyson Speedway

Postby RX1 » 21 Jun 2021, 22:54

QwertyChouskie {l Wrote}:I think there's some way to adjust checkline height somewhere in the exporter options, but I could be wrong.

I didnt find anything like that in the Blender export dialog. In scene.xml within the checkline tag, there is the parameter min-height. I dount that one is the related to the checkline height though.
RX1
 
Posts: 54
Joined: 27 Jun 2020, 22:18

Re: Track: Dyson Speedway

Postby tempAnon093 » 22 Jun 2021, 00:48

RX1 {l Wrote}:I didnt find anything like that in the Blender export dialog. In scene.xml within the checkline tag, there is the parameter min-height. I doubt that one is the related to the checkline height though.

Confirmed, it appears to be the z position of the checkline only, not the size.
RX1 {l Wrote}:However, I wish there were checkplanes in STK instead of checklines.

I agree. It shouldn't be too hard to implement the code, and I don't see why it couldn't be made backwards compatible (if third dimension not defined in p1 in the XML, then it's a line. otherwise it's a quad). The concept of height exists, it's just hardcoded.
aka. GumballForAPenny
User avatar
tempAnon093
 
Posts: 416
Joined: 02 Feb 2019, 12:09

Re: Track: Dyson Speedway

Postby QwertyChouskie » 22 Jun 2021, 04:54

The only concern there would be how older STK versions handle the new format. If older versions don't handle the new format mostly sanely, then the change would have to wait for a format version bump. But if the old versions handle the new format mostly sanely, I see no reason someone couldn't open a PR and add this ability.

One other thing to check, it might be the case that changing the driveline test height also changes the checkline test height, which could be a sufficient workaround for now.
Contributor to/fan of STK (Upstreamed Cartoon theme, numerous random big fixes/tweaks)
User avatar
QwertyChouskie
 
Posts: 559
Joined: 29 Jun 2016, 14:57

Re: Track: Dyson Speedway

Postby tempAnon093 » 22 Jun 2021, 05:41

QwertyChouskie {l Wrote}:The only concern there would be how older STK versions handle the new format. If older versions don't handle the new format mostly sanely, then the change would have to wait for a format version bump. But if the old versions handle the new format mostly sanely, I see no reason someone couldn't open a PR and add this ability.

Modifying the existing expected fields to have an extra dimension like I suggested will break the checkline, but adding more fields appears to be fine.
e.g. STK 1.2 checkline:
{l Code}: {l Select All Code}
    <check-line kind="activate" other-ids="2" p1="-66.39 63.29" p2="-55.31 88.63"
                min-height="-0.1" same-group="1"/>

Valid checkline that also defines a quad plane
{l Code}: {l Select All Code}
    <check-line kind="activate" other-ids="2"
                p1="-66.39 63.29" p2="-55.31 88.63"
                v1="-66.39 63.29 -0.1" v2="-55.31 88.63 -1.1" v3="-66.39 63.29 5.0" v4="-55.31 88.63 4.0"
                min-height="-0.1" same-group="1"/>

QwertyChouskie {l Wrote}:it might be the case that changing the driveline test height also changes the checkline test height, which could be a sufficient workaround for now.

It doesn't, it appears to be hardcoded.
https://github.com/supertuxkart/stk-cod ... k_line.hpp
https://github.com/supertuxkart/stk-cod ... k_line.cpp
aka. GumballForAPenny
User avatar
tempAnon093
 
Posts: 416
Joined: 02 Feb 2019, 12:09

Re: Track: Dyson Speedway

Postby benau » 22 Jun 2021, 07:02

the check plane can be calcuated with drive node normal by the way, so you can still use line in blender Image

rx1 which blender version are you using Image
Image
benau
STK Moderator
 
Posts: 505
Joined: 08 Dec 2015, 17:32

Who is online

Users browsing this forum: No registered users and 1 guest