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

منتديات مجموعات

كل علومك وما لم تفكر به هنا
 
الرئيسيةأحدث الصورالتسجيلدخول

 

  حصريا تعلم كيفية صناعة لعبة 3د

اذهب الى الأسفل 
كاتب الموضوعرسالة
Admin
Admin
Admin


المساهمات : 75
تاريخ التسجيل : 14/12/2013

 حصريا تعلم كيفية صناعة لعبة 3د Empty
مُساهمةموضوع: حصريا تعلم كيفية صناعة لعبة 3د    حصريا تعلم كيفية صناعة لعبة 3د Icon_minitimeالأحد يناير 05, 2014 3:54 pm


هذا اول موضوع لي تعليم صناعة لعبة 3d
اولا:نفتح الجيم ميكر ثم نضع اوبجيكت اسمه man
ثم نضع في ال هذا الكود[/code]{
friction=.25;
list=ds_list_create();
face=point_direction(x,y,Control.x,Control.y);
camera=face;
//sets top z
if place_meeting(x,y,Floor0) z=0;
if place_meeting(x,y,Floor1) z=16;
if place_meeting(x,y,Floor2) z=32;
if place_meeting(x,y,Floor3) z=48;
if place_meeting(x,y,Floor4) z=64;
if place_meeting(x,y,Floor5) z=80;
if place_meeting(x,y,Floor6) z=96;
if place_meeting(x,y,Floor7) z=112;
if place_meeting(x,y,Floor8) z=128;
if place_meeting(x,y,Floor9) z=144;
if place_meeting(x,y,Floor10) z=160;
if place_meeting(x,y,Floor11) z=176;
if place_meeting(x,y,Floor12) z=192;
if place_meeting(x,y,Floor13) z=208;
if place_meeting(x,y,Floor14) z=224;
if place_meeting(x,y,Floor15) z=240;

if place_meeting(x,y,Large_floor)
z=48;

z+=10;
ds_list_add(list,z);

window_mouse_set(400,300);
seez=59;
camera=face;
height=16;
}

الكود:

ثم نضع في ال :s_e: هذا الكود


//controls camera wabble
wabble/=1.25;
if wabble>=.5 ww-=.5;
if wabble<=-.5 ww+=.5;
wabble+=ww;

