Процедурно разрушаемый ландшфат - Форум Игроделов
Чт, 02 Май 2024, 17:49 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Форум Игроделов » UNITY3D » ЛАНДШАФТ » Процедурно разрушаемый ландшфат
Процедурно разрушаемый ландшфат
СкептикДата: Вс, 11 Июл 2010, 20:02 | Сообщение # 1
Мыслитель
 
Сообщений: 5860
Награды: 48
Репутация: 1731
Статус: Offline
Автор: Devin Reimer
Официальный сайт

Система, позволяющая изменять террайн в реальном времени, имитировать бомбежку, стрельбу. Изменяет в определенной точке мешь террайна и текстуру.
Примечания: высота террайна должна быть больше ноля, в демонстрации указана высота 3.
Требования: 2.6.1, класс Detonator Framework.



Демонстрация

Скачать паккадж:
Доступно только для пользователей


Фанат игр Max Payne и Fahrenheit.
 
СообщениеАвтор: Devin Reimer
Официальный сайт

Система, позволяющая изменять террайн в реальном времени, имитировать бомбежку, стрельбу. Изменяет в определенной точке мешь террайна и текстуру.
Примечания: высота террайна должна быть больше ноля, в демонстрации указана высота 3.
Требования: 2.6.1, класс Detonator Framework.



Демонстрация

Скачать паккадж:
Доступно только для пользователей

Автор - Скептик
Дата добавления - 11 Июл 2010 в 20:02
Fox071rusДата: Пт, 17 Дек 2010, 16:02 | Сообщение # 2
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Деформация ландшафта real-time, скрипт
Приветствую! Копался в просторах инета и наткнулся на вот такой вот скрипт, который деформирует terrain в реальном времени (прямо в игре) http://blog.almostlogical.com/2010....unity3d

Работает этот скрипт таким образом.
К созданному terrain подключаем скрипт TerrainDeformer.cs
Далее к сцене подключаем скрипт Bombardment.cs , в инспекторе в разделе Shell выбераем Shell.prefab
В инспекторе Shell.prefab в самом низу должен быть подключен скрипт Bomb.cs в котором в разделе Explosion должен быть выбран ShellExplosionBasic.prefab
После всего проделанного при тесте terrain должен рандомно деформироваться от взрывов, и незабудьте добавить First Person Controller (для теста) и в Bombardment выставить значения Width и Depth к примеру по 80, а в Rate например 0.5

Хочу переписать скрипт так, что бы terrain деформировался не рандомно, а при определённых условиях. А именно: от wheel collider, тоесть у меня уже есть сцена с автомобильной физикой (основанной на wheelcollider), ландшафтом и прочим.
Как я понимаю TerrainDeformer.cs в моём случае переписывать ненужно т.к. он лишь определяет деформацию, а вот Bombardment.cs уже задаёт действие
TerrainDeformer.cs как именно и при каких условиях будет происходить событие. В стандарте это рандом, вот скрипт

Code

using UnityEngine;
using System.Collections;

public class Bombardment : MonoBehaviour
{
     public GameObject shell;
     public float width;
     public float depth;
     public float rate = 0.5f;

     private float nextLaunch = 0.0f;

     void Update()
     {
         if (Time.time > nextLaunch)
         {
             nextLaunch = Time.time + rate + Random.Range(0,1.25f);
             FireShell();
         }
     }

     void FireShell()
     {
         float randomRight= Random.Range(-width/2.0f,width/2.0f);
         float randomForward = Random.Range(-depth/2.0f,depth/2.0f);

         Instantiate(shell,(this.transform.position + (Vector3.right * randomRight) + (Vector3.forward * randomForward)),this.transform.rotation);
      
     }

      
}

Не судите строго если где то я написал бред:) я новичёк в этом деле...

P.S. Грубо говоря я хочу добиться создания колеи от машины в реал тайме. Помогите переписать код так, что бы деформация ландшафта происходила не рандомно а от wheel colider (от колёс автомобиля) при их вращении... Надеюсь вы мне поможете в этом т.к. я мало что понимаю в програмировании, но желание творить у меня хуть отбавляй, к тому же времени полно свободного, в связи с тем что сижу дома с гипсом на руке))) Заранее благодарен!(хотя знаю что спасибо в карман не положешь, в стакан не нальёшь, на хлеб не намажешь, с собой не унесёшь)))


