Unity3D - Технические вопросы - Страница 54 - Форум Игроделов
Чт, 13 Ноя 2025, 06:32 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Unity3D - Технические вопросы
MaURooney10Дата: Вс, 07 Окт 2012, 13:34 | Сообщение # 1061
 
Сообщений: 659
Награды: 3
Репутация: 123
Статус: Offline


если кто не понял в чем проблема, рассказываю:
сделал анимацию для реализации стрельбы, написал скрипт, все вроде правильно сделал, но в гейм ничего не происходит?!
на всякий случай дам скрипт:
Code
var Range : float = 900;  
var Force : float = 900;  
var BulletsInClip : int = 27;  
var RelodeTime : float = 4;  
var BulletsLeft : int = 0;  
var ShootTimer : float = 0;  
var ShootCooler : float =0.9;

var RelodingAudio : AudioClip;  
var ShootingAudio : AudioClip;

function Start ()  
{  
BulletsLeft = BulletsInClip;  
}  

function Update ()  
{  
if (ShootTimer > 0)  
{
ShootTimer = 0;  
}  

if (Input.GetMouseButton(0)&& BulletsLeft > 0)  
{

if(BulletsLeft == 0)  
{
Shooter();  
ShootTimer = ShootCooler;  
}

}
if (Input.GetKeyDown(KeyCode.R))
{  
Relode();  
}
}

function Shooter ()  
{
GameObject.Find("M4A1").animation.Play("M4Shooting");
}

function Relode ()  
{  

}

кто знает? в чем дело?
 
Сообщение

если кто не понял в чем проблема, рассказываю:
сделал анимацию для реализации стрельбы, написал скрипт, все вроде правильно сделал, но в гейм ничего не происходит?!
на всякий случай дам скрипт:
Code
var Range : float = 900;  
var Force : float = 900;  
var BulletsInClip : int = 27;  
var RelodeTime : float = 4;  
var BulletsLeft : int = 0;  
var ShootTimer : float = 0;  
var ShootCooler : float =0.9;

var RelodingAudio : AudioClip;  
var ShootingAudio : AudioClip;

function Start ()  
{  
BulletsLeft = BulletsInClip;  
}  

function Update ()  
{  
if (ShootTimer > 0)  
{
ShootTimer = 0;  
}  

if (Input.GetMouseButton(0)&& BulletsLeft > 0)  
{

if(BulletsLeft == 0)  
{
Shooter();  
ShootTimer = ShootCooler;  
}

}
if (Input.GetKeyDown(KeyCode.R))
{  
Relode();  
}
}

function Shooter ()  
{
GameObject.Find("M4A1").animation.Play("M4Shooting");
}

function Relode ()  
{  

}

кто знает? в чем дело?

