Flatcar loads

In this forum you can make SUGGESTIONS for repaints and/or other downloads. If you are suggesting repaints of something, please supply a picture of it. Make it easier for the painter.

Re: Flatcar loads

Unread postby Chacal » Fri Apr 01, 2016 2:05 pm

Or just open the Geopcdx file in RW-Tools and remove the reference to the child object.
Over the hill and gathering speed
Chacal
Site Admin
 
Posts: 6526
Joined: Tue Jul 05, 2011 1:11 pm
Location: Quebec, Canada

Re: Flatcar loads

Unread postby jalsina » Fri Apr 01, 2016 3:23 pm

Chacal wrote:Or just open the Geopcdx file in RW-Tools and remove the reference to the child object.

But here we fall again in the never ending discussion about the GeoPcDx modification.
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby buzz456 » Fri Apr 01, 2016 5:13 pm

Spare us. He's drinking of the kool aid again.
Buzz
39 and holding.
"Some people find fault like there's a reward for it."- Zig Ziglar
"If you can dream it you can do it."- Walt Disney
Image
User avatar
buzz456
Site Admin
 
Posts: 21057
Joined: Sun Mar 21, 2010 8:30 am
Location: SW Florida

Re: Flatcar loads

Unread postby jalsina » Fri Apr 01, 2016 5:15 pm

buzz456 wrote:Spare us. He's drinking of the kool aid again.

!*roll-laugh*!
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby ZeroCNReaper » Mon Apr 04, 2016 2:04 am

If you didn't get this pack as a reward when DTG was giving them away at the time will getting this pack work even if you didn't get it from DTG?
I'm a little confused on this !**conf**!
ZeroCNReaper
 
Posts: 27
Joined: Wed Jan 27, 2016 6:02 pm

Re: Flatcar loads

Unread postby buzz456 » Mon Apr 04, 2016 8:20 am

ZeroCNReaper wrote:If you didn't get this pack as a reward when DTG was giving them away at the time will getting this pack work even if you didn't get it from DTG?
I'm a little confused on this !**conf**!


Where are you going to get it from?
Buzz
39 and holding.
"Some people find fault like there's a reward for it."- Zig Ziglar
"If you can dream it you can do it."- Walt Disney
Image
User avatar
buzz456
Site Admin
 
Posts: 21057
Joined: Sun Mar 21, 2010 8:30 am
Location: SW Florida

Re: Flatcar loads

Unread postby jalsina » Mon Apr 04, 2016 10:06 am

ZeroCNReaper wrote:If you didn't get this pack as a reward when DTG was giving them away at the time will getting this pack work even if you didn't get it from DTG?
I'm a little confused on this !**conf**!


Actually you got it :D
The only thing DTG did not do was putting the tank over the flatcar.
And yes it works even mixed with the vehicles that were made available over the flatcars.
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby jalsina » Mon Apr 04, 2016 10:17 am

These are 3 of the 89 ft flatcars available from TS2016 DLC:
The first is the Rewards. The other two are BNSF that come from Stevens Pass.
The one at the rear is a 60 ft BNSF also from Stevens.
All have 4 axles.

20160404104129_1.jpg
You do not have the required permissions to view the files attached to this post.
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby jalsina » Mon Apr 04, 2016 9:17 pm

How to work with scaled scenery objects for flatcars loads using children

When trying to use a scenery object as a flatcar load that you want to resize, you need to scale it.
When trying to do this in the child matrix, it can become a real painful trial and error procedure.
I have found a way to do it easily that may be known by some of RWA members but I want to share it.

1) Open a Free Roam scenario and be sure to add the blueprint of the DLC where the static object is located (with the little cube or "object set filter"). Add the flatcar you will use to carry your load. In my case the scenario is in Cheyenne, in Sherman Hill and the scenery object I will modify is from SH as well. The object I will modify is the white horizontal tank along the flatcar in the picture.

Click the Objects Tools icon (scenery mode).

20160404181608_1.jpg

2) Click the original object. Press the copy icon. Click anywhere and click the Paste icon. Using local transform 3-axis, move your copied object over the flatcar, position and center it.

20160404181641_1.jpg

3) Double click the copied object. Take a look to the Properties inset (right upper side).

20160404181812_1.jpg

4) It is time to scale the copy object. Unless you will scale it proportionally in the three axis, be sure to uncheck the Legacy Gizmo (see the arrow in the next screenshot).
Scale the object as you wish. See that more scaling in one or two of the three axis may deform parts of the object. In this case the flange over the vessel is wrongly shaped as an ellipse. Once scaled save F2.

