Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Результаты опроса: Создаете ли вы игры на Flash
Да. Уже Научился 30 78.95%
Нет. 8 21.05%
Голосовавшие: 38. Вы ещё не голосовали в этом опросе

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.07.2010, 17:09
dkrstudio вне форума Посмотреть профиль Отправить личное сообщение для dkrstudio Найти все сообщения от dkrstudio
  № 1  
Ответить с цитированием
dkrstudio
[+1.3 20.07.10]

Регистрация: Jul 2010
Сообщений: 24
По умолчанию Прикосновение с объектами.

Логичный код
Код:
if (MyCar.hitTestObject(area_mc))
{
// Какой сюда код нужно прописать?
}
На сцене. есть символ. которым можно управлять - MyCar.
Также еcnm путь - траектория, по которому нужно переместить объект "MyCar", Остольное пространство - мовик или графика - area_mc, Какой код нужно прописать и что должно происходить на сцене когда MyCar соприкасается с area_mc? Перемешать на начальные координаты сразу нет. Как зделать от талкивание. и как это происходит с кодом в as3

Старый 20.07.2010, 17:30
Tr1te вне форума Посмотреть профиль Отправить личное сообщение для Tr1te Найти все сообщения от Tr1te
  № 2  
Ответить с цитированием
Tr1te
 
Аватар для Tr1te

Регистрация: Jun 2009
Сообщений: 461
В момент столкновения приложить в противоположную сторону силу. Третий закон Ньютона.
Код за вас, тут врятли напишут.


Последний раз редактировалось Tr1te; 20.07.2010 в 17:33.
Старый 20.07.2010, 17:38
dkrstudio вне форума Посмотреть профиль Отправить личное сообщение для dkrstudio Найти все сообщения от dkrstudio
  № 3  
Ответить с цитированием
dkrstudio
[+1.3 20.07.10]

Регистрация: Jul 2010
Сообщений: 24
а код та какой? я всего неделю пишу на flash. Как писать этот закон.законы? Первый закон
"Тело находится в сосоянии покоя пока на него не действуют другие тела или Силы действуюши на тело равны по модулю" Второй "Произведение ускорения и массы пропорционально равно силе трения плюс произведение массы и g=9.8 "как то так""


Третий закон Ньютона: две любые материальные точки взаимодействуют друг с другом с силами, направленными по прямой, соединяющей эти точки, равными по величине и противоположно направленными


Добавлено через 23 минуты
Для тех у кого такой же будет вопрос, скидывайте сюда ссылки на описание любой физики в гоночных играх
http://siliren.ru/content/view/55/5/

Добавлено через 2 часа 28 минут
http://black-zorro.com/mediawiki/FOA...ipt_3._Часть_1

http://animbook.mirmap.com/content/view/31/43/

Читайте название не требуется


Последний раз редактировалось dkrstudio; 20.07.2010 в 17:57.
Старый 21.07.2010, 00:18
Tr1te вне форума Посмотреть профиль Отправить личное сообщение для Tr1te Найти все сообщения от Tr1te
  № 4  
Ответить с цитированием
Tr1te
 
Аватар для Tr1te

Регистрация: Jun 2009
Сообщений: 461
Цитата:
Сообщение от dkrstudio Посмотреть сообщение
а код та какой? Как писать этот закон.законы?
Если не хочешь сам разбираться как писать, то нужно подробно описать тз, что именно хочешь получить в итоге, предложить вознаграждение, и ждать пока кто нить согласиться написать за вознаграждение.

Может есть и другие способы.

Старый 21.07.2010, 00:29
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 5  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Вообще там много подходов к физике, и применение 3-го закона ньютона - не самый удачный.
Лучше физический движок аля Box2d попробуйте заюзать
А что-то узнать по физике можно на http://gamedev.ru/

Старый 21.07.2010, 00:39
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 6  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
Вот кстати http://animbook.mirmap.com/content/category/6/18/43/ было ж и про столкновения.
И мне что-то подсказывает, что Tr1te не сможет через 3-й з-н Ньютона рассчитать столкновение, все же скорость меняют, а не силу =)