Автор - MaURooney10
Дата добавления - 07 Окт 2012 в 13:34
seamanДата: Вс, 07 Окт 2012, 14:10 | Сообщение # 1062
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Code
if (Input.GetMouseButton(0)&& BulletsLeft > 0)   
  {

  if(BulletsLeft == 0)  

Лажа. Если верно первое, то второе никогда не выполнится.
 
Сообщение
Code
if (Input.GetMouseButton(0)&& BulletsLeft > 0)   
  {

  if(BulletsLeft == 0)  

Лажа. Если верно первое, то второе никогда не выполнится.

Автор - seaman
Дата добавления - 07 Окт 2012 в 14:10
MaURooney10Дата: Вс, 07 Окт 2012, 14:15 | Сообщение # 1063
 
Сообщений: 659
Награды: 3
Репутация: 123
Статус: Offline
Code
if(BulletsLeft == 0)

удалить?
 
Сообщение
Code
if(BulletsLeft == 0)

удалить?

Автор - MaURooney10
Дата добавления - 07 Окт 2012 в 14:15
MaURooney10Дата: Вс, 07 Окт 2012, 14:17 | Сообщение # 1064
 
Сообщений: 659
Награды: 3
Репутация: 123
Статус: Offline
даже если удалить все ровно не катит!
 
Сообщениедаже если удалить все ровно не катит!

Автор - MaURooney10
Дата добавления - 07 Окт 2012 в 14:17
HunjethДата: Вс, 07 Окт 2012, 16:51 | Сообщение # 1065
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
зачем такое писать (если BulletsLeft > 0 тут же написал если BulletsLeft = 0) и в итоге будет работать если BulletsLeft = 0 и BulletsLeft > 0 лол?

Сообщение отредактировал Hunjeth - Вс, 07 Окт 2012, 16:52
 
Сообщениезачем такое писать (если BulletsLeft > 0 тут же написал если BulletsLeft = 0) и в итоге будет работать если BulletsLeft = 0 и BulletsLeft > 0 лол?

Автор - Hunjeth
Дата добавления - 07 Окт 2012 в 16:51
MaURooney10Дата: Вс, 07 Окт 2012, 17:21 | Сообщение # 1066
 
Сообщений: 659
Награды: 3
Репутация: 123
Статус: Offline
щас короче ошибки будем пересматривать, все спс
 
Сообщениещас короче ошибки будем пересматривать, все спс

Автор - MaURooney10
Дата добавления - 07 Окт 2012 в 17:21
HunjethДата: Вс, 07 Окт 2012, 17:32 | Сообщение # 1067
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
еще не совсем ошибка но неправильно сделано
GameObject.Find("M4A1").animation.Play("M4Shooting");
надо ссылку на объект держать в скрипте а не искать объект каждый раз


Сообщение отредактировал Hunjeth - Вс, 07 Окт 2012, 17:34
 
Сообщениееще не совсем ошибка но неправильно сделано
GameObject.Find("M4A1").animation.Play("M4Shooting");
надо ссылку на объект держать в скрипте а не искать объект каждый раз

Автор - Hunjeth
Дата добавления - 07 Окт 2012 в 17:32
seamanДата: Вс, 07 Окт 2012, 17:46 | Сообщение # 1068
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Quote
удалить?

Что-то не нашел смайлика соответствующего моей реакции. Вы вообще понимаете как работает Ваш скрипт? Или просто выдернули его откуда то и удивляетесь почему не работает?
Когда верна первая строка? Когда BulletsLeft > 0 - т.е. еще есть патроны.
Когда верна вторая строка? Когда BulletsLeft == 0 - т.е. патронов нет.
Неужели не ясно, что это взаимоисключающие условия?
Естественно удалить.
Почему после этого не выводится анимация - нужно разбираться. Поставьте перед запуском анимации Log.Debug и посмотрите будет ли он в консоли.
 
Сообщение
Quote
удалить?

Что-то не нашел смайлика соответствующего моей реакции. Вы вообще понимаете как работает Ваш скрипт? Или просто выдернули его откуда то и удивляетесь почему не работает?
Когда верна первая строка? Когда BulletsLeft > 0 - т.е. еще есть патроны.
Когда верна вторая строка? Когда BulletsLeft == 0 - т.е. патронов нет.
Неужели не ясно, что это взаимоисключающие условия?
Естественно удалить.
Почему после этого не выводится анимация - нужно разбираться. Поставьте перед запуском анимации Log.Debug и посмотрите будет ли он в консоли.

Автор - seaman
Дата добавления - 07 Окт 2012 в 17:46
HunjethДата: Вс, 07 Окт 2012, 17:59 | Сообщение # 1069
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
помогите плииз кто знает почему в уских местах типо труб от звуков не идет эхо?
или для этого надо что то еще кроме коллайдера и звука


Сообщение отредактировал Hunjeth - Вс, 07 Окт 2012, 18:12
 
Сообщениепомогите плииз кто знает почему в уских местах типо труб от звуков не идет эхо?
или для этого надо что то еще кроме коллайдера и звука

Автор - Hunjeth
Дата добавления - 07 Окт 2012 в 17:59
seamanДата: Вс, 07 Окт 2012, 19:19 | Сообщение # 1070
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Reverb Zones
Audio Reverb Filter (PRO only)
 
СообщениеReverb Zones
Audio Reverb Filter (PRO only)

Автор - seaman
Дата добавления - 07 Окт 2012 в 19:19
HunjethДата: Ср, 10 Окт 2012, 03:53 | Сообщение # 1071
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
он сам определяет размер помещения?
хочу сделать так чтобы сам определял а то ставить на сцену куча точек да ну его


Сообщение отредактировал Hunjeth - Пн, 15 Окт 2012, 00:01
 
Сообщениеон сам определяет размер помещения?
хочу сделать так чтобы сам определял а то ставить на сцену куча точек да ну его

Автор - Hunjeth
Дата добавления - 10 Окт 2012 в 03:53
NIKTOSДата: Чт, 01 Ноя 2012, 15:50 | Сообщение # 1072
 
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline
Когда нажимаю на play вылазит вот это сообщение:



Кто знает что это за ошибка и как ее исправить?
 
СообщениеКогда нажимаю на play вылазит вот это сообщение:



Кто знает что это за ошибка и как ее исправить?

Автор - NIKTOS
Дата добавления - 01 Ноя 2012 в 15:50
HunjethДата: Сб, 03 Ноя 2012, 23:42 | Сообщение # 1073
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
открой окно лог и жми на ошибки 2 раза смотри что не так

Сообщение отредактировал Hunjeth - Вс, 11 Ноя 2012, 10:34
 
Сообщениеоткрой окно лог и жми на ошибки 2 раза смотри что не так

Автор - Hunjeth
Дата добавления - 03 Ноя 2012 в 23:42
TimurishkoДата: Чт, 22 Ноя 2012, 14:12 | Сообщение # 1074
 
Сообщений: 42
Награды: 0
Репутация: 0
Статус: Offline
Меня заинтересовал такой вопрос. Почему ни один физический объект, не взаимодействует с контролером? В том смысле, что допустим я создал куб, повесил на него Rigidbody, пытаюсь его толкнуть, а он не в какую. Просто стоит на месте, как вкопанный. При чем, если один куб упадет на другой, то все нормально.
 
СообщениеМеня заинтересовал такой вопрос. Почему ни один физический объект, не взаимодействует с контролером? В том смысле, что допустим я создал куб, повесил на него Rigidbody, пытаюсь его толкнуть, а он не в какую. Просто стоит на месте, как вкопанный. При чем, если один куб упадет на другой, то все нормально.

Автор - Timurishko
Дата добавления - 22 Ноя 2012 в 14:12
commandobyДата: Чт, 22 Ноя 2012, 21:12 | Сообщение # 1075
Unity 3D Free
 
Сообщений: 836
Награды: 3
Репутация: 211
Статус: Offline
Timurishko, так устроен контроллер. Создай скрипт со следующим содержанием и повесь его на контроллер:
Code
function OnControllerColliderHit (hit : ControllerColliderHit) {  
   var controller : CharacterController = GetComponent(CharacterController);  
   var body : Rigidbody = hit.collider.attachedRigidbody;  
   if (hit.collider.attachedRigidbody != null && controller.isGrounded && controller.velocity.magnitude < 18 && controller.velocity.magnitude > 2) {  
    pushPower = Random.Range(2.5, 3.5);  
    if (body == null || body.isKinematic) {  
     return;  
    }  
    if (hit.moveDirection.y < -0.1) {  
     return;  
    }  
    var pushDir = Vector3 (hit.moveDirection.x, hit.moveDirection.y, hit.moveDirection.z);  
    body.velocity = pushDir * pushPower;  
   }  
  }


Блог.
 
СообщениеTimurishko, так устроен контроллер. Создай скрипт со следующим содержанием и повесь его на контроллер:
Code
function OnControllerColliderHit (hit : ControllerColliderHit) {  
   var controller : CharacterController = GetComponent(CharacterController);  
   var body : Rigidbody = hit.collider.attachedRigidbody;  
   if (hit.collider.attachedRigidbody != null && controller.isGrounded && controller.velocity.magnitude < 18 && controller.velocity.magnitude > 2) {  
    pushPower = Random.Range(2.5, 3.5);  
    if (body == null || body.isKinematic) {  
     return;  
    }  
    if (hit.moveDirection.y < -0.1) {  
     return;  
    }  
    var pushDir = Vector3 (hit.moveDirection.x, hit.moveDirection.y, hit.moveDirection.z);  
    body.velocity = pushDir * pushPower;  
   }  
  }

Автор - commandoby
Дата добавления - 22 Ноя 2012 в 21:12
TimurishkoДата: Пт, 23 Ноя 2012, 14:00 | Сообщение # 1076
 
Сообщений: 42
Награды: 0
Репутация: 0
Статус: Offline
commandoby,
Спасибо, только немного не корректно работает. Жалка в юнити физика не как у сурса.


Сообщение отредактировал Timurishko - Пт, 23 Ноя 2012, 14:09
 
Сообщениеcommandoby,
Спасибо, только немного не корректно работает. Жалка в юнити физика не как у сурса.

Автор - Timurishko
Дата добавления - 23 Ноя 2012 в 14:00
commandobyДата: Пт, 23 Ноя 2012, 17:16 | Сообщение # 1077
Unity 3D Free
 
Сообщений: 836
Награды: 3
Репутация: 211
Статус: Offline
Timurishko, физика в юне нормальная, это так контроллер работает. Лучше, если уметь, писать свой.

Добавлено (23.11.2012, 17:16)
---------------------------------------------
Если бы я знал, то писал бы свой потихоньку, а так уже не хочу.


Блог.
 
СообщениеTimurishko, физика в юне нормальная, это так контроллер работает. Лучше, если уметь, писать свой.

Добавлено (23.11.2012, 17:16)
---------------------------------------------
Если бы я знал, то писал бы свой потихоньку, а так уже не хочу.


Автор - commandoby
Дата добавления - 23 Ноя 2012 в 17:16
X-maderДата: Сб, 29 Дек 2012, 22:07 | Сообщение # 1078
 
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
Где скачать Crack для unity3d 3.5.0f5
А то у меня такая ошибка Could not preload global game manager #0 в самой игре
И помогите со скриптом

Я ну мало знаю о Java
Код
var Level_1 = false;    
  var Level_2 = false;  
  var Level_3 = false;  
    

  function OnMouseEnter()    
  {    

  //color.X - any color that you like  
  renderer.material.color = Color.yellow;    

  }    

  function OnMouseUp()    
  {    

  }    
  else if ( Level_1 )  
  {    

  //it can be any level  
  Application.LoadLevel (1);    

  }  

  else if ( Level_2 )  
  {    

  //it can be any level  
  Application.LoadLevel (2);    
  }  
  }
   
   else if ( Level_3 )  
  {    

  //it can be any level  
  Application.LoadLevel (3);    
  }  
  }
  
 
