Пятница, 15 Ноября 2024, 16:23

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос-[ответ] по Unity
QWER56Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1
старожил
Сейчас нет на сайте
Вопрос-[Ответ] по Unity3d

  • База скриптов Unity3d
  • Курс Уроков по Unity 3D от Alcatraz

    ConsMark - поисковик по интернет магазинам.

    Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54
  • AdomДата: Суббота, 12 Апреля 2014, 20:16 | Сообщение # 5861
    Печенька!
    Сейчас нет на сайте
    Еще вопрос... есть одна переменная которая хранит префаб игрока... Так-вот в сцене 1 мы выбираем префаб любой а когда загружаешь сцену 2 то там должен заспавниться тот прфеб который ты выбрал. Как это сделать ?

    Добавлено (12.04.2014, 20:16)
    ---------------------------------------------
    И еще одно скрипт спавна лежит на сцене 2.

    RS366Дата: Суббота, 12 Апреля 2014, 20:21 | Сообщение # 5862
    частый гость
    Сейчас нет на сайте
    Видимо надо использовать DontDestroyOnLoad

    AdomДата: Суббота, 12 Апреля 2014, 20:27 | Сообщение # 5863
    Печенька!
    Сейчас нет на сайте
    RS366, ?
    berilДата: Суббота, 12 Апреля 2014, 20:39 | Сообщение # 5864
    Я не ленивый, я — энергосберегающий
    Сейчас нет на сайте
    Цитата Adom ()
    RS366, ?

    http://docs.unity3d.com/Documen....ad.html




    Накодил? Убери за собой!
    Инвентарь в Unity(UI)
    Инвентарь в Unity(GUI)
    AdomДата: Суббота, 12 Апреля 2014, 21:01 | Сообщение # 5865
    Печенька!
    Сейчас нет на сайте
    Эх наверное достал с вопросам (. Но все-же smile . Есть скрипт стрельбы стреляет он Рейкастами и объектам с Trail. Так-вот почему что-бы нанести урон врагу я должен подойти к нему почти в упор когда я должен попадая из дали снимать хп ?
    Код
    using UnityEngine;
    using System.Collections;

    public class Fire : MonoBehaviour {
    public RaycastHit Hit;
    public AudioClip FireSound;
    public Transform Cam;   
    public int CurAmmoCount = 500;
    public int MaxAmmoCount = 500;
    private float MuzzleFlashLifetime = 0.0f;
    public GameObject MuzzleFlash;
    public GameObject HitFalsh;
    public float TimeFire;
    public Transform bullet;
    public float BulletForce;
    public Transform BulletSpawnPoint;
    // Use this for initialization
    void Start () {
    MuzzleFlash.SetActive(false);  
    TimeFire=5;  
    }  
    // Update is called once per frame
    void Update () {   
    //Time   
    if(TimeFire>=0){   
    TimeFire+=Time.deltaTime*3;    
    }
    if(TimeFire==5){
    TimeFire=5;     
    }
    //Ray  
    if(Input.GetMouseButtonDown(0)&CurAmmoCount>0&TimeFire>=5){  
    MuzzleFlash.SetActive(true);     
    TimeFire=0;  
    MuzzleFlashLifetime = 0.1f;   
    audio.clip=FireSound;
    audio.Play();
    Vector3 Direction = Cam.TransformDirection(Vector3.forward);
    if(Physics.Raycast(Cam.position, Direction, out Hit, 5000.0f)){        
    Quaternion HitRotation = Quaternion.FromToRotation(Vector3.up, Hit.normal);    
    if(Hit.transform.rigidbody&&Hit.collider.name=="Rigidbody"){
    Hit.transform.rigidbody.AddForceAtPosition(Direction*1000, Hit.point);       
    }
    if(Hit.collider.name=="TankEnemy"){    
    Hit.collider.SendMessage("Damage",SendMessageOptions.DontRequireReceiver);  
    Debug.Log("Hit");   
    }         
    }
    Transform BulletInstance = (Transform) Instantiate(bullet,BulletSpawnPoint.position, Quaternion.identity);
    BulletInstance.rigidbody.AddForce(transform.forward * BulletForce);    
    }else{
    MuzzleFlash.SetActive(false);    
    }  
    if(Hit.collider.name=="TankEnemy"){  
    Instantiate(HitFalsh,Hit.point,Quaternion.identity);
    HitFalsh.transform.parent=Hit.collider.transform;  
    }
    }
    }
    Storm54Дата: Воскресенье, 13 Апреля 2014, 00:51 | Сообщение # 5866
    постоянный участник
    Сейчас нет на сайте
    Либо у тебя все в очень большом масштабе, либо луч попадает в коллайдер игрока. Попробуй проверять пересечение только с определенными слоями.
    AdomДата: Воскресенье, 13 Апреля 2014, 09:20 | Сообщение # 5867
    Печенька!
    Сейчас нет на сайте
    1-ое не идет у меня масштаб не большой. Наверное 2 а еще и 3 попробую

    Добавлено (13.04.2014, 09:20)
    ---------------------------------------------
    Спасибо ! Все дело оказалось в Plane которое вместо вспышки я убрал у нее MeshCollider и все работает нормально!

    allodsДата: Среда, 16 Апреля 2014, 22:28 | Сообщение # 5868
    почти ветеран
    Сейчас нет на сайте
    Кто может сказать какие маски будут игнорированы

    var layerMask =1 << 8;
    layerMask = ~layerMask;
    berilДата: Четверг, 17 Апреля 2014, 16:32 | Сообщение # 5869
    Я не ленивый, я — энергосберегающий
    Сейчас нет на сайте
    Цитата allods ()
    var layerMask =1 << 8;
    layerMask = ~layerMask;

    Да суровый ты мужик.
    Переведи в двоичное выражение и посчитай сдвиг.
    Цитата allods ()
    var layerMask =1 << 8;

    будет 256




    Накодил? Убери за собой!
    Инвентарь в Unity(UI)
    Инвентарь в Unity(GUI)


    Сообщение отредактировал beril - Четверг, 17 Апреля 2014, 17:33
    lentinantДата: Четверг, 17 Апреля 2014, 18:01 | Сообщение # 5870
    ленивый программист
    Сейчас нет на сайте
    Цитата beril ()
    Да суровый ты мужик.
    Переведи в двоичное выражение и посчитай сдвиг.

    Цитата beril ()
    будет 256

    Да, ты правильно посчитал, вот только к заданному вопросу это не имеет никакого отношения. Игнорироваться будет восьмой слой (слой игрока).


    Когда-то тут будут ссылки на крутые проекты. Или нет.
    allodsДата: Четверг, 17 Апреля 2014, 19:15 | Сообщение # 5871
    почти ветеран
    Сейчас нет на сайте
    А как узнавать какой?
    1<<7 будет игнорироваться 7?
    Storm54Дата: Четверг, 17 Апреля 2014, 20:49 | Сообщение # 5872
    постоянный участник
    Сейчас нет на сайте
    Чтобы не париться, можно создать паблик переменную LayerMask и в инспекторе выбрать нужные слои.
    allodsДата: Четверг, 17 Апреля 2014, 23:07 | Сообщение # 5873
    почти ветеран
    Сейчас нет на сайте
    Цитата Storm54 ()
    Чтобы не париться, можно создать паблик переменную LayerMask и в инспекторе выбрать нужные слои.

    Ща за ценю
    lentinantДата: Пятница, 18 Апреля 2014, 00:07 | Сообщение # 5874
    ленивый программист
    Сейчас нет на сайте
    Цитата Storm54 ()
    1<<7 будет игнорироваться 7?

    Да, однако, я не помню, идет ли тут отсчет от нулевого слоя или от первого. В общем, почитайте о битовом представлении числа и битовом сдвиге. Получается, за каждый слой отвечает соответственный бит числа - если 0, то слой игнорируется, если 1, то нет.

    Добавлено (18.04.2014, 00:07)
    ---------------------------------------------
    В вашем примере, кстати, есть строчка

    Цитата
    layerMask = ~layerMask;

    которая инвертирует значение битового числа. Получается, без нее 1 << 7 задает игнор всех слоев кроме седьмого.


    Когда-то тут будут ссылки на крутые проекты. Или нет.
    LimonchikДата: Суббота, 19 Апреля 2014, 18:56 | Сообщение # 5875
    частый гость
    Сейчас нет на сайте
    Проблемы с анимацией в unity.Если передвинуть в unity начальный кадр анимации дальше 3 то анимация "коряво" воспроизводиться. Все перепробовал не могу понять в чем дело.Или проблема в blendere или проблема в unity.

    Вот сама модель.
    http://rghost.ru/54405397


    Сообщение отредактировал Limonchik - Суббота, 19 Апреля 2014, 19:08
    AdomДата: Воскресенье, 20 Апреля 2014, 14:44 | Сообщение # 5876
    Печенька!
    Сейчас нет на сайте
    Есть такая проблема. Есть танк башня и камера так-вот когда танк переворачивается камера и башня смотрят в разную сторону. Т.е если камера будет смотреть влеов то башня вправо. Как можно исправить ?
    NewsdownloadsДата: Понедельник, 21 Апреля 2014, 15:20 | Сообщение # 5877
    Sleepy wizard
    Сейчас нет на сайте
    Казалось бы, проблема проста, но у меня не выходит. Прошу помощи. Как при столкновении уничтожить ВСЕ объекты с одинаковым тегом?

    Проект на Gamiron №6: Ray Machine (завершен)

    Проект на Gamiron №7: UFOs' Rampage! (завершен)

    Группа/Блог
    berilДата: Понедельник, 21 Апреля 2014, 15:41 | Сообщение # 5878
    Я не ленивый, я — энергосберегающий
    Сейчас нет на сайте
    Цитата Newsdownloads ()
    Как при столкновении уничтожить ВСЕ объекты с одинаковым тегом?

    мне сразу приходит на ум такое: занести все gameObjects в массив с помощью FindGameObjectsWithTag.
    А потом через цикл уничтожить их




    Накодил? Убери за собой!
    Инвентарь в Unity(UI)
    Инвентарь в Unity(GUI)
    AdomДата: Понедельник, 21 Апреля 2014, 16:44 | Сообщение # 5879
    Печенька!
    Сейчас нет на сайте
    Есть какие-то предположения к этому?
    Есть такая проблема. Есть танк башня и камера так-вот когда танк переворачивается камера и башня смотрят в разную сторону. Т.е если камера будет смотреть влеов то башня вправо. Как можно исправить ?
    berilДата: Понедельник, 21 Апреля 2014, 17:03 | Сообщение # 5880
    Я не ленивый, я — энергосберегающий
    Сейчас нет на сайте
    Цитата Adom ()
    Как можно исправить ?

    кодом )




    Накодил? Убери за собой!
    Инвентарь в Unity(UI)
    Инвентарь в Unity(GUI)
    Поиск:

    Все права сохранены. GcUp.ru © 2008-2024 Рейтинг