76 lines · 2.8 KB
Raw Download
1
# <pep8 compliant>
2
#  This program is free software; you can redistribute it and/or
3
#  modify it under the terms of the GNU General Public License
4
#  as published by the Free Software Foundation; either version 2
5
#  of the License, or (at your option) any later version.
6
#
7
#  This program is distributed in the hope that it will be useful,
8
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
9
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
#  GNU General Public License for more details.
11
#
12
#  You should have received a copy of the GNU General Public License
13
#  along with this program; if not, write to the Free Software Foundation,
14
#  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
16
import bpy
17
from . import genesis
18
19
# CHANGELOG
20
# v 0.0.1 February 2022 - Genesis - Light Generator
21
#   ☒ Initial Add-on with light types, color modes, and layout control
22
#   ☒ Light Types:
23
#       ☒ Point
24
#       ☒ Sun
25
#       ☒ Spot
26
#       ☒ Area
27
#       ☒ Plane
28
#   ☒ Color Modes:
29
#       ☒ Range (Hue value between Min Hue and Max Hue)
30
#       ☒ Complementary (2 Hues from opposite ends of the color wheel)
31
#       ☒ Triad (3 Hues on opposite sides of color wheel)
32
#       ☒ Monochromatic (1 Color, all the same hue)
33
#       ☒ Split Complementary (3 Colors on opposite sides of color wheel)
34
#       ☒ Analogous (5 Colors on same side of color wheel)
35
#   ☒ Layout Modes:
36
#       ☒ Sphere (Creates lights equidistant from the selected object)
37
#       ☒ Top Sphere (Same as Sphere, but creates lights above horizon (+Z))
38
#       ☒ Grid (Creates lights above the selected object in a grid
39
#         spiraling outward)
40
#   ☒ Generates GENESIS collection, with child GENESISLights and
41
#     GENESISUtilities collections.
42
#   ☒ Lights with Keyframes:
43
#       ☒ Makes a set of lights per frame in the timeline. Set the range to
44
#         a small range (3-10 frames) for testing, as it can be slow. It will
45
#         keyframe the lights on for 1 frame. Useful for testing several
46
#         lighting setups, or for artistic effects.
47
48
bl_info = {
49
    "name": "Genesis - Light Generator",
50
    "description": "Tools to create lights in a 3D scene",
51
    "author": "Jeff Lange - @jefftml",
52
    "version": (1, 0, 0),
53
    "blender": (2, 80, 0),
54
    "location": "3D View > Sidebar > Tool",
55
    "doc_url": "https://jefftml.com/genesis-docs",
56
    "wiki_url": "https://jefftml.com/genesis-docs",
57
    "category": "Lighting"
58
}
59
# todo: IES/lighting gobos/patterns via duplication
60
#       predefined lighting setups
61
#       vertical circles layout, box layout,
62
#       update existing lights with settings without deletion
63
# bugs: issues with multiple scenes if collection exists in non-active scene
64
65
66
def register():
67
    genesis.register()
68
69
70
def unregister():
71
    genesis.unregister()
72
73
74
if __name__ == "__main__":
75
    register()
76