20160404182441_1.jpg

5) Double click the scaled object and check the scaling values (3rd row of the inset). If you want do small changes by editing those numbers. Write down the three scaling values, X, Y, Z.
The other values of the inset, as far as I know, are world referenced and have no value whatsoever.

20160404183213_1.jpg

6) I will not enter much in this area. It is not part of the scaling tutorial procedure. If anyone needs an answer post the question here.

The next step is defining the load xml (RW_Tools). The February Rewards have 4 excellent examples you may edit (military vehicles). After that define the loaded flatcar xml (bin). Take the empty version and add an object child. You may also use another that is loaded and edit the name, child, etc..

The XML bin has to point to the object GeoPcDx. The folder structure where the GeoPcDx is located is shown at the bottom of the properties inset (check the shot #5). Define the loaded flatcar in the same folder you have the empty version (in the example it is the February rewards folder DTG---FlatCarPack01).

7) A child that doesn´t need rotation looks about this:
Code: Select all
                     <Matrix>
                        <cHcRMatrix4x4>
                           <Element>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000A0B506F23F" d:precision="string">1.12664</e>
                              <e d:type="sFloat32" d:alt_encoding="0000008007FF0840" d:precision="string">3.12453</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                           </Element>
                        </cHcRMatrix4x4>
                     </Matrix>

The values of the elements 13, 14 and 15 are the positioning of the load object over the flatcar, in the 3 axis in this order: X (lateral position), Y (altitude), Z (along the flatcar) (Here X=0, Y=1.12664, Z=3.12453). The last number 1 is the last element of the 4x4 matrix with no value here. You will need to edit all the three 1 values.

To scale the object in the child:
Replace the following matrix elements with the X, Y, Z of the scaling process (step 5 above): the 1st element with X, the 6th with Y and the 11th with Z.

The final matrix for this example will be:
Code: Select all
                     <Matrix>
                        <cHcRMatrix4x4>
                           <Element>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">0.66</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">0.66</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1.38</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000A0B506F23F" d:precision="string">1.12664</e>
                              <e d:type="sFloat32" d:alt_encoding="0000008007FF0840" d:precision="string">3.12453</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                           </Element>
                        </cHcRMatrix4x4>
                     </Matrix>

The scaling process is over.

If you need to additionally rotate the object, here is the tutorial:
http://railworksamerica.com/index.php/learning/tutorials/item/159-manually-editing-object-position

Once your flatcar is tested on a track delete the object you created and scaled. If not, it will may remain suspended there, as part of the route or other scenarios.
You do not have the required permissions to view the files attached to this post.
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby Chacal » Mon Apr 04, 2016 9:24 pm

Excellent idea to use the editor to find the values for later manual edit of the blueprint.
Excellent tutorial, I will add it to the learning center.
Over the hill and gathering speed
Chacal
Site Admin
 
Posts: 6526
Joined: Tue Jul 05, 2011 1:11 pm
Location: Quebec, Canada

Re: Flatcar loads

Unread postby jalsina » Mon Apr 04, 2016 11:05 pm

Chacal wrote:Excellent idea to use the editor to find the values for later manual edit of the blueprint.
Excellent tutorial, I will add it to the learning center.

Thank you Chacal, specially coming from you, who took me down the right path with the military loads subject. !*salute*!

I want to take a look to this method when there is a need for a combination with object rotation (as it was with the Abrams). !!det!!
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby BKRR605 » Tue Apr 05, 2016 5:49 am

Cool, im gonna try it with a peterbilt !!*ok*!!
EDIT: Never mind, I didn't read it slow enough !**duh*!!
ImageImageImage
Moxie is awesome.
User avatar
BKRR605
 
Posts: 871
Joined: Sat Jun 20, 2015 11:43 am
Location: Cambridge

Re: Flatcar loads

Unread postby jalsina » Wed Apr 06, 2016 6:49 pm

Another day, another finding! **!!bang!!**
While I was working in the tutorial posted above a couple days ago (related with scaling an object with the build editor data), I was already asking myself:

How do I scale objects that have been rotated?

If you check the scaling (final) part of Chacal´s tutorial: http://railworksamerica.com/index.php/learning/tutorials/item/159-manually-editing-object-position you read:

Scaling
Scaling is along the top-left to bottom-right diagonal.

Image

Fairly obvious, position 1 is scaling by X, 6 is scaling by Y, 11 is scaling by Z, and 16 really should scale all of them - but trying this has produced some rather odd results.


