Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Box2D, C++] Wystrzał

Ostatnio zmodyfikowano 2013-06-04 20:04
Autor Wiadomość
kubawal
Temat założony przez niniejszego użytkownika
[Box2D, C++] Wystrzał
» 2013-04-27 20:54:13
Witam!

Chcialbym sie spytac, jak mozna zasymulowac wystrzal w Box2d.
Np.
C/C++
if( sf::Keyboard::IsKeyPressed( sf::Key::Space )
{
    b2BodyDef kulaDef;
    //...
    b2Body kula = world->CreateBody( kulaDef );
    b2CircleDef kulaShapeDef
    //...
    kula->CreateShape( kulaShapeDef );
    kula->SetMassFromShapes();
   
    //i co teraz?
Czy ktoś wie jak to zrobic?
P-81307
pekfos
» 2013-04-27 20:56:18
Nadaj obiektowi prędkość. Szukałeś w dokumentacji Box2D?
P-81308
kubawal
Temat założony przez niniejszego użytkownika
» 2013-04-27 21:09:19
Szukałem w manualu ale nic konkretnego nie znalazłem. Może do dlatego ze angielskiego się dopiero uczę :)
Nadać prędkość? A jak mam skierować kulę w odpowiednie miejsce za pomocą samej prędkości?
P-81310
DejaVu
» 2013-04-27 21:25:16
P-81312
kubawal
Temat założony przez niniejszego użytkownika
» 2013-04-27 21:43:51
Żaden z tych programów z linków nie jest w C++
P-81314
MrPoxipol
» 2013-04-27 21:54:36
Wystarczy, że przeniesiesz(czyt. przepiszesz) go na C++. Trochę kreatywności..
P-81315
kubawal
Temat założony przez niniejszego użytkownika
» 2013-04-28 19:34:03
Gdym tylko wiedział, co to za język... ;)
Ale nie, można się połapać o co chodzi.

/edit:
Chyba znalazłem coś. To funkcje ApplyForce() i ApplyLinearImpulse()
Z manuala:

Forces and Impulses
You can apply forces, torques, and impulses to a body. When you apply a force or an impulse, you
provide a world point where the load is applied. This often results in a torque about the center of mass.
C/C++
void ApplyForce( const b2Vec2 & force, const b2Vec2 & point );
void ApplyTorque( float32 torque );
void ApplyLinearImpulse( const b2Vec2 & impulse, const b2Vec2 & point );
void ApplyAngularImpulse( float32 impulse );
Applying a force, torque, or impulse wakes the body. Sometimes this is undesirable. For example, you
may be applying a steady force and want to allow the body to sleep to improve performance. In this
case you can use the following code.
C/C++
if( myBody->IsAwake() == true )
{
    myBody->ApplyForce( myForce, myPoint );
}
Tylko czym różnią się te funkcje i jak je zastosować?
Mój angielski trochę kuleje, a tłumacz google wypisuje bzdury, więc...
P-81419
DejaVu
» 2013-06-04 20:04:34
Rozwiązałeś problem? :) Podziel się nim :P
P-84853
« 1 »
  Strona 1 z 1