{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidl46jiy3vi46d2zh3oyizearsbpeq6xemtep27tbukgbotmroe7q",
"uri": "at://did:plc:dxjzgxe7cvirxkwfjr2tjspt/app.bsky.feed.post/3mnznf6rnyhw2"
},
"path": "/t/jme-3-10-0-beta1/49603?page=3#post_50",
"publishedAt": "2026-06-11T14:39:53.000Z",
"site": "https://hub.jmonkeyengine.org",
"textContent": "It depends.\n\nIIRC (list for OpenGL3.2 and GLES3.0 backends):\n\n * All int formats (ie. R8I,…) are not filterable\n * All compressed formats (ie. DXT, ETC,..) are not renderable,\n * sRGB8 is not renderable in GLES (but sRGBA8 is) **(this is likely the only one you’ll encounter in the wild unless you load models with HDR or KTX textures)**\n * all floating point textures are renderable only if their relative `color_buffer_float` ext is available\n * all floating point textures are filterable only if their relative `texture_float` ext is available\n * RGB111110F is renderable only if the packed color buffer ext is available\n\n\n\nSure we can add a warning, I’ll open an issue for that.\n\nMy current long-term plan to fix textures compatibility madness in jme is to implement basis universal, sometimes for 3.11, so that we can preprocess textures with a gradle task at build time to .basis or ktx2 with mipmaps and everything, and then let the engine transcode them to the best format for the platform.\n\nFor procedurally generated texture, the best crossplatform option is to always target either `(s)RGBA8` or `RGBA16F`, or use the new `getBestColorTargetFormat` api of renderer.",
"title": "jME 3.10.0-beta1"
}