Конференция "Игры" » Opengl реализация камеры космического корабля [Delphi, Windows]
 
  • Kav (16.11.09 19:44) [0]
    Как в Opengl реализовать камеру для космического корабля/или самолета, как в аркадах ?
    как например в Heroes of the Pacific
  • 0x00FF00 (17.11.09 03:07) [1]
    возможно ответ Вас смутит, но — точно так же как и камеру для НЕ космического корабля =)

    конкретизируйте задачу.

    что требуется от камеры?
  • _ (17.11.09 07:54) [2]
    Скроллер-камера или 2D-камера?
  • Kav (17.11.09 14:23) [3]
    Камера для космического корабля, типа "верх должен быть динамичным, голова как бы наклоняется вместе с кораблем
    gluLookAt(TmX,Tmy,Tmz, // откуда смотрим
             TmX2,TmY2,Tmz2,    // куда смотрим
             TTT.X,TTT.Y,TTT.Z);    // где у нас верх

    а вот тут и надо как -то высчитывать вектор
    чтоб мир "верх" был динамичным, менялся как бы
    TTT.X,TTT.Y,TTT.Z);    // где у нас верх
  • _ (17.11.09 15:18) [4]
  • Kav (18.11.09 01:30) [5]
    Убил весь день испытывая эту камеру http://xproger.mentalx.org/old/?id=1&page=2&doc=camera

    не получается на основе нее сделать повороты по всем осям, ну в общем что-то не то получается,, я уж не знаю что делать неужели никто не делал для  космоса камеру?
  • _ (18.11.09 03:47) [6]
    Не парься. ;)

    http://igdc.ru/igdc_top.php?allkonkurs
    (См. scroller)

    P.S. Ммм... Сколько исходников. 8)
  • @!!ex © (18.11.09 11:00) [7]
    glRotatef(CameraRotation.X, 1, 0, 0);
    glRotatef(CameraRotation.Y, 0, 1, 0);
    glRotatef(CameraRotation.Z, 0, 0, 1);

    glTranslatef(-CameraPosition.x,-CameraPosition.y,-CameraPosition.z);

  • Kav (18.11.09 16:13) [8]
    (См. scroller)
    Там вообще камера с видом 2д в основном

    это же объект будет крутиться и перемещаться, а не камера
    glRotatef(CameraRotation.X, 1, 0, 0);
    glRotatef(CameraRotation.Y, 0, 1, 0);
    glRotatef(CameraRotation.Z, 0, 0, 1);

    glTranslatef(-CameraPosition.x,-CameraPosition.y,-CameraPosition.z);
  • _ (18.11.09 16:37) [9]

    > это же объект будет крутиться и перемещаться, а не камера


    Как ты вообще программируешь графику, если не знаешь про восстановление матриц?
  • Kav (18.11.09 16:59) [10]
    Кажется я врубился что вы мне тут втираете....

    применить эти команды для матрицы камеры, а не объекта...
  • @!!ex © (18.11.09 18:13) [11]
    Что такое матрица камеры?? O_o
    View чтоли из ModelView??
    Зачем ее отделять? Они прекрасно в одной матрице уживаются.
  • Kav (18.11.09 19:09) [12]
    То ли вы не можете понять что я хочу, то ли я сошел с ума...
  • Kav (18.11.09 19:13) [13]
    мне же нужно повернуть не один самолет а весь мир
  • _ (18.11.09 19:52) [14]

    > мне же нужно повернуть не один самолет а весь мир


    И тем самым уничтожить видяху.
    Зачем поворачивать ВЕСЬ МИР, не проще ли просто крутануть точку обзора, то бишь камеру?
  • @!!ex © (18.11.09 20:19) [15]
    > [12] Kav   (18.11.09 19:09)

    толи ты нифига не понимаешь как работает матрица трансформации
  • Kav (18.11.09 20:59) [16]
    я что-то не догоню
    как этот код
    glRotatef(CameraRotation.X, 1, 0, 0);
    glRotatef(CameraRotation.Y, 0, 1, 0);
    glRotatef(CameraRotation.Z, 0, 0, 1);

    glTranslatef(-CameraPosition.x,-CameraPosition.y,-CameraPosition.z);

    может повернуть саму камеру?
  • _ (19.11.09 15:19) [17]

    > может повернуть саму камеру?


    Нет. Это тебе просто так написали. ;D
  • @!!ex © (19.11.09 17:07) [18]
    > [16] Kav   (18.11.09 20:59)

    ну так ета... в матрицу запишется и повернет...
    Изменит положение и ориентацию системы координат.
    Грубо говоря - камера никуда не повернется, повернется весь мир относительно нее. :)
  • @!!ex © (19.11.09 17:09) [19]
    Вобщем то это элементарная математика. Возьми зашкирятник знакомого математика и попроси объяснить.
    И статей в гугле почитай. Жить станет проще.
    Сам несколько лет назад использовал "код из книжки" нихрена не понимая.
    После того как понял все что делаю, и перестал тупо копировать жизнь стала существенно проще и интересней. :)
 
Конференция "Игры" » Opengl реализация камеры космического корабля [Delphi, Windows]
Есть новые Нет новых   [118450   +38][b:0][p:0.001]