.
Page 1 of 2 12 LastLast
Results 1 to 15 of 29

Thread: Quick update

  1. #1
    Join Date
    Nov 2006
    Location
    Australia, QLD, Brisbane
    Posts
    7,067
     

    Default Quick update

    Hi all,

    First of all, I'd just like to say a personal Merry Christmas / Happy Holidays / Happy New Year to everyone. Hope that you've had a bit of a break and managed to spend some time in good company

    Now that you've had a little time to spend with the first of the new trainzdev builds, there are a few questions that I'd like comments on. It isn't necessary for everyone to answer this, but if your experiences differ from what others have posted, or if you have something constructive to say that hasn't already been said, please reply. In asking these questions, I'm assuming that you've already been using the build for long enough to sort out any initial hurdles - if you've only just started with the build then maybe give it another few days before replying.


    1. Are you succeeding in importing FBX meshes? At the current time we're not aware of any blocking issues here- importing from FBX should work as well or better than importing via IM files, up to an including animation. If you're find that this isn't the case, we'd like to know about it.

    2. How are you finding working with the new PBR materials? Again, outside of the need to tune the default environmental settings, we're not aware of any problems here. If you have concerns, please let us know. Are you seeing significant benefits from the new materials? Any specific disappointments?

    3. How are you finding working with parallax? (Answers from either a route creation or asset creation perspective are acceptable here.)

    4. If you're a scripter, how have you been going with the new GameObjectID changes and similar? Have you managed to get your scripts working, or if you're stuck on something then what is it?

    5. Got anything fun to share with others based on the new tech? Perhaps a work-in-progress screenshot, or your experiences with the build thus far? Feel free to share


    thanks!

    chris

  2. #2
    Join Date
    Nov 2006
    Location
    Canberra, Australia
    Posts
    8,547
    Blog Entries
    30
     

    Default

    I'll make an interim reply since I haven't really looked at anything other than the PBR materials.

    Using Blender and PaintShop Pro, I can fabricate a PBRmetal material but I have no tool that gives visual feedback other than importing into the game.

    The comments by our German friends got me interested in Substance Painter (SP) so I'm playing with that and trying to decide whether to take out a subscription. I probably will, since it is focused on game models and has some incredible tools to make texturing/painting much faster. Cab controls would be ideal candidates.

    Within SP, I've finally figured out how to successfully merge the channels of a "parameters" texture. Currently, I'm trying to make Maya LT export a PBRMetal material built from Substance Painter textures. Both programs are new to me so it's taking time. Maya LT doesn't have a material glossiness input and none of the other options I've tried get past the PBR material validation in the TrainzDev edition.

    My current focus is developing a work flow using what tools I have. Once I have that then I can move onto the "PBR workflow" to improve rendered results.

    I do have a request. Have you guys got simple test models of all the different PBR materials that you are willing to share as an FBX file? Cube mesh models, or any simple mesh, will do. I'd like to import those models into Blender and Maya LT to see what inputs get assigned in the materials setup.

    Paul


  3. #3
    Join Date
    Nov 2006
    Location
    United States of America, Massachusetts, Haverhill
    Posts
    27,501
     

    Default

    I did a bit of testing and playing around with the procedural grass and plants. I get some odd assertion errors, but I expect those in the test build.

    2017-12-29 232336.jpg

    This will be really promising when it comes to its full potential in game.

    I plan on making a video of my test train making its journey around the route and post it up so the users can see the materials and procedural grass and plants interact with the environment.
    John
    Trainz User Since: 12-2003
    Trainz User ID: 124863
    T:ANE Build: 94829
    TRS2019/Trainz-PLUS: 106618

  4. #4
    Join Date
    Nov 2006
    Location
    United States of America, Michagain, Berkley
    Posts
    5,564
    Blog Entries
    6
     

    Default

    Importing FBX works fine, my problem is exporting from Blender is a big pain, I would have to redo my work flow and end up with a lot of saved Blender files.

    I have not worked out yet how to make or bake the textures to go into the PBR channels.

    What we need is a working sample that we can look at and edit, that is we can have the name.tga files not the texture.txt ones.

  5. #5
    Join Date
    Nov 2006
    Location
    United Kingdom
    Posts
    1,110
     

    Default

    I've managed to work out what goes where in Blender to get an m.pbrmetal material and fbx export of one of my old track meshes working:

    PBR first attempt.jpg

    Things I've found so far-

    - The parallax effect is pretty dramatic at full black, so needs careful handling for more subtle effects;
    - Shadows and parallax are a bit strange. It would be good to know the best way of blending ballast with the ground, without creating an unsightly shadow if I use parallax to 'push' the edge of the ballast below ground level;
    - It'll take me a while to fully understand how all the channels of the parameters map work, and how best to generate them.;
    - m.tbumpenv is screwed at the moment, looking far too dark, but I guess this is to be expected in the development build.

    I've had one CTD after a long session of importing and then previewing but otherwise seems pretty stable and, subjectively, performance seems no worse than T:ANE on my laptop- maybe even bit better. Overall it's looking very encouraging.

    Interestingly, the Windows Mixed Reality Viewer and 3D Paint can both read .fbx files- although the material information isn't read in the same way as Trainz so it doesn't work for anything other than basic mesh previewing.

    R3

  6. #6
    Join Date
    Nov 2006
    Location
    United States of America, CALIFORNIA, LOS ANGELES
    Posts
    3,995
     

    Default

    I have not experimented with PBR materials, I will wait for a basic tutorial.
    I imported an asset that was made in Blender and exported with fbx. As you can see the texture is altered in the Dev build. I would suspect the normal map but can't be sure. I matched the Environment settings reasonably well in both builds.

    This is in TANE:

    [IMG][/IMG]


    And this in Dev:

    [IMG][/IMG]

    I don't know if this is useful to you or not.

    Mick
    Last edited by Mick_Berg; December 30th, 2017 at 04:09 PM.

  7. #7

    Thumbs up

    Hi,

    at first, I'd like to say - thank you for adding the PBR workflow to TANE!

    ..snip..

    Hannes
    Last edited by WindWalkr; December 31st, 2017 at 02:45 AM. Reason: snipped duplicate post

  8. #8
    Join Date
    Nov 2006
    Location
    Australia, QLD, Brisbane
    Posts
    7,067
     

    Default

    Quote Originally Posted by yohanniz View Post
    Hi,

    at first, I'd like to say - thank you for adding the PBR workflow to TANE!

    ..snip..

    Hannes

    I've noticed that you've tried to post this a few times, but your posts are being flagged as spam. I've raised this with our administrator to work out why this is happening.

    In the meantime, I've manually approved your posts (and the replies to it) here.

    chris

  9. #9
    Join Date
    May 2008
    Location
    Germany, Nordrhein Westfalen, Moenchengladbach
    Posts
    126
     

    Default

    The GameObjectID Class is working as expected for me. Everything is self explaining.
    My latest assets are working fine!

    Best Regards
    Pascal

  10. #10

    Default

    I start working with the new material, while the preliminary testing pictures (old material)
    I want to say that the old one works quite satisfactorily



  11. #11

    Default

    Quote Originally Posted by WindWalkr View Post
    . . .

    4. If you're a scripter, how have you been going with the new GameObjectID changes and similar? Have you managed to get your scripts working, or if you're stuck on something then what is it?

    . . .

    chris
    A short feedback on using in scripts new GameObjectID and associated new APIs. This feedback is more based on using these objects and API under Tane SP2 than under last TrainzDev build, but I have not seen currently any difference beetween these builds on how they support these new objects and APIs. But may be I have not seen everything ...

    I have currently 58 scripted assets (rules, driver commands, libraries, ... ) available for free download on DLS and 43 have been already migrated to the new GameObjectID and APIs interfaces (75% migrated). What can I say from this work already done :

    - the new GameObjectID and APIs are easy to understand and to use, and the migration from legacy API to new ones is quite easy, even if there is still some lack in the script documentation (for example the string values that can be used as category filter are not documented, and as it is impossible to guess them, the only way to find the values is to do some reverse engineering looking at how N3V set these values for some base rules and driver commands ... ).
    - you need also to try and understand some of the new APIs options, which are very powerfull but are not so easy to understand and use the first time you use it, but are very efficient when you master them : an example is the expiry notify option for a named objects search, that enables to receive a message when some object is later renamed or deleted in a named objects search results. This option enables to be warned (receive a message) and to rebuild the named objects list when only it is needed ...
    - you need also to explore and understand the new APIs for driver commands menu ( InitialiseAsMapObjectSelector(...) ) or using property objects ( property objects of type map-object ) to fully use all the power of the new interfaces, and with no documentation or example it is not so easy ...
    - and the last point should not be a surprise : as now all named objects search need to be done using asynchronous search under a thread to wait for the results coming later, mastering Trainz thread programmation techniques is needed if you want to use these asynchronous search interfaces ... This means for me that for complex scripting in Trainz, the minimum level of programming techniques to master has been raised ...

    So to resume : very consistent and powerfull interface, will be easy to use when the wiki will have been updated (but may be it is also to us, scripters, to add the missing documentation in the wiki ... ) , will need to master thread programming techniques when using asynchronous searches ...

    Another aspect of these API interfaces is that they include some native filtering facilities but only by prefixing objects names ... This may mean that we should in the future change some naming convention to use some new naming convention more adapted to the native filtering options in the API. For example, currently my scripts enable to use trackmark lists, where a trackmark in the list is named trackmark_list_name(index_of_trackmark_in_list) . Naming in the future these trackmarks with a new name convention like #trackmark_list_name#index_of_trackmark_in_list would be better, as you could use easily the native filtering options to retrieve all trackmarks prefixed by # or only trackmarks in a trackmark list by filtering on #trackmark_list_name# . Some reflexion on how to use efficiently the native filtering options need to be now done to improve scripts efficience.

    Regards.
    Pierre.
    Last edited by pguy; January 2nd, 2018 at 08:52 AM.

  12. #12
    Join Date
    Nov 2006
    Location
    Australia, QLD, Brisbane
    Posts
    7,067
     

    Default

    Quote Originally Posted by pguy View Post
    This feedback is more based on using these objects and API under Tane SP2 than under last TrainzDev build, but I have not seen currently any difference beetween these builds on how they support these new objects and APIs.
    The primary difference is that the use of the updated APIs is compulsory under the TrainzDev build, so (hopefully) no mistakes can be made- your script is either using the new functionality, or it will not work.


    Another aspect of these API interfaces is that they include some native filtering facilities but only by prefixing objects names ... This may mean that we should in the future change some naming convention to use some new naming convention more adapted to the native filtering options in the API.
    I believe you can also customise the categories at the asset level, so it depends whether you're trying to find a subset of assets or a subset of instances. For example, if you created a new marker object for use with your script, then you should be able to find instances of that marker without having to worry about the user following a special naming convention.


    I would also stress that much of the new functionality is aimed at dealing with the fact that objects can now be unloaded at runtime. Using the new APIs is only part of the change; you also have new assumptions to deal with. You should be able to test this on any large-scale route, but smaller routes (eg. KSC or less) probably don't properly exercise this functionality.

    chris

  13. #13
    Join Date
    Feb 2012
    Location
    Australia
    Posts
    727
     

    Default

    For those wanting some PBR example assets there are now several on the Trainz wiki.

    m.pbrmetal

    m.pbrmetaldetail

    m.pbrmetalmasked

  14. #14
    Join Date
    Nov 2006
    Location
    United States of America, Washington, Seattle
    Posts
    3,366
     

    Default

    Oops - I missed this post - sorry about that! Merry belated Christmas and a Happy New Year!

    Exporting a PBR-based model from Blender worked fine, as did creating the detail texture in PaintShop Pro. My pain point at the moment is that I am unable to easily bake several PBR materials together into a single map / material in Blender. Blender doesn't seem to be able to bake the metalic, roughness, or height channels yet. I can work around it, but it's a pain.

    Thank you for the examples!
    Curtis

  15. #15
    Join Date
    Nov 2006
    Location
    Canberra, Australia
    Posts
    8,547
    Blog Entries
    30
     

    Default

    What exactly does the "Reset Diurnal Color Data" button in Environmental Lighting do?

    Since installing this version, my surveyor scenes have been consistently dark and I was having problems trying to test the AO channel (B) of the parameters texture. Then I clicked on that button and it was like someone turned on the lights. I don't recall it being that significant in earlier TANE versions. Should I be resetting this if the scene looks a little dark?

    Paul


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •