#javascript#3d_gaussian_splatting#game_development#game_engine#gamedev#gaussian_splatting#gltf#hacktoberfest#javascript#nodejs#playcanvas#typescript#virtual_reality#webgl#webgl2#webgpu#webxr
PlayCanvas is an open-source game engine that lets you create 3D and 2D games or apps that run in any browser, using WebGL and WebGPU for fast, high-quality graphics. It supports advanced features like animation, physics, sound, and asset streaming, and you can write code in JavaScript or TypeScript. The engine is free, easy to set up, and works well for both simple projects and complex games, making it simple to build and share interactive content online.
https://github.com/playcanvas/engine
🚀 Вышел стабильный JavaScript движок от Google для Android
Новая стабильная библиотека Jetpack JavaScript Engine позволит разработчикам выполнять JS код в изолированной и ограниченной среде.
class MainActivity : ComponentActivity() {
// Теперь nullable, без lateinit
private var jsSandbox: JavaScriptSandbox? = null
private var jsIsolate: JavaScriptIsolate? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!JavaScriptSandbox.isSupported()) {
Log.e("JS", "JavaScriptSandbox не поддерживается")
return
}
lifecycleScope.launch {
// Создаём и сохраняем в nullable-поле
jsSandbox = JavaScriptSandbox
.createConnectedInstanceAsync(applicationContext)
.await()
jsIsolate = jsSandbox?.createIsolate()
// При выполнении гарантируем, что jsIsolate != null
val result: String = jsIsolate
?.evaluateJavaScriptAsync(JS_SCRIPT_SCRING)
?.await()
?: "Ошибка: isolate не инициализирован"
Log.d("JS", "Результат выполнения: $result")
}
}
override fun onDestroy() {
super.onDestroy()
// Закрываем только если не null
jsIsolate?.close()
jsSandbox?.close()
}
}
#jetpack#js