-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy path__init__.py
More file actions
61 lines (51 loc) · 2.53 KB
/
__init__.py
File metadata and controls
61 lines (51 loc) · 2.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
bl_info = {
"name": "Export Overte json files",
"author": "keeshii",
"version": (0, 0, 2),
"blender": (3, 2, 0),
"location": "File > Import-Export",
"description": "Exports scene to Overte json world file.",
"warning": "",
"wiki_url": "",
"tracker_url": "",
"category": "Import-Export"}
import bpy
from .asset_loader import AssetLoader, AssetLoaderOperator
from .export_overte_json import ExportOverteJson
from .properties import OverteObjectProperties, OverteCollectionProperties, OverteMaterialProperties, OverteWorldProperties
from .overte_panels import OverteObjectPanel, OverteCollectionPanel, OverteMaterialPanel, OverteWorldPanel
# Only needed if you want to add into a dynamic menu
def menu_func_export(self, context):
self.layout.operator(ExportOverteJson.bl_idname, text="Overte (*.json)")
# Register and add to the "file selector" menu (required to use F3 search "Text Export Operator" for quick access).
def register():
AssetLoader.find_all_models()
bpy.utils.register_class(ExportOverteJson)
bpy.types.TOPBAR_MT_file_export.append(menu_func_export)
bpy.utils.register_class(AssetLoaderOperator)
bpy.utils.register_class(OverteObjectProperties)
bpy.utils.register_class(OverteObjectPanel)
bpy.utils.register_class(OverteCollectionProperties)
bpy.utils.register_class(OverteCollectionPanel)
bpy.utils.register_class(OverteMaterialProperties)
bpy.utils.register_class(OverteMaterialPanel)
bpy.utils.register_class(OverteWorldProperties)
bpy.utils.register_class(OverteWorldPanel)
bpy.types.Object.overte = bpy.props.PointerProperty(type=OverteObjectProperties)
bpy.types.Collection.overte = bpy.props.PointerProperty(type=OverteCollectionProperties)
bpy.types.Material.overte = bpy.props.PointerProperty(type=OverteMaterialProperties)
bpy.types.World.overte = bpy.props.PointerProperty(type=OverteWorldProperties)
def unregister():
bpy.utils.unregister_class(ExportOverteJson)
bpy.types.TOPBAR_MT_file_export.remove(menu_func_export)
bpy.utils.unregister_class(AssetLoaderOperator)
bpy.utils.unregister_class(OverteObjectProperties)
bpy.utils.unregister_class(OverteObjectPanel)
bpy.utils.unregister_class(OverteCollectionProperties)
bpy.utils.unregister_class(OverteCollectionPanel)
bpy.utils.unregister_class(OverteMaterialProperties)
bpy.utils.unregister_class(OverteMaterialPanel)
bpy.utils.unregister_class(OverteWorldProperties)
bpy.utils.unregister_class(OverteWorldPanel)
if __name__ == "__main__":
register()