Старый 21.07.2010, 01:54
Hidest вне форума Посмотреть профиль Отправить личное сообщение для Hidest Найти все сообщения от Hidest
  № 7  
Ответить с цитированием
Hidest
 
Аватар для Hidest

Регистрация: Jun 2006
Адрес: Москва
Сообщений: 461
Не хочу никого обидеть, но мне кажется, что у топикстартера опыта очень мало, иначе не возникло бы такого вопроса. Box2d дело хорошее, но сразу новичку его не освоить, но и советы про третий закон ньютона тут тоже не помогут. Совет один - читать побольше литературы про имитацию физики (и пока особо не важно, на каком языке реализация в ней предлагается).

Старый 21.07.2010, 03:22
dkrstudio вне форума Посмотреть профиль Отправить личное сообщение для dkrstudio Найти все сообщения от dkrstudio
  № 8  
Ответить с цитированием
dkrstudio
[+1.3 20.07.10]

Регистрация: Jul 2010
Сообщений: 24
Hidest +
На самом деле Лето. не очень то хочется в жару дома сидеть и юзать инет. Но меня реально заинтересовал Action Script 3.0 Я и раньше Часто посматривал сюда, но все обходился Хорошей графикой, HTML, CSS, Jquery. Да материала в инете мало было по AS3. Но тут зацепила идея, что поделать.
На http://animbook.mirmap.com есть статья. Все на Action Scruipt 2.0
Год назад у меня был PDF файл с этой книгой, может если поискать на дисках то и щас найду. Статья старая но все же это именно то что надо. описывает все то что хотелось бы спросить.
http://rutracker.org/forum/viewtopic.php?t=1874555
Образ к книге.
Но вот в чем проблема. Я не настолько нуб чтобы думать что если я зделаю ту игру которую выбрал своей первой): то она будет такая как я хочу. я прекрасно понимаю что flash грузится очень просто. и даже сейчас fla файл весит 34 кило байта. но учитывая что каждый update кадров передается значение скорость (очень малая) плюч к этому добавить классы с физикой. Игра будет виснуть. Второе то что я не хотел бы чтобы. ролик не был похож на типичный проект. где смена карты происходит из за условия достигнет обьект края и выезжает с противоположного (надеюсь понятно описал). Я бы хотел чтобы положение машыины всегда остовалось 90 градусов а вот поворот сцены менять но тут проблема с картой.

Добавлено через 2 минуты
Цитата:
Сообщение от -De- Посмотреть сообщение
Вот кстати http://animbook.mirmap.com/content/category/6/18/43/ было ж и про столкновения.
И мне что-то подсказывает, что Tr1te не сможет через 3-й з-н Ньютона рассчитать столкновение, все же скорость меняют, а не силу =)


Да, но как я написал ускорение на массу равно сила. Второй закон тогда получается а там уже и третий. Короч ТерМех, но я же нормальный человек и как у всех по ТерМеху у мну 3


Последний раз редактировалось dkrstudio; 21.07.2010 в 07:08.
Старый 21.07.2010, 10:03
ins_nsk вне форума Посмотреть профиль Отправить личное сообщение для ins_nsk Найти все сообщения от ins_nsk
  № 9  
Ответить с цитированием
ins_nsk

Регистрация: Jul 2007
Сообщений: 30
рукарожа.жпг

http://www.emanueleferonato.com/2007...game-tutorial/

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

Старый 21.07.2010, 12:52
Tr1te вне форума Посмотреть профиль Отправить личное сообщение для Tr1te Найти все сообщения от Tr1te
  № 10  
Ответить с цитированием
Tr1te
 
Аватар для Tr1te

Регистрация: Jun 2009
Сообщений: 461
O God. Ну вы слишком боитесь физики, а там нет ничего сложного. Я посмотрел пример который был по ссылке,
машинка там движется просто отвратительно. Если ты хочешь как там то можешь просто переписывать как там.
Если ты хочешь NFS, то придется немного по разбираться, но ты не бойся это не сложно.

