Sistem operasi atau perangkat - Versi Godot: Linux, Godot 3.0 (master)
Deskripsi masalah:
Mendapatkan tangkapan layar dari viewport mana pun menghasilkan data kosong.
Langkah-langkah untuk mereproduksi:
get_viewport().queue_screen_capture()
yield(get_tree(),"idle_frame")
yield(get_tree(),"idle_frame")
var i = get_viewport().get_screen_capture()
i.save_png("user://cap.png")
Sekarang queue_screen_capture() dan get_screen_capture() bahkan tidak ada.
Belum mencoba dari gdscript, tetapi Anda harus dapat memanggil 'viewport.get_texture().get_data()' untuk mendapatkan referensi ke Gambar yang dapat Anda simpan. Juga memanggil 'image.lock()' dan image.unlock()' akan memungkinkan Anda mendapatkan (dan mungkin mengatur?) piksel.
Ini adalah cara kerjanya untuk pemilih warna saat memilih warna dari layar:
https://github.com/godotengine/godot/blob/master/scene/gui/color_picker.cpp#L428
@MarianoGnu Anda benar, masalahnya hanya ViewportTexture::get_data() tidak terikat ke GDScript, tapi itu harus mudah dipecahkan.
Komentar yang paling membantu
@MarianoGnu Anda benar, masalahnya hanya ViewportTexture::get_data() tidak terikat ke GDScript, tapi itu harus mudah dipecahkan.