Son Of UAE
03-08-2006, 01:30 PM
بسم الله الرحمن الرحيم
اقدم لكم اليوم درس عن نظام الجزيئات لبرنامج الجيم ميكر 6.0 و الذي يمكن استخدامه ايضاً في الاصدارات اللاحقة. لقدت اعتمد الإصدار 6.1 في هذا الدرس و في حال وجود خلل فيرجع السبب ان الاصدار السابق لا يحتوي على الدوال كلها. ولكن يمكنكم التعديل كيفما شئتم.
261266
لتكون الفكرة واضحة جداً, علينا معرفة ما يجب اتباعه قبل البدء في نظام الجزيئات. فعمليه استخراج الجزيئات لها روتين ثابت يجب اتباعه في كل مرة. وهو كالتالي:
1 – تحديد نوع الجزيئات و خصائصها.
2 – تحديد نظام الجزيئات.
3 – وضع الباعث والتي تظهر منها الجزيئات.
اولاً – نوع الجزيئات و خصائصها.
في البداية نصنع نوع جديد و نعطيه اسم pt1 و التي تعني Particles Type 1 و تكتب بهذة الطريقة:
pt1 = part_type_create();
و بعدها تضع خصائص النوع و التي ستحدد لك الشكل الذي تريده و غيرها من الامور و من أهمها :
part_type_shape(pt1,pt_shape_flare);
وهذة الدالة تحدد ان النوع الاول سيكون له الشكل Flare و للتطرق إلى انواع أخرى ستجدونها بملف المساعدة مثل :
pt_shape_pixel
pt_shape_disk
pt_shape_square
pt_shape_line
و هذا هو الحال لجميع الدوال المتعلقة بنوع الجزيئات. ولاحظ انك تضع المدخلpt1 في كل داله لتحدد انك تغير خصائص النوع الاولى. ولو اردت اضافة نوع اخر أعطه اسم أخر مثل pt2 و استخدم داله الصنع المذكورة في أول القسم. ولمعلومات اكثر عن باقي الدوال يمكنك مراجعة ملف المساعدة للجيم ميكر. وذلك لكثرتها و بساطتها في نفس الوقت. و للعلم يتم وضع جميع الخصائص في الحدث Create من نفس الاوبجيك الذي يراد استغلال نظام الجزيئات فيه.
ثانياً – نظام الجزيئات.
وهو الجزء الرئيسي بالدرس حيث انه سيكون بالاوبجيكت الذي يقوم بإظهار الجزيئات ففي الحدث Create نضع الداله التالية:
ps = part_system_create();
و التي سوف تنشئ النظام وتعطيه اسم ps و هذا الاسم سيتم الاستفاده منه لاحقاً.
و في حدث Destroy تضع الدالة:
part_system_destroy(ps);
والتي ستزيل النظام الجزيئات و توفر على ذاكرة الكمبيوتر.
هناك دوال أخرى متعلقة بنظام الجزيئات. ولكننا عمدنا على تجنبها لتبسيط الامور و استخدام الاساسيات فقط.
و الان اصبح لدينا نوع جزيئات و نظام جزيئات ولكن النتائج مازالت صفر . لاننا نحتاج إلى رسمها على شاشة الكمبيوتر لنرى الانواع التي انشئت. و ذلك عن طريق الفقرة التاليه.
ثالثا – الباعث.
و هو الجزء الذي سيحدد مكان الانبعاث و يختار الانواع التي يريدها و الكمية المطلوبة منها لذلك.
تتم هذه العمليه عن طريق ثلاث دوال و هي انشاء الباعث و تحديد نوع الانبعاث و اخيراً تحديد كمية الانبعاث.
و لصنع باعث جديد تستخدم الداله:
em = part_emitter_create(ps);
ولاحظ ان ps هو اسم نظام الجزيئات و سيتم اضافة الداله في اخر سطر من الحدث Create لنفس الاوبجيكت.
اما الدالة الثانية و التي تكتب في بعد الاولى و التي تحدد النوع فهي:
part_emitter_region(ps,em,100,540,480,490,ps_shape_rectangle,ps_distr_linear);
حيث يكون المدخل الاول هو اسم نظام الجزيئات و المدخل الثاني هو اسم الباعث الذي تم تحديد اسمه مسبقاً بالدالة الاولى. و بعدها يتم تحديد نطاق الانبعاث وذلك بوضع الارقام الاربع اما المدخل السابع فهو يتعلق بشكل بؤرة الانبعاث و قد تم تحديد النوع المستطيل لذلك. و اخيرأ تضع نوع الموزع و الذي تم اختيار النوع الخطي لذلك أي ان توزيع الانبعاث سيكون متساوي في كل نطاق الانبعاث. ولتغيير القيم و الانواع يرجى مراجعة ملف المساعدة و التأكد من القيم و ذلك كتجربه طبعاً.
و الان يتم تحديد كمية الانبعاث بالدالة التاليةو التي توضع في الحدث drawوهي :
part_emitter_stream(ps,em,pt1,-4);
بوضع اسم النظام و اسم الباعث و اسم النوع و من ثم وضع القيمه -4 سيتم بث الجزيء من النوع ps2 في كل اربع خطوات للعبة steps. و بتغير القيمة تتغير كمية البث في الباعث.
وبهذا انتهينا من شرح الفكرة الاساسية لنظام الجزيئات و كل ما تبقى هو المثال المرفق الذي سيوضح الامور الغامضة ان شاء الله.
تقديم :
Son fo UAE ©
اقدم لكم اليوم درس عن نظام الجزيئات لبرنامج الجيم ميكر 6.0 و الذي يمكن استخدامه ايضاً في الاصدارات اللاحقة. لقدت اعتمد الإصدار 6.1 في هذا الدرس و في حال وجود خلل فيرجع السبب ان الاصدار السابق لا يحتوي على الدوال كلها. ولكن يمكنكم التعديل كيفما شئتم.
261266
لتكون الفكرة واضحة جداً, علينا معرفة ما يجب اتباعه قبل البدء في نظام الجزيئات. فعمليه استخراج الجزيئات لها روتين ثابت يجب اتباعه في كل مرة. وهو كالتالي:
1 – تحديد نوع الجزيئات و خصائصها.
2 – تحديد نظام الجزيئات.
3 – وضع الباعث والتي تظهر منها الجزيئات.
اولاً – نوع الجزيئات و خصائصها.
في البداية نصنع نوع جديد و نعطيه اسم pt1 و التي تعني Particles Type 1 و تكتب بهذة الطريقة:
pt1 = part_type_create();
و بعدها تضع خصائص النوع و التي ستحدد لك الشكل الذي تريده و غيرها من الامور و من أهمها :
part_type_shape(pt1,pt_shape_flare);
وهذة الدالة تحدد ان النوع الاول سيكون له الشكل Flare و للتطرق إلى انواع أخرى ستجدونها بملف المساعدة مثل :
pt_shape_pixel
pt_shape_disk
pt_shape_square
pt_shape_line
و هذا هو الحال لجميع الدوال المتعلقة بنوع الجزيئات. ولاحظ انك تضع المدخلpt1 في كل داله لتحدد انك تغير خصائص النوع الاولى. ولو اردت اضافة نوع اخر أعطه اسم أخر مثل pt2 و استخدم داله الصنع المذكورة في أول القسم. ولمعلومات اكثر عن باقي الدوال يمكنك مراجعة ملف المساعدة للجيم ميكر. وذلك لكثرتها و بساطتها في نفس الوقت. و للعلم يتم وضع جميع الخصائص في الحدث Create من نفس الاوبجيك الذي يراد استغلال نظام الجزيئات فيه.
ثانياً – نظام الجزيئات.
وهو الجزء الرئيسي بالدرس حيث انه سيكون بالاوبجيكت الذي يقوم بإظهار الجزيئات ففي الحدث Create نضع الداله التالية:
ps = part_system_create();
و التي سوف تنشئ النظام وتعطيه اسم ps و هذا الاسم سيتم الاستفاده منه لاحقاً.
و في حدث Destroy تضع الدالة:
part_system_destroy(ps);
والتي ستزيل النظام الجزيئات و توفر على ذاكرة الكمبيوتر.
هناك دوال أخرى متعلقة بنظام الجزيئات. ولكننا عمدنا على تجنبها لتبسيط الامور و استخدام الاساسيات فقط.
و الان اصبح لدينا نوع جزيئات و نظام جزيئات ولكن النتائج مازالت صفر . لاننا نحتاج إلى رسمها على شاشة الكمبيوتر لنرى الانواع التي انشئت. و ذلك عن طريق الفقرة التاليه.
ثالثا – الباعث.
و هو الجزء الذي سيحدد مكان الانبعاث و يختار الانواع التي يريدها و الكمية المطلوبة منها لذلك.
تتم هذه العمليه عن طريق ثلاث دوال و هي انشاء الباعث و تحديد نوع الانبعاث و اخيراً تحديد كمية الانبعاث.
و لصنع باعث جديد تستخدم الداله:
em = part_emitter_create(ps);
ولاحظ ان ps هو اسم نظام الجزيئات و سيتم اضافة الداله في اخر سطر من الحدث Create لنفس الاوبجيكت.
اما الدالة الثانية و التي تكتب في بعد الاولى و التي تحدد النوع فهي:
part_emitter_region(ps,em,100,540,480,490,ps_shape_rectangle,ps_distr_linear);
حيث يكون المدخل الاول هو اسم نظام الجزيئات و المدخل الثاني هو اسم الباعث الذي تم تحديد اسمه مسبقاً بالدالة الاولى. و بعدها يتم تحديد نطاق الانبعاث وذلك بوضع الارقام الاربع اما المدخل السابع فهو يتعلق بشكل بؤرة الانبعاث و قد تم تحديد النوع المستطيل لذلك. و اخيرأ تضع نوع الموزع و الذي تم اختيار النوع الخطي لذلك أي ان توزيع الانبعاث سيكون متساوي في كل نطاق الانبعاث. ولتغيير القيم و الانواع يرجى مراجعة ملف المساعدة و التأكد من القيم و ذلك كتجربه طبعاً.
و الان يتم تحديد كمية الانبعاث بالدالة التاليةو التي توضع في الحدث drawوهي :
part_emitter_stream(ps,em,pt1,-4);
بوضع اسم النظام و اسم الباعث و اسم النوع و من ثم وضع القيمه -4 سيتم بث الجزيء من النوع ps2 في كل اربع خطوات للعبة steps. و بتغير القيمة تتغير كمية البث في الباعث.
وبهذا انتهينا من شرح الفكرة الاساسية لنظام الجزيئات و كل ما تبقى هو المثال المرفق الذي سيوضح الامور الغامضة ان شاء الله.
تقديم :
Son fo UAE ©