Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 26.05.2010, 10:40   #1
DeeJex
Разработчик
 
Аватар для DeeJex
 
Регистрация: 24.02.2010
Адрес: Новороссийск
Сообщений: 485
Написано 112 полезных сообщений
(для 329 пользователей)
camera fill

как расчитать координаты квада-оверлэя?
__________________
299 792 458
(Offline)
 
Ответить с цитированием
Старый 26.05.2010, 10:43   #2
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,356
Написано 2,472 полезных сообщений
(для 6,854 пользователей)
Ответ: camera fill

Не совсем понял вопрос.
Может это поможет?
;Функция создает квад под размер экрана
;параметры: сурфейс, зум камеры, фокусное расстояние до квада
Function CreateCamQuad(surf%, zoom# = 1.0, near# = 1.0)
    Local xscr%, yscr%, xcnt%, ycnt%, xpos#, ypos#, i%[4]
    ;размеры экрана
    xscr = GraphicsWidth()
    yscr = GraphicsHeight()
    ;координаты центра экрана
    xcnt = xscr Shr 1
    ycnt = yscr Shr 1
    ;проекция левого верхнего угла
    xpos = (   0 - xcnt) * near / +zoom / xcnt
    ypos = (   0 - ycnt) * near / -zoom / xcnt
    i[0] = AddVertex(surf, xpos, ypos, 0.0, 0.0, 0.0)
    ;проекция правого верхнего угла
    xpos = (xscr - xcnt) * near / +zoom / xcnt
    ypos = (   0 - ycnt) * near / -zoom / xcnt
    i[1] = AddVertex(surf, xpos, ypos, 0.0, 0.0, 0.0)
    ;проекция правого нижнего угла
    xpos = (xscr - xcnt) * near / +zoom / xcnt
    ypos = (yscr - ycnt) * near / -zoom / xcnt
    i[2] = AddVertex(surf, xpos, ypos, 0.0, 0.0, 0.0)
    ;проекция левого нижнего угла
    xpos = (   0 - xcnt) * near / +zoom / xcnt
    ypos = (yscr - ycnt) * near / -zoom / xcnt
    i[3] = AddVertex(surf, xpos, ypos, 0.0, 0.0, 0.0)
    AddTriangle(surf, i[0], i[1], i[2])
    AddTriangle(surf, i[2], i[3], i[0])
    Return i[0]
End Function
Собсно потом парентим его к камере.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
BlackOut (27.05.2010), DeeJex (26.05.2010)
Старый 26.05.2010, 10:52   #3
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: camera fill

Тригонометрия. Есть все данные, FOV камеры, размер экрана.
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ABTOMAT (27.05.2010)
Ответ


Опции темы

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

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


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com