Перейти к содержимому


Фотография

Push object


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 15

#1 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 25 August 2014 - 20:36

Вот так всегда, стану искать одно, а на выходе получу совсем другое)

 

И так, чемпионат по гонкам на картинге в арме уже можно устроить, а кто желает устроить чемпионат по футболу?

Вот концепция для внутренней сущности главного героя данного сценария, мяча.

 

 

Добавляем объекту экшен

this addAction [
	"PUSH",
	{[_this select 0, _this select 1] execVM "fn_pushObject.sqf"},
	"",
	1,
	true,
	true,
	"",
	"_this distance _target < 2"
];

создаём файл

/*
     file fn_pushObject.sqf
*/

_vel   = velocity (_this select 0);
_dir   = direction (_this select 1);
_speed = 6; // Added speed;

(_this select 1) playActionNow "PutDown";
sleep 0.7;
(_this select 0) setVelocity [(_vel select 0)+(sin _dir*_speed),(_vel select 1)+(cos _dir*_speed),(_vel select 2)];

  • 1

#2 OFFLINE   driver.906

driver.906

    Ефрейтор

  • Пользователи
  • 62 сообщений
  • Откуда:grozny

Отправлено 26 August 2014 - 12:29

"_this distance _target < 2" если по больше добавить то норм будет)))


4-5-6 например


  • 0

#3 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

  • Пользователи
  • 680 сообщений

Отправлено 26 August 2014 - 16:08

можно ведь и на кнопку забиндить, дабы не искать в addaction.

 

Надеюсь запилишь норм, в футбол поиграть. 


  • 0

#4 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 26 August 2014 - 16:31

"_this distance _target < 2" если по больше добавить то норм будет)))


4-5-6 например

Просто такая дистанция даёт правильное визуальное ощущение что толкаешь объект, а не воздух. на расстоянии 6 метров от объекта.


  • 0

#5 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 26 August 2014 - 16:41

можно ведь и на кнопку забиндить, дабы не искать в addaction.

 

Надеюсь запилишь норм, в футбол поиграть. 

Если применительно к футболу, то нужны не экшены, и не клавиши клавиатуры. Из кнопок только кнопки мыши, что бы инициализировать удар, например, левая кнопка удар, дольше зажимаешь, мощней удар, на правую кнопку, как пример можно повесить перехват мяча.

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

 

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

 

Но а если соберётся коллектив желающий реализовать именно футбольную тему, чем могу тем помогу.

 

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


  • 0

#6 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 31 August 2014 - 18:56

И так коллеги, в виртуальном футболе назрели проблемы, в реальном эти проблемы назрели уже давно)

 

Проблема вот какого характера, тело напрочь отказывается идти на физический контакт с объектом, применительно к видео, это стул. Я верю, что заставлять юнита пойти на физический контакт со стулом это не гуманно!) Но всё таки ...

Обращаем внимание на чат

 

 

Ваши мнения коллеги!?


  • 0

#7 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 31 August 2014 - 20:34


Ваши мнения коллеги!?

БИСы обять накосячили :D


  • 0

#8 OFFLINE   HarryWorner

HarryWorner

    Лейтенант

  • Модераторы
  • 1035 сообщений

Отправлено 01 September 2014 - 10:38

Ваши мнения коллеги!?

Это Арма, son.
  • 0

#9 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

  • Пользователи
  • 680 сообщений

Отправлено 01 September 2014 - 14:35

скорее всего лоды или конфиг виноваты.

Т.е. у машины есть, у солдата нет.

КЭП!


Сообщение отредактировал TankiSD: 01 September 2014 - 14:35

  • 0

#10 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 01 September 2014 - 16:25

скорее всего лоды или конфиг виноваты.

Т.е. у машины есть, у солдата нет.

КЭП!

 

Я не уверен конечно, но вот эта запись , по идее, говорит, что контейнер отвечающий за обработку столкновений с объектами инициализирован

21:13:24 Ragdoll - loading of ragdoll source "Soldier" started.
21:13:24 Ragdoll - loading of ragdoll source "Soldier" finished successfully.

 

Ваши мнения коллеги!?

Это Арма, son.

 

Я без претензий, но более конструктивные идеи были бы более интересны к прочтению! А ваш ответ, далеко не оригинален, сударь!


  • 0

#11 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

  • Пользователи
  • 680 сообщений

Отправлено 01 September 2014 - 19:34

Так может на массе тела всё завязано?
по идее так и должно быть.

Быть может масса солдата не позволяет сдвигать объекты. 


  • 0

#12 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 01 September 2014 - 21:19

TankiSD, 100 кг-овый мешок с оружием не может сдвинуть стул весом 5-10 кг :D

Сообщение отредактировал vlad333000: 01 September 2014 - 21:20

  • 0

#13 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

  • Пользователи
  • 680 сообщений

Отправлено 01 September 2014 - 21:59

TankiSD, 100 кг-овый мешок с оружием не может сдвинуть стул весом 5-10 кг :D

да, не может, потому что в игре, вес может быть прописан по-другому. 


  • 0

#14 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 02 September 2014 - 03:08

Вы знаете, я тоже думал что как то должно быть завязано на вес, но, события контакта тела с объектами должны были бы и случиться, не важно вес или не вес.

EpeContactStart - Triggered when object collision (PhysX) starts. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.
EpeContactEnd - Triggered when object collision (PhysX) ends. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.
EpeContact - Triggered when object collision (PhysX) is in progress. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.

  • 0

#15 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

  • Пользователи
  • 680 сообщений

Отправлено 02 September 2014 - 04:04

Тогда либо в лодах, либо в конфиге.

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

p.s. какая-то замудрённая система.


  • 0

#16 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 02 September 2014 - 17:35

Тогда либо в лодах, либо в конфиге.

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

p.s. какая-то замудрённая система.

Видимо не понятно о чём я, я не о самом физическом воздействии на объект, заставить объект реагировать так как мне надо, это не проблема. Проблема в том, что при контакте тела с объектом не случаются эти события, EventHandler,

EpeContactStart - Triggered when object collision (PhysX) starts. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.
EpeContactEnd - Triggered when object collision (PhysX) ends. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.
EpeContact - Triggered when object collision (PhysX) is in progress. It can be assigned to a remote vehicle but will only fire on the PC where the actual addEventHandler command was executed.

При контакте с техникой случаются.

 

Вот и хотелось бы понять, почему в случае с телом не срабатывают эти события.

 

Я хочу сказать, что мне нужно зафиксировать момент контакта тела с объектом, остальное, дело кода.


Сообщение отредактировал SteelRat: 02 September 2014 - 17:38

  • 0




Яндекс.Метрика