This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
dev:proposals:largetracks [2021-10-09 15:16] 56independent [Opinions and Ideas] Format to fit rest |
dev:proposals:largetracks [2022-08-22 05:02] blockhead no to 15: addendum: rr online |
||
---|---|---|---|
Line 39: | Line 39: | ||
===== 56independent' | ===== 56independent' | ||
- | I think that this might work if a different mod is made. That way, server admins can choose between small or large track. This may also work as a setting, which defaults to the regular tracks, to prevent destroying infastructure on existing | + | What i believe is a good option |
+ | I also believe that simple junctions should also have their own segments. Building a t-junction is currently a lot of work, and i believe that a single-block spawner would make sense. You should choose between gaps, like 1-void for railyards, 2-void, and 3-void, as well as driving direction, whether it is the same on both sides or different. | ||
+ | |||
+ | < | ||
===== Blockhead' | ===== Blockhead' | ||
Sorry about this wall of text, this probably isn't going to get much visibility, but I've been doing a lot of thinking over an extended period and I felt the need to dump it all out. | Sorry about this wall of text, this probably isn't going to get much visibility, but I've been doing a lot of thinking over an extended period and I felt the need to dump it all out. | ||
Line 78: | Line 81: | ||
To preserve visual correctness, | To preserve visual correctness, | ||
+ | |||
+ | ===== doxydoxy’s Proposal ===== | ||
+ | I have explored the possibilities of larger track segments that align to the voxel grid, i. e. the “set track” approach. | ||
+ | |||
+ | The currently available 16 angles are fine, they align to the grid every 2m, and are compatible with '' | ||
+ | But the voxel grid is quite restrictive for the possible curve radii. | ||
+ | |||
+ | I have drawn 26.57° and 45° curves in Inkscape, and scaled them up in various sizes, to see which radii fit well on the voxel grid. | ||
+ | Of course, no radius fits without some stretching. | ||
+ | But stretching is possible well enough even with quadratic bezier curves, so it should not be an issue if the result //looks// fine. | ||
+ | |||
+ | I have chosen radii of 5.5m, 14.5m, 18.5m, and 35.5m. | ||
+ | (The half metre is caused by straight tracks ending on centers of node edges.) | ||
+ | I have drawn turnouts with the 18.5m radius, diamond crossings, and an additional set of “tram tracks”, which use only 5.12m radius and 45° angles. | ||
+ | |||
+ | I have also added sleepers to all track segments, and tried to avoid overlapping sleepers as far as possible. | ||
+ | Turnouts and crossings use parallel sleepers, aligned to the “more major” axis. | ||
+ | Many diamond crossovers and similar track layouts are possible with only parallel sleepers. | ||
+ | |||
+ | Because curves now consume more than one node, it is more difficult to do small lateral movements within one track. | ||
+ | Two adjacent curves move at least 3m laterally, if this is too much, the lateral movement must be propagated until a single curve is needed anyway. | ||
+ | |||
+ | Therefore I found it necessary to add off-center diamond crossings (to avoid the need for lateral adjustments when 26.57° tracks meet), and dedicated S curve tracks. | ||
+ | Compared to plain curves and turnouts, the amount of additional nodes is small. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | The result of my work is now available as {{: | ||
+ | To implement these track segments, more than 100 individual meshes need to be created. | ||
+ | I think someone should write a script collection to create these meshes. | ||
+ | Like this: | ||
+ | |||
+ | - An XSLT or Python script to convert an Inkscape drawing to a numeric description of rails, sleepers, switch blades, frogs, guard rails, and slide chairs. This should probably be divided further. | ||
+ | - Assign roles (rail, switch blade, ...) to individual SVG elements. | ||
+ | - Stitch rail elements together to get a continuous run (switch blade → rail → frog → rail). | ||
+ | - Calculate positions of switch blades in diverged state. | ||
+ | - Calculate positions of slide chairs. | ||
+ | - A Blender Python script to create a mesh from the numeric description. | ||
+ | * Be careful about UV mapping, so all track nodes can use the same texture. (A human could not do this >100 times without mistakes.) | ||
+ | * Make sure to use different materials (texture slots) for rails and sleepers. This will very likely be useful at some time. | ||
+ | |||
+ | The script approach allows to change the level of detail later, without discarding a lot of work. | ||
+ | For example, someone may think that guard rails and frogs are useless, or that slide chairs are important. | ||
+ | |||
+ | ==== 56i's Opinion ==== | ||
+ | Do the tram tracks come without sleepers? I feel that tram tracks should be metal rails driven straight into the ground, as you can see in below reference image (of points at St Peter' | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | What i think is a good idea is versions of these rails without sleepers and those with sleepers, for tram systems and ballastless track. | ||
+ | |||
+ | ==== 15 Degree Track - BreadBox64==== | ||
+ | I agree with the set state concept, but was wondering what everyone' | ||
+ | |||
+ | |||
+ | |||
+ | It gets a no from me due to combinatorial explosion. Adding two more angles of track doesn' | ||
+ | {{: | ||
+ | |||
+ | This would increase the amount of time needed to manually make them, making more obvious we should have an algorithm that generates the track shapes. But even if they' | ||
+ | --Blockhead 2022-08-22 02:47 (UTC) |