كيفيه صناعه محرك العاب مع امثله
صفحة 1 من اصل 1 • شاطر
كيفيه صناعه محرك العاب مع امثله
كيفيه صناعه محرك العاب مع امثله
http://www.2shared.com/file/gofU_I6U/mithal.html
......................................
محركات الالعاب عباره عن مكتبات dll..والبرامج مثل اليونتي ويو دي كي هي برامج مخدومه بواسطه هذه المكتبات dll لتخدم هذه المكتبات وتنقل البرمجه من الاكواد الى البرمجه الملموسه والمرئيه
......................................
لذالك سنتعلم في هذا الدرس صناعه محرك العاب اي ملف dll...
في نفس المشروع برنامج يعتمد على هذا المحرك يصنع لنا البيئه من جبال وارضيه ومياه الى اخره .............................................
الخطوه 1.................
اضف مشروع جديد في فيجوال6 بسك من نوع tandard.exe ...تلقائيا سيضيف لك فورم1 ....ثم اضف كلاس
يجب ان يكون لدينا في مشروعنا الفارغ 1 فورم و 1 كلاس
الخطوه 2.................
قم بتسميه الكلاس بهذا الاسم win_function
يمكن ان تسميه بالعربيه .دوال الوندوز..هذا يصبح من بعد كائن داخل ملف dll
الغرض من هذا الكلاس هو تخزين دوال داخله تساعدنا على تطوير برامجنا..لم ندخل بعد في دوال 3دي او دايراكت اكس
الان لدينا كلاس فارغ اسمه win_function
انسخ هذه الداله وضعها داخل الكلاس
'''''''''اعلانات عن متغيرات خاصه بجعل الادوات قادره على تغيير حجمها
''''''''ضع هذه الاعلانات في منطقه الاعلانات العامه
Private Declare Function GetWindowLong& Lib "user32" _
Alias "GetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long)
Private Declare Function SetWindowLong& Lib "user32" _
Alias "SetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long, ByVal dwNewLong As Long)
Private Declare Function SetWindowPos& Lib "user32" _
(ByVal hWnd As Long, ByVal hWndInsertAfter As Long, _
ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFLAGS As Long)
'''''''''جعل الادوات قادره على تغيير حجمها داله..
""""ضع هذه الداله او السيب في الكلاس تحت الاعلانات السابقه سينشا لك فيجوال بيسك خط فاصل بينهما تلقائيا
Public Sub ReSizeStyle(ctl As Control, NewStyle As Boolean)
Const GWL_STYLE As Long = -16
Const WS_THICKFRAME As Long = &H40000
Const wFLAGS = &H20 Or &H2 Or &H1 Or &H4
Dim BeStyle&, AfStyle
BeStyle = GetWindowLong(ctl.hWnd, GWL_STYLE)
AfStyle = BeStyle Or WS_THICKFRAME
If NewStyle Then
SetWindowLong ctl.hWnd, GWL_STYLE, AfStyle
Else
SetWindowLong ctl.hWnd, GWL_STYLE, BeStyle
End If
SetWindowPos ctl.hWnd, hWnd, 0, 0, 0, 0, wFLAGS
End Sub
الخطوه 3...........
لتحويل الكلاس السابق الى كائن داخل ملف dll..علينا فتح مشروع جديد من نوع activex.dll هذا النوع من المشاريع خاص بانشاء ملفات dll
تجربه ملف الذي صنعناه ويحتوي على داله واحده تجعل الادوات قادره على تغيير حجمها زمن التشغيل
ابدء مشروع جديد في فيجوال بيسك لكن هذه المره من نوع activex.dll
ينشا لك فيجوال بيسك تلقائيا 1كلاس
الاكواد التي وضعناها سابقا(في مشروع من نوع.. standard.exe) انسخها في هذا الكلاس(هذا الكلاس يوجد في مشروع لصناعه activex.dll)
قم بتسميه الكلاس ب win_function
من قوائم فيجوال بيسك اضغط على file...make win_function.dll
انتضر قليلا ثم مبروك عليك اول محرك العاب لك يحتوي على كائن واحد وداله واحده
الخطوه 4...........
العوده الى مشروعنا الاول من نوع.standard.exe..والذي يحتوي على واحد كلاس وواحد فورم
اضف اداه ...الى الفورم ستكون شاشه الفضاء الثلاثي الابعاد
اذا كان محركنا قد انتهى وصدرناه الى ملف.. نقوم بتحميله في فيجوال بيسك ثم نستفيد من دواله
اذا كنا نصنع المحرك والبرنامج في نفس الوقت فان محركنا عباره عن ملفات كلاس وهذه الطريقه افضل تتيح لنا تحسينه والتعديل فيه متى نشاء
.....
في الفورم في منطقه الاعلانات العامه قم بااستدعاء الكائن
Public win As New win_function
في حدث فورم قم بالاستعمال الداله ..يوجد خيارين قمنا بجعل المستخدم يدبر راسو فيهم
Picture1 وهو اسم الاداه المراد جعلها قابله لتغيير حجمها
True or false...يعني تشغل العمليه او تعطلها
Private Sub Form_Load()
Set win = New win_function
win.ReSizeStyle Picture1, True
End Sub
هنا انتهى الدرس وبنفس الطريقه السابقه تم انشاء كلاسات اخرى يحمل دوال ديراكت اكس8 لتفتح لنا شاشه فضاء ثلاثي الابعاد
المثال في الرابط في الاعلى
ومثال المحرك
http://www.2shared.com/file/gofU_I6U/mithal.html
......................................
محركات الالعاب عباره عن مكتبات dll..والبرامج مثل اليونتي ويو دي كي هي برامج مخدومه بواسطه هذه المكتبات dll لتخدم هذه المكتبات وتنقل البرمجه من الاكواد الى البرمجه الملموسه والمرئيه
......................................
لذالك سنتعلم في هذا الدرس صناعه محرك العاب اي ملف dll...
في نفس المشروع برنامج يعتمد على هذا المحرك يصنع لنا البيئه من جبال وارضيه ومياه الى اخره .............................................
الخطوه 1.................
اضف مشروع جديد في فيجوال6 بسك من نوع tandard.exe ...تلقائيا سيضيف لك فورم1 ....ثم اضف كلاس
يجب ان يكون لدينا في مشروعنا الفارغ 1 فورم و 1 كلاس
الخطوه 2.................
قم بتسميه الكلاس بهذا الاسم win_function
يمكن ان تسميه بالعربيه .دوال الوندوز..هذا يصبح من بعد كائن داخل ملف dll
الغرض من هذا الكلاس هو تخزين دوال داخله تساعدنا على تطوير برامجنا..لم ندخل بعد في دوال 3دي او دايراكت اكس
الان لدينا كلاس فارغ اسمه win_function
انسخ هذه الداله وضعها داخل الكلاس
'''''''''اعلانات عن متغيرات خاصه بجعل الادوات قادره على تغيير حجمها
''''''''ضع هذه الاعلانات في منطقه الاعلانات العامه
Private Declare Function GetWindowLong& Lib "user32" _
Alias "GetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long)
Private Declare Function SetWindowLong& Lib "user32" _
Alias "SetWindowLongA" (ByVal hWnd As Long, _
ByVal nIndex As Long, ByVal dwNewLong As Long)
Private Declare Function SetWindowPos& Lib "user32" _
(ByVal hWnd As Long, ByVal hWndInsertAfter As Long, _
ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFLAGS As Long)
'''''''''جعل الادوات قادره على تغيير حجمها داله..
""""ضع هذه الداله او السيب في الكلاس تحت الاعلانات السابقه سينشا لك فيجوال بيسك خط فاصل بينهما تلقائيا
Public Sub ReSizeStyle(ctl As Control, NewStyle As Boolean)
Const GWL_STYLE As Long = -16
Const WS_THICKFRAME As Long = &H40000
Const wFLAGS = &H20 Or &H2 Or &H1 Or &H4
Dim BeStyle&, AfStyle
BeStyle = GetWindowLong(ctl.hWnd, GWL_STYLE)
AfStyle = BeStyle Or WS_THICKFRAME
If NewStyle Then
SetWindowLong ctl.hWnd, GWL_STYLE, AfStyle
Else
SetWindowLong ctl.hWnd, GWL_STYLE, BeStyle
End If
SetWindowPos ctl.hWnd, hWnd, 0, 0, 0, 0, wFLAGS
End Sub
الخطوه 3...........
لتحويل الكلاس السابق الى كائن داخل ملف dll..علينا فتح مشروع جديد من نوع activex.dll هذا النوع من المشاريع خاص بانشاء ملفات dll
تجربه ملف الذي صنعناه ويحتوي على داله واحده تجعل الادوات قادره على تغيير حجمها زمن التشغيل
ابدء مشروع جديد في فيجوال بيسك لكن هذه المره من نوع activex.dll
ينشا لك فيجوال بيسك تلقائيا 1كلاس
الاكواد التي وضعناها سابقا(في مشروع من نوع.. standard.exe) انسخها في هذا الكلاس(هذا الكلاس يوجد في مشروع لصناعه activex.dll)
قم بتسميه الكلاس ب win_function
من قوائم فيجوال بيسك اضغط على file...make win_function.dll
انتضر قليلا ثم مبروك عليك اول محرك العاب لك يحتوي على كائن واحد وداله واحده
الخطوه 4...........
العوده الى مشروعنا الاول من نوع.standard.exe..والذي يحتوي على واحد كلاس وواحد فورم
اضف اداه ...الى الفورم ستكون شاشه الفضاء الثلاثي الابعاد
اذا كان محركنا قد انتهى وصدرناه الى ملف.. نقوم بتحميله في فيجوال بيسك ثم نستفيد من دواله
اذا كنا نصنع المحرك والبرنامج في نفس الوقت فان محركنا عباره عن ملفات كلاس وهذه الطريقه افضل تتيح لنا تحسينه والتعديل فيه متى نشاء
.....
في الفورم في منطقه الاعلانات العامه قم بااستدعاء الكائن
Public win As New win_function
في حدث فورم قم بالاستعمال الداله ..يوجد خيارين قمنا بجعل المستخدم يدبر راسو فيهم
Picture1 وهو اسم الاداه المراد جعلها قابله لتغيير حجمها
True or false...يعني تشغل العمليه او تعطلها
Private Sub Form_Load()
Set win = New win_function
win.ReSizeStyle Picture1, True
End Sub
هنا انتهى الدرس وبنفس الطريقه السابقه تم انشاء كلاسات اخرى يحمل دوال ديراكت اكس8 لتفتح لنا شاشه فضاء ثلاثي الابعاد
المثال في الرابط في الاعلى
ومثال المحرك
vb6 الى vb20- عضو
- عدد المساهمات : 10
نقاط : 32
تاريخ التسجيل : 11/10/2016
الموقع : ahl-dz.yoo7.com/f28-montada
مواضيع مماثلة
» سلسله امثله directx8 vs vb6
» سلسله امثله directx8 vs vb6
» كود سورس لمثال محرك 3دي بالاعتماد على مكتبه dx8 في vb6
» شركة Seagate تعلن رسميا عن شحنها لأسرع محرك أقراص صلبة HDD بسعة 6TB في العالم
» سلسله امثله directx8 vs vb6
» كود سورس لمثال محرك 3دي بالاعتماد على مكتبه dx8 في vb6
» شركة Seagate تعلن رسميا عن شحنها لأسرع محرك أقراص صلبة HDD بسعة 6TB في العالم
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى