إجابة سريعة: لتحريك تميمة علامتك التجارية (Mascot) باستخدام ChatGPT Images 2.6، اطلب ورقة رسوم متحركة (Sprite sheet) مكوّنة من 6 إطارات ضمن شبكة ثابتة بأبعاد 3×2، ثم قسّم الورقة إلى إطارات منفصلة، وحاذِ بينها، ثم صدّرها كملف GIF متكرر (Looping GIF). قمنا بتجربة ذلك على حساب مجاني بتاريخ 5 نوفمبر 2026، وساهمت خطوة المحاذاة في تقليل انزياح القدم من 11.5 بكسل إلى بكسل واحد فقط.
لماذا يتطلب تحريك تميمة العلامة التجارية أكثر من مجرد أمر نصي واحد؟
يجب أن تحافظ تميمة العلامة التجارية على مظهرها وهويتها في كل إطار، وهذا يغيّر طبيعة المهمة تماماً. فصورة GIF التفاعلية العابرة يمكن أن تبدو بأي شكل، أما تميمة علامتك التجارية فلا تقبل ذلك.
أشار منشور إطلاق Images 2.6 من OpenAI إلى حالة الاستخدام هذه بصورة مباشرة: حيث يمكن للمسوقين "تحريك تميمة علامة تجارية لحملة إعلانية". الميزة متاحة في ChatGPT وCodex عبر جميع باقات الاشتراك، وكذلك عبر واجهة برمجة التطبيقات (API).
يتيح ChatGPT أيضاً مساراً يعتمد على جملة واحدة؛ ففي اختبار سابق على الحساب المجاني نفسه، أدى أمر نصي يطلب صورة GIF متكررة إلى توليد ملف جاهز من 8 إطارات. هذا الخيار مناسب لردود الفعل السريعة، لكن بالنسبة لتميمة تجارية، يمنحك خيار ورقة الرسوم (Sprite sheet) تحكماً أكبر، إذ يتيح لك تحديد عدد الإطارات، ومعاينة كل وضعية، وضبط التوقيت بنفسك.
ورقة الرسوم (Sprite sheet) هي صورة واحدة تجمع كل إطارات الحركة في شبكة متناسقة؛ حيث تعاينها كلوحة فحص شاملة، ثم تقوم بتشغيل الإطارات بالتتابع.
إذا كان هناك عدة أشخاص يعملون على أصول علامتك التجارية، فإن موجز العمل والموافقات بحاجة إلى مكان مركزي يجمعها أيضاً. تتولى منصة Sharkly هذه الجزئية، وسنتناول تفاصيل ذلك أدناه.
ما تحتاجه قبل كتابة الأمر النصي
خصّص خمس دقائق لضبط المدخلات؛ فهي التي تحدد ما إذا كانت النتيجة ستطابق تميمتك بالفعل أم لا.
- صورة مرجعية: صورة واضحة لكامل جسم التميمة على خلفية بسيطة ومحايدة.
- وصف مكتوب للشخصية: لون الجسم، وتفاصيل الوجه، والنسب، وسُمك الخطوط، والملحقات.
- حركة واحدة محددة: تلويح باليد، أو إيماءة بالرأس، أو طرفة عين؛ فالإطارات الستة لا تتسع لمشهد كامل.
- تحديد الغرض من الملف: يختلف الحجم والسرعة المطلوبان لملصق المحادثة عن صورة الواجهة الرئيسية لصفحة الهبوط.
احرص دائماً على تحريك شخصية تمتلكها أو لديك حقوق استخدامها فقط.
الخطوة 1: إرفاق الصورة المرجعية لتميمتك
افتح ChatGPT Images، وانقر على Add files and more، ثم أرفق صورتك المرجعية. تفيد OpenAI بأن Images 2.6 تحافظ على "تناسق الشخصيات والمنتجات وتفاصيل العلامة التجارية أثناء التعديل"، لذا فإن هذا المدخل هو الأساس لثبات تصميمك.
لم نقم برفع صورة مرجعية في تجربتنا لهذا المقال، لذا تعامل مع هذه الخطوة بناءً على توصيف OpenAI لا على نتائجنا المباشرة. ومع ذلك، تعلّمنا أمرين من خلال التجربة بدون صورة مرجعية:
- عندما أشرنا في أمرنا النصي إلى وجود صورة مرفقة دون إرفاقها فعلياً، توقف ChatGPT وطلب الملف ولم يبتكر شخصية من عنده.
- وعندما وصفنا التميمة نصياً بعد ذلك، حصلنا على شخصية متناسقة عبر الإطارات الستة جميعها، ولكن سمكة القرش كانت أكثر استدارة مقارنة بالتصميم الأصلي الذي بدأنا به.
يحافظ الوصف المكتوب على اتساق الشخصية مع نفسها، لكنه لن ينسخ تصميمك بدقة تامة. لذا، إذا كنت تعمل على أصل حقيقي لعلامتك التجارية، فاستخدم صورة مرجعية.
الخطوة 2: استخدام أمر نصي لورقة الرسوم مخصص للتمائم
يتبع أمرنا النصي النمط الوارد في أمثلة OpenAI الرسمية، والتي تطلب "6 إطارات متتالية بالضبط" في شبكة مكوّنة من 3 أعمدة وصفّين. استبدل فقرة وصف الشخصية بالوصف الخاص بتميمتك:
Create a single animation sprite sheet for a seamless looping GIF.
Character: a friendly cartoon shark mascot standing upright on two short
legs, charcoal-navy body, pale cream belly and lower jaw, large round eyes,
open smile with small white teeth, three gill lines, thick dark outline,
a small bright green ID badge on a dark lanyard, flat vector style,
no gradients.
The sequence: mascot stands facing forward, raises one fin, waves twice,
lowers the fin back to the starting pose.
Exactly 6 sequential frames in a precise 3-column by 2-row grid, read
left-to-right then top-to-bottom. Every panel has identical dimensions.
Fixed camera, same character, feet in the same spot in every frame,
plain white background. Sixth frame transitions smoothly back to the first.
No captions, no words, no numbers, no logos, no panel labels, no borders,
no gutters.
لكل سطر في هذا الأمر وظيفة محددة:
- عبارة "Same character" وثبات زاوية الكاميرا: تمنعان تغيّر التصميم وتفاوت إطار المشهد.
- عبارة "Feet in the same spot": تمنحك نقطة ارتكاز ثابتة يمكنك الاعتماد عليها والتحقق منها لاحقاً.
- سطر الإطار السادس: يطلب تحقيق دورة حركة متكررة وسلسة (Loop).
- قائمة النواهي ("No"): تضمن خلو الإطارات من أي نصوص شاردة أو خطوط فاصلة بين الإطارات.
إليك ورقة الرسوم غير المعدلة التي أنتجها ChatGPT، وهي بصيغة PNG وبأبعاد 1536×1024:

