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

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.08.2013, 22:17
iters вне форума Посмотреть профиль Отправить личное сообщение для iters Найти все сообщения от iters
  № 1  
Ответить с цитированием
iters

Регистрация: Aug 2013
Сообщений: 14
По умолчанию Не двигается одно тело в box2d

Здравствуйте,сейчас я пишу мини игру где пушка выстреливает разными фруктами , когда я начал задавать форму тела банана , тело после выстрела не двигается вообще, ТЕ даже сила притяжения не действует, оно просто замирает, прошу вашей помощи в этой проблемме,сижу над ней уже очень долго
P.S я задаю форму тела выпуклой(буду собирать из нескольких тел)

описание формы тела (банана) и кусок кода

Код AS3:
var babanDef:b2PolygonDef = new b2PolygonDef() ;
			babanDef.vertexCount=3;
			b2Vec2(babanDef.vertices[0].Set( -14 / RATIO, 26 / RATIO)) ;
			b2Vec2(babanDef.vertices[1].Set(13 / RATIO, 18 / RATIO)) ;
			b2Vec2(babanDef.vertices[2].Set(24 / RATIO, -16 / RATIO)) ;
 
 
			babanDef.density = 2;
			babanDef.friction = 0.4 ;
			babanDef.restitution = 0.1 ;
			babanDef.filter.maskBits = 0x0004;
			babanDef.filter.categoryBits = 0x0004 ;
 
			var bananBodyDef:b2BodyDef = new b2BodyDef() ;
			bananBodyDef.position.Set(barrelBoxSprite.x/RATIO + Math.cos(barrelBoxSprite.rotation/180*Math.PI)*1.8,barrelBoxSprite.y/RATIO+Math.sin(barrelBoxSprite.rotation/180*Math.PI)*1.8) ;
			bananBodyDef.angle = bodybarrelGune.GetAngle() ;
 
			var bananBody:b2Body = _world.CreateBody(bananBodyDef) ;
			bananBody.CreateShape(babanDef) ;
			bananBody.SetMassFromShapes() ;
 
			var bananSprite:Sprite = new BananAmmo() ;
			bananSprite.x = bananBody.GetWorldCenter().x * 40;
			bananSprite.y = bananBody.GetWorldCenter().y * 40;
			addChild(bananSprite);
 
			globalAmmo.push( { sprite:bananSprite , body:bananBody } ) ;
 
			bananBody.ApplyImpulse(new b2Vec2(Math.cos(barrelBoxSprite.rotation/180*Math.PI)*10, Math.sin(barrelBoxSprite.rotation/180*Math.PI)*14),
			new b2Vec2(bananBody.GetPosition().x, bananBody.GetPosition().y));


barrelBoxSprite - это спрайт пушки
globalAmmo это массив где хранятся спрайт и тело,после я их обновляю


Последний раз редактировалось Wolsh; 31.08.2013 в 23:08.
Старый 01.09.2013, 01:09
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
iters, для оформления своего кода надо использовать теги [as3][/as3]
__________________
Reality.getBounds(this);

Старый 01.09.2013, 12:12
iters вне форума Посмотреть профиль Отправить личное сообщение для iters Найти все сообщения от iters
  № 3  
Ответить с цитированием
iters

Регистрация: Aug 2013
Сообщений: 14
спасибо, не знал

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

Регистрация: Jun 2012
Сообщений: 70
А вы координаты спрайта обновляете?
__________________
Блог: http://devizgl.blogspot.com/

Старый 02.09.2013, 20:39
iters вне форума Посмотреть профиль Отправить личное сообщение для iters Найти все сообщения от iters
  № 5  
Ответить с цитированием
iters

Регистрация: Aug 2013
Сообщений: 14
конечно,я нашел ошибку , рисовал тело слева на право

Старый 02.09.2013, 22:33
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 6  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
в нейпе такие мелочи не имеют значения, бокс2д морально устарел

Старый 03.09.2013, 00:28
iters вне форума Посмотреть профиль Отправить личное сообщение для iters Найти все сообщения от iters
  № 7  
Ответить с цитированием
iters

Регистрация: Aug 2013
Сообщений: 14
это правда , когда я смотрел на него раньше , мне он казался превосходным движком,"просто бери и делай", но чем больше с ним работаю тем больше он меня разочаровывает

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

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

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


 


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


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