diff options
| author | BastiaanOlij | 2017-05-13 13:51:40 +1000 |
|---|---|---|
| committer | BastiaanOlij | 2017-05-23 22:38:36 +1000 |
| commit | 3768a3b2c5e59f21b2ca4e26678775007ab787c6 (patch) | |
| tree | 9879596443c00bba1f7e4c72d0cd220c9eacd279 /drivers | |
| parent | afcce9eb12a6163e8052aafe8351515313e76847 (diff) | |
| download | godot-3768a3b2c5e59f21b2ca4e26678775007ab787c6.tar.gz godot-3768a3b2c5e59f21b2ca4e26678775007ab787c6.tar.zst godot-3768a3b2c5e59f21b2ca4e26678775007ab787c6.zip | |
More fixes for iOS Godot 3.0
- nicely exit if initialisation fails
- fix a few issues around new event handling
- use 16bit single channel framebuffer as 32bit is not supported on iOS
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/gles3/rasterizer_scene_gles3.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gles3/rasterizer_scene_gles3.cpp b/drivers/gles3/rasterizer_scene_gles3.cpp index a7996b09d..79c6f7f01 100644 --- a/drivers/gles3/rasterizer_scene_gles3.cpp +++ b/drivers/gles3/rasterizer_scene_gles3.cpp @@ -4831,7 +4831,12 @@ void RasterizerSceneGLES3::initialize() { glGenTextures(1, &e.color); glBindTexture(GL_TEXTURE_2D, e.color); +#ifdef IPHONE_ENABLED + ///@TODO ugly hack to get around iOS not supporting 32bit single channel floating point textures... + glTexImage2D(GL_TEXTURE_2D, 0, GL_R16F, max_exposure_shrink_size, max_exposure_shrink_size, 0, GL_RED, GL_FLOAT, NULL); +#else glTexImage2D(GL_TEXTURE_2D, 0, GL_R32F, max_exposure_shrink_size, max_exposure_shrink_size, 0, GL_RED, GL_FLOAT, NULL); +#endif glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, e.color, 0); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); |