Алё, куда я попал? Если туго идёт значит в попу!
 
СообщениеДеформация ландшафта real-time, скрипт
Приветствую! Копался в просторах инета и наткнулся на вот такой вот скрипт, который деформирует terrain в реальном времени (прямо в игре) http://blog.almostlogical.com/2010....unity3d

Работает этот скрипт таким образом.
К созданному terrain подключаем скрипт TerrainDeformer.cs
Далее к сцене подключаем скрипт Bombardment.cs , в инспекторе в разделе Shell выбераем Shell.prefab
В инспекторе Shell.prefab в самом низу должен быть подключен скрипт Bomb.cs в котором в разделе Explosion должен быть выбран ShellExplosionBasic.prefab
После всего проделанного при тесте terrain должен рандомно деформироваться от взрывов, и незабудьте добавить First Person Controller (для теста) и в Bombardment выставить значения Width и Depth к примеру по 80, а в Rate например 0.5

Хочу переписать скрипт так, что бы terrain деформировался не рандомно, а при определённых условиях. А именно: от wheel collider, тоесть у меня уже есть сцена с автомобильной физикой (основанной на wheelcollider), ландшафтом и прочим.
Как я понимаю TerrainDeformer.cs в моём случае переписывать ненужно т.к. он лишь определяет деформацию, а вот Bombardment.cs уже задаёт действие
TerrainDeformer.cs как именно и при каких условиях будет происходить событие. В стандарте это рандом, вот скрипт

Code

using UnityEngine;
using System.Collections;

public class Bombardment : MonoBehaviour
{
     public GameObject shell;
     public float width;
     public float depth;
     public float rate = 0.5f;

     private float nextLaunch = 0.0f;

     void Update()
     {
         if (Time.time > nextLaunch)
         {
             nextLaunch = Time.time + rate + Random.Range(0,1.25f);
             FireShell();
         }
     }

     void FireShell()
     {
         float randomRight= Random.Range(-width/2.0f,width/2.0f);
         float randomForward = Random.Range(-depth/2.0f,depth/2.0f);

         Instantiate(shell,(this.transform.position + (Vector3.right * randomRight) + (Vector3.forward * randomForward)),this.transform.rotation);
      
     }

      
}

Не судите строго если где то я написал бред:) я новичёк в этом деле...

P.S. Грубо говоря я хочу добиться создания колеи от машины в реал тайме. Помогите переписать код так, что бы деформация ландшафта происходила не рандомно а от wheel colider (от колёс автомобиля) при их вращении... Надеюсь вы мне поможете в этом т.к. я мало что понимаю в програмировании, но желание творить у меня хуть отбавляй, к тому же времени полно свободного, в связи с тем что сижу дома с гипсом на руке))) Заранее благодарен!(хотя знаю что спасибо в карман не положешь, в стакан не нальёшь, на хлеб не намажешь, с собой не унесёшь)))


Автор - Fox071rus
Дата добавления - 17 Дек 2010 в 16:02
proektEKДата: Пт, 17 Дек 2010, 16:27 | Сообщение # 3
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
прийду домой посмотрим, хотя все это дело очень будет грузить проц.
 
Сообщениеприйду домой посмотрим, хотя все это дело очень будет грузить проц.

Автор - proektEK
Дата добавления - 17 Дек 2010 в 16:27
ЛевшаДата: Пт, 17 Дек 2010, 16:38 | Сообщение # 4
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (Fox071rus)
Помогите переписать код

Я пас, C# не мое... sad

Quote (proektEK)
это дело очень будет грузить проц

Сильно согласен.


X.cor.R (Prologue)
 
Сообщение
Quote (Fox071rus)
Помогите переписать код

Я пас, C# не мое... sad

Quote (proektEK)
это дело очень будет грузить проц

Сильно согласен.