if dd=0
{
//changes face and camera
if Control.usesecondaxis=1
&& Control.menu=0
{
if abs(joystick_zpos(1))>.2 {face+=joystick_zpos(1)*Control.camspinspeed; camera=face;}
if abs(joystick_rpos(1))>.2 {seez+=joystick_rpos(1)*Control.camspinspeed;}

}

if face>=360 face-=360;
if face<0 face+=360;
if camera>=360 camera-=360;
if camera<0 camera+=360;

if face<camera
{
if face<camera-180 face-=Control.camspinspeed;
else face+=Control.camspinspeed;
}
if face>camera
{
if face>camera+180 face+=Control.camspinspeed;
else face-=Control.camspinspeed;
}

if abs(face-camera)<Control.camspinspeed face=camera;


if abs(window_mouse_get_x()-400)>2
or abs(window_mouse_get_y()-300)>2
&& Control.menu=0
{
face+=(400-window_mouse_get_x())/(21-Control.camspinspeed);
seez+=(300-window_mouse_get_y())/(21-Control.camspinspeed);
camera=face;
window_mouse_set(400,300);
}

//limits seez
if seez>90 seez=90;
if seez<1 seez=1;

//moves man
if point_distance(0,0,hsped,vsped)>.01
{
if Control.lockcamera=0
{
dir=face+point_direction(0,0,hsped,vsped)+90;
speed=point_distance(0,0,hsped,vsped)*4;
}
else
{
dir=face+point_direction(0,0,0,vsped)+90;
face-=hsped*(Control.camspinspeed/5)*4;
speed=point_distance(0,0,0,vsped)*4;
camera=face;
}
direction=dir;
}

if speed>4 speed=4;

hsped/=1+Control.movesped+.1;
vsped/=1+Control.movesped+.1;

if point_distance(0,0,joystick_xpos(1),joystick_ypos(1))>.2
&& z>-28
&& Control.menu=0
{
hsped=joystick_xpos(1);
vsped=joystick_ypos(1);
}
//controls mans face
if alarm[0]=-1
img=0
else
img=1

//fake gravity
z+=thrust;
if z>level
thrust-=.5
else
{
thrust=0;
z=level;
}

//resets jumping
if !joystick_check_button(1,2)
&& jump=1
{
if z=level
jump=0;
if thrust>0
thrust-=1;
}

if !keyboard_check(ord('Z'))
&& !mouse_check_button(mb_left)
&& jump=2
{
if z=level
jump=0;
if thrust>0
thrust-=1;
}

//chooses highest level
ds_list_add(list,-40)
ds_list_sort(list,0)
level=ds_list_find_value(list,0)
ds_list_clear(list)

//checks to see if he hit bottom
if z<-24
health=0;



//checks health
if health<=0
{
if finished=0
{
//repeats the room
Control.alarm[1]=120;
Control.roomn=room;

//takes away penalty points
Control.alarm[8]=100;
Control.scor-=floor(Control.time/2);
Control.aa5=1;

//stops timer
Control.alarm[6]=-1;

if Control.scor<0
Control.scor=0;
}

if Control.effects=1
repeat(30)
{
nn=instance_create(x,y,Flake);
nn.z=z+16;
nn.tex=background_get_texture(backflake1);
}
dd=1;
}
}[code]
ثم نضع في ال هذا الكود[code]{
//sets projection rotations
cc=cos(face*pi/180);
sss=sin(face*pi/180);
cc2=cos(seez*pi/180);
ss2=sin(seez*pi/180);

d3d_set_projection_ext(x+Control.zoom*ss2*cc,y-Control.zoom*ss2*sss,z+Control.zoom*cc2,x,y,z+10+wabble,0,0,1,Control.projectangle,800/600,1,32000)

//draws man
if dd=0
{
//controls animation frames
if z>=level-2
&& z<=level+2
{
if speed>0
{
if ff=0 {if legframe<45 legframe+=speed*5 else ff=1 }
if ff=1 {if legframe>-45 legframe-=speed*5 else ff=0 }

if ff2=0 {if armframe<85 armframe+=speed*9 else ff2=1 }
if ff2=1 {if armframe>-85 armframe-=speed*9 else ff2=0 }

armframex=20;
}
else
{
legframe=0;
armframe=0;
armframex=20;
}
}
else
{
legframe=45;
armframe=0;
armframex=175;
}

//controls flickering when your in pain
if !(alarm[0]=-1)
{
if p=0 p=1; else p=0;
}
else
p=0;

if p=0
{
d3d_transform_set_identity();
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,z+abs(legframe)/30);

//draws shadow

ss=4-(z-level)/16

if ss>0
{
d3d_primitive_begin(pr_trianglefan)
draw_set_color(c_black);
d3d_vertex(-ss,-ss,level-z+.5);
d3d_vertex( ss,-ss,level-z+.5);
d3d_vertex( ss, ss,level-z+.5);
d3d_vertex(-ss, ss,level-z+.5);
draw_set_color(c_white);
d3d_primitive_end();
}

//draws body
//d3d_draw_block(-5,-5,6,5,5,16,background_get_texture(backbody),1,1);

d3d_primitive_begin_texture(pr_trianglelist,background_get_texture(backbody));

//left side
d3d_vertex_texture(-5,-5,6,0,1);
d3d_vertex_texture(5,-5,6,1,1);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(-5,-5,6,0,1);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(-5,-5,16,0,0);

//right side
d3d_vertex_texture(-5,5,6,0,1);
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(5,5,6,1,1);
d3d_vertex_texture(5,5,6,1,1);
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(5,5,16,1,0);

//back side
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(-5,5,6,0,1);
d3d_vertex_texture(-5,-5,6,1,1);
d3d_vertex_texture(-5,-5,6,1,1);
d3d_vertex_texture(-5,-5,16,1,0);
d3d_vertex_texture(-5,5,16,0,0);

//top side
d3d_vertex_texture(-5,-5,16,0,0);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(5,5,16,1,1);
d3d_vertex_texture(-5,-5,16,0,0);
d3d_vertex_texture(5,5,16,1,1);
d3d_vertex_texture(-5,5,16,0,1);

d3d_primitive_end();
d3d_primitive_begin_texture(pr_trianglelist,sprite_get_texture(mansface,img));
//front side
d3d_vertex_texture(5,5,16,0,0);
d3d_vertex_texture(5,-5,6,1,1);
d3d_vertex_texture(5,5,6,0,1);
d3d_vertex_texture(5,5,16,0,0);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(5,-5,6,1,1);

d3d_primitive_end();

//draws right leg
d3d_transform_set_identity();
d3d_transform_add_rotation_y(legframe);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,z+6+abs(legframe)/30);

d3d_draw_block(-2,1,-6,2,4.5,4,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws left leg
d3d_transform_set_identity();
d3d_transform_add_rotation_y(-legframe);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,z+6+abs(legframe)/30);

d3d_draw_block(2,-1,-6,-2,-4.5,4,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws right arm
d3d_transform_set_identity();
d3d_transform_add_rotation_y(-armframe);
d3d_transform_add_rotation_x(-armframex);
d3d_transform_add_translation(0,6,0);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,z+10+abs(legframe)/30);

d3d_draw_block(-2,-1,-5,2,1,1,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws left arm
d3d_transform_set_identity();
d3d_transform_add_rotation_y(armframe);
d3d_transform_add_rotation_x(armframex);
d3d_transform_add_translation(0,-6,0);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,z+10+abs(legframe)/30);

d3d_draw_block(2,1,-5,-2,-1,1,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws reflection
if Control.reflection=1
if instance_number(Floor_control1)=1
or instance_number(Floor_control5)=1
{

d3d_transform_set_identity();
d3d_transform_add_rotation_x(180);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,-(z+16+abs(legframe)/30)-16);

d3d_primitive_begin_texture(pr_trianglelist,background_get_texture(backbody));

//left side
d3d_vertex_texture(-5,-5,6,0,1);
d3d_vertex_texture(5,-5,6,1,1);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(-5,-5,6,0,1);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(-5,-5,16,0,0);

//right side
d3d_vertex_texture(-5,5,6,0,1);
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(5,5,6,1,1);
d3d_vertex_texture(5,5,6,1,1);
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(5,5,16,1,0);

//back side
d3d_vertex_texture(-5,5,16,0,0);
d3d_vertex_texture(-5,5,6,0,1);
d3d_vertex_texture(-5,-5,6,1,1);
d3d_vertex_texture(-5,-5,6,1,1);
d3d_vertex_texture(-5,-5,16,1,0);
d3d_vertex_texture(-5,5,16,0,0);

//top side
d3d_vertex_texture(5,5,6,1,1);
d3d_vertex_texture(-5,-5,6,0,0);
d3d_vertex_texture(-5,5,6,0,1);
d3d_vertex_texture(5,-5,6,1,0);
d3d_vertex_texture(-5,-5,6,0,0);
d3d_vertex_texture(5,5,6,1,1);

d3d_primitive_end();
d3d_primitive_begin_texture(pr_trianglelist,sprite_get_texture(mansface,img));
//front side
d3d_vertex_texture(5,5,16,0,0);
d3d_vertex_texture(5,-5,6,1,1);
d3d_vertex_texture(5,5,6,0,1);
d3d_vertex_texture(5,5,16,0,0);
d3d_vertex_texture(5,-5,16,1,0);
d3d_vertex_texture(5,-5,6,1,1);

d3d_primitive_end();

//draws right leg
d3d_transform_set_identity();
d3d_transform_add_rotation_x(180);
d3d_transform_add_rotation_y(legframe);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,-(z+22+abs(legframe)/30)-16);

d3d_draw_block(-2,1,-6,2,4.5,4,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws left leg
d3d_transform_set_identity();
d3d_transform_add_rotation_x(180);
d3d_transform_add_rotation_y(-legframe);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,-(z+22+abs(legframe)/30)-16);

d3d_draw_block(2,-1,-6,-2,-4.5,4,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws right arm
d3d_transform_set_identity();
d3d_transform_add_rotation_x(180);
d3d_transform_add_rotation_y(-armframe);
d3d_transform_add_rotation_x(armframex);
d3d_transform_add_translation(0,6,0);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,-(z+26+abs(legframe)/30)-16);

d3d_draw_block(-2,-1,-5,2,1,1,background_get_texture(backbody),1,1);

d3d_transform_set_identity();

//draws left arm
d3d_transform_set_identity();
d3d_transform_add_rotation_x(180);
d3d_transform_add_rotation_y(armframe);
d3d_transform_add_rotation_x(-armframex);
d3d_transform_add_translation(0,-6,0);
d3d_transform_add_rotation_z(dir);
d3d_transform_add_translation(x,y,-(z+26+abs(legframe)/30)-16);

d3d_draw_block(2,1,-5,-2,-1,1,background_get_texture(backbody),1,1);

d3d_transform_set_identity();


}
}
}
}[/code]
ثم نضع في هذا الكود[code]{
list=ds_list_create();
health=100;

}[/code]
ثم نضع في اينتر هذا الكود[code]
{
dir=0;
face=0;
camera=0;
}[/code]
ثم نضع في كبسة aنضع هذا الكود[code]{
if Control.menu=0
{
camera=floor(camera/45)*45;
face=floor(face);
if face=camera
camera-=45;
}
}[/code]
ونضع في كبسة دي هذا الكود[code]{
if Control.menu=0
{
camera=ceil(camera/45)*45;
face=ceil(face);
if face=camera
camera+=45;
}
}[/code]
وفي ليفت هذا الكود[code]{
if Control.menu=0
{
if keyboard_check(ord('X'))
{
camera=floor(camera/45)*45;
face=floor(face);
if face=camera
camera-=45;
}
else
if hsped>-1 && z>-28 hsped-=Control.movesped;
}
}[/code]
وفي رايت[code]{
if Control.menu=0
{
if keyboard_check(ord('X'))
{
camera=ceil(camera/45)*45;
face=ceil(face);
if face=camera
camera+=45;
}
else
if hsped<1 && z>-28 hsped+=Control.movesped;
}
}[/code]
وفي اب [code]{
if Control.menu=0
{
if keyboard_check(ord('X'))
{
if Control.menu=0
&& Control.zoom>60
Control.zoom-=4;
}
else
if vsped>-1 && z>-28 vsped-=Control.movesped;
}
}[/code]
وفي داون هذا الكود[code]{
if Control.menu=0
{
if keyboard_check(ord('X'))
{
if Control.menu=0
&& Control.zoom<240
Control.zoom+=4;
}
else
if vsped<1 && z>-28 vsped+=Control.movesped;
}
}[/code]
والشرح لم لينتهي اريد ان اعمل الجزء الثاني
والي ما عرف كيف هذا تحميل ملف 3د قابل للتعديل ونفس الشرح الي شرحتو رابط التحميلhttp://www.sandbox.yoyogames.com/games/58662-mega-block-man/download
مع تحياتي an0os games
thanx for watc
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://mgmoat.ahlamontada.com
Admin
Admin
Admin


المساهمات : 75
تاريخ التسجيل : 14/12/2013

 حصريا تعلم كيفية صناعة لعبة 3د Empty
مُساهمةموضوع: رد: حصريا تعلم كيفية صناعة لعبة 3د    حصريا تعلم كيفية صناعة لعبة 3د Icon_minitimeالأحد يناير 05, 2014 3:55 pm

انا اعرف ان الدرس صعب
لكن يوجد ملف قابل للتعديل 3د ونفس الشرح
http://www.sandbox.yoyogames.com/games/58662-mega-block-man/download

للتحميل افتح الرابط وضع داون لود
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://mgmoat.ahlamontada.com
 
حصريا تعلم كيفية صناعة لعبة 3د
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
»  تعلم كيفية تجميد اللاعب
»  كيفية رسم اكثر من شريط حياة فى الروم حصريا
» كيفية صنع لعبة 3d الجزء الاول
»  السلسة الاولى من دروس تعلم gml
» 135 لعبة الفضاء222

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتديات مجموعات :: game maker صتاعة الالعاب :: تعلم الغة في ال game maker-
انتقل الى: