Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Танки2d/opengl


Автор: obivan097 19.8.2016, 16:43
Я решил сделать танчики 2d с использованием opengl 
танки/снаряд/преграду  нарисовать я смог
Как сделать объект/преграду "непроходимой" чтобы танк не мог проехать через преграду
Как показать движение пули(Пулю я записал в класс Bullet :
Код

class Bullet
{
public:
    float x, y, r;
    int amountSegments;
    
    Bullet(int _x=100,int _y=1, float _r=10):x(_x), y(_y), r(_r), amountSegments(40){};
    void draw();
};

)
И как уничтожить танк и пулю когда они столкнуться ?
Если можно скиньте пример части кода где есть решение моего вопроса
Ответ должен быть понятен новичку smile

Автор: glDevAleksey001 20.1.2017, 10:25
Enum v{Variant1,Variant1}

struct Vector2{

float X,Y;

}


class b{
public bool vari=false;
public float a=0.0f
public float sck=0.0f
public Vector2 PlayerPosition;

---------------------------------------------------------------------------------------
public Vector2 LineForPoint(float sck, Vector2 P1,Vector2 p2){

return p1+sck*(p2- p1);

-----------------------------------------------------------------------------------------
public Vector2 DirectionForPoint(float a, float Speed, Vector2 PlayerPosition){
PlayerPosition.X += Cos(a)* Speed;
PlayerPosition.Y += Sin(a) * Speed;
return PlayerPosition;

------------------------------------------------------------------------------------------
public void update(){

if(vari){

Vector2 bullet =LineForPoint(sck, Vector2(100.0f,0.0f,0.0f),Vector2(0.0f,0.0f,0.0f));
sck+=0.1f;
Код




}else{

           bullet =DirectionForPoint(a,0.1f ,Vector2(0.0f,0.0f,0.0f));
}


            Render(bullet);

}
public void Render(Vector2 bullet){


GL.BeginMode(POINT);

GL.Vertex2(bullet);

GL.End();





}

}

Добавлено через 4 минуты и 2 секунды
https://ok.ru/group/54991674343438

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)