Автор - Левша
Дата добавления - 17 Дек 2010 в 16:38
Fox071rusДата: Пт, 17 Дек 2010, 16:55 | Сообщение # 5
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Quote (proektEK)
прийду домой посмотрим, хотя все это дело очень будет грузить проц.
Помогите пожалуста, я пока эффекта колеи недобьюсь ни моделить не текстурить небуду.... У меня всё упёрлос в эти скрипты, а точнее их перепись... Делаю не комерческий проект, но если поможете отблагодарю

P.S. Если будет тормозить по всему террейну то я тогда просто создам зоны где этот скрипт будет включаться, к тому же локация у меня маленькая, всего 200х200


Алё, куда я попал? Если туго идёт значит в попу!

Сообщение отредактировал Fox071rus - Пт, 17 Дек 2010, 16:59
 
Сообщение
Quote (proektEK)
прийду домой посмотрим, хотя все это дело очень будет грузить проц.
Помогите пожалуста, я пока эффекта колеи недобьюсь ни моделить не текстурить небуду.... У меня всё упёрлос в эти скрипты, а точнее их перепись... Делаю не комерческий проект, но если поможете отблагодарю

P.S. Если будет тормозить по всему террейну то я тогда просто создам зоны где этот скрипт будет включаться, к тому же локация у меня маленькая, всего 200х200


Автор - Fox071rus
Дата добавления - 17 Дек 2010 в 16:55
Fox071rusДата: Пт, 17 Дек 2010, 17:53 | Сообщение # 6
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Кстати по поводу сильной нагрузки на проц, посмотрите MX vs ATV Reflex, там колея неисчезает по всему террейну и производительность хорошая...

Алё, куда я попал? Если туго идёт значит в попу!
 
СообщениеКстати по поводу сильной нагрузки на проц, посмотрите MX vs ATV Reflex, там колея неисчезает по всему террейну и производительность хорошая...

Автор - Fox071rus
Дата добавления - 17 Дек 2010 в 17:53
proektEKДата: Пт, 17 Дек 2010, 18:05 | Сообщение # 7
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
Quote (Fox071rus)
посмотрите MX vs ATV Reflex, там колея неисчезает по всему террейну и производительность хорошая...

там наверняка колея текстурой делается. Мне нужна модель вашей машины, желательно префаб.
 
Сообщение
Quote (Fox071rus)
посмотрите MX vs ATV Reflex, там колея неисчезает по всему террейну и производительность хорошая...

там наверняка колея текстурой делается. Мне нужна модель вашей машины, желательно префаб.

Автор - proektEK
Дата добавления - 17 Дек 2010 в 18:05
Fox071rusДата: Пт, 17 Дек 2010, 18:29 | Сообщение # 8
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
5 сек, я подготовлю файлы, тогда может лучшем всю сцену?

Алё, куда я попал? Если туго идёт значит в попу!
 
Сообщение5 сек, я подготовлю файлы, тогда может лучшем всю сцену?

Автор - Fox071rus
Дата добавления - 17 Дек 2010 в 18:29
proektEKДата: Пт, 17 Дек 2010, 18:39 | Сообщение # 9
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
Quote (Fox071rus)
тогда может лучшем всю сцену?

Можно и сцену.
 
Сообщение
Quote (Fox071rus)
тогда может лучшем всю сцену?

Можно и сцену.

Автор - proektEK
Дата добавления - 17 Дек 2010 в 18:39
Fox071rusДата: Пт, 17 Дек 2010, 22:58 | Сообщение # 10
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
вот как это выглядит в вышеупомянутой игре,

Добавлено (17.12.2010, 22:58)
---------------------------------------------
БУРНЫЕ АПЛОДИСМЕНТЫ proektEK, ОН ПРЕВРАТИЛ ДАННЫЙ СКРИПТ В КОЛЕЮ ДЛЯ АВТОМОБИЛЯ!!!! но как и говорилось, ужасные тормоза....


Алё, куда я попал? Если туго идёт значит в попу!

Сообщение отредактировал Fox071rus - Пт, 17 Дек 2010, 19:43
 
Сообщениевот как это выглядит в вышеупомянутой игре,

Добавлено (17.12.2010, 22:58)
---------------------------------------------
БУРНЫЕ АПЛОДИСМЕНТЫ proektEK, ОН ПРЕВРАТИЛ ДАННЫЙ СКРИПТ В КОЛЕЮ ДЛЯ АВТОМОБИЛЯ!!!! но как и говорилось, ужасные тормоза....


