نظام التشغيل أو الجهاز - إصدار Godot: Linux ، Godot 3.0 (رئيسي)
وصف المشكلة:
الحصول على لقطة شاشة من أي منفذ عرض ينتج عنه بيانات فارغة.
خطوات التكاثر:
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")
الآن queue_screen_capture () و get_screen_capture () غير موجودين حتى.
لم تجرب من gdscript ، ولكن يجب أن تكون قادرًا على استدعاء "viewport.get_texture (). get_data ()" للحصول على مرجع للصورة التي يمكنك حفظها. كما أن استدعاء "image.lock ()" و image.unlock () "يجب أن يتيح لك (وربما تعيين؟) بكسل.
هذه هي الطريقة التي تعمل بها مع منتقي الألوان عند اختيار لون من الشاشة:
https://github.com/godotengine/godot/blob/master/scene/gui/color_picker.cpp#L428
MarianoGnu أنت على صواب ، المشكلة هي أن ViewportTexture :: get_data () غير مرتبط بـ GDScript ، ولكن يجب أن يكون من السهل حلها.
التعليق الأكثر فائدة
MarianoGnu أنت على صواب ، المشكلة هي أن ViewportTexture :: get_data () غير مرتبط بـ GDScript ، ولكن يجب أن يكون من السهل حلها.