Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Python_超人
宇宙模拟器
提交
4cdb1f1c
宇宙模拟器
项目概览
Python_超人
/
宇宙模拟器
通知
19
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
宇宙模拟器
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
4cdb1f1c
编写于
11月 15, 2023
作者:
三月三net
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Python超人-宇宙模拟器
上级
f235ed70
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
23 addition
and
11 deletion
+23
-11
common/image_utils.py
common/image_utils.py
+2
-0
objs/obj.py
objs/obj.py
+14
-8
simulators/ursina/entities/ursina_demo.py
simulators/ursina/entities/ursina_demo.py
+7
-3
未找到文件。
common/image_utils.py
浏览文件 @
4cdb1f1c
...
@@ -201,6 +201,8 @@ def find_texture(texture, default_val=""):
...
@@ -201,6 +201,8 @@ def find_texture(texture, default_val=""):
if
os
.
path
.
exists
(
texture
):
if
os
.
path
.
exists
(
texture
):
return
texture
return
texture
paths
=
[
paths
=
[
os
.
path
.
join
(
'..'
,
'..'
,
'..'
,
'objs'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'..'
,
'..'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'..'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'..'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'..'
,
'objs'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'..'
,
'objs'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'textures'
),
os
.
path
.
join
(
'..'
,
'textures'
),
...
...
objs/obj.py
浏览文件 @
4cdb1f1c
...
@@ -484,7 +484,10 @@ class Obj(metaclass=ABCMeta):
...
@@ -484,7 +484,10 @@ class Obj(metaclass=ABCMeta):
return
body_data
return
body_data
def
show_demo
(
self
,
size_scale
=
10000
,
on_ready_fun
=
None
,
on_timer_changed_fun
=
None
):
def
show_demo
(
self
,
size_scale
=
10000
,
position
=
(
0
,
3000000
,
-
9000000
),
on_ready_fun
=
None
,
on_timer_changed_fun
=
None
):
from
sim_scenes.func
import
ursina_run
from
sim_scenes.func
import
ursina_run
from
sim_scenes.func
import
camera_look_at
from
sim_scenes.func
import
camera_look_at
from
simulators.ursina.ursina_event
import
UrsinaEvent
from
simulators.ursina.ursina_event
import
UrsinaEvent
...
@@ -495,18 +498,21 @@ class Obj(metaclass=ABCMeta):
...
@@ -495,18 +498,21 @@ class Obj(metaclass=ABCMeta):
def
on_ready
():
def
on_ready
():
camera_look_at
(
self
)
camera_look_at
(
self
)
if
callable
(
on_ready_fun
):
on_ready_fun
()
on_ready_fun
()
def
on_timer_changed
(
time_data
):
def
on_timer_changed
(
time_data
):
if
callable
(
on_timer_changed_fun
):
on_timer_changed_fun
(
time_data
)
on_timer_changed_fun
(
time_data
)
UrsinaEvent
.
on_ready_subscription
(
on_ready
)
if
callable
(
on_ready_fun
):
UrsinaEvent
.
on_ready_subscription
(
on_ready
)
UrsinaEvent
.
on_timer_changed_subscription
(
on_timer_changed
)
if
callable
(
on_timer_changed_fun
):
UrsinaEvent
.
on_timer_changed_subscription
(
on_timer_changed
)
timer_enabled
=
True
else
:
timer_enabled
=
False
ursina_run
(
bodies
=
[
self
],
position
=
(
0
,
3000000
,
-
9000000
)
)
ursina_run
(
bodies
=
[
self
],
position
=
position
,
timer_enabled
=
timer_enabled
)
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
...
...
simulators/ursina/entities/ursina_demo.py
浏览文件 @
4cdb1f1c
...
@@ -12,7 +12,11 @@ shperes = []
...
@@ -12,7 +12,11 @@ shperes = []
def
create_sphere
():
def
create_sphere
():
shpere
=
Entity
(
model
=
"sphere"
,
position
=
camera_ship
.
position
,
scale
=
30
)
shpere
=
Entity
(
# model="sphere",
model
=
"../../../objs/models/drops.obj"
,
texture
=
load_texture
(
"../../../objs/textures/rock_snow.jpg"
),
position
=
camera_ship
.
position
,
scale
=
500
)
shperes
.
append
(
shpere
)
shperes
.
append
(
shpere
)
...
@@ -26,7 +30,7 @@ create_sphere_sky(scale=5000000)
...
@@ -26,7 +30,7 @@ create_sphere_sky(scale=5000000)
camera
.
parent
=
camera_ship
camera
.
parent
=
camera_ship
camera
.
reparent_to
(
camera_ship
)
camera
.
reparent_to
(
camera_ship
)
camera
.
position
=
[
0
,
1000
,
-
3000
]
camera
.
position
=
[
0
,
1000
,
-
3000
]
camera
.
rotation_x
=
2
0
camera
.
rotation_x
=
1
0
# application.time_scale = 1
# application.time_scale = 1
...
@@ -36,8 +40,8 @@ def update():
...
@@ -36,8 +40,8 @@ def update():
camera_ship
.
rotation_y
+=
0.01
camera_ship
.
rotation_y
+=
0.01
# camera.position = Vec3(0, 1000, -1000)
# camera.position = Vec3(0, 1000, -1000)
for
shpere
in
shperes
:
for
shpere
in
shperes
:
shpere
.
position
+=
Vec3
(
0
,
0
,
100
)
shpere
.
rotation_y
=
camera_ship
.
rotation_y
shpere
.
rotation_y
=
camera_ship
.
rotation_y
shpere
.
position
+=
shpere
.
forward
*
10
def
input
(
key
):
def
input
(
key
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录