ملاحظتان للمصداقية: أنتج هذا الأمر النصي صورة PNG ثابتة وليس ملف GIF، لذا فإن تجميع الإطارات يقع على عاتقك. كما أننا طلبنا تلويحتين باليد لكننا حصلنا على تلويحة واحدة تقريباً؛ وقد أشار ChatGPT بنفسه إلى ذلك موضحاً أن الحركة "ليست متمايزة تماماً عبر الإطارات الستة جميعها". فالإطارات الستة تكفي لتلويحة واحدة فقط، لذا اطلب حركة واحدة أو زد عدد الإطارات.
الخطوة 3: تقسيم الورقة ومعالجة الانزياح
لم يكن شرط "الأبعاد المتطابقة" دقيقاً تماماً؛ فرغم أن الشخصية بدت متمركزة في كل إطار، إلا أن تقسيم الورقة إلى مربعات متساوية بحجم 512 بكسل جعل الشخصية تنزاح جانبياً. تحركت القدمان بمقدار 11.5 بكسل بين الأعمدة، مما يظهر على شكل اهتزاز أو قفزة مزعجة أثناء تكرار الحركة.
يكمن الحل في اقتصاص كل عمود بإزاحة (Offset) خاصة به؛ قِس نقطة ثابتة، مثل الحافة الخارجية للقدم، في كل إطار، ثم عدّل موضع الاقتصاص بمقدار الفرق. في حالتنا، تطلبت الإزاحات قيماً هي 0 و517 و1035 بكسل. تستخدم هذه الأوامر أداة FFmpeg، وقد قمنا بتشغيلها تماماً كما هي مكتوبة:
i=0
for x in 0 517 1035 0 517 1035; do
y=$(( (i / 3) * 512 ))
ffmpeg -y -i sheet.png -vf "crop=500:512:$x:$y" frame$i.png
i=$((i + 1))
done
ffmpeg -y -framerate 1000/150 -i frame%d.png \
-vf "scale=384:-2:flags=lanczos,split[a][b];[a]palettegen=max_colors=64[p];[b][p]paletteuse=dither=none" \
-loop 0 mascot.gif
ستختلف قيم الإزاحة لديك، لذا قِس أبعاد ورقتك بنفسك. يحدد الأمر الثاني مدة 150 مللي ثانية لكل إطار ولوحة ألوان تتضمن 64 لوناً، وهو ما يناسب الرسوم المتجهية المسطحة (Flat vector art).
إليك الرسم المتحرك النهائي المتكرر:

الخطوة 4: التحقق من سلاسة تكرار الحركة
تتميز الحركة المتكررة النظيفة بعدم وجود أي قفزة ملحوظة عند انتقال الإطار الأخير إلى الإطار الأول. لا تعتمد على العين المجردة وحدها في التقييم؛ فقد قمنا بمقارنة الإطارات قبل المحاذاة وبعدها:
| معيار القياس | التقسيم المتساوي للشبكة | الاقتصاص المحاذى |
|---|---|---|
| انزياح القدم عبر الإطارات | 11.5 بكسل | بكسل واحد |
| البكسلات المتغيرة عند نقطة التكرار | 13.8% | 3.6% |
| حجم الملف | 332 كيلوبايت | 284 كيلوبايت |
تبلغ أبعاد ملف GIF النهائي 384×394 بكسل، ويحتوي على 6 إطارات، ويستغرق 0.9 ثانية لكل دورة. كما ساهمت المحاذاة في تقليل حجم الملف، لأن خوارزمية ضغط GIF تحتاج إلى إعادة رسم عناصر أقل عندما يظل الجسم ثابتاً.
تحقق من هذه القائمة قبل مشاركة الملف:
- قارن بين الإطارين الأول والأخير؛ يجب ألا تتبقى سوى اختلافات طفيفة للغاية.
- تحقق من ألوان التميمة، والشارة، وسُمك الخطوط في كل إطار.
- تأكد من عدم وجود نصوص شاردة أو خطوط فاصلة عند حواف الإطارات.
- شاهد الحركة بحجمها الكامل لعشر دورات متتالية؛ فالاهتزاز يتضح مع التكرار.
إذا وُجد خلل في أحد الإطارات، أعد توليد ورقة الرسوم أو استخدم مربع Describe edits في عارض الصور. لم نختبر إجراء التعديلات على هذه الورقة تحديداً.
كيفية تحريك التميمة عبر واجهة برمجة التطبيقات (API)
تغيّر واجهة برمجة التطبيقات (API) مسار العمل؛ حيث يوضح دليل توليد الصور من OpenAI أن تعيين output_format إلى gif ينتج رسماً متحركاً جاهزاً، ولكن عبر نقطة نهاية التوليد (Generation endpoint) فقط. لا تدعم نقطة نهاية التعديل (Edit endpoint) إخراج ملفات GIF، وهي النقطة التي تُرسل إليها الصور المرجعية.
لذلك، يتوفر لديك مساران عبر واجهة برمجة التطبيقات لتحريك التميمة:
- توليد GIF مباشر (Native GIF): يعتمد على الأمر النصي فقط، مع ضبط
frame_countمن 2 إلى 64 وframe_duration_msمن 20 إلى 2000. ويعتمد تصميمك هنا بالكامل على الوصف المكتوب. - صورة مرجعية مع ورقة الرسوم: أرسل صورتك المرجعية إلى نقطة نهاية التعديل (Edit endpoint)، ثم استلم ورقة رسوم مجمعة، وقم بتركيبها كما هو موضح في الخطوة 3.
curl https://api.openai.com/v1/images/edits \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F "model=gpt-image-2.6-sunburst" \
-F "image[][email protected]" \
-F "size=1536x1024" \
-F "quality=high" \
-F "prompt=<your sprite sheet prompt>"
كتبنا هذا الطلب استناداً إلى الوثائق الرسمية ولم نقم بتشغيله فعلياً. تشير OpenAI إلى أن نموذج Sunburst يقدّم "اتساقاً أكبر في الصور عبر التعديلات المتتالية" بجودة متوسطة أو عالية. وتوضح صفحة الأسعار أن رموز صور 2.6 (Image tokens) تبلغ تكلفتها 8 دولارات لكل مليون رمز إدخال، و30 دولاراً لكل مليون رمز إخراج.
إدارة تحريك التميمة ضمن سير عمل جماعي
يمكن لشخص واحد القيام بكل هذه الخطوات بمفرده، ولكن يحتاج فريق التسويق إلى معرفة أي صورة مرجعية هي الأحدث، ومن الذي طلب التصميم، ومن اعتمد النتيجة النهائية؛ وإلا فسيضيع ملف GIF النهائي داخل إحدى محادثات الدردشة.
إليك كيف يبدو ذلك في Sharkly، وهي منصة عمل مخصصة للأفراد والوكلاء الأذكياء (Agents):
- المهمة (Task) تجمع تفاصيل الموجز: أرفق الصور المرجعية للتميمة، والأمر النصي، وإرشادات العلامة التجارية في مهمة واحدة (Task).
- الوكيل الذكي (Agent) يتولى التنفيذ: عيّن المهمة لوكيل ذكي يعمل على جهاز متصل عبر بيئة تشغيل (Runtime). يشرح دليلنا حول إسناد مهمتك الأولى لوكيل ذكاء اصطناعي كيفية الإعداد.
- المراجعة والاعتماد البشري: يمكن للوكيل أن يترك المهمة بانتظار المراجعة البشرية لتظهر في صندوق الوارد (Inbox) للشخص المعني. يوضح مقالنا حول تسليم المهام بين البشر والوكلاء الأذكياء هذا النمط بالتفصيل.
تتوفر تقنية Images 2.6 في Codex، وتعد بيئة Codex إحدى بيئات التشغيل (Runtimes) المدعومة في Sharkly. لم نختبر إنتاج التمائم عبر Codex، لذا ننصحك بتجربتها على بيئتك الخاصة أولاً.
البدء مع Sharkly مجاني تماماً: تغطي الخطة المجانية (Free plan) فرق العمل التي تضم حتى 5 أفراد، ولا يستهلك الوكلاء الأذكياء أي مقاعد مدفوعة. كما يظل استخدام النماذج مرتبطاً بالخطة أو مفتاح API الذي تربطه بحسابك.
خاتمة
يتلخص تحريك تميمة العلامة التجارية في ثلاث خطوات أساسية: تثبيت التصميم بصورة مرجعية، وتخطيط حركة واحدة عبر ستة إطارات، ومحاذاة الإطارات بدقة قبل التصدير. لقد قللت هذه الخطوة الأخيرة انزياح القدم لدينا من 11.5 بكسل إلى بكسل واحد فقط.
هل أنت مستعد لتطبيق هذا مع فريقك؟ أنشئ مساحة عمل مجانية على Sharkly، وضع موجز تميمتك القادمة في مهمة (Task)، ودع أحد أفراد الفريق يعتمد النتيجة النهائية. يغطي توثيق Sharkly كافة خطوات الإعداد.
الأسئلة الشائعة
هل يمكن لـ ChatGPT تحريك تميمتي الحالية؟
تطرح OpenAI حالة الاستخدام هذه تحديداً، حيث يمكنك إرفاق تميمتك كصورة مرجعية. اختبرنا الاعتماد على الوصف المكتوب فقط، وحصلنا على شخصية متناسقة ولكن دون تطابق تام مع تصميمنا الأصلي.
كم عدد الإطارات المناسب لملف GIF الخاص بالتميمة؟
كفت ستة إطارات لتمثيل تلويحة يد واحدة تقريباً في تجربتنا. يمكنك زيادة عدد الإطارات إذا كانت الحركة أطول؛ علماً بأن واجهة برمجة التطبيقات (API) تسمح بما بين 2 إلى 64 إطاراً.
هل يُنتج الأمر النصي لورقة الرسوم ملف GIF مباشرة؟
أنتج أمرنا ورقة بصيغة PNG، وتولينا تجميع ملف GIF بأنفسنا. بينما أدى أمر نصي بسيط يطلب صورة GIF متكررة إلى إنتاج ملف GIF جاهز في اختبار سابق.
لماذا يهتز ملف GIF الخاص بي أثناء الحركة؟
من المرجح أن الإطارات ليست متطابقة في الأبعاد تماماً؛ ففي تجربتنا كان هناك انزياح بمقدار 11.5 بكسل بين الأعمدة. الحل هو اقتصاص كل عمود بإزاحة (Offset) خاصة به.
هل يمكن لواجهة برمجة التطبيقات إنشاء ملف GIF من صورة مرجعية؟
ليس بشكل مباشر؛ إذ يعمل تصدير GIF عبر نقطة نهاية التوليد (Generation endpoint) فقط، ولا تدعم نقطة نهاية التعديل (Edit endpoint) إخراج ملفات GIF.
هل سيعرف الجمهور أن ملف GIF للتميمة مولّد بالذكاء الاصطناعي؟
توضح OpenAI أنها تميّز الصور المولدة باستخدام بيانات C2PA الوصفية والعلامات المائية SynthID، لذا لا تتوقع أن يمر الملف على أنه مرسوم يدوياً.



