[Sharing] Distribute PVRTexTool commands for faster texture converting

This topic contains 2 replies, has 2 voices, and was last updated by  Kata Tunix 2 years, 10 months ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #31897

    Kata Tunix
    Member

    Hello all,

    My projects often contain hundreds/thousands textures so it takes a lot of time to convert them all to compressed formats.

    Therefore I wrote a tool called win2tiz and would like to share with you: https://drive.google.com/open?id=0B1bLtkV8mMk6b2tySndDMlhsN0U&authuser=0

    This tool will help you execute commands faster by distributing the commands to dedicated servers.

    Current supported commands:

    – PVRTexTool.exe (old version)
    – PVRTexTool34.exe (new version)
    – etcpack.exe (note that currently etcpack.exe itself cannot runs parallel due to the conflict of temporary files, waiting for ARM Mali to fix this)
    – GCC/G++ compile commands

    REQUIREMENTS

    – Windows 7, 8, 10 (not tested on XP)
    – .NET Framework 3.5+

    HOW TO USE

    1. Setup your dedicated severs:

    – Copy the folder win2tiz to each server, the path should be short and MUST NOT contain spaces (e.g C:win2tiz)
    – Copy your tool (e.g. PVRTexTool) to a identical path (e.g. Y:/PVRTexTool/PVRTexTool.exe) for all severs
    – In each server, start the service by running: mongcc.exe –start -port number
    For example: mongcc.exe –start -port 1909

    2. Clients distribute commands:

    – In each client, set following environment variables (example):
    set MONGCC_ENABLE=1 // if set to 0, then all commands will be executed locally, no need servers
    set MONGCC_MAX_JOBS=4 // how many commands will be executed parallel, typical 4
    set MONGCC_HOSTS=servername1 servername2 servername3 // computer names of the servers, separated by spaces
    set MONGCC_PORT=1909 // the port number, must be matched with the one on servers

    – In each client, export all your commands to a text file, each command is on a line; then execute:
    win2tiz.exe –cmd -file yourtextfile -jobs number
    For example: win2tiz.exe –cmd -file D:myfile.txt -jobs 4

    This will distribute your commmands to the servers and receive the results, in a parallel way.
    The jobs number should not be greater than MONGCC_MAX_JOBS, otherwise you will get an error message.

    – An example of a text file that contains PVRTexTool commands:
    Y:/PVRTexTool/PVRTexTool.exe -fETC -iE:MyTexture1.tga -oE:MyTexture1.pvr
    Y:/PVRTexTool/PVRTexTool.exe -fETC -iE:MyTexture2.tga -oE:MyTexture2.pvr
    //Y:/PVRTexTool/PVRTexTool.exe -fETC -iE:MyTexture3.tga -oE:MyTexture3.pvr
    //Commands that are empty or begin with // will be ignored.

    NOTE

    – The path to the tool (Y:/PVRTexTool/PVRTexTool.exe) must be the same for all clients and servers.
    – If you are using new version of PVRTexTool, please rename it to PVRTexTool34.exe

    Feel free to send feedback to me in this thread or by email katatunix@gmail.com or by skype katatunix@live.com

    #39227

    Joe Davis
    Member

    Hi Kata,

    Thanks for sharing your utility – sounds very useful :)!

    We’re planning to add a Showcase section to our website for interesting 3rd party projects like this. If you’re interested in this project being featured in our showcase, please let us know. We can discuss the specifics of how the Showcase would work & what project information is required through our <a href="https://pvrsupport.imgtec.com/new-ticket
    “>confidential ticket support system.

    Thanks,
    Joe

    #39228

    Kata Tunix
    Member

    Hi Joe,

    If you’re interested in this project being featured in our showcase, please let us know.

    Yes, I’m interested in your showcase.

Viewing 3 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic.