Defold 1.4.4 has been released

@britzl @jhonny.goransson regarding the paged atlas - this is a super-useful feature, and it actually saved my project the moment i realised that an 8x8K texture wasn’t enough!

But!
I couldn’t find the right sprite material in the builtins, so I made it myself.
Please add this material to builtins.
materials.zip (2.3 KB)

6 Likes

Thank you! Yes I think I simply forgot to add one :lying_face: glad to see it working!

3 Likes

And by the way, this feature doesn’t work on android…

What’s the error? I’ve tested it on android but android is a bit of an umbrella platform so I would appreciate some more info :slight_smile:

The error is unclear:

    Device: samsung-SM-N970F
    ERROR:GRAPHICS: OpenGLSetTexture(3006): gl error 1281

I guess my android just doesn’t support the right extension.
Here’s the list:

: INFO:ENGINE: Defold Engine 1.4.4 (f5e114a)
: INFO:DLIB: Initialized Remotery (ws://127.0.0.1:17815/rmt)
: INFO:GRAPHICS: Device: OpenGL
: INFO:GRAPHICS: Renderer: Mali-G76
: INFO:GRAPHICS: Version: OpenGL ES 3.2 v1.r32p1-01bet2-mbs2v39_0.131801e953429f661ecce1d5e1d2b3ef
: INFO:GRAPHICS: Vendor: ARM
: INFO:GRAPHICS: Extensions:
: INFO:GRAPHICS:   GL_EXT_debug_marker
: INFO:GRAPHICS:   GL_ARM_rgba8
: INFO:GRAPHICS:   GL_ARM_mali_shader_binary
: INFO:GRAPHICS:   GL_OES_depth24
: INFO:GRAPHICS:   GL_OES_depth_texture
: INFO:GRAPHICS:   GL_OES_depth_texture_cube_map
: INFO:GRAPHICS:   GL_OES_packed_depth_stencil
: INFO:GRAPHICS:   GL_OES_rgb8_rgba8
: INFO:GRAPHICS:   GL_EXT_read_format_bgra
: INFO:GRAPHICS:   GL_OES_compressed_paletted_texture
: INFO:GRAPHICS:   GL_OES_compressed_ETC1_RGB8_texture
: INFO:GRAPHICS:   GL_OES_standard_derivatives
: INFO:GRAPHICS:   GL_OES_EGL_image
: INFO:GRAPHICS:   GL_OES_EGL_image_external
: INFO:GRAPHICS:   GL_OES_EGL_image_external_essl3
: INFO:GRAPHICS:   GL_OES_EGL_sync
: INFO:GRAPHICS:   GL_OES_texture_npot
: INFO:GRAPHICS:   GL_OES_vertex_half_float
: INFO:GRAPHICS:   GL_OES_required_internalformat
: INFO:GRAPHICS:   GL_OES_vertex_array_object
: INFO:GRAPHICS:   GL_OES_mapbuffer
: INFO:GRAPHICS:   GL_EXT_texture_format_BGRA8888
: INFO:GRAPHICS:   GL_EXT_texture_rg
: INFO:GRAPHICS:   GL_EXT_texture_type_2_10_10_10_REV
: INFO:GRAPHICS:   GL_OES_fbo_render_mipmap
: INFO:GRAPHICS:   GL_OES_element_index_uint
: INFO:GRAPHICS:   GL_EXT_shadow_samplers
: INFO:GRAPHICS:   GL_OES_texture_compression_astc
: INFO:GRAPHICS:   GL_KHR_texture_compression_astc_ldr
: INFO:GRAPHICS:   GL_KHR_texture_compression_astc_hdr
: INFO:GRAPHICS:   GL_KHR_texture_compression_astc_sliced_3d
: INFO:GRAPHICS:   GL_EXT_texture_compression_astc_decode_mode
: INFO:GRAPHICS:   GL_EXT_texture_compression_astc_decode_mode_rgb9e5
: INFO:GRAPHICS:   GL_KHR_debug
: INFO:GRAPHICS:   GL_EXT_occlusion_query_boolean
: INFO:GRAPHICS:   GL_EXT_disjoint_timer_query
: INFO:GRAPHICS:   GL_EXT_blend_minmax
: INFO:GRAPHICS:   GL_EXT_discard_framebuffer
: INFO:GRAPHICS:   GL_OES_get_program_binary
: INFO:GRAPHICS:   GL_OES_texture_3D
: INFO:GRAPHICS:   GL_EXT_texture_storage
: INFO:GRAPHICS:   GL_EXT_multisampled_render_to_texture
: INFO:GRAPHICS:   GL_EXT_multisampled_render_to_texture2
: INFO:GRAPHICS:   GL_OES_surfaceless_context
: INFO:GRAPHICS:   GL_OES_texture_stencil8
: INFO:GRAPHICS:   GL_EXT_shader_pixel_local_storage
: INFO:GRAPHICS:   GL_ARM_shader_framebuffer_fetch
: INFO:GRAPHICS:   GL_ARM_shader_framebuffer_fetch_depth_stencil
: INFO:GRAPHICS:   GL_ARM_mali_program_binary
: INFO:GRAPHICS:   GL_EXT_sRGB
: INFO:GRAPHICS:   GL_EXT_sRGB_write_control
: INFO:GRAPHICS:   GL_EXT_texture_sRGB_decode
: INFO:GRAPHICS:   GL_EXT_texture_sRGB_R8
: INFO:GRAPHICS:   GL_EXT_texture_sRGB_RG8
: INFO:GRAPHICS:   GL_KHR_blend_equation_advanced
: INFO:GRAPHICS:   GL_KHR_blend_equation_advanced_coherent
: INFO:GRAPHICS:   GL_OES_texture_storage_multisample_2d_array
: INFO:GRAPHICS:   GL_OES_shader_image_atomic
: INFO:GRAPHICS:   GL_EXT_robustness
: INFO:GRAPHICS:   GL_EXT_draw_buffers_indexed
: INFO:GRAPHICS:   GL_OES_draw_buffers_indexed
: INFO:GRAPHICS:   GL_EXT_texture_border_clamp
: INFO:GRAPHICS:   GL_OES_texture_border_clamp
: INFO:GRAPHICS:   GL_EXT_texture_cube_map_array
: INFO:GRAPHICS:   GL_OES_texture_cube_map_array
: INFO:GRAPHICS:   GL_OES_sample_variables
: INFO:GRAPHICS:   GL_OES_sample_shading
: INFO:GRAPHICS:   GL_OES_shader_multisample_interpolation
: INFO:GRAPHICS:   GL_EXT_shader_io_blocks
: INFO:GRAPHICS:   GL_OES_shader_io_blocks
: INFO:GRAPHICS:   GL_EXT_tessellation_shader
: INFO:GRAPHICS:   GL_OES_tessellation_shader
: INFO:GRAPHICS:   GL_EXT_primitive_bounding_box
: INFO:GRAPHICS:   GL_OES_primitive_bounding_box
: INFO:GRAPHICS:   GL_EXT_geometry_shader
: INFO:GRAPHICS:   GL_OES_geometry_shader
: INFO:GRAPHICS:   GL_ANDROID_extension_pack_es31a
: INFO:GRAPHICS:   GL_EXT_gpu_shader5
: INFO:GRAPHICS:   GL_OES_gpu_shader5
: INFO:GRAPHICS:   GL_EXT_texture_buffer
: INFO:GRAPHICS:   GL_OES_texture_buffer
: INFO:GRAPHICS:   GL_EXT_copy_image
: INFO:GRAPHICS:   GL_OES_copy_image
: INFO:GRAPHICS:   GL_EXT_shader_non_constant_global_initializers
: INFO:GRAPHICS:   GL_EXT_color_buffer_half_float
: INFO:GRAPHICS:   GL_EXT_unpack_subimage
: INFO:GRAPHICS:   GL_EXT_color_buffer_float
: INFO:GRAPHICS:   GL_EXT_YUV_target
: INFO:GRAPHICS:   GL_OVR_multiview
: INFO:GRAPHICS:   GL_OVR_multiview2
: INFO:GRAPHICS:   GL_OVR_multiview_multisampled_render_to_texture
: INFO:GRAPHICS:   GL_KHR_robustness
: INFO:GRAPHICS:   GL_KHR_robust_buffer_access_behavior
: INFO:GRAPHICS:   GL_EXT_draw_elements_base_vertex
: INFO:GRAPHICS:   GL_OES_draw_elements_base_vertex
: INFO:GRAPHICS:   GL_EXT_protected_textures
: INFO:GRAPHICS:   GL_EXT_buffer_storage
: INFO:GRAPHICS:   GL_EXT_external_buffer
: INFO:GRAPHICS:   GL_EXT_EGL_image_array
: INFO:GRAPHICS:   GL_EXT_texture_filter_anisotropic
: INFO:GRAPHICS:   GL_ARM_texture_unnormalized_coordinates
: INFO:GRAPHICS:   GL_EXT_shader_framebuffer_fetch
: INFO:GRAPHICS: Context features:
: INFO:GRAPHICS:   CONTEXT_FEATURE_MULTI_TARGET_RENDERING
: INFO:GRAPHICS:   CONTEXT_FEATURE_TEXTURE_ARRAY
: INFO:ENGINE: Loading data from: dmanif:game.dmanifest
: INFO:ENGINE: Initialised sound device 'default'

It does since it’s an es3.2 context so maybe I’ve missed some edge case with the types or whatnot. Mind sharing a repro?

I just tested my test project on an old samsung galaxy s7 and it works fine, would you mind sharing your project with me so I can take a look?

Just sent the archive.

Update: Paged atlases seems to be working as expected, but let us know if it doesn’t and we’ll take a look again :+1:

4 Likes