المشاركة الأصلية بواسطة sawxy
مشاهدة المشاركة
إعـــــــلان
تقليص
لا يوجد إعلان حتى الآن.
مشكلة في تحريك السيارة ارجو من اخونا sawxy الدخول
تقليص
X
-
المشاركة الأصلية بواسطة كـ . محمد مشاهدة المشاركةاخي الكريم حسنا بما انك مند زمن وانت تحاول ان تحرك سيارتك سوف اساعدك بادن الله فانا قمت بتجربة من قبل وهي سهلة جدا ، انتظر بعض الوقت حتى اعاود مراجعة السكربت الدي قمت بصنعه حتى واعاود .
تعليق
-
اهلا فيك اخوي King of Speed
تفضل هذه صور الlogic هذه صورة للlayer الاولى
وهذة اللير الثانية
وهذة الثالثة
اعتقد ان المشكلة موفيهن ولكن في الاطارات كذلكالملف الي اعطاه لي اخوي sawxy البارحة قمت بعملة من جديد ومااتحرك وانما ظهرت الحركة عبارة عن رجفة غيرت في قيم الmass ولم تنجح ولكن سأعيد التغيير فيها مرة اخرى بعد شوي
تعليق
-
المشاركة الأصلية بواسطة Kingof$peed مشاهدة المشاركةلا مشاكل ولا شيء
في شيء ناقص تشوف في اللاير الثالث تلاقي Brake سوي واحدة جديدة
وسمها
EBrake
وينصلح المشكلة
تعليق
-
اخي الكريم لا اعلم اين المشكلة بالضبط لانني لم اطلع على تفاصيل ما قمت به وخطأ بسيط لا ينجح المشروع ولهدا سنبدأ من جديد خطوة خطوة حتى ندرك الخطا .
بسم الله :
قم بتحميل السكربت التالي وسمه : PawreMoto.py وانت حر في تغيير الاسم والشرط ان يرفق بـ ..........py
هدا السكربت يقوم باعطاء قيم الحركة والدوران للعجلات والقوة...........
Moto وهو اسم السيارة .
Amam تعني الحركة الى الامام .
Khalf تعني الحركة الى الخلف .
Mikbah المكابح .
Left يسار .
Right يمين .
كل هده المصطلحات يمكنك ان تسميها كما تشاء ولكن احدر من التسمية فهي جد مهمة .
import PhysicsConstraints
objList = GameLogic.getCurrentScene().getObjectList()
mot = objList["OBMoto"]
constraint_ID = mot.constraint_ID
vehicle = PhysicsConstraints.getVehicleConstraint(constraint_ID)
controller = GameLogic.getCurrentController()
gasPedal = controller.getSensor("Amam")
brakeReverse = controller.getSensor("Khalf")
eBrake = controller.getSensor("Mikbah")
if gasPedal.isPositive() == True and brakeReverse.isPositive() == False:
power = -150.0
elif brakeReverse.isPositive() == True and gasPedal.isPositive() == False:
power = 100.0
else:
power = 0.0
if eBrake.isPositive() == True:
power = 0.0
force = 70.0
else:
force = 0.0
vehicle.applyEngineForce( power, 0)
vehicle.applyEngineForce( power, 1)
vehicle.applyEngineForce( power, 2)
vehicle.applyEngineForce( power, 3)
vehicle.applyBraking( force, 2)
vehicle.applyBraking( force, 3)
steerLeft = controller.getSensor("Left")
steerRight = controller.getSensor("Right")
if steerLeft.isPositive() == True:
turn = .5
elif steerRight.isPositive() == True:
turn = -.5
else:
turn = 0.0
vehicle.setSteeringValue(turn,0)
vehicle.setSteeringValue(turn,1)
مشروع فلم ثلاثي ابعاد
تابع من خلال هذا الرابط
http://www.maxforums.net/showthread.php?t=206981
او من مدونتي
http://blendmax.blogspot.com/
تعليق
-
السكربت الثاني سمه : MotoSetup.py وانت حر في التسمية كالاول .
OBMoto هده اسم السيارة مرفق بادات التعريف الخاصة بها كمجسم OB وهو ضروري اي ادا غيرت الاسم فلا تغيره ولا تنسى بان يكون الحرف الاول من اسم السيارة بالحروف الكبيرة فمثلا عندي M وليست m .
RodAD ، RodAG، RodRD RodRG اما هده فتعبر عن اسماء العجلات :
RodAD امام يمين .
RodAG امام يسار .
RodRD خلف يمين .
RodRG خلف يسار .
اما هنا لدي ملاحظة لا تقم بتسمية العجلات نفسها وانت حر في تغيير التسمية بل كل عجلة قم بارفاقها بـ Empty خاص بها اربطها بالعجلة ثم قم بتسميته حتى تتحكم في الحركة بشكل افضل .
اما القيم الاخرى فغير حسب المصلحة الا :
rodPos_AD = [ 0.9 , 1.25 , -0.75 ]
rodPos_AG = [ -0.9 , 1.25 , -0.75 ]
rodPos_RD = [ 0.9 , -1.4 ,-0.8 ]
rodPos_RG = [ -0.9 , -1.4 , -0.8 ]
فيتم تغييرها حسب قيم اماكن العجلات في السيارة ستلاحظ حركة العجلات في كل مرة تقوم بالتغيير ,غير القيم حتى تجد القيمة المناسبة فهي تختلف حسب التصميم وموقعه .
لا تنسى ان ترفع السيارة قليلا عن الارض وليس العجلات فلا تهم .
import PhysicsConstraints
objList = GameLogic.getCurrentScene().getObjectList()
mot = objList["OBMoto"]
rod_AD = objList["OBRodAD"]
rod_AG = objList["OBRodAG"]
rod_RD = objList["OBRodRD"]
rod_RG = objList["OBRodRG"]
mot.applyImpulse([ 0.0, 0.0, 0.0], [ 0.0, 0.0, 0.0])
mot_PhysicsID = mot.getPhysicsId()
vehicle_Constraint = PhysicsConstraints.createConstraint(mot_PhysicsID, 0, 11)
mot.constraint_ID = vehicle_Constraint.getConstraintId()
vehicle = PhysicsConstraints.getVehicleConstraint(mot.constraint_ID)
rodPos_AD = [ 0.9 , 1.25 , -0.75 ]
rodPos_AG = [ -0.9 , 1.25 , -0.75 ]
rodPos_RD = [ 0.9 , -1.4 ,-0.8 ]
rodPos_RG = [ -0.9 , -1.4 , -0.8 ]
suspension_Angle = [ 0.0, 0.0 , -1.0]
rodAxis = [ -1.0, 0.0, 0.0]
suspensionHeight_AD = 0.2
suspensionHeight_AG = 0.2
suspensionHeight_RD = 0.2
suspensionHeight_RG = 0.2
rodRadius_AD = 0.55
rodRadius_AG = 0.55
rodRadius_RD = 0.50
rodRadius_RG = 0.50
rodSteer_AD = True
rodSteer_AG = True
rodSteer_RD = False
rodSteer_RG = False
vehicle.addWheel( rod_AD, rodPos_AD, suspension_Angle, rodAxis,
suspensionHeight_AD, rodRadius_AD, rodSteer_AD )
vehicle.addWheel( rod_AG, rodPos_AG, suspension_Angle, rodAxis,
suspensionHeight_AG, rodRadius_AG, rodSteer_AG )
vehicle.addWheel( rod_RD, rodPos_RD, suspension_Angle, rodAxis,
suspensionHeight_RD, rodRadius_RD, rodSteer_RD )
vehicle.addWheel( rod_RG, rodPos_RG, suspension_Angle, rodAxis,
suspensionHeight_RG, rodRadius_RG, rodSteer_RG )
vehicle.setTyreFriction(30.0, 0)
vehicle.setTyreFriction(30.0, 1)
vehicle.setTyreFriction(30.0, 2)
vehicle.setTyreFriction(30.0, 3)
vehicle.setSuspensionCompression(6.0, 0)
vehicle.setSuspensionCompression(6.0, 1)
vehicle.setSuspensionCompression(6.0, 2)
vehicle.setSuspensionCompression(6.0, 3)
vehicle.setSuspensionDamping(5.0, 0)
vehicle.setSuspensionDamping(5.0, 1)
vehicle.setSuspensionDamping(5.0, 2)
vehicle.setSuspensionDamping(5.0, 3)
vehicle.setSuspensionStiffness(8.5, 0)
vehicle.setSuspensionStiffness(8.5, 1)
vehicle.setSuspensionStiffness(8.5, 2)
vehicle.setSuspensionStiffness(8.5, 3)
vehicle.setRollInfluence( 0.08, 0)
vehicle.setRollInfluence( 0.08, 1)
vehicle.setRollInfluence( 0.08, 2)
vehicle.setRollInfluence( 0.08, 3)
مشروع فلم ثلاثي ابعاد
تابع من خلال هذا الرابط
http://www.maxforums.net/showthread.php?t=206981
او من مدونتي
http://blendmax.blogspot.com/
تعليق
-
واخيرا قم باختار مجسم السيارة وتبع الصورة ولا تنسى كتابة السماء صحيحة.http://www.almlf.com/get-9-2011-almlf_com_f6fqia7x.jpg
http://www.almlf.com/get-9-2011-almlf_com_f6fqia7x.jpgمشروع فلم ثلاثي ابعاد
تابع من خلال هذا الرابط
http://www.maxforums.net/showthread.php?t=206981
او من مدونتي
http://blendmax.blogspot.com/
تعليق
-
عن طريق make بحيث تجعل العجلة تابع له وتقوم بنفس الحركة .مشروع فلم ثلاثي ابعاد
تابع من خلال هذا الرابط
http://www.maxforums.net/showthread.php?t=206981
او من مدونتي
http://blendmax.blogspot.com/
تعليق
تعليق