Merge pull request #7912 from RandomShaper/pause-rasterizer-2.1

Implement time scaling for the rasterizer (2.1)
This commit is contained in:
Rémi Verschelde
2017-08-17 11:43:58 +02:00
committed by GitHub
8 changed files with 34 additions and 4 deletions

View File

@ -1047,6 +1047,8 @@ public:
virtual bool is_canvas_light_occluder(const RID &p_rid) const = 0;
virtual void set_time_scale(float p_scale) = 0;
virtual void free(const RID &p_rid) = 0;
virtual void init() = 0;

View File

@ -7017,6 +7017,11 @@ Color VisualServerRaster::get_default_clear_color() const {
return clear_color;
}
void VisualServerRaster::set_time_scale(float p_scale) {
rasterizer->set_time_scale(p_scale);
}
void VisualServerRaster::set_boot_image(const Image &p_image, const Color &p_color, bool p_scale) {
if (p_image.empty())

View File

@ -1258,6 +1258,8 @@ public:
virtual void set_default_clear_color(const Color &p_color);
virtual Color get_default_clear_color() const;
virtual void set_time_scale(float p_scale);
VisualServerRaster(Rasterizer *p_rasterizer);
~VisualServerRaster();
};

View File

@ -689,6 +689,7 @@ public:
FUNC3(set_boot_image, const Image &, const Color &, bool);
FUNC1(set_default_clear_color, const Color &);
FUNC0RC(Color, get_default_clear_color);
FUNC1(set_time_scale, float);
FUNC0R(RID, get_test_cube);

View File

@ -537,6 +537,8 @@ void VisualServer::_bind_methods() {
ObjectTypeDB::bind_method(_MD("set_default_clear_color"), &VisualServer::set_default_clear_color);
ObjectTypeDB::bind_method(_MD("get_default_clear_color"), &VisualServer::get_default_clear_color);
ObjectTypeDB::bind_method(_MD("set_time_scale"), &VisualServer::set_time_scale);
ObjectTypeDB::bind_method(_MD("get_render_info"), &VisualServer::get_render_info);
BIND_CONSTANT(NO_INDEX_ARRAY);

View File

@ -1138,6 +1138,8 @@ public:
virtual void set_default_clear_color(const Color &p_color) = 0;
virtual Color get_default_clear_color() const = 0;
virtual void set_time_scale(float p_scale) = 0;
enum Features {
FEATURE_SHADERS,
FEATURE_MULTITHREADED,