درود مهمان گرامی! ثبت نام

امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
چرا یونیتی من اینجوری میشه ؟
#1
سلام به همه یه دوستان من یک سوال داشتم ... که ما یک کد می نویسیم که کاراکتر حرکت کنه ولی بجای اینکه کاراکتر بیفته رو زمین تو هوا معلق شده و با سرعت میره راست ... در قسمت کنسول هم فقط میگه ریجیتبادی تون هماهنگ نیس و از این حرفا باید چه کار کنم...؟؟؟

لطفا کمکم کنید ...wink
پاسخ
#2
اون کدی که مینویسی رو بزار ببینیم.
ولی در کل اگه میخوای جسمت فقط بیفته زمین، کد نمیخواد فقط یه rigidbody2d برای جسم دوبعدی یا rigidbody برای برای جسم سه بعدی به آبجکت اضافه کنی کافیه.
بازی معمایی پازلر
پاسخ
 سپاس شده توسط A.m
#3
سلام ... خیلی ممنون از جوابتون

کدم اینه :
using UnityEngine;
using System.Collections;

public class player : MonoBehaviour {

public float speed = 10f;
public Vector2 maxVelocity = new Vector2(3, 5);

// Update is called once per frame
void Update () {
var forcex = 10f;
var forcey = 10f;

var absVelX = Mathf.Abs (rigidbody2D.velocity.x);

if (Input.GetKey ("right")) {

if(absVelX < maxVelocity.x)
forcex = speed;

} else if (Input.GetKey ("left")) {

if(absVelX < maxVelocity.x)
forcex = -speed;
}

rigidbody2D.AddForce(new Vector2(forcex, forcey));
}
}

ببخشید کد یکم به هم ریخته شده smiley
راستی من منظورم بود بیفته و راه بره ...


resim
پاسخ
#4
تا جایی که من میبینم شما نیازی به forcey ندارید.
تو خط آخر اون جایی که به rigidbody فورس وارد میکنید، اون وکتور باید y اش صفر باشه. چون شما در راستای y قرار نیست حرکتی داشته باشی.
بازی معمایی پازلر
پاسخ
#5
با یونیتی بازی دو بعدی نساز.
اگه میخوای بسازی بیا با گیم میکر کار کن.wink
چون یونیتی دو بعدیش خیلی خوب نیست چون برای دو بعدی ساخته نشده.
ُُُTNT گفته که:
روش پرسیدن سوال:
- به سوالتون عکس اضافه کنید.
- سعی کنید مثال بزنید.
مثلا نگید:
میخوام کاری کنم با فشار دادن دکمه آبجکتم یک آبجکت دیگه تولید کنه!
بجاش بگید:
میخوام کاری کنم وقتی بازیکن دکمه ی اسپیس رو زد کاراکترم تیر بزنه.
پاسخ
#6
(30/6/1395، 10:00 عصر)mamali me نوشته است: با یونیتی بازی دو بعدی نساز.
اگه میخوای بسازی بیا با گیم میکر کار کن.wink
چون یونیتی دو بعدیش خیلی خوب نیست چون برای دو بعدی ساخته نشده.

یونیتی توی دوبعدی عالی عمل میکنه مگر اینکه بخواهید pixel perfect کار کنید . گرچه این مشکل رو هم برطرف کرده و میتونه برای افرادی هم که پیکسل آرت با کالیژن دقیق میخوان کاملا اوکی باشه .

بهرحال اصلا و ابدا گیم میکر و امثالهم رو پیشنهاد نمیدم . درسته راحت تر هستن ولی پرفورمنس داغونی دارن و خروجی هاشون متناسب با ران تایم نیست.

بچسب به همین یونیتی و ادامه بده. بهترین مزیت اینه که میتونی افکت های سه بعدی رو داخل بازی دو بعدیت بیاری .
بازی های دو بعدی بسیار زیبایی که با یونیتی ساخته شده خود گواه این قضیه است.



پاسخ
#7
خیلی ممنون از همه ولی بازم نشد که نشد depressed

باز همین جوره ... ( شاید مشکل از کامپونت ها است ؟)

resim

وقتی ام که forcey رو حذف می کنم میشه ....

resim

لطفا کمک کنید ....



پاسخ
#8
گفتم y رو صفر بذار نه اینکه از ریشه بزنی
خط آخر این شکلی میشه:

New Vector(forcex,0)

کلا vector2 دو تا عدد میگیره یکی برای x و یکی برای y . شما دومی رو باید صفر بدی
بازی معمایی پازلر
پاسخ
#9
آقا ممنون ولی بدون اینکه راستو بزنم می ره راست و شتاب می گیره .....sad
ببخشید سوالام زیاد شد .....
پاسخ
#10
فکر کنم این طوری درست بشه . پایین شرط ها یه else هم اضافه کن و داخل اون forcex رو صفر کن.
(شرمنده اگه کد بزارم به هم میربزه. دارم با گوشی تایپ میکنم.)
بازی معمایی پازلر
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question ماژول یونیتی ۵ چجوری نصب میشه ؟ A.m 4 803 10/3/1396، 08:56 عصر
آخرین ارسال: m13a72
  کمک/...میشه در یونیتی قابلیت جستجو ساخت؟! tmnttnmt 0 470 12/11/1395، 06:23 عصر
آخرین ارسال: tmnttnmt
  چطوری کامپوننت میشه ساخت؟ sajjad3011 3 1,225 31/6/1394، 07:43 صبح
آخرین ارسال: H.P
Sad میشه یه آموزش درباه Particle System بزارید؟ avesta 3 2,038 22/6/1391، 10:12 عصر
آخرین ارسال: avesta



کاربرانِ درحال بازدید از این موضوع: 1 مهمان