summaryrefslogtreecommitdiffstats
path: root/servers/register_server_types.cpp
diff options
context:
space:
mode:
authorJuan Linietsky <juan@godotengine.org>2019-02-26 11:58:47 -0300
committerJuan Linietsky <juan@godotengine.org>2019-02-26 11:58:47 -0300
commit5eeb06ffd1bf9cc79142760c372c17cd858cbe49 (patch)
tree824bdca6e0072ff877a1944c5b2c248c2bca0fbb /servers/register_server_types.cpp
parent329904598829dcbed462b012dee39bc37d7d7c83 (diff)
downloadredot-engine-5eeb06ffd1bf9cc79142760c372c17cd858cbe49.tar.gz
-Remove harcoded opengl extension testing from OS, ask rasterizer instead.
-Fixed a bug where etc textures were imported broken
Diffstat (limited to 'servers/register_server_types.cpp')
-rw-r--r--servers/register_server_types.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/servers/register_server_types.cpp b/servers/register_server_types.cpp
index 4e167be300..922f017d0b 100644
--- a/servers/register_server_types.cpp
+++ b/servers/register_server_types.cpp
@@ -88,8 +88,21 @@ Physics2DServer *_createGodotPhysics2DCallback() {
return Physics2DServerWrapMT::init_server<Physics2DServerSW>();
}
+static bool has_server_feature_callback(const String &p_feature) {
+
+ if (VisualServer::get_singleton()) {
+ if (VisualServer::get_singleton()->has_os_feature(p_feature)) {
+ return true;
+ }
+ }
+
+ return false;
+}
+
void register_server_types() {
+ OS::get_singleton()->set_has_server_feature_callback(has_server_feature_callback);
+
ClassDB::register_virtual_class<VisualServer>();
ClassDB::register_class<AudioServer>();
ClassDB::register_virtual_class<PhysicsServer>();