СообщениеГде скачать Crack для unity3d 3.5.0f5
А то у меня такая ошибка Could not preload global game manager #0 в самой игре
И помогите со скриптом

Я ну мало знаю о Java
Код
var Level_1 = false;    
  var Level_2 = false;  
  var Level_3 = false;  
    

  function OnMouseEnter()    
  {    

  //color.X - any color that you like  
  renderer.material.color = Color.yellow;    

  }    

  function OnMouseUp()    
  {    

  }    
  else if ( Level_1 )  
  {    

  //it can be any level  
  Application.LoadLevel (1);    

  }  

  else if ( Level_2 )  
  {    

  //it can be any level  
  Application.LoadLevel (2);    
  }  
  }
   
   else if ( Level_3 )  
  {    

  //it can be any level  
  Application.LoadLevel (3);    
  }  
  }
  

Автор - X-mader
Дата добавления - 29 Дек 2012 в 22:07
DomarДата: Ср, 02 Янв 2013, 16:30 | Сообщение # 1079
 
Сообщений: 426
Награды: 19
Репутация: 326
Статус: Offline
пытаюсь перетащить на обьект скрипт и пишет следуещее



не работает ссылка на пак?пишите в лс.

Мой проект "БУНКЕР"
http://gamecreatingcommunity.ru/forum/150-3950-1


Сообщение отредактировал Domar - Ср, 02 Янв 2013, 18:09
 
Сообщениепытаюсь перетащить на обьект скрипт и пишет следуещее


Автор - Domar
Дата добавления - 02 Янв 2013 в 16:30
seamanДата: Ср, 02 Янв 2013, 18:10 | Сообщение # 1080
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Ну и? Раз просит - нужно сделать!
 
СообщениеНу и? Раз просит - нужно сделать!

Автор - seaman
Дата добавления - 02 Янв 2013 в 18:10
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2025