42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
|
|
||
|
import argparse
|
||
|
import sys
|
||
|
import json
|
||
|
from pathlib import Path
|
||
|
import bpy
|
||
|
|
||
|
from asset_library import constants
|
||
|
from asset_library.core.bl_utils import load_datablocks
|
||
|
|
||
|
|
||
|
def publish_asset(data_type, name):
|
||
|
bpy.app.use_userpref_skip_save_on_exit = True
|
||
|
|
||
|
blend_file = bpy.data.filepath
|
||
|
preview_blend = constants.RESOURCES_DIR / 'asset_preview.blend'
|
||
|
col = load_datablocks(preview_blend, names='Preview', type='collections', link=False)
|
||
|
bpy.context.scene.collection.children.link(col)
|
||
|
|
||
|
if data_type == 'node_groups':
|
||
|
ntree = bpy.data.node_groups[name]
|
||
|
mod = bpy.data.objects['Cube'].modifiers.new(ntree_name, 'NODES')
|
||
|
mod.node_group = ntree
|
||
|
|
||
|
bpy.context.preferences.filepaths.save_version = 0
|
||
|
bpy.ops.wm.save_mainfile(compress=True, exit=True)
|
||
|
#bpy.ops.wm.quit_blender()
|
||
|
|
||
|
|
||
|
if __name__ == '__main__' :
|
||
|
parser = argparse.ArgumentParser(description='build_collection_blends',
|
||
|
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
|
||
|
|
||
|
parser.add_argument('--data-type')
|
||
|
parser.add_argument('--datablock')
|
||
|
|
||
|
if '--' in sys.argv :
|
||
|
index = sys.argv.index('--')
|
||
|
sys.argv = [sys.argv[index-1], *sys.argv[index+1:]]
|
||
|
|
||
|
args = parser.parse_args()
|
||
|
publish_asset(**vars(args))
|