يمكن أن يكون الفيديو نقطة انطلاق لعالمٍ بأكمله قادر على تغييره. قدّم المرجع إلى وكيل برمجي، ودعه يدرس الإطارات، ثم اطلب منه إعادة بناء المشهد على شكل كود إجرائي. بعد ذلك، غيّر زاوية الكاميرا أو الإضاءة أو الخامات أو الحركة، وأعِد التصيير من جديد.
هذه هي الفكرة وراء Video 2 GLSL، وهو سير العمل الذي أطورّه لتحويل المراجع المرئية إلى شيدرات (shaders) بالاعتماد على shader-skills. والجزء الأكثر إثارة للاهتمام هو مقدار ما يمكن نقله من هذه العملية وتطبيقه على الفيديو التالي.
https://x.com/gokayfem/status/2111907592129671505
قطعتان تعملان معًا
يمنح shader-skills الوكلاء البرمجيين مكتبة من التقنيات الرسومية، وأمثلة عملية جاهزة، وعملية واضحة لبناء الشيدرات الإجرائية والتحقق منها. أما Video 2 GLSL فيضيف مهمة تعتمد على مرجع بصري: دراسة مقطع فيديو، واستخلاص مواصفاته، وبناء المشهد، ثم مقارنة النتيجة النهائية بالمقطع الأصلي.
تدعم هذه المهارة أدوات مثل Claude Code و Codex و Cursor و Gemini وغيرها من الوكلاء البرمجيين. وتغطي أجزاؤها القابلة لإعادة الاستخدام الأشكال، والضوضاء (noise)، والخامات، والتضاريس، والمباني، والمياه، والسحب، والإضاءة، والألوان. يمكنك استخدامها لإنشاء مشهد أصلي، أو تجربة تفاعلية، أو إعادة إنتاج مقطع فيديو.
أما بالنسبة لهدف Video 2 GLSL المستقل، فالنتيجة النهائية هي شيدر أجزاء (fragment shader) واحد متوافق مع Shadertoy. تُوصف الهندسة رياضيًا، وتكون الأسطح إجرائية، بينما تُقاد الحركة عبر الزمن. يوفر الفيديو المرجعي المواصفات البصرية؛ ولا يتم تشغيل إطاراته داخل الشيدر نفسه.



ابدأ بتحويل الفيديو إلى مواصفات
الخطوة الأولى هي استخراج الإطارات بشكل موثوق. فرابط الفيديو أو اسم الملف لا يمنح الوكيل الكثير للعمل عليه. بل يحتاج إلى فحص ما يظهر فعليًا وكيف يتغير بمرور الوقت.
يطلب الأمر التوجيهي (prompt) القابل لإعادة الاستخدام إنشاء ملف REFERENCE.md قبل كتابة كود المشهد، ويتضمن: حقائق المقطع، والجدول الزمني للقطات، وجرد العناصر، ونسب الأجسام، والحركة، وتأطير الكاميرا، والإضاءة، ولوحة ألوان مُستخرجة. كما يطلب من الوكيل تحديد ما لا يمكنه إعادة إنتاجه بدقة واقتراح بدائل للموافقة عليها.
تتغير هذه الملاحظات باختلاف المقطع. فلقطة شخصية تحتاج إلى نقاط التلامس، وطريقة المشي، والحركات الثانوية. أما اللقطة المعمارية فتحتاج إلى النسب، والمنظور، وحركة الكاميرا. ولقطة المياه تتطلب الانتباه لحركة السطح، والانعكاسات، والعمق. لكن عملية التحليل ذاتها تمنح كل حالة نقطة انطلاق ملموسة.
زوّد الوكيل بوحدات بناء رسومية مختبرة
قد تبدو المعادلة الرياضية منطقية ظاهريًا، لكنها تنتج حقل مسافات (distance field) غير آمن، أو ضوضاء غير مستقرة، أو ألوانًا خاطئة. وتصبح هذه الأخطاء أصعب في العزل بمجرد دمجها داخل مشهد كبير.
يتضمن shader-skills حاليًا 186 دالة موزعة على 20 وحدة GLSL. يمكن للوكيل البحث عن تقنية معينة، واستدعاء الدالة المكتبيّة باسمها، واستخدام أداة التجميع (bundler) لإدراج التبعيات في شيدر واحد متكامل.
تشمل المكتبة دوال المسافة المُوقّعة للأشكال، والعوامل المستخدمة لدمجها، والضوضاء والأنماط الإجرائية، ومساعدات تتبع الأشعة (raymarching)، والتظليل، والغلاف الجوي، وتحويلات الألوان. وتوضح القوالب كيفية عمل هذه القطع معًا في مشاهد كاملة.
تغطي عمليات التحقق التجميع في WebGL2 والخصائص الرقمية على وحدة معالجة الرسومات (GPU): إشارات وحدود حقول المسافة، ومشتقات الضوضاء، ودورات الألوان، وغيرها من السلوكيات القابلة للفحص. وتضيف الأمثلة المُصيَّرة تحققًا بصريًا. تجعل هذه الفحوصات المكونات أكثر موثوقية، رغم أن المشهد النهائي لا يزال بحاجة إلى مراجعة.