Автор - Fox071rus
Дата добавления - 17 Дек 2010 в 22:58
ЛевшаДата: Сб, 18 Дек 2010, 00:49 | Сообщение # 11
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (Fox071rus)
БУРНЫЕ АПЛОДИСМЕНТЫ proektEK, ОН ПРЕВРАТИЛ ДАННЫЙ СКРИПТ В КОЛЕЮ ДЛЯ АВТОМОБИЛЯ!!!!

Это все хорошо... а скрипт - это тайна? huh или как? biggrin

Quote (Fox071rus)
ужасные тормоза....

Не удивил, террайн Енджине сам по себе изначально - полный тормоз.
Вполне можно было не тратить время попусту и сделать то же самое с модельным террайном.


X.cor.R (Prologue)
 
Сообщение
Quote (Fox071rus)
БУРНЫЕ АПЛОДИСМЕНТЫ proektEK, ОН ПРЕВРАТИЛ ДАННЫЙ СКРИПТ В КОЛЕЮ ДЛЯ АВТОМОБИЛЯ!!!!

Это все хорошо... а скрипт - это тайна? huh или как? biggrin

Quote (Fox071rus)
ужасные тормоза....

Не удивил, террайн Енджине сам по себе изначально - полный тормоз.
Вполне можно было не тратить время попусту и сделать то же самое с модельным террайном.

Автор - Левша
Дата добавления - 18 Дек 2010 в 00:49
proektEKДата: Сб, 18 Дек 2010, 09:09 | Сообщение # 12
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
Цитата Левша
Это все хорошо... а скрипт - это тайна?

Тайны никакой нет, просто это настолько глючная вещь, у меня было 0.5 fps, потом чуть поправил стало 5.6.
Скрипт
Скрипт вешаем на колесо или даже на ногу перса, цепляем колайдер.
Цитата Левша
Вполне можно было не тратить время попусту и сделать то же самое с модельным террайном

Святая правда.


Сообщение отредактировал proektEK - Сб, 18 Дек 2010, 09:26
 
Сообщение
Цитата Левша
Это все хорошо... а скрипт - это тайна?

Тайны никакой нет, просто это настолько глючная вещь, у меня было 0.5 fps, потом чуть поправил стало 5.6.
Скрипт
Скрипт вешаем на колесо или даже на ногу перса, цепляем колайдер.
Цитата Левша
Вполне можно было не тратить время попусту и сделать то же самое с модельным террайном

Святая правда.

Автор - proektEK
Дата добавления - 18 Дек 2010 в 09:09
Fox071rusДата: Сб, 18 Дек 2010, 12:48 | Сообщение # 13
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Насчёт скрипта так это к proektEK, полностью модельный террейн делать нету смысла, достаточно сделать заготовку в виде плана на котором будет оставаться колея, ведь в проекте будут только определённые труднопроходимые места в которых как раз и нужна колея, а остальную местность делать стандартным террейном в редакторе. Если играли в полный привод 3 то там сделано как я описал выше.

Добавлено (18.12.2010, 12:48)
---------------------------------------------
вот собственно проблема

может я что то в настройках забыл включить, но колесо весит в воздухе после того как создалась колея...


Алё, куда я попал? Если туго идёт значит в попу!
 
СообщениеНасчёт скрипта так это к proektEK, полностью модельный террейн делать нету смысла, достаточно сделать заготовку в виде плана на котором будет оставаться колея, ведь в проекте будут только определённые труднопроходимые места в которых как раз и нужна колея, а остальную местность делать стандартным террейном в редакторе. Если играли в полный привод 3 то там сделано как я описал выше.

Добавлено (18.12.2010, 12:48)
---------------------------------------------
вот собственно проблема

может я что то в настройках забыл включить, но колесо весит в воздухе после того как создалась колея...


Автор - Fox071rus
Дата добавления - 18 Дек 2010 в 12:48
proektEKДата: Сб, 18 Дек 2010, 12:52 | Сообщение # 14
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
На машине висит Rigibody?
 
