-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
69 lines (61 loc) · 2.13 KB
/
setup.py
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
61
62
63
64
65
66
67
68
69
from setuptools import find_packages, setup
import os
# Package meta-data.
NAME = 'dronesim'
DESCRIPTION = 'Simulate a Vehicle for AI applications in 3D environments'
URL = 'https://github.com/nb-programmer/dronesim'
EMAIL = 'narayanband1356@gmail.com'
AUTHOR = 'nb-programmer'
REQUIRES_PYTHON = '>=3.7.0'
VERSION = '0.7.3'
LICENSE = 'MIT'
REQUIRED = [
'Panda3D', # The 3D engine that does all the heavy lifting of rendering, i/o and physics
'panda3d-gltf', # Model import format support for gltf/glb models
'pyee', # Event interface for state change in the simulator
'numpy', # Number manipulation and some math functions
'PyGLM', # Matrix and vector math
'simple-pid', # PID controller for physics engines
'matplotlib' # To plot target vs actual to tune PID coefficients
]
EXTRAS = {
"gym": ["gym"], # Optional Gym environment support
"cv": ["opencv-python"], # For some objectives
"pbr": [ # Physically Based Rendering (PBR) model support (eg. Blender-exported models)
"panda3d-simplepbr" # - Using panda3d-simplepbr library
]
}
PACKAGE_DATA = {
#Include models, scenes and textures with the package when installing
NAME: [
'assets/**',
'assets/models/**',
'assets/scenes/**',
'assets/textures/**',
'assets/shaders/**'
]
}
PACKAGE_ENTRY_SCRIPTS = [ 'dronesim = dronesim.__main__:main' ]
long_desc = DESCRIPTION
try:
BASEPATH = os.path.abspath(os.path.dirname(__file__))
with open(os.path.join(BASEPATH, 'README.md'), encoding='utf-8') as f:
long_desc = f.read()
except FileNotFoundError:
pass
setup(
name=NAME,
version=VERSION,
description=DESCRIPTION,
long_description=long_desc,
packages=find_packages(),
package_data=PACKAGE_DATA,
entry_points={'console_scripts': PACKAGE_ENTRY_SCRIPTS},
url=URL,
license=LICENSE,
author=AUTHOR,
author_email=EMAIL,
python_requires=REQUIRES_PYTHON,
install_requires=REQUIRED,
extras_require=EXTRAS
)