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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.06.2005, 20:25
F())( вне форума Посмотреть профиль Отправить личное сообщение для F())( Найти все сообщения от F())(
  № 1  
Ответить с цитированием
F())(

Регистрация: Jun 2005
Сообщений: 22
По умолчанию прыгающий мяч

Проблема в траектории движения... Посмотрите , please.
После условия столкновения с полом(значение по y), мяч не движется в левый верхний угол.... Не понимаю, по формулам кинематики все верно

_root.ball._x=150;
_root.ball._y=0;
t=0;
x0=10;
y0=1;
v0=18;
a=10;
v1=v0*0.8;

_root.onEnterFrame=function() {
vy=v0*t+(a*t*t)/2;
t=t+0.6;
_root.ball._x=x0+v0*t;
_root.ball._y=y0+vy*t+(a*t*t)/2;

if (_root.ball._y>400) { //при падении на землю
t=0;
_root.ball._x=z; //точка падения по x(правильно ли)
_root.onEnterFrame=function() {
t=t+0.5;
vy2=-vy*0.8;
_root.ball._x=z+v0*t;//на деле должно быть движение в правый верхний угол, а на деле лажа
_root.ball._y= 400+vy*t-(a*t*t)/2;
_root.ball._rotation+=10; // вращение
}
}
}
Вложения
Тип файла: zip 11.zip (4.7 Кб, 54 просмотров)

Старый 25.06.2005, 20:35
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 2  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
честно говоря не въехал в код...но насколько я понимаю логику все происходит из за того что ты переписываешь второй раз onEnterFrame.
Код:
_root.ball._x = 150;
_root.ball._y = 0;
t = 0;
x0 = 10;
y0 = 1;
v0 = 18;
a = 10;
v1 = v0 * 0.8;
_root.onEnterFrame = function() {
	vy = v0 * t + (a * t * t) / 2;
	t = t + 0.6;
	_root.ball._x = x0 + v0 * t;
	_root.ball._y = y0 + vy * t + (a * t * t) / 2;
	if (_root.ball._y > 400) {
		trace("fall");
		//при падении на землю
		t = 0;
		_root.ball._x = z;
		//точка падения по x(правильно ли)
		t = t + 0.5;
		vy2 = -vy * 0.8;
		_root.ball._x = z + v0 * t;
		//на деле должно быть движение в правый верхний угол, а на деле лажа
		_root.ball._y = 400 + vy * t - (a * t * t) / 2;
		_root.ball._rotation += 10;
		// вращение
	}
};
а вот чтобы он двигался в другой угл надо еще повозиться
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 25.06.2005, 22:47
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 3  
Ответить с цитированием
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
учитесь создавать контейнер для обработчика Ef....

Старый 26.06.2005, 09:51
F())( вне форума Посмотреть профиль Отправить личное сообщение для F())( Найти все сообщения от F())(
  № 4  
Ответить с цитированием
F())(

Регистрация: Jun 2005
Сообщений: 22
штрек раскажи побробнее если можно :d

Старый 26.06.2005, 18:00
SaFeR вне форума Посмотреть профиль Отправить личное сообщение для SaFeR Посетить домашнюю страницу SaFeR Найти все сообщения от SaFeR
  № 5  
Ответить с цитированием
SaFeR
 
Аватар для SaFeR

Регистрация: Nov 2004
Адрес: vrn
Сообщений: 108
Отправить сообщение для SaFeR с помощью ICQ Отправить сообщение для SaFeR с помощью Skype™
Код:
this.ball._x;
// Xo
this.ball._y;
// Yo
Vx = 3;
Vy = 0;
gravity = 1;
this.onEnterFrame = function() {
	Vy += gravity;
	this.ball._x += Vx;
	this.ball._y += Vy;
	this.ball._rotation += 10;
	if (this.ball._y>400) {
		Vy *= -1;
	}
};
Попробуй сюда добавить законы кинематики

Старый 26.06.2005, 20:48
F())( вне форума Посмотреть профиль Отправить личное сообщение для F())( Найти все сообщения от F())(
  № 6  
Ответить с цитированием
F())(

Регистрация: Jun 2005
Сообщений: 22
Отскок сделал. исходник
Но Как сделать дальнейшее затушающее движение мяча? Высота подьемa должна постепенно снижаться...
Стоит ли применять логические операторы, с определенной сonst при достижении которой мяч будет двиться равноускоренно вниз,
потом опять условие о столкновении с полом... и так до полной потери скорости.
Если ли более простое решение?
Вложения
Тип файла: zip 1.zip (4.7 Кб, 46 просмотров)

Старый 26.06.2005, 20:58
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 7  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Насчет более простых движений Jobe Makar в своей книге Macromedia® Flash™ MX Game Design Demystified
советует не использовать точных физических законов, а делать их эмуляцию
примерно так
Код:
ymov = 0;
//set gravity
gravity = 2;
decay = .95;
_root.onEnterFrame = function() {
	ymov += gravity;
	ymov *= this.decay;
	ball._y += ymov;
	if (ball._y > 400) {
		ball._y = 400;
		ymov *= -1;
	}
};
исходник посмотрю позже, если тебе еще нужна будет помощь.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 26.06.2005, 22:42
F())( вне форума Посмотреть профиль Отправить личное сообщение для F())( Найти все сообщения от F())(
  № 8  
Ответить с цитированием
F())(

Регистрация: Jun 2005
Сообщений: 22
Nirth дай исходник если не трудно. Очень инстересно..
Вы упоминули Macromedia® Flash™ MX Game Design Demystified - она существует в эл. виде, если да где скачать?

Старый 26.06.2005, 22:46
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 9  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Книжки нужно покупать на этом форуме запрещенно раздавать линки, поищи на других.

а насчет исходника, у меня нету=) я просто навоял код,
создай на сцене мувик с именем ball и положи код в первый кадр и будет тебе счастье
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Nov 2004
Адрес: vrn
Сообщений: 108
Отправить сообщение для SaFeR с помощью ICQ Отправить сообщение для SaFeR с помощью Skype™
Вот пример из этой книги падающего вертикально мяча.
остаётся добавить перемещение по оси х
Вложения
Тип файла: zip ball_floor.zip (2.5 Кб, 69 просмотров)

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:49.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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