Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity

Unity Мультиплатформенный инструмент для разработки игр

Ответ
 
Опции темы
Старый 01.05.2011, 22:36   #391
Pan89
AnyKey`щик
 
Регистрация: 24.11.2010
Сообщений: 7
Написано одно полезное сообщение
Ответ: Фак по Юнити.

Буду внимательнее читать документацию.
(Offline)
 
Ответить с цитированием
Старый 08.06.2011, 09:18   #392
Nuprahtor
Элита
 
Аватар для Nuprahtor
 
Регистрация: 26.07.2008
Сообщений: 1,972
Написано 1,095 полезных сообщений
(для 3,923 пользователей)
Ответ: Фак по Юнити.

http://entitycrisis.blogspot.com/201...occlusion.html
Increpare на форуме тигсурса выложил сию ссылку. Фальшивый вертексный эмбиент окклюжн - для настоящих инди-мэнов! (не проверял, но, думаю, должно быть красиво и дешево)
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Nuprahtor за это полезное сообщение:
Lestar (08.06.2011), pax (08.06.2011)
Старый 08.06.2011, 10:09   #393
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Красиво будет, если очень много вершин в модели. Для низкополигональных проще использовать лайтмэпу.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nuprahtor (08.06.2011)
Старый 16.06.2011, 19:11   #394
SaM_
ПроЭктировщик
 
Аватар для SaM_
 
Регистрация: 15.06.2011
Сообщений: 111
Написано 2 полезных сообщений
(для 3 пользователей)
Ответ: Фак по Юнити.

Объясните как пользоваться функцией типа Random. Что бы при определенном действии случайно выбиралась одна из заранее заданных форм. Например, при передвижении игрока, включалась Одна из Нескольких анимаций.
(Offline)
 
Ответить с цитированием
Старый 16.06.2011, 19:23   #395
Lestar
Бывалый
 
Аватар для Lestar
 
Регистрация: 24.05.2011
Адрес: Украина,Харьков
Сообщений: 890
Написано 359 полезных сообщений
(для 880 пользователей)
Ответ: Фак по Юнити.

 int variable = UnityEngine.Random.Range(0, 5);
switch(variable)
 {
    case 0:
        //играем анимацию 1
     break;
  ..............
      case 5:
        //играем анимацию 6
     break;
  }

Последний раз редактировалось Lestar, 17.06.2011 в 00:41.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (17.06.2011)
Старый 18.06.2011, 23:58   #396
SaM_
ПроЭктировщик
 
Аватар для SaM_
 
Регистрация: 15.06.2011
Сообщений: 111
Написано 2 полезных сообщений
(для 3 пользователей)
Ответ: Фак по Юнити.

function OnCollisionEnter(collision Collision) {
    for (var 
contact ContactPoint in collision.contacts) {
        
Debug.DrawRay(contact.pointcontact.normalColor.white);
    }
    if (
collision.relativeVelocity.magnitude 0.1)
        
Destroy (gameObject);

В данном случае объект, к которому применен скрипт уничтожается при столкновении с Любым другим телом.
Что изменить, что бы объект уничтожался при с столкновении с Определенным телом?
(Offline)
 
Ответить с цитированием
Старый 19.06.2011, 02:45   #397
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Например так:
function OnCollisionEnter(collision Collision) { 
    for (var 
contact ContactPoint in collision.contacts) { 
        
Debug.DrawRay(contact.pointcontact.normalColor.white); 
    } 
    if (
collision.gameObject.Tag == "Player"
        
Destroy (gameObject); 

Игроку надо будет назначить тэг Player и тогда объект будет уничтожен при столкновении с игроком.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
cahekp (19.06.2011), SaM_ (19.06.2011)
Старый 19.06.2011, 13:35   #398
SaM_
ПроЭктировщик
 
Аватар для SaM_
 
Регистрация: 15.06.2011
Сообщений: 111
Написано 2 полезных сообщений
(для 3 пользователей)
Ответ: Фак по Юнити.

Спасибо, работает. Хотя, мне кажется, что будет лучше, если тег объекта будет с маленькой буквы. У меня скрипт заработал только при таком условии.
Как сделать задержку выполнения действия после столкновения?
(Offline)
 
Ответить с цитированием
Старый 19.06.2011, 13:36   #399
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Что-то вроде:
var time float 2;

function 
OnCollisionEnter(collision Collision) { 
    for (var 
contact ContactPoint in collision.contacts) { 
        
Debug.DrawRay(contact.pointcontact.normalColor.white); 
    } 
    if (
collision.gameObject.Tag == "Player"
        
Invoke ("DestroySelf"time ); 
}  

function 
DestroySelf(){
   
Destroy (gameObject); 

__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (19.06.2011)
Старый 19.06.2011, 14:26   #400
SaM_
ПроЭктировщик
 
Аватар для SaM_
 
Регистрация: 15.06.2011
Сообщений: 111
Написано 2 полезных сообщений
(для 3 пользователей)
Сообщение Ответ: Фак по Юнити.

Возник еще один вопрос

Как поменять значение переменной через определенный промежуток времени после старта? (Использую js)
(Offline)
 
Ответить с цитированием
Старый 19.06.2011, 14:34   #401
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Ну очевидно жеж из предыдущего примера:
var time float 2;
var 
mayVar int 1;

function 
Start() { 
    
Invoke ("ChangeValue"time ); 
}  

function 
ChangeValue(){
   
mayVar 2;

или

var time float 2;
var 
mayVar int 1;

function 
Start() { 
    yield 
WaitForSeconds(time);
    
mayVar 2;

__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 19.06.2011, 14:36   #402
Lestar
Бывалый
 
Аватар для Lestar
 
Регистрация: 24.05.2011
Адрес: Украина,Харьков
Сообщений: 890
Написано 359 полезных сообщений
(для 880 пользователей)
Ответ: Фак по Юнити.

var my_TIme float;
var 
my_Variable :float=5;

function 
Update ()
{
   
my_Time=Time.time ;

   if(
my_Time>=30)
    {
       
my_Variable=15
    }

В зависимости от нужды вместо Time.time использовать Time.timeSinceLevelLoad .
P.S. Pax,мне кажется ему еще рановато делегаты использовать
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (19.06.2011)
Старый 19.06.2011, 14:58   #403
SaM_
ПроЭктировщик
 
Аватар для SaM_
 
Регистрация: 15.06.2011
Сообщений: 111
Написано 2 полезных сообщений
(для 3 пользователей)
Ответ: Фак по Юнити.

Lestar, я js только вчера начал учить, мне многое еще рано

И все же не могу я разобраться:
var apple Rigidbody;
var 
time :  float;
var 
float 1//Начальное значение переменной "x", как я понял?


function Update ()
{
   
time=Time.timeSinceLevelLoad;

   if(
time>=1)
    {
      
Random.Range(521);
     }
      if(
time>=30)
    {
       
Random.Range(16);
     }
}




InvokeRepeating("LaunchProjectile"2, (x)); //"x" - та самая переменная, обозначающая промежуток между спавнами

function LaunchProjectile () 
{
instance Instantiate(apple,transform.positiontransform.rotation);
instance.velocity transform.TransformDirectionVector300) );



Вот мой скрипт спавна. Что не так? Ибо изменение колва спавнющихся объектов со временем не меняется, хотя игра запускается.
(Offline)
 
Ответить с цитированием
Старый 19.06.2011, 15:06   #404
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

По приведенному примеру можно сделать так:

var time float 2;
var 
float 1;

function 
Start() { 
    yield 
WaitForSeconds(1);
    
Random.Range(521); 
    yield 
WaitForSeconds(29);
    
Random.Range(16); 

А вообще строка
InvokeRepeating("LaunchProjectile"2, (x)); 
выполняется только один раз

Я бы переписал скрипт так:

var apple Rigidbody;
var 
time :  float;
var 
float 1//Начальное значение переменной "x", как я понял?


function Start() { 
    yield 
WaitForSeconds(1);
    
Random.Range(521); 
    yield 
WaitForSeconds(29);
    
Random.Range(16); 
}  

Invoke("LaunchProjectile"x); //"x" - та самая переменная, обозначающая промежуток между спавнами

function LaunchProjectile () 
{
  
instance Instantiate(apple,transform.positiontransform.rotation);
  
instance.velocity transform.TransformDirectionVector300) );
  
Invoke("LaunchProjectile"x);

Хотя на js это может выглядеть так, я js плохо знаю для unity, лучше C#:
var apple Rigidbody;
var 
time :  float;
var 
float 1//Начальное значение переменной "x", как я понял?

Invoke("LaunchProjectile"x); //"x" - та самая переменная, обозначающая промежуток между спавнами

yield WaitForSeconds(1);
Random.Range(521); 
yield 
WaitForSeconds(29);
Random.Range(16); 

function 
LaunchProjectile () 
{
  
instance Instantiate(apple,transform.positiontransform.rotation);
  
instance.velocity transform.TransformDirectionVector300) );
  
Invoke("LaunchProjectile"x);

__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (19.06.2011)
Старый 19.06.2011, 15:22   #405
Lestar
Бывалый
 
Аватар для Lestar
 
Регистрация: 24.05.2011
Адрес: Украина,Харьков
Сообщений: 890
Написано 359 полезных сообщений
(для 880 пользователей)
Ответ: Фак по Юнити.

var apple Rigidbody;
var 
time :  float;
var 
next_Instans float 0;
var 
float 1

function 
Update ()
{
   
time=Time.timeSinceLevelLoad;

   if(
time<30)
    {
      
Random.Range(521);
    }
     else
    {
       
Random.Range(16);
    }

     if(
time>=next_Instans)
     {
         
LaunchProjectile ();
         
next_Instans+=x;
     }
}

function 
LaunchProjectile () 
{
instance Instantiate(apple,transform.positiontransform.rotation);
instance.velocity transform.TransformDirectionVector300) );

P.S. Не очень красиво,но для новичка будет проще разобраться в алгоритме.Я тоже предпочитаю C# и если начинать,то начинать его учить.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (19.06.2011)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 10:14.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com