СообщениеНа машине висит Rigibody?

Автор - proektEK
Дата добавления - 18 Дек 2010 в 12:52
Fox071rusДата: Сб, 18 Дек 2010, 13:17 | Сообщение # 15
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Quote (proektEK)
На машине висит Rigibody?

да висит, на колёсах нет, на колёсах лишь меш коллайдер прицеплен

криво но работает


Алё, куда я попал? Если туго идёт значит в попу!

Сообщение отредактировал Fox071rus - Сб, 18 Дек 2010, 16:33
 
Сообщение
Quote (proektEK)
На машине висит Rigibody?

да висит, на колёсах нет, на колёсах лишь меш коллайдер прицеплен

криво но работает


Автор - Fox071rus
Дата добавления - 18 Дек 2010 в 13:17
СкептикДата: Сб, 18 Дек 2010, 19:01 | Сообщение # 16
Мыслитель
 
Сообщений: 5860
Награды: 48
Репутация: 1731
Статус: Offline
Если триггер вынести в полусекундную корутину, возможно, меньше тормозить станет? Он ведь каждый кадр выполняется?

Фанат игр Max Payne и Fahrenheit.
 
СообщениеЕсли триггер вынести в полусекундную корутину, возможно, меньше тормозить станет? Он ведь каждый кадр выполняется?

Автор - Скептик
Дата добавления - 18 Дек 2010 в 19:01
proektEKДата: Сб, 18 Дек 2010, 19:16 | Сообщение # 17
 
Сообщений: 493
Награды: 6
Репутация: 193
Статус: Offline
Я так и сделал, у меня ~0.5 fps выросло до ~5.6
 
СообщениеЯ так и сделал, у меня ~0.5 fps выросло до ~5.6

Автор - proektEK
Дата добавления - 18 Дек 2010 в 19:16
ЛевшаДата: Сб, 18 Дек 2010, 19:25 | Сообщение # 18
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Это мало поможет... Нужен совсем другой подход.

X.cor.R (Prologue)
 
СообщениеЭто мало поможет... Нужен совсем другой подход.

Автор - Левша
Дата добавления - 18 Дек 2010 в 19:25
Fox071rusДата: Сб, 18 Дек 2010, 21:39 | Сообщение # 19
Нет аватара
 
Сообщений: 147
Награды: 0
Репутация: 47
Статус: Offline
Quote (Левша)
Это мало поможет... Нужен совсем другой подход.

какой? с деформацией меша лучом, коллайдер меша обновляется долго, поэтому колея образуется, а колесо продолжает висеть в воздухе не углубляясь в колею sad :( sad


Алё, куда я попал? Если туго идёт значит в попу!

Сообщение отредактировал Fox071rus - Сб, 18 Дек 2010, 21:44
 
Сообщение
Quote (Левша)
Это мало поможет... Нужен совсем другой подход.

какой? с деформацией меша лучом, коллайдер меша обновляется долго, поэтому колея образуется, а колесо продолжает висеть в воздухе не углубляясь в колею sad :( sad

Автор - Fox071rus
Дата добавления - 18 Дек 2010 в 21:39
ЛевшаДата: Вс, 19 Дек 2010, 00:43 | Сообщение # 20
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (Fox071rus)
какой?

Прежде всего отказаться от услуг TerrainEngine и копать в сторону модельного ландшафта, как и писал выше (только никто не читает что пишу, и потом вопросы задают...) smile , и деформировать его. Это на порядки поднимет производительность. Однако все зависит отразмеров локации.
Если она огромна, то толку не будет.


X.cor.R (Prologue)
 
Сообщение
Quote (Fox071rus)
какой?

Прежде всего отказаться от услуг TerrainEngine и копать в сторону модельного ландшафта, как и писал выше (только никто не читает что пишу, и потом вопросы задают...) smile , и деформировать его. Это на порядки поднимет производительность. Однако все зависит отразмеров локации.
Если она огромна, то толку не будет.

Автор - Левша
Дата добавления - 19 Дек 2010 в 00:43
Форум Игроделов » UNITY3D » ЛАНДШАФТ » Процедурно разрушаемый ландшфат
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024