Я бы создал узел, называемый «Personnage», и я могу выступить в редакторе Годо.
Код: Выделить всё
#include "Personnage.h"
#include
#include
#include
#include
using namespace godot;
void Personnage::_bind_methods() {
}
Personnage::Personnage() {
UtilityFunctions::print("Bonjour depuis GDExtension avec C++ !");
}
Personnage::~Personnage() {
}
void Personnage::_ready(){
UtilityFunctions::print("fonction Start()");
}
void Personnage::_process(double delta) {
UtilityFunctions::print("fonction Update()");
}
< /code>
ppersonnage.h: < /p>
#ifndef PERSONNAGE_H
#define PERSONNAGE_H
#include
namespace godot {
class Personnage : public CharacterBody2D {
GDCLASS(Personnage, CharacterBody2D);
private:
protected:
static void _bind_methods();
public:
Personnage();
~Personnage();
void _ready() override;
void _process(double delta) override;
};
}
#endif
< /code>
Однако, когда я помещаю свой узел в иерархию редактора, печать появляется, в то время как я не играю в игру!void Personnage::_ready(){
if (!Engine::get_singleton()->is_editor_hint())
{
UtilityFunctions::print("fonction Start()");
}
}
void Personnage::_process(double delta) {
if (!Engine::get_singleton()->is_editor_hint())
{
UtilityFunctions::print("fonction Update()");
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... ot-running
Мобильная версия