Тут все просто третий закон ньютона. Описывается легко. Жаль сюда нельзя вставлять картинки, ну придеться
скачаивать. В картинке №1 (До столкновения), машина летит в стену. И у нее есть скорость которую ты
описываешь. Когда ты описываешь движение машины, ты расскладываешь скорость на вектора, по Х и по У.

Код AS3:
radian = (gradus * Math.PI)/180;
speedX=speed*Math.cos(radian);
speedY=speed*Math.sin(radian);
На картинке я сделал тоже самое.Ну а третий закон ньютон:
Сила действия равна по модулю и противоположна по направлению силе противодействия.
После столкновения (Картинка №2), твой вектор скорости по х будет направлен в противоположную сторону. Он
изменит направление. В коде тебе надо просто домножить на -1, это же не сложно. При всем при этом скорость
по У останеться неизменной, а для этого тебе надо в коде сделать... да ничего с ней не делать.
Но это если абсолютно упругий удар.
Если ты хочешь делать абсолютно НЕ упругий удар. Надо домножить! на коэффициент упрогости, в данном случае
0. И твоя машина просто остановиться по Х. НО по У она продолжит движение. и будет двигаться вдоль стенки.
В реальной жизне этих крайних случаев не бывает, коэф упругости находиться между ними, между 0 и 1.
Например если ты сделаешь коэф 0.5, то это значит что твой вектор по оси Х будет 50 процентов от своей
велечины, тоенсть в 2 раза меньше Картинка №3. ИЛи ты сделаешь коэф 0.2, и тогда длинна вектора будет 20
процентов от нормальной длинны. В этом случае машина отскочит от стены, но не сильно. НАдо просто
домножить на коэф, это тоже не сложно.

Но почему машина останавливается при соударении со стенкой? Изза того, что о стенку есть трение. НУ я
думаю что тут не сложно догадаться, что скорость по оси У, в твоем случае она звузит speedY, надо
уменьшить на силу трения, а сила трения это сила реакции опоры умноженная на коэф трения. Это значит чем
сильней твоя машина влетит в стену, тем больше трения будет, тем больше она затормозит об стену, что
абсолютно логично и без формул. В твоем случае можешь просто поступить так, у тебя есть скорость по оси Х,
можно считать ее реакцией опоры, и умножать на коэффициент. Это и будет твоя сила, (Коэф меньше единицы)
Это означает что у тебя есть speedY из которую надо уменьшить на силу трения. Если у тебя машина движеться
вперед, то скорость по У положительная, и надо вычитать силу трения, а если машина двигалась назад, и
ударилась об стену, то скорость машина отрицательная, и значит надо прибавлять силу трения. Короче
скорость надо всегда уменьшать. В случае движения машины вперед: speedY - WallFriction (Это трение о
стену.), а WallFriction=speedX*m, m - это твой коэф. сам подберешь. Но вообще для всех поверхностей он
гостированный, и можешь легко найти в нете.

Ребята из Electronic Arts пошли еще дальше. У них машина разворачивается при столкновении. Ну это
происходит из-за трения. ТОесть получается так, что Все эти силы скоростей действую из центра масс, Ну примерный центр машины/коробки и тд. а сила трения реакции опоры, они действуют в точке соприкосновения. И это означает что та точка машины которая соприкосается со стеной, тормозит, а импульс у машины остался, и скорость его тянет вперед, только уже в другом месте, в центре машины, что создает момент вращения вокруг точки соприкосновения. Ну и разворачивает машину. Картинка #4.

НУ это как бы все изложено упрощенно, и не рассматриваются более замороченные моменты. ТАк что думай, что ты хочешь получить от игры.
Изображения
       


Последний раз редактировалось Tr1te; 21.07.2010 в 12:58.
Создать новую тему Ответ Часовой пояс GMT +4, время: 03:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
hittestobject , объекты на сцене

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.