It is all about changing the (1) values in the diagonal of the upper left 3x3 matrix. But what happens when you need to rotate an object?. The replacement of values from the build editor in the tutorial I posted, was about replacing these three (1) values.

Now, lets see what I am going to deal with in this post. A normal matrix looks like this one:

Code: Select all
                     <Matrix>
                        <cHcRMatrix4x4>
                           <Element>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000A0B506F23F" d:precision="string">1.12664</e>
                              <e d:type="sFloat32" d:alt_encoding="0000008007FF0840" d:precision="string">3.12453</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                           </Element>
                        </cHcRMatrix4x4>
                     </Matrix>

But when you rotate the object, you replace several of the 3x3 upper left matrix by 1, sin Θ or cos Θ (check Chacal´s tutorial). And some values may become negative according to the rotation direction.

If you have followed this thread, you know that my interest started when I found the Abrams tank in the February Rewards without any usage in the flatcar provided by DTG. In page #1 you can see a screenshot of the Abrams how it looks before rotation. Once rotated in the Y axis, along the flatcar (Z axis), the matrix looks like this:

Code: Select all
                     <Matrix>
                        <cHcRMatrix4x4>
                           <Element>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F0BF" d:precision="string">-1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="00000060561AF23F" d:precision="string">1.13143</e>
                              <e d:type="sFloat32" d:alt_encoding="000000606666F63F" d:precision="string">1.4</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                           </Element>
                        </cHcRMatrix4x4>
                     </Matrix>


Some values changed to 0,1 or 2. For example, the first element changed from 1 to 0. So what will be scaled in such a changed (rotated) matrix.
The answer is, all (1) values, either positive or negative are scaled even if those are not located in the matrix 3x3 diagonal.

Suppose now a scaling of the Abrams by twice in the three axis. This would be the matrix:

Code: Select all
                     <Matrix>
                        <cHcRMatrix4x4>
                           <Element>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F0BF" d:precision="string">-2</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">2</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">2</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</e>
                              <e d:type="sFloat32" d:alt_encoding="00000060561AF23F" d:precision="string">1.13143</e>
                              <e d:type="sFloat32" d:alt_encoding="000000606666F63F" d:precision="string">1.4</e>
                              <e d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</e>
                           </Element>
                        </cHcRMatrix4x4>
                     </Matrix>

You can see that I replaced all (1) and (-1) values to (2) and (-2), respectively.

And this is the result:

20160406183231_1.jpg

However, something changes drastically, the order of the axes. The 1st value (-2) is the Z axis instead X. The next value (2) is in the Y axis and the last in the X axis. Probably if we did some Linear Algebra calculus, it has to do with the matrix rotation. In my opinion we have to deal with this fact only by trying.

!*YAAA*! !*YAAA*!

A final thought:
What if the values are not 1 or -1 and they are fractions. Just multiply the scaling factor by the fractions. !!howdy!!
You do not have the required permissions to view the files attached to this post.
Intel i7-7900K (3.60 GHz) - ASUS Prime Z390A - 32 GB DDR4 RAM 2400 MHz
GPU EVGA GTX-1060 OC 6GB at 1920x1080, 144 Hz - Monitor ASUS VG-248QE
System Windows 11 Pro in WD SSD 500 GB. Games in Inland 1Tb M.2 NVMe PCIe
User avatar
jalsina
 
Posts: 2015
Joined: Sun Jul 05, 2015 8:32 pm

Re: Flatcar loads

Unread postby ZeroCNReaper » Sat Apr 09, 2016 2:33 am

buzz456 wrote:
ZeroCNReaper wrote:If you didn't get this pack as a reward when DTG was giving them away at the time will getting this pack work even if you didn't get it from DTG?
I'm a little confused on this !**conf**!


Where are you going to get it from?


I was reffering to this http://railworksamerica.com/index.php/d ... k-repaints Which by the way didn't work.
I didn't know anything about rewards until recently.
Have also had the game since 2012 so i more than likely wouldn't have got it anyway, least that was the impression i got when i was looking for the military flat cars on DTG's TS16 website on rewards for it.


Also i don't know how to use coding.... least i think that's what it's called !**conf**! the child thingy.

About the only thing i know how to do is change the horn and bell sounds and that's it.
Tried to change the engine sound on the CN ES44AC because it had the default GP40 engine sound and well the end result is now i have no engine sound at all.
And i did make a backup for it and it did not fix it.
ZeroCNReaper
 
Posts: 27
Joined: Wed Jan 27, 2016 6:02 pm

Previous

Return to Model/Repaint Suggestions

Who is online

Users browsing this forum: No registered users and 1 guest