https://github.com/carla-simulator/carla
Raw File
Tip revision: c135e923f6092dd64a0c94e06d3189b4d9f82115 authored by Axel on 22 February 2022, 14:46:04 UTC
Added automatic hierarchy extraction from skeletal mesh to spring based skeleton. Exposed custom spring vegetation structs to editor.
Tip revision: c135e92
enable_carsim_to_uproject.py
#!/usr/bin/env python

# Copyright (c) 2020 Computer Vision Center (CVC) at the Universitat Autonoma de
# Barcelona (UAB).
#
# This work is licensed under the terms of the MIT license.
# For a copy, see <https://opensource.org/licenses/MIT>.

import glob
import os
import sys
import argparse
import json

def main():
    """Edits the uproject file to enable and disable the CarSim plugin
    """
    argparser = argparse.ArgumentParser()
    argparser.add_argument(
        '-f', '--file',
        metavar='F',
        default="",
        type=str,
        help='Path to the uproject file')
    argparser.add_argument(
        '-e', '--enable',
        action='store_true',
        help='enable carsim')
    args = argparser.parse_args()

    # Read uproject (json) file
    uproject_file = open(args.file, 'r')
    uproject_json = json.load(uproject_file)
    uproject_file.close()

    # Get the plugin list
    plugin_list = uproject_json["Plugins"]

    # Edit plugin
    should_do_changes = False
    carsim_found = False
    for plugin in plugin_list:
        if plugin['Name'] == 'CarSim':
            if args.enable:
                if not plugin['Enabled']:
                    should_do_changes = True
                    plugin['Enabled'] = True
            else:
                if plugin['Enabled']:
                    should_do_changes = True
                    plugin['Enabled'] = False
            carsim_found = True
    if not carsim_found and args.enable:
        should_do_changes = True
        plugin_list.append({'Name':'CarSim', 'MarketplaceURL': 'com.epicgames.launcher://ue/marketplace/content/2d712649ca864c80812da7b5252f5608', "Enabled": True})

    # Save file if there are changes to do
    if should_do_changes:
        uproject_file = open(args.file, 'w')
        uproject_file.write(json.dumps(uproject_json, indent = 4, sort_keys=True))
        uproject_file.close()

if __name__ == '__main__':
    main()
back to top