Открыть боковую панель
Левадный Владимир Юрьевич
universo-godot
Коммиты
207fb68d
Коммит
207fb68d
создал
Фев 16, 2020
по автору
Max Bondarev
Просмотр файлов
реализация player в gdnative cpp
владелец
d76b1ff3
Изменения
3
Скрыть пробелы
Построчно
Рядом
.gitignore
Просмотр файла @
207fb68d
...
@@ -3,3 +3,5 @@ export_presets.cfg
...
@@ -3,3 +3,5 @@ export_presets.cfg
addons/
addons/
*.so
*.so
*.os
*.dblite
blokoj/toroid/skriptoj/cpp/SConstruct
0 → 100644
Просмотр файла @
207fb68d
#!python
import
os
,
subprocess
opts
=
Variables
([],
ARGUMENTS
)
# Gets the standard flags CC, CCX, etc.
env
=
DefaultEnvironment
()
# Define our options
opts
.
Add
(
EnumVariable
(
'target'
,
"Compilation target"
,
'debug'
,
[
'd'
,
'debug'
,
'r'
,
'release'
]))
opts
.
Add
(
EnumVariable
(
'platform'
,
"Compilation platform"
,
''
,
[
''
,
'windows'
,
'x11'
,
'linux'
,
'osx'
]))
opts
.
Add
(
EnumVariable
(
'p'
,
"Compilation target, alias for 'platform'"
,
''
,
[
''
,
'windows'
,
'x11'
,
'linux'
,
'osx'
]))
opts
.
Add
(
BoolVariable
(
'use_llvm'
,
"Use the LLVM / Clang compiler"
,
'no'
))
opts
.
Add
(
PathVariable
(
'target_path'
,
'The path where the lib is installed.'
,
'../../../../bin/'
))
opts
.
Add
(
PathVariable
(
'target_name'
,
'The library name.'
,
'libplayer'
,
PathVariable
.
PathAccept
))
# Local dependency paths, adapt them to your setup
godot_headers_path
=
"../../../../../godot-cpp/godot_headers/"
cpp_bindings_path
=
"../../../../../godot-cpp/"
cpp_library
=
"libgodot-cpp"
# only support 64 at this time..
bits
=
64
# Updates the environment with the option variables.
opts
.
Update
(
env
)
# Process some arguments
if
env
[
'use_llvm'
]:
env
[
'CC'
]
=
'clang'
env
[
'CXX'
]
=
'clang++'
if
env
[
'p'
]
!=
''
:
env
[
'platform'
]
=
env
[
'p'
]
if
env
[
'platform'
]
==
''
:
print
(
"No valid target platform selected."
)
quit
();
# For the reference:
# - CCFLAGS are compilation flags shared between C and C++
# - CFLAGS are for C-specific compilation flags
# - CXXFLAGS are for C++-specific compilation flags
# - CPPFLAGS are for pre-processor flags
# - CPPDEFINES are for pre-processor defines
# - LINKFLAGS are for linking flags
# Check our platform specifics
if
env
[
'platform'
]
==
"osx"
:
env
[
'target_path'
]
+=
'osx/'
cpp_library
+=
'.osx'
if
env
[
'target'
]
in
(
'debug'
,
'd'
):
env
.
Append
(
CCFLAGS
=
[
'-g'
,
'-O2'
,
'-arch'
,
'x86_64'
])
env
.
Append
(
LINKFLAGS
=
[
'-arch'
,
'x86_64'
])
else
:
env
.
Append
(
CCFLAGS
=
[
'-g'
,
'-O3'
,
'-arch'
,
'x86_64'
])
env
.
Append
(
LINKFLAGS
=
[
'-arch'
,
'x86_64'
])
elif
env
[
'platform'
]
in
(
'x11'
,
'linux'
):
env
[
'target_path'
]
+=
'x11/'
cpp_library
+=
'.linux'
if
env
[
'target'
]
in
(
'debug'
,
'd'
):
env
.
Append
(
CCFLAGS
=
[
'-fPIC'
,
'-g3'
,
'-Og'
])
env
.
Append
(
CXXFLAGS
=
[
'-std=c++17'
])
else
:
env
.
Append
(
CCFLAGS
=
[
'-fPIC'
,
'-g'
,
'-O3'
])
env
.
Append
(
CXXFLAGS
=
[
'-std=c++17'
])
elif
env
[
'platform'
]
==
"windows"
:
env
[
'target_path'
]
+=
'win64/'
cpp_library
+=
'.windows'
# This makes sure to keep the session environment variables on windows,
# that way you can run scons in a vs 2017 prompt and it will find all the required tools
env
.
Append
(
ENV
=
os
.
environ
)
env
.
Append
(
CPPDEFINES
=
[
'WIN32'
,
'_WIN32'
,
'_WINDOWS'
,
'_CRT_SECURE_NO_WARNINGS'
])
env
.
Append
(
CCFLAGS
=
[
'-W3'
,
'-GR'
])
if
env
[
'target'
]
in
(
'debug'
,
'd'
):
env
.
Append
(
CPPDEFINES
=
[
'_DEBUG'
])
env
.
Append
(
CCFLAGS
=
[
'-EHsc'
,
'-MDd'
,
'-ZI'
])
env
.
Append
(
LINKFLAGS
=
[
'-DEBUG'
])
else
:
env
.
Append
(
CPPDEFINES
=
[
'NDEBUG'
])
env
.
Append
(
CCFLAGS
=
[
'-O2'
,
'-EHsc'
,
'-MD'
])
if
env
[
'target'
]
in
(
'debug'
,
'd'
):
cpp_library
+=
'.debug'
else
:
cpp_library
+=
'.release'
cpp_library
+=
'.'
+
str
(
bits
)
# make sure our binding library is properly includes
env
.
Append
(
CPPPATH
=
[
'.'
,
godot_headers_path
,
cpp_bindings_path
+
'include/'
,
cpp_bindings_path
+
'include/core/'
,
cpp_bindings_path
+
'include/gen/'
])
env
.
Append
(
LIBPATH
=
[
cpp_bindings_path
+
'bin/'
])
env
.
Append
(
LIBS
=
[
cpp_library
])
# tweak this if you want to use different folders, or more folders, to store your source code in.
env
.
Append
(
CPPPATH
=
[
'player/'
])
sources
=
Glob
(
'player/*.cpp'
)
library
=
env
.
SharedLibrary
(
target
=
env
[
'target_path'
]
+
env
[
'target_name'
]
,
source
=
sources
)
Default
(
library
)
# Generates help for the -h scons option.
Help
(
opts
.
GenerateHelpText
(
env
))
blokoj/toroid/skriptoj/cpp/player/player.cpp
Просмотр файла @
207fb68d
...
@@ -34,12 +34,6 @@ void Player::_physics_process(float delta) {
...
@@ -34,12 +34,6 @@ void Player::_physics_process(float delta) {
if
(
input
->
is_action_pressed
(
"ui_up"
))
{
if
(
input
->
is_action_pressed
(
"ui_up"
))
{
rotate_object_local
(
Vector3
(
1
,
0
,
0
),
-
delta
);
rotate_object_local
(
Vector3
(
1
,
0
,
0
),
-
delta
);
}
}
if
(
input
->
is_action_pressed
(
"ui_left"
))
{
rotate_object_local
(
Vector3
(
0
,
0
,
1
),
delta
);
}
if
(
input
->
is_action_pressed
(
"ui_left"
))
{
rotate_object_local
(
Vector3
(
0
,
0
,
1
),
delta
);
}
if
(
input
->
is_action_pressed
(
"move_forward"
))
{
if
(
input
->
is_action_pressed
(
"move_forward"
))
{
t
=
get_transform
();
t
=
get_transform
();
dir
+=
t
.
basis
.
z
.
normalized
();
dir
+=
t
.
basis
.
z
.
normalized
();
...
@@ -53,4 +47,4 @@ void Player::_physics_process(float delta) {
...
@@ -53,4 +47,4 @@ void Player::_physics_process(float delta) {
dir
*=
SPEED
*
delta
;
dir
*=
SPEED
*
delta
;
move_and_slide
(
dir
,
Vector3
(
0
,
0
,
1
));
move_and_slide
(
dir
,
Vector3
(
0
,
0
,
1
));
}
}
}
}
\ No newline at end of file
Редактирование
Предварительный просмотр
Поддерживает Markdown
0%
Попробовать снова
или
прикрепить новый файл
.
Отмена
You are about to add
0
people
to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Отмена
Пожалуйста,
зарегистрируйтесь
или
войдите
чтобы прокомментировать