ابنِ حلقة تغذية راجعة حول المُصيِّر
يمضي سير العمل عبر مراحل: التخطيط الأولي والتوقيت، ثم الحركة، وتفاصيل العنصر الرئيسي، وتفاصيل البيئة، والإضاءة والألوان، والمطابقة مع المرجع، وأخيرًا الأداء. وكل مرحلة تنتج شيئًا مرئيًا يمكن تقييمه.
يجب مقارنة المرجع والتصيير في نفس الوقت وبنفس التأطير. استخدم الإطارات الكاملة للتكوين العام، والاقتصاصات لأشكال العناصر وخاماتها، وسلاسل الإطارات للحركة. فقد تخفي صورة ثابتة جذابة انزلاقًا في الأقدام، أو قفزة في الكاميرا، أو تفاعلًا يحدث مبكرًا جدًا.
يستدعي الأمر التوجيهي نقدًا متكررًا: حدد أكبر خمسة اختلافات، وأصلحها، ثم أعد التصيير. وتدعم القياسات هذه المراجعة؛ فنسب حجم العنصر وموقع خط الأفق تساعد في تشخيص أخطاء الكاميرا، والألوان المُستخرجة تساعد في تشخيص تصحيح الألوان، ومسابر الحركة تساعد في اكتشاف الانقطاعات.
التكرار السريع أمر بالغ الأهمية هنا. فالمعاينات منخفضة الدقة وعروض العناصر المعزولة تتيح لك تصحيح النسب قبل الالتزام بتصيير مكلف. افحص الظلال الخارجية (silhouettes) ونسب العناصر قبل تنقيح الخامات والإضاءة.

قسّم المشاهد المعقدة حسب المسؤوليات
يمكن للمشاهد الأكبر أن تستفيد من عدة وكلاء يعملون على أجزاء منفصلة: العنصر الرئيسي، أو البيئة، أو الدعائم، أو الحركة، أو الإضاءة. ويجب أن يتبع هذا التقسيم احتياجات المشهد.
تحافظ الواجهات المشتركة على توافق هذا العمل. اتفق على المقياس، والإحداثيات، والتوقيت، ومعرفات الخامات، وامنح كل وكيل ملكية ملفاته، واشترط تقديم أدلة من تصيير فعلي. ويمكن لمنسق (orchestrator) دمج الأجزاء وتقييم الصورة المجمعة بمقارنتها مع المرجع.
والدرس القابل لإعادة الاستخدام هنا هو هيكل المراجعة: يجب أن يقوم شخص ما بتقييم اللقطة بأكملها. فالمبنى المفصل أو الشخصية المقنعة قد يكونان غير مناسبين للتكوين العام للمشهد.
ما تؤكده التجارب
يشمل العمل حتى الآن تسلسل جزيرة عائمة بأفعال متغيرة، وتسلسل قرية يتضمن تفاعلات، وحلقة شارع لا نهائية. وتختلف متطلبات كل منها: فتوقيت الأحداث، ونقاط التلامس الثابتة، وانتقالات الكاميرا، والتكرار الدقيق، يتطلب كل منها منطق مشهد مختلف. كما تتفاوت درجة اكتمالها وجودتها البصرية.
وعبر جميع هذه التجارب، تبقى العملية ذاتها مفيدة: استخرج، وقِس، واجمع، وصيِّر، وقارن، وصحح. يحتوي المستودع أيضًا على أمثلة إجرائية للمدن والتضاريس والمياه، بينما تستكشف تجارب تفاعلية منفصلة أشكالًا عضوية وصورًا لثقوب سوداء.
ما يصبح قابلاً للتعديل وما يبقى غير مؤكد
بمجرد تحويل المشهد إلى كود، يمكنك توفير عناصر تحكم لموضع الكاميرا، واتجاه الضوء، ولوحة الألوان، والتوقيت، والتفاصيل الإجرائية. وقد أثبتت تجربة الشارع إمكانية الحصول على زوايا كاميرا بديلة من نفس المجموعة المبنية.
كما تكشف هذه الزوايا الجديدة حدود إعادة البناء. فالمرجع يُظهر جزءًا فقط من العالم. ويجب استنتاج الأسطح المخفية، وقد يحتوي الفيديو المُولّد بالذكاء الاصطناعي على هندسة متغيرة أو حركة غير متسقة. لذا، فإن المطابقة المقنعة من زاوية واحدة لا تعني بناء مشهد كامل ودقيق.
الأداء نتيجة أخرى خاصة بكل مشهد. فالهندسة التفصيلية المعتمدة على تتبع الأشعة، والنباتات، والظلال، والانعكاسات قد تكون مكلفة حسابيًا. قِس زمن الإطار على الجهاز المستهدف، وتحقق من لحظات مختلفة في اللقطة، وأبلغ عن الأهداف التي لم تتحقق جنبًا إلى جنب مع الاختلافات البصرية المتبقية.
يُعد Video 2 GLSL سير عمل قابل لإعادة الاستخدام لإنشاء المحتوى. ولا تزال موثوقيته مع مقاطع الفيديو العشوائية بحاجة إلى تقييم أوسع. لكن العمل الحالي يمنحنا عدة تجارب ملموسة ومنهجية مشتركة يمكننا تحسينها.

جرّبه مع مرجعك الخاص
بالنسبة لـ Claude Code، أضف السوق وثبّت الإضافة:
claude plugin marketplace add gokayfem/shader-skills
claude plugin install shader-skills@shader-skills
بالنسبة للوكلاء المدعومين الآخرين:
npx skills add gokayfem/shader-skills
استخدم prompts/video-to-shader-prompt.md، ووفّر مقطعًا مرجعيًا، واسمًا للملف الناتج، والجهاز المستهدف، وحدد ما يجب الإبقاء عليه أو ما يمكن تخطيه. راجع التحليل قبل بدء التنفيذ.
أريد الاستمرار في دفع هذا المشروع نحو طريقة موثوقة لتحويل المراجع البصرية إلى مشاهد إجرائية قابلة للتعديل. ويجب أن تترك كل عملية إعادة بناء خلفها أدوات أفضل، واختبارات أدق، وتقنيات يمكن للعملية التالية إعادة استخدامها.
المستودع: github.com/gokayfem/shader-skills





