Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Танки2d/opengl 
:(
    Опции темы
obivan097
Дата 19.8.2016, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 19.8.2016

Репутация: нет
Всего: нет



Я решил сделать танчики 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
PM MAIL   Вверх
glDevAleksey001
Дата 20.1.2017, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 7.8.2014

Репутация: нет
Всего: нет



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
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.1037 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.