Unconfigured Ad Widget

تقليص

إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

رحلة إلى عالم ال ..... MaxScript

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • #16
    بالتوفيق ان شاء الله
    !!... what you want

    تعليق


    • #17
      ننتظر بفارغ الصبر رغم اني لم احمل الجزء الاول من السلسلة لظروف الدايل اب ولكن بإذن الله سأتم التحميل قريباً ...

      تحياتي ...
      أخاف على نفسي
      لأني إذا مت اخجل من دمع أمي

      تعليق


      • #18
        السلام عليكم

        هل أجد عند احدكم برنامج Acrobat Reader الكامل ( كان حجمه عندى 92 ميجا بايت ) حتى أستطيع أن أخرج رحلة الMaxscript فى صورة كتاب PDF
        لقد أنجذت المقدمة و لكن لم أجد برنامج كامل لتحويل ملفات ال *.doc إلى *.pdf
        فهل من مساعدة

        www.3lmny3d.com
        صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

        تعليق


        • #19
          انا عملت بحث في موقع www.bestdownload.com
          ولكني وجدت ان مساحته 20 ميجا فقط
          http://www.bestdownload.com/view.php?detail=103


          هل انت من سكان القاهرة
          كل شئ عن الإضاءة هاااااااااااااااااااااااااام جدا

          scienceVFX@yahoo.com

          تعليق


          • #20
            السلام عليكم


            بدايا اسف لتأخرى فى أخراج الدرس الاول من رحلة MaxScript لانشغالى فى عملى الجديد و لكنى اسير فى تحضير الدروس مع العمل جنبا إلى جنب و أيكم الخلقة الأولى





















            ربى أرحمهما كما ربياني صغيرا









































            بسـم الله الرحـمـن الـرحـيـم





            يعد استخدام MaxScripts شيء غير مألوف بالرغم من تخصيص قائمة للتعامل معها من خلال و واجهة برنامج 3DS Max 7.0 و لم يقتصر إغفال ال MaxScripts من قبل المستخدمين غير المحترفين فقط بل و حتى الكثير من محترفي الماكس في غفلة عن توظيف ال MaxScripts لتطوير أدائهم أما بالنسبة لمصادر تعليم الماكس فهي أشبة بالسراب حيث أنة لا يوجد حتى الآن سوى كتاب واحد فقط مخصص لتعليم ال MaxScripts - Mastering™ MAXScript and the SDK for 3D Studio MAX و الذي يقع في 496 صفحة و أصدر سنة 2000 و سعره الآن 49 دولار أمريكي -و إن كانت هناك العديد من دروس الفيديو الإنجليزية و التي يتخطى أرخصها سعرا حاجز ال80 دولار للمجموعة الواحدة و هي غير متاحة بين أيدينا في الوطن العربي حاليا .



            بالطبع فأن ملف المساعدة لل MaxScript الموجود ضمن مجلد (x:/3ds max7/help) – حيث x هو أسم الجزء المثبت الماكس به – يعد هو الأشمل و الأكثر غزارة بالمعلومات و لكنة مرجع بحت حيث أن ترتيب المعلومات به لا يسمح على الإطلاق بالاعتماد علية كمصدر متدرج لتعلم MaxScripts و لكن يستخدم كمصدر واحد يشمل كافة تفاصيل هذه اللغة.



            يهدف هذا الكتاب إلى تعليم MaxScript بإيجاز و إلى إبراز بعض إمكانيات ال MaxScript من خلال فصولة الأربعة الأولى ثم التعمق في التطبيقات المختلفة و شرح بعض من Scripts الموجودة على شبكة الانترنت أو مع ملف المساعدة الخاص بال MaxScript خلال الفصل الخامس من الكتاب . و بهذا لا ننتظر حتى يقل موضوع ال MaxScript بحثا و يصلنا متأخرا كما نشاهد في كتب البرمجة و تصميم صفحات الويب الموجودة في الوطن العربي حاليا .



            لمن هذا الكتاب ؟

            هذا الكتاب لغير المبتدأين ببرنامج 3DS MAX 7.0 و لكن لمن وصلوا إلى مرحلة مقبولة من الفهم العام لإمكانيات البرنامج و التعرف على أغلب نوافذه .



            متطلبات دراسة ال MaxScript

            يمكن دراسة ال MaxScript بدون أي خلفيات أو مهارات أخرى و لكن هناك بعض لخبرات التي تسرع من أاستيعاب و تمرس ال MaxScript مثل
            • استخدام لغة برمجة و خصوصا من النوع OOP.
            • معرفة بعض مبادىء المعادلات الرياضية .
            • مستوى جيد باللغة الإنجليزية .
            • خبرة في التعامل مع محركات البحث .
            المصادر المجانية المتاحة لتعلم ال MaxScript

            بعد العناء مع محركات البحث و تتبع الوصلات المتعلقة بال MaxScript في مواقع الماكس الشهيرة و جدت أن المصادر المجانية لتعلم ال MaxScript تنحصر في الأتي ...تفاعل مع الكتاب

            يمكنك التفاعل مع محتويات هذا الكتاب و مناقشتها في منتدى المنابر تحت عنوان رحلة إلى عالم ال ..... MaxScript أو متابعة المحتويات في صورة سلسلة من دروس الفيديو تحت عنوان ثرى دى ماكس ....... أسرار و تلميحات (( الجزء الثاني ))*** فيديو ***

            أخبر عن خطأ

            في حالة ملاحظتك لأي خطا بالكتاب من الناحية الفنية أو من ناحية الأخطاء اللغوية أرجو إرسال ملاحظاتكم على eng.adel.elsayyad@gmail.com

            الـمـحـتـويـات





            الفصل الأول : مقدمة
            • تعريف سريع بال MaxScript مع مثال لعمل سكريبت بسيط
            • أنواع Scripts المتاحة
            • مصادر تعليم MaxScript المعد منها الكتاب
            • خطوات إعداد Scripts
            • أسألة و تمارين .
            الفصل الثاني : تصميم واجهة Scripts
            • معنى ال OOP أثناء تصميم واجهة Scripts
            • التصميم في محرر Scripts
            • التصميم باستخدام ال Visual MAXScript Editor
            • أسألة و تمارين .
            الفصل الثالث : أنشاء كود MaxScripts
            • معنى ال OOP أثناء أنشاء الكود
            • أنواع كتل الكود الأساسية
            • المتغيرات و أنواع البيانات
            • أنواع العبارات
            • لتحكم في سير البرنامج
            • التكرار
            • أسألة و تمارين .
            الفصل الرابع : توظيف MaxScriptsخدمة الماكس
            • التحكم في المجسمات
            • التحكم فى المعدلات
            • التحكم فى الخامات
            • التحكم في الإضاءة
            • أسألة و تمارين .
            الفصل الخامس : موضوعات أخرى و تمارين


            الفصل الأول : مقدمة



            يعد برنامج الماكس من شركة Discreet من أكثر البرامج اعتمادا على المنطق البرمجى و المعادلات الرياضية في أسلوب تنفيذه لأوامر المستخدم فعملية التكبير مثلا هي بالنسبة للبرنامج عملية ضرب في حين أن تغير موضع مجسم هي عملية جمع أو طرح و هكذا .



            يتضمن الماكس مقبس يسمى MaxScript ( و هو ملف بمجلد الماكس اسمه Maxscrpt.dll و حجمه 4.86 ميجا بايت ) و وجود هذا المقبس يوفر أمكانية كتابة بعض أسطر من الكود البرمجى لتتحكم في عمل البرنامج عن طريق إضافة أزرار و نوافذ لبيئة الماكس الأصلية و التي يمكننا من خلالها توجيه البرنامج للقيام بالأعمال المدونة ضمن أسطر الكود الكامنة وراء هذه النوافذ و الأزرار.



            ويمكن لنا التعامل مع MaxScript من خلال ثلاثة مواضع في واجهة برنامج 3DS MAX 7.0 و هي

            1. قائمة MAXScript في شريط القوائم الرئيسي .

            2. قائمة MAXScript في نافذة Utilities .

            3. مربع نص Mini listener في أسفل يسار الشاشة





            يمكن التعامل مع MaxScript من خلال العديد من المواضع مما يدل على أهمية الاستخدام المتكرر لل MaxScript





            و نتوقف الآن قليلا و نسأل أنفسنا ماذا سنفعل باستخدام ال MaxScript على وجه التحديد.و الإجابة هي أننا نستخدم ال MaxScript لعمل نوافذ و أزرار نضيفها لتلك الموجودة في برنامج 3DS MAX بالفعل و التي بدورها تضيف لنا إمكانيات أضافية غير موجودة أو غير ظاهرة لنا عند التعامل مع نوافذ و أزرار البرنامج القياسية بصورة مباشرة. و الصورة التالية توضح ما يمكن أن أضافته من أزرار و نوافذ
















            البقية قريبا

            www.3lmny3d.com
            صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

            تعليق


            • #21
              ما شاء الله عليك أخي مجهود رائع ....وعلى المشرفين التثبيت فورا لتعم الفائدة
              العمارة الإسلامية أعظم ما أبدع الإنسان من فكر وفن في البناء....لذا
              إعمل شيئا للإسلام

              تعليق


              • #22
                تابع المقدمة


                إذا كنت تكرر بعض الخطوات باستمرار ( مثل أنشاء مستوى و إضاءة و كاميرا عند بداية كل مشروع فى الماكس مثلا ) فإن ال MaxScript تعطى لك أمكانية تخزين خطواتك في صورة ماكرو كما في مجموعة برامج ميكرو سوفت أوفيس و الفوتوشوب .كل ما عليك هو أخبار ال MaxScript أن تسجل الخطوات المطلوبة ثم نسخها إلى زر ( كما بالشكل رقم 1) و بعد ذلك إذا أردت أن تكرر الخطوات المخزنة في هذا الزر كل ما عليك أن تنقر علية بالفأرة مرة واحدة فقط .



                كما يمكنك أن تنشأ نوافذ مثل نوافذ Visual Basic و باللغة العربية ( كما بالشكل رقم 2) لتتيح لك التحكم في البرنامج فيمكنك أنشاء نوافذ لإنشاء المجسمات أو أنواع الإضاءة المختلفة أو التعامل مع مكتبة الخامات و أخرى لإضافة و تغيير الModifiers المرتبطة بالمجسمات و هكذا . يمكن أن تكون تلك النوافذ محتوية على قوائم لتنظيمها و التي تعودنا على مثلها في كل التطبيقات التي تعمل تحت بيئة ميكروسوفت ويندوز .



                قد تقرر أن يقوم برنامج ماكس بالتحميل التلقائي لما لديك من Scripts ضمن قائمة Utilities > MAXScript ( كما بالشكل رقم 3) فكل ما عليك هو وضع Scripts في المجلد x:\3dsmax7\scripts\startup (حيث حرف x يمثل الجزء المثبت برنامج 3DS MAX 7.0 عليه ).



                من السهل أنشاء نافذة ممتدة - Floater - لتضم فيها أكثر من نافذة من نوافذ MaxScript ( كما بالشكل رقم 4) حيث تفتح النوافذ الفرعية أو تغلق بالنقر على شريط العنوان بكلا منها كما يمكن السحب بالزر الأيسر للفأرة لرؤية الأجزاء المختفية من النوافذ تماما كأنك تتعامل مع نافذة محرر الخامات مثلا .



                مع أن MaxScript هي في حد ذاتها مقبس و لكن مع ذلك فهي تمكنك من أنشاء مقابس عن طريقها مثل تلك المصممة بلغة C++ . و الشكل المشار إلية يوضح أن MaxScript يمكن أن تصمم مقبس لإضافة مؤثر ما من خلال نافذة Environment / Effects و هذا بالطبع القليل من كثير يمكن أن نحصل علية من مقابس MaxScript .



                تتيح MaxScript أنشاء خصائص للعناصر بالمشهد غير الخصائص الموجودة في بيئة الماكس القياسية ( كما بالشكل رقم 6) وهذا يمكنك أن تتحكم أكثر في العناصر المكونة للمشهد و أن تغير العديد من خصائصها دفعة واحدة .

                إلى هنا قد لا نجد ما يغرينا على استخدام MaxScript لان من الممكن عمل تلك الأشياء من نوافذ و إمكانيات الماكس القياسية حتى و أن تطلب هذا المزيد كمن الوقت و العناء في العمل و لكن ماذا عن العمليات المتكررة مثل جعل كل الأشكال بالمشهد قابلة للظهور في الريندر النهائي ؟ هل تجد مفر من اختيارا واحد تلو الأخر ثم التعديل في خصائص كلا منها ؟ بالطبع هذا هو الحل الوحيد المتاح في بيئة الماكس و لكن مع MaxScript يمكنك كتابة سطور قليلة من الكود لتنفيذ مثل تلك المهام المملة بالنسبة لك بمجرد نقرة من الفأرة .



                هذا ليس كل شيء حيث من الممكن السيطرة على Animations باستخدام المعادلات الرياضية و إضافة العشوائية لكل ما يحتاج للعشوائية ليظهر بصورة طبيعية . فمثلا لو أن لديك مجموعة من الصخور المتراصة إلى جوار بعضها يجب أن نعمل دوران لل Gizmo الخاص بمعدل UVW Map حتى لا تظهر الصخور متماثلة و غير طبيعية فهل ستقوم بلف ال Gizom لكل عنصر على حدة ؟ و ماذا لو كان المشهد به عشرات العناصر ؟





                المصادر المجانية المتاحة لتعلم MaxScript



                بعد العناء مع محركات البحث و تتبع الوصلات المتعلقة بال MaxScript في مواقع الماكس الشهيرة و جدت أن المصادر المجانية لتعلم MaxScript تنحصر في الأتي ...
                • ملف المساعدة الموجود مع 3DS MAX 7.0 في مجلد help بالمجلد المثبت به 3DS MAX 7.0 على جهازك ( لاحظ أنه يجب عليك تثبيت ملفت المساعدة لاستخدام ملف المساعدة) . هذا الملف حجمه 7.5 ميجا بايت و يمكن الحصول علية من إحدى الوصلات الآتية (http://rapidshare.de/files/5708583/maxscript.chm.html أو http://d.turboupload.com/d/84247/maxscript.chm.html )
                • موقع www.scriptspot.com و به بعض الدروس و Scripts الجاهزة .
                • هناك تجميع لدروس MaxScript بموقع www.scriptspot.com مجمعة بملف و حجمه 3.7 ميجا بايت يمكن الحصول عليه من إحدى الوصلات الآتية ( http://rapidshare.de/files/5708969/Wad-O-MAXScriptTutorials_-v1_3.zip.html أو http://d.turboupload.com/d/84224/Wad-O-MAXScriptTutorials-v1_3.zip.html)
                • هناك 7 دروس فيديو بهذه الصفحة لتعليم بعض أساسيات MaxScript للمبتدأين ( 520 ميجا بايت و الزمن الكلى لهم حوالي 150 دقيقة باللغة الإنجليزية و لكن الصوت يسبق الصورة في بعض الدروس) و المعلومات الموجودة في هذه الدروس متضمنة كلها في هذا الكتاب مع توضيح بعض النقاط المبهمة بها .
                • يمكنك أن تتعرف على الكود المكتوب داخل أي Script ذات الامتداد ( *.mx ) عن طريق فتحها داخل برنامج الماكس .




                خطوات إعداد Scripts



                بقى لنا قبل أن الدخول في تفاصيل MaxScript أن نوضح الخطوات العامة لإعداد أي Script . عد1 الشكل الأول فأن كل Scripts لها نافذة بها بعض النصوص و الأزرار التي من المفترض عند الضغط عليها أن يتم تنفيذ Scripts وهذا يعنى أن لدينا مرحلتان للتصميم

                • مرحلة تصميم النوافذ : وهذه النوافذ تسمى واجهة المستخدم – User Interface - و تصمم كما في لغات البرمجة الشيئية – Object Oriented Programing – أي أن نوافذ MaxScript تشبه نوافذ الويندوز المعتادة إلى حد كبير فنجد بها نصوص و مربعات يكتب بها المستخدم مدخلاته و زر يضغط عليه عند الانتهاء من إدخال البيانات للانتقال إلى مرحلة التنفيذ الفعلية لل Script . بعد الانتهاء من تصميم UI يكون المظهر الخارجي لل Script قد أكتمل و لكن عند النقر بالفأرة على زر التنفيذ لا يحدث شيء لأننا لم نخبر الماكس ماذا سيفعل بالتحديد عند الضغط على الزر فليس معنى أن الزر مكتوب عليه " أنشاء " إن النقر عليه سيؤدى إلى أنشاء العنصر فكلمة " أنشاء " تهدف إلى جذب انتباه المستخدم للنقر فوق هذا الزر لإنشاء العنصر و لكن كود MaxScript هو المسؤل الفعلي عن عمل Scripts .
                • مرحلة إضافة الكود : و هذا الكود عبارة عن بعض السطور النصية التي نكتبها في محرر كود MaxScript ( يفتح من خلال اختيار New Script ضمن قائمة MAXScript ) و بالطبع هناك الكثير القواعد المنظمة لكتابة هذا الكود بحيث يكون مفهوم من قبل برنامج الماكس و لكن لحسن الحظ فإن تلك القواعد بسيطة و قريبة من فهمنا البشرى أيضا . بل أن لغة MaxScript باعتبارها لغة برمجة شيئية فأن قواعد كتابة الكود المستخدم معها يكاد يتطابق مع لغات البرمجة الشيئية الأخرى مثل Visual Basic و C++ و C# وما إلى ذلك . أي أنك تستطيع أن تفهم قواعد كتابة كود MaxScript ببساطة إذا كنت قد استخدمت اى من هذه اللغات السابقة .
                البقية قريبا

                www.3lmny3d.com
                صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                تعليق


                • #23
                  تابع المقدمة


                  مـثــال
                  سنقرب موضوع تصميم Script لأذهاننا قبل الخوض الفعلي في التفاصيل و ذلك بعمل أول سكريبت لنا في هذه الرحلة . لست مطالب بفهم التفاصيل الكامنة و راء كل ما ستكتبه فالفصول القادمة ستتكفل بشرح التفاصيل و لكن الهدف الآن هو أدراك سهولة التصميم و ما يمكن لنا فعلية باستخدام MaxScript .



                  مثالنا يصمم لنا عقد جميل مثل الموضع في الصورة التالية








                  كود MaxScript أداة سحرية في يد من يتقنها



                  أفتح نافذة New Script من قائمة MAXScript و أنسخ الكود رقم 1 التالي .....





                  rolloutr1سكريبت أنشاء عقد" "
                  (
                  label l1 "نوع حبات العقد"
                  radiobuttons rb_type labels: #("كرات","ماسات")
                  spinner s_width "عرض العقد" range:[10,100,50]
                  --spinner s_height "ارتفاع العقد" range:[10,100,50]
                  spinner s_count "عدد الحبات" range:[10,100,50] type:#integer
                  --spinner s_radius "نصف قطر الحبة" range:[1,100,10]
                  button b_create "إنشاء ..."





                  فهذا الكود يخبر برنامج الماكس أن يكون شاشة عنوانها "سكريبت أنشاء عقد" و يضع بها زري الاختيار و مربعي أخيار الرقم و زر بعنوان "إنشاء ..." .

                  أي أن مجموعة الأسطر رقم 1 هدفها تكوين نافذة الأسكريبت فقط .



                  الآن أنسخ مجموعة أسطر الكود رقم 2 التالية ...





                  onb_create pressed do
                  ( local _width = s_width.value
                  --local _height = s_height.value
                  local _count = s_count.value
                  --local _raduis = s_radius.value
                  local _spacing = (_width / _count)
                  -- y=x^2 معادلة مسار العقد هي
                  -- هل حبات العقد كرات أم ماسات ؟
                  if (rb_type.state==1) then
                  (
                  for x = (- _width /2 ) to ( _width /2 ) by _spacing do
                  (
                  local _raduis = x
                  if (_raduis < 0) then (_raduis = - _raduis)
                  _raduis = (30 - _raduis) / 20
                  my_element = sphere pos:[x,(x^2)/10,0] radius: _raduis
                  )
                  )
                  else
                  (
                  for x = (- _width /2 ) to ( _width /2 ) by _spacing do
                  (
                  local _raduis = x
                  if (_raduis < 0) then (_raduis = - _raduis)
                  _raduis = (40 - _raduis) / 20
                  my_element = ChamferCyl pos:[x,(x^2)/10,0] radius: _raduis └ height:_raduis Fillet:5.14132 sides:8 Smoo
                  )
                  )
                  )
                  )


                  و هي تخبر الماكس ما الذي سيفعله عندما ينقر المستخدم على زر "إنشاء ..."



                  ملحوظة :

                  العلامة ( ) ليس من ضمن الكود و لكن يشير إلى أن سطر الكود التالي هو تكملة للسطر الحالي و يجب أن يكون السطر مستمر و كتلة واحدة في برنامج الماكس حتى نضمن عمل Script بصورة صحيحة .



                  حتى هنا الكود المكتوب يعرف الماكس مواصفات و وظيفة النافذة و لكن لا لن تظهر النافذة إلا إذا كتبنا سطر الكود رقم 3 التالي ...





                  createdialog r1




                  الآن أختار Evaluate All من قائمة File أو أضغط الاختصار (CTRL + E) ليبدأ تنفيذ الكود .



                  من الملاحظ من سطور الكود السابقة تلون العبارات و الكلمات بألوان مختلفة و هذه ميزة في محرر MaxScript ترشدنا إلى نوع الكلمات و العبارات التي نكتبها حيث



                  اللون الأخضر يعبر عن ملحوظة أو تعليق بين أسطر و كل ما لونه أخضر لا يلتفت إلية MaxScript . و لتحويل أي سطر من الكود إلى ملحوظة أو تعليق لا يلتفت إليه MaxScript نضيف شرطتين متتاليتين في بدايته .



                  اللون الأحمر : يعبر عن الأسماء و العناوين التي نحددها للأزرار و النصوص و دائما ما تكون في الكود محصورة بين علامتي اقتباس .



                  اللون الأزرق : يعبر عن الكلمات المفتاحية التي يفهمها MaxScript و لا يمكن أن نسمى متغيراتنا بها .



                  اللون الأسود : لأي كلمة في الكود ليست من الأنواع السابقة .



                  بعد أن يقرأ MaxScript الكود و يفهم كيف سيكون شكل النافذة من مجموعة الكود رقم 1 و كيف ستستجيب للمستخدم من مجموعة الكود رقم 2 و ينشأها بالفعل من سطر الكود رقم 3 فإن النتيجة ستكون ظهور النافذة كما بالشكل رقم 4 حيث نغير من الخيارات و أعدادات الشكل حيث نريد و ننقر على زر "إنشاء ..." فينشىء MaxScript حبات العقد كما بالشكل رقم 5 .



                  لاحظ في الشكل رقم 5 أننا جعلنا حجم حبات العقد يتغير حسب موقع الحبة فمن المعتاد أن تكون الحبة التي في وسط العقد كبير نسبيا و أن يقل حجم الحبات كلما كانت الحبة أقرب على أطراف العقد .


                  البقية قريبا

                  www.3lmny3d.com
                  صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                  تعليق


                  • #24
                    اشكرك يااخي عل هذه المعلومات المفيدة
                    بارك الله فيك
                    -----------------------------------------------------------------
                    يقول سفيان الثوري رحمه الله تعالى كما في "حلية الأولياء" (6\363) :
                    " لا نزال نَتَعلَّم ما وجدنا من يعلمنا ".
                    -----------------------------------------------------------------


                    تعليق


                    • #25
                      تابع المقدمة



                      الآن يمكنك تخزين الملف كما تخزن أي ملف في أي برنامج و عندما تريد فتحة مرة أخرى أختار Open من قائمة MAXScript فيفتح لك في محرر الأسكريبت و يمكن عندئذ تشغيل الأسكريبت باختيار Evaluate All من قائمة File أو عن طريق الاختصار (CTRL + E) . أما إذا كنت تريد تشغيل الملف مباشرة فأختار Run Script من نفس القائمة .



                      من الممكن تخزين الأسكريبت في صورة مشفرة تسمح بتشغيلها دون فتحها و الإطلاع على ما بها من كود و ذلك بكتابة الأمر الأتي في نافذة MAXScript Listener أو في أخر الكود الذي كتبناه ثم مسحة بعد ذلك...





                      encryptScript scriptfile




                      حيث scriptfile هو أسم الملف الذي نريد تحويله من الامتداد ( ms ) القابل للفتح و التعديل إلى الامتداد ( mse ) القابل للتشغيل دون فتحه .



                      وكمثال لذلك نفترض أن مثال العقد مخزن في مجلد ما و أسمة ( chain.ms ) فنقوم بفتحه و نضيف السطر التالي من الكود و نشغل الأسكريبت ثم نمسحه هذا السطر بعد ذلك أو نكتبه في نافذ MAXScript Listener فكلا الطريقين يؤديان إلى أنشاء ملف أسمه ( chain.mse ) إلى جوار الملف الأصلي بحيث يكون نسخة طبق الأصل من الملف الأصلي و لكنها نسخة مشفرة .







                      أســئــلة

                      • MaxScript عبارة عن مقبس نثبته بأنفسنا عند تثبيت برنامج 3DS MAX 7.0 ؟
                      • يمكن فتح أي سكريبت و الإطلاع على ما به من كود ؟
                      • نستطيع باستخدام MaxScript أن ننشىء مقابس خاصة بنا ؟
                      • مراحل تصميم أي سكريبت تبدأ بتصميم واجهة الأسكريبت ثم إضافة الكود ؟
                      • لغة MaxScript لغة شيئية ؟
                      • عند كتابة الكود يجب أن نعطى كل نوع من العبارات و الجمل اللون المميز له حتى تسهل علينا مراجعة الكود في أي وقت لاحق ؟
                      • يمكن أن تضمن نافذة الأسكريبت أزرار و قوائم و مربعات نصية و صور مثل لغة Visual Basic ؟
                      • لا تستطيع لغة MaxScript أن تتعامل مع animation أو الخامات ؟
                      • من أهم مميزات اللجوء للبرمجة بواسطة MaxScript هو إضافة شيء من العشوائية للعناصر التي يجب أن لا تتطابق داخل المشهد ؟
                      • في محرر الأسكريبت و بعد الانتهاء من كتابة الكود نختار Run من قائمة File لتشغيل الملف ؟
                      • يمكننا أن نضيف أي تعليق للكود طالما أننا نضيفه بعد ( -- ) و نحدد اللون الأخضر كلون له ؟
                      • يمكن أن تتكون نافذة الأسكريبت من أكثر من نافذة فرعية في تتابع رأسي بحيث تشبه نافذة محرر الخامات مثلا ؟
                      • نستطيع عمل نسخ للكود من نافذة Script Listener إلى محرر MaxScript مباشرة ؟
                      • لغة MaxScript بها كل إمكانيات اللغات الكاملة القائمة بذاتها مثل C++ و C# ؟
                      • لا تستطيع لغة MaxScript تصميم برامج قائمة بذاتها وكذلك لا بد من تشغيل كود MaxScript داخل بيئة 3DS MAX ؟
                      • يمكن كتابة كود MaxScript في أي محرر للنصوص ثم فتحة في بيئة 3DS Max بعد ذلك ؟
                      • كل زر أو مربع نص أو أي عنصر يظهر في نافذة الأسكريبت هو شيء Object له خصائصه و أحداثة و الكود المرتبط بهذه الأحداث ؟
                      • لغة MaxScript لا تفرق بين الحروف الكبيرة و الصغير ؟
                      • لارتباط MaxScript ببرنامج 3DS MAX فلذلك نجدها تتضمن عبارات لإنشاء العناصر و تعديلها و التعامل مع الخامات و هذا ليس موجودا في اللغات الكاملة ذات الاستخدام العام ؟
                      • لكي تكون واجهة الأسكريبت باللغة العربية فلابد من وجود الخطوط العربية على الجهاز المراد تشغيل ملف الماكس النهائي عليه ؟







                      أنتهت المقدمة
                      و بداية الفصل الأول قريبا



                      www.3lmny3d.com
                      صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                      تعليق


                      • #26
                        تابع المقدمة

                        بعض خصائص لغة MaxScript

                        باعتبار أن MaxScript ليست لغة قائمة بذاتها و أنها لا تعمل إلا ضمن بيئة 3DS MAX فإنها لها بعض الخصائص المختلفة عن لغات البرمجة الكاملة القائمة بذاتها مثل Visual Basic . وهذه الاختلافات ناتجة لأن معنى كلمة Script هو صورة مختصرة من شيء مفصل و كامل فبعض القصص تكتب على الغلاف الخلفي ملخص لما بالقصة من أحداث و هذا يسمى Script . أما الاختلافات فهي كالأتي ...

                        · إمكانيات أي Script أقل من اللغات الكاملة و لكن لأنها مسخرة للسيطرة على برنامج معين فإن هذا النقص يكون غير مؤثر على الطلاق . فأنت لا تستطيع مثلا تشكيل قرص مرن ( Format) من خلال أي Script.

                        · ناتج استخدام Script دائما ملف نصي أو نصوص مدمجة داخل ملف العمل الأصل ( مثل visual Basic Script ) في حين أن لغات البرمجة الكاملة تنتج ملف ذو الامتداد (exe ) أو ( dll ) أو ( ocx ) و كل امتداد له أسلوب تشغيله و استغلاله المختلف .

                        · لغات البرمجة الكاملة تتم لها عملية Compilation أثناء تجربة الكود بحيث يدور معالج الكود على وحدات الكود كلها قبل تحويلها إلى لغة فهما أبسط بالنسبة للمعالج ( Machine Language ) و عند اكتشاف أي خطأ لغوى ( Syntax Error ) يتعلق التنفيذ و يشير محرر الكود إلى مكان الخطأ و سببه ( و عند تثبيت برنامج المساعدة يمكن الوصول مباشر ة إلى الموضوع المتعلق بالخطأ الذي أكتشفه معالج الكود ) أما الأسكريبت فيحدث لها عملية Interpretation أثناء تجربة الكود حيث يتعامل معالج الكود مع الكود سطر سطر و يبدأ في تنفيذ الأسكريبت طالما كان أو سطر كامل و مفهوم من قبل معالج الكود و يترتب على هذا أن الأسكريبت يصعب إلى حد ما اكتشاف الأخطاء بها و ذلك لان معالج الأسكريبت لا يتوقف عن التنفيذ إلا إذا كان الخطأ يوجد في الجزء الجاري تنفيذه حاليا من الكود . و يسمى هذا الأسلوب في اكتشاف أخطاء كود Script بالخطأ الصامت ( silent Error ) فكن حزر و لا تتقبل بدأ الأسكريبت في العمل بالشكل المتوقع بالأعتقد أن كل شيء على ما يرام . فعليك تشغيل الأسكريبت أكثر من مرة بمدخلات مختلفة على قدر الأمكان .

                        · لغات البرمجة الكاملة بها عبارات للتحكم في سير البرنامج عند حدوث الأخطاء و الانتقال إلى كتل من الكود التي تتعام مع ذلك و هذه الإمكانية ضعيفة جد ا في أي نوع من أنواع الأسكريبت .

                        · لغات البرمجة عموما تعمل أسرع من Script و ذلك لأن تحويل الكود إلى لغة الآلة يسهل العمل بالنسبة للمعالج و لكن مع كتل الكود البسيطة و التقدم الكبير في سرعة الحاسبات الشخصية اليوم فإننا لا نشعر بفارق ملحوظ في سرعة تنفيذ الكود


                        ملحوظة : خلال الكتاب أشير إلى MaxScript بلغة MaxScript فكلمة لغة هنا لا تعنى أنها من اللغات الكاملة القائمة بذاتها و لكن هذا لتعودنا بأن ما نقوم بكتابة الكود به هو لغة للبرمجة غير مباليين بأي نوع نحن بصدد التعامل معه .







                        www.3lmny3d.com
                        صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                        تعليق


                        • #27
                          جزاك الله ألف خير

                          وجواب سؤالك عن تحويل ال doc إلى pdf موجود في قسم الحاسب والإنترنت
                          أبو إبراهيم...
                          .

                          إبداع بلا حدود

                          (s.a.t.s) سابقا

                          تعليق


                          • #28
                            جزاك الله الف خير أ خي على هذا المجهود.

                            تعليق


                            • #29

                              أشكركم جميعا

                              ولدى الان 21 صفحة pdf قد انتهيت منها من يريد الأطلاع عليها لان قبل الانتهاء من الكتاب فليرسل لى على الخاص لاننى لا اريد ظهور الفصول مبعثرة و لكنى لن اعرض ملف pdf بالمنتدى إلا عندما يكتمل .

                              www.3lmny3d.com
                              صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                              تعليق


                              • #30
                                الفصل الأول
                                تصميم واجهة الاسكريبت

                                الــفــصــل الــثــانـــــــي

                                تصميم واجهة Script







                                معنى ال OOP أثناء تصميم واجهة Scripts



                                سبق و أن ذكرنا أن لغة MaxScript لغة شيئية التوجيه OOP أي أننا نتعامل مع عناصرها ككيانات مستقلة لكل منها خصائصه و أحداثة التي يتعرف عليها و الإجراءات المرتبط بهذه الأحداث .



                                فمثلا جهاز الجوال ممكن النظر إليه ككائن – شيء – حيث أن له خصائصه مثل اللون و الماركة و حجم الذاكرة و ..... و أيضا له أحداث يتعرف حليها و تحدث له مثل تلقيه رسالة أو هبوط جهد بطاريته أو ضغط المستخدم على زر رفع شدة الصوت. و هناك بالتالي إجراءات ينفذها الجوال استجابة لكل حدث من تلك الأحداث مثل إحداث حرس لتنبيه المستخدم لوصول الرسالة أو عرض رسالة تنبيه بانخفاض جهد البطارية أو رفع شدة الصوت .



                                و هكذا نجد أن الحياة من حولنا كلها كائنا – أشياء – لها خصائصها المميزة لها و الأحداث التي تقع لها دون غيرها و الإجراءات التي تنتهجها هذه الكائنات كاستجابة لما تدركه من أحداث .



                                ننتقل الآن لتلمس معنى الشيئية عند التعامل مع واجهة أي سكريبت. فعند النظر لمربع استقبال النصوص edittextفإن له طول و عرض و موضع و محتوى و يدرك بالتغير فيه و يستجيب لهذا التغير على حسب الكود المرتبط بحدث التغيير .



                                التصميم في محرر Script

                                ولنبدأ الآن في تناول المكونات التي تتألف منها نوافذ الأسكريبت العامة و المسماة rollout ثم نتناول بعد ذلك العناصر التي سنضعها على تلك النوافذ القياسية .



                                النافذة القياسية rollout



                                لنخبر معالج الكود أننا نريد تكوين نافذة قياسية نفتح ملف جديد باختيار New Script من قائمة MAXScript و نكتب فيه الأتي ...





                                rollout my_first_script " بسم الله الرحمن الرحيم"

                                (



                                -- نكتب هنا الكود المسؤل عن أنشاء باقي العناصر المحتواة داخل النافذة

                                )

                                createdialog my_first_script






                                كلمة rollout تخبر معالج الكود أننا ننشىء نافذة و هذه من الكلمات المفتاحية التي يدرك معالج الكود معناها و لا يجوز استخدامها سوى في إنشاء النوافذ فقط و إلا أعتبر استخداما خطىء يترتب علية توقف عمل الكود لذلك تظهر تلقائيا باللون الأزرق . هذه الكلمة تعتبر أمر لمعالج الكود وهى في حد ذاتها غير كافية ليفهمها معالج الكود و ينفذها بل تتطلب أن تصحب بمعاملات أو إرشادات لمعالج الكود عن كيفية تنفيذها هذه الإرشادات أو المعاملات يجب كتابتها بعد الأمر مباشرة مفصولة بمسافة . بالطبع ليست كل المعاملات ضرورية بل أن بعضها ضروري و يتوقف تنفيذا لكود عن عدم تواجده و بعضها تواجده بعد الأمر شيء اختياري لا يتوقف عليه تنفيذ الكود . المعامل التالي للأمر rollout هو معامل إلزامي و هو عبارة عن أسم النافذة و ذلك لأن الكود سيتعامل مع العناصر المكون منها النافذة و يجب أن يكون لكل منها أسمة المميز الذي لا يتكرر فخاصية الاسم – name- بالنسبة لنا أشبة برقم بطاقة الهوية غير قابل للتكرار . المعامل التالي إختيارى و هو العنوان الذي نود ظهوره على تلك النافذة و في حالة عدم إمداد معالج الكود به فأنه افتراضيا يجعل عنوان النافذة خالي – بلا عنوان - . معالج الكود لا يبالى بماهية العنوان لذلك ينقله كما هو دون محاولة فهمة لذلك ظهر باللون الأحمر. بعض المعاملات تتطلب الكتابة بأسلوب معين فنجد أن عنوان النافذة لابد من كثابتة بين علامتي اقتباس ليدرك معالج الكود أن كل المحتوى بين علامتي الاقتباس كيان واحد و ينقله كما هو إلى شريط عنوان النافذة .



                                يمكنك البحث أي أمر MaxScript في ملف المساعدة للحصول على الصيغة الكاملة لهذا الأمر .فعند البحث عن كلمت rollout نحصل على الصيغة التالية ...



                                rollout <var_name> <description_string>
                                [ rolledUp:<boolean> ] [ silentErrors:<boolean> ]
                                ( <rollout_body> )

                                بالطبع لن نتناول شرح كل المعاملات مرة واحدة بل إننا لن نتطرق إلى بعضها على الإطلاق و إلا أصبح هذا الكتاب نسخة من ملف المساعدة و تخطى حجمه الألف صفحة و لكن يترك لك البحث فيما تركة الكتاب من شرح لبعض العبارات و المعاملات و أن كان الفهم العام للكتاب سيساعدك كثيرا في هذا الشأن .



                                يكفينا ألان أن نعرف أن الأمر rollout يحتاج إلى أسم للنافذة بشكل اللزامى و قد نضيف عنوان لها و قد نتركه خاليا .



                                بعد الأمر rollout نفتح قوس لنكتب به الكود المسؤل عن ظهور العناصر المحتواه ضمن هذه النافذة من أزرار و صور و خلافة – لا حظ إننا تركنا السطر بلا كود إلا تعليق يذكرنا بأن هذا هو المكان الذي سنضيف فيه الكود – و عند غلق القوس سيكون لدى معالج الكود المعلومات الكافية عن النافذة و بعد ذلك نكتب الأمر createdialog مصحوبا باسم النافذة فيترتب عليه الظهور الفعلي للنافذة أما المستخدم و هذا بعد اختيار Evaluate All من قائمة File بمحرر الأسكريبت .

                                البقية قريبا

                                www.3lmny3d.com
                                صفحتنا على الفيس بوك >>> https://www.facebook.com/3lmny3d

                                تعليق

                                يعمل...
                                X