Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Physical engine (http://www.flasher.ru/forum/showthread.php?t=66685)

Takato 16.08.2005 20:06

Цитата:

Сообщение от TERRORist
значит вбиваешь 24 или там 32 точки, скрипт их сглаживает.

Ну - и то хлеб... Хотя до этого еще далеко - хотя бы с плоской поверхностью реально разобраться - что все скакало и крутилось, как надо :)

Цитата:

поздравляю, тему просмотрело 2000 человек
Да, физика акутальна нынче...

F_Flash 17.08.2005 13:23

Млин да че вы все филосовствуете... Напишите просто падающий кубик на плосткость, с разной стартовым ускорением.

Введите параметры
1.Упругость грани.
2.Масса кубика.
3.Стратовое ускорение кубика(задать вектором.)
4.y - Координату плоскости.

Среда однородная гравитация однороданая.сила трения максимальная,обхъект не скользит,сила трения воздуха 0.
НАдо начинать с простого....Все это философия - состояние среды, сила прогибаемости поверхности всплески волн....Может еще тепературу среды будете расчитывать, в разных участах котрых стоят различные источники нагревания?

Вот на фоне кубика разберитесь какие и как силы действуют.

Кстати для этой задачи можно обойтись даже без тригономерии вообще.

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

ВОт например если эту задачу разобрать , или может кто то напишет? Это уже интереснее, будет все четче и яснее, потом можно наврорачивать различными консантами и коефициентами.



Вводный курс аналитичекской геометрии.
векторы.

a=[x1,y1]
b=[x2,y2]
1.Сложение векторов.
a+b=[x1+x2,y1+y2]

2.Вычитание.
a-b=[x1-x2,y1-y2]

3.умножение векора на чисто.
ka=[k*x1,k*y1]
4.Скаляроное произведение.
scalar=x1*x2+y1*y2

5. Длина вектора a
dist=Math.sqrt(x1*x1+y1*y1);

6. ПРиведение вескора a к единичному вектору(модуль которого равен 1)

n=[x1/dist,y1/dist]

7. Угол между векторами. Обычно его в чисметодах ищут так но в математике много спообов.

a-> в единичный
b-> в единичный

склярное произведение даст косинус угла между ними.
Укол соотвесвенно арккосинус , но как правило само знаечение косинуса хватает.

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



Удачи.

F_Flash 17.08.2005 13:45

Цитата:

Сообщение от old_dark_elf
жесткач :) ...
я конечно понимаю, что это слегка не то, но:

А для 15-ти шаров? и чтоб ни один не был фиксированным:)


Например

http://www.freewebs.com/gwiller

Кстати это еще под 5-й флеш когда то писал.

kost@ 17.08.2005 15:45

Цитата:

Сообщение от F_Flash
Млин да че вы все филосовствуете... Напишите просто падающий кубик на плосткость, с разной стартовым ускорением.

Так и есть... нужно вообще с простого начинать! А то если сразу (как я) заморачиваться, то потом такая лажа вылазит. Вчера в своем проете столько косяков нашел! Пришел к выводу, что нужно сначала для однородной среды все реализовать с минимальным набором сил.
Биллиард - прикольный: физика неплохая!

K.A.T.A.F.A.L.K.E.R 17.08.2005 16:15

Млин, народ, вы не о том! "столкновение шариков с некоторой упругостью" я еще года четыре назад писал - нормально, порвал всех на МАНе. Это все просто. Главное - сделать взаимодействие тел произвольной формы! Вот каким должен быть первый шаг - и поздравьте меня, я его вчера почти сделал. Смысл таков: рисуете карандашом "тело", заливаете его (заливка - и есть "вещество", только залитые участки идут в подсчет массы), конвертите в мувиклип, пишите <name>.addAnchors() - и по вашим бесценным рекомендациям к нему добавляются "ключевые точки" по контуру - именно в них идет просчет взаимодействия с другими объектами. Кроме того есть функция <name>.hitBody(body) - проверяет, не столкнулся ли этот объект с другим объектом (body), и если да - определяет в каких точках и находит силы, действующее на эти точки. Повторяю: физики пока никакой, но уже идет определение 1)точек, в которых происходит взаимодействие 2) сил, возникающих при взаимодействии. Делал дома, щас я на работе, но винт с собой - через часок подключу, стащу исходники и выложу ;)

old_dark_elf 17.08.2005 18:13

кого хочешь удивить?
:)
для отскока мячиков люди уже давно классы понаписали :cool: - скоко хочешь столько и мячиков, все летают и поют :D сталкиваются, а ты еще сделай что бы от массы зависило, хотя и это я уже видел и делал...

надо такие мячики соеденить твоими пружинами - и будет вам счастье, покрайней мере любую фигуру можно будет легко сделать :cool:

F_Flash 17.08.2005 18:56

Цитата:

Сообщение от old_dark_elf
кого хочешь удивить?
:)
для отскока мячиков люди уже давно классы понаписали :cool: - скоко хочешь столько и мячиков, все летают и поют :D сталкиваются, а ты еще сделай что бы от массы зависило, хотя и это я уже видел и делал...

надо такие мячики соеденить твоими пружинами - и будет вам счастье, покрайней мере любую фигуру можно будет легко сделать :cool:

Я никого не хучу удивлять)

Ну покажи что делал)

old_dark_elf 17.08.2005 19:57

свое лень искать :D:D:D

http://www.silin.fatal.ru/misc/index.html
вот тут силиновский класс

F_Flash 17.08.2005 20:23

Цитата:

Сообщение от old_dark_elf
свое лень искать :D

http://www.silin.fatal.ru/misc/index.html
вот тут силиновский класс


1. Если ты имеешь ввиду упругое столкновение шаров:) то это глючная фигня в которой одни шары залязят на другие,И отскоки дерганные.


2. Число 15 я взял не спроста. Нужно сделать так чтоб оно же не тормозило , в этом суть, РАсчитать векторы отражения это задача для седьмого класса школы наверное. Смысл этого дела продумать так и отобрать те объекты которые вообще нужно просчитывать. Тут счысл в самом алгоритме.ПО этому я и говорю про 15. Мой бильярд я тогда писал под 800MHZ требование было такое,фиг знает когда это было, аналога американки тогда не было в инете на флеше, восьморки были, но для восьмерки количество просчетов в несколько раз меньше:) Конечно можно так сказать что и для 100 шаров это все будет работать толко нафик такой движок который тормозит?

3. Лень искать это не ответ, если нет то и говори нет, либо молчи либо приводи пример.


4. Основные составляющие физ движков.
1. Физика воздейсвия на точку.
2. Алгоритм просчета столкновений. collision


И именно их я имеею ввиду и примеры привожу на эти составляющие.

Если эти 2 компоненты сложить вот и будет движок.

old_dark_elf 17.08.2005 20:37

Вложений: 1
ну это я уже показывал на форуме, там происходит отскок метиорита от корабля, конечно при 50 (а может и при меньшем количестве) метиоритах может торамзить - но вопервых мое, во вторых сильных глюков (перенахлест) не замечал...


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

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