提交 36ee01cd 编写于 作者: 三月三net's avatar 三月三net

Python超人-宇宙模拟器

上级 0f55a42a
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
# python_version :3.9 # python_version :3.9
# ============================================================================== # ==============================================================================
from bodies import Sun, Earth from bodies import Sun, Earth
from sim_scenes.universe_sim_scenes import UniverseSimScenes
from simulators.ursina.entities.entity_utils import create_ambient_light from simulators.ursina.entities.entity_utils import create_ambient_light
from bodies.universe_body import create_universe_body from bodies.universe_body import create_universe_body
from common.consts import SECONDS_PER_DAY, SECONDS_PER_WEEK, SECONDS_PER_MONTH, SECONDS_PER_YEAR, AU from common.consts import SECONDS_PER_DAY, SECONDS_PER_WEEK, SECONDS_PER_MONTH, SECONDS_PER_YEAR, AU
...@@ -31,7 +32,7 @@ class WormholeInfo: ...@@ -31,7 +32,7 @@ class WormholeInfo:
camera_target_speed: int = 2000 camera_target_speed: int = 2000
camera_target_max_speed: int = 2000 camera_target_max_speed: int = 2000
camera_forward_speed: int = - 0.1 camera_forward_speed: int = - 0.1
camera_max_speed: int = 5000 camera_max_speed: int = 4000
camera_acc_speed: int = 1.02 camera_acc_speed: int = 1.02
camera_forward_acc_speed: int = 0.01 camera_forward_acc_speed: int = 0.01
size_factor: float = 10 size_factor: float = 10
...@@ -45,16 +46,7 @@ class WormholeInfo: ...@@ -45,16 +46,7 @@ class WormholeInfo:
around_acc_speed: int = -2 around_acc_speed: int = -2
# class WormholeInfoParams: class WormholeSim(UniverseSimScenes):
# def __init__(self):
# self.params = []
#
# def add(self, param_name):
#
# return self
class WormholeSim:
SIZE_SCALE = 1 SIZE_SCALE = 1
D = AU / 10 * SIZE_SCALE D = AU / 10 * SIZE_SCALE
...@@ -107,19 +99,20 @@ class WormholeSim: ...@@ -107,19 +99,20 @@ class WormholeSim:
# around_acc_speed: int = -2 # around_acc_speed: int = -2
wormhole_infos = [ wormhole_infos = [
{"position": [D, 0, -D], "rotation_y": -150}, {"name": "我们宇宙", "position": [D, 0, -D], "rotation_y": -150, "around_direction": "down",
{"position": [D, 0, D], "rotation_z": 30, "around_acc_speed": -20, "around_min_speed": 150, "camera_forward_speed": 0, "around_max_count": 400},
"camera_forward_speed": -0.3,"around_max_count":500}, {"name": "红色宇宙", "position": [D, 0, D], "rotation_z": 30, "around_acc_speed": -20,
{"position": [- D, -D, D]}, "around_min_speed": 150, "camera_forward_speed": -0.2, "around_max_count": 600},
{"position": [- D, 0, -D]}, {"name": "黄色宇宙", "position": [- D, -D, D], "around_direction": "left"},
{"position": [D, D, D]}, {"name": "梦海宇宙", "position": [- D, 0, -D]},
{"position": [D, -D, D]}, {"name": "金色宇宙", "position": [-D, D, D], "around_max_count": 400},
{"position": [- D, -D, -D]}, # {"position": [D, -D, D]},
{"position": [- D, 0, D]}, # {"position": [- D, -D, -D]},
{"position": [D, D, -D]}, # {"position": [- D, 0, D]},
{"position": [- D, D, -D]}, # {"position": [D, D, -D]},
{"position": [- D, D, D]}, # {"position": [- D, D, -D]},
{"position": [D, -D, -D]} # {"position": [- D, D, D]},
# {"position": [D, -D, -D]}
] ]
def build_wormhole_info_param(wormhole_info): def build_wormhole_info_param(wormhole_info):
...@@ -445,6 +438,9 @@ class WormholeSim: ...@@ -445,6 +438,9 @@ class WormholeSim:
UrsinaEvent.on_ready_subscription(wormhole_sim.on_ready) UrsinaEvent.on_ready_subscription(wormhole_sim.on_ready)
def run(self): def run(self):
self.set_window_size((1920, 1079), False)
self.build_events() self.build_events()
# 使用 ursina 查看的运行效果 # 使用 ursina 查看的运行效果
# 常用快捷键: P:运行和暂停 O:重新开始 I:显示天体轨迹 # 常用快捷键: P:运行和暂停 O:重新开始 I:显示天体轨迹
...@@ -457,8 +453,11 @@ class WormholeSim: ...@@ -457,8 +453,11 @@ class WormholeSim:
position=[0, self.D, -self.D * 2], position=[0, self.D, -self.D * 2],
cosmic_bg='', cosmic_bg='',
gravity_works=False, gravity_works=False,
bg_music='sounds/no_glory.mp3',
timer_enabled=True, timer_enabled=True,
show_grid=False, show_grid=False,
show_camera_info=False,
show_control_info=False,
show_trail=False) show_trail=False)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册