purebasic.info

PureBasic forum
Текущее время: Сб дек 16, 2017 12:36 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
СообщениеДобавлено: Ср авг 30, 2017 9:47 am 
Не в сети
студент

Зарегистрирован: Сб янв 30, 2016 4:41 pm
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Как лучше реализовать перемещение камеры в направлении ее "взгляда"? Т.е. по задумке камера должна перемещаться в трехмерном пространстве, используя "самолетное" управление и связанную систему координат pitch/yaw/roll. С поворотом проблем никаких, а вот как рассчитать направление и дистанцию смещения, что-то не соображу.
Пока единственное, что придумывается, это использовать абсолютный угол поворота камеры в пространстве, и уже исходя из этого рассчитывать перемещение. Или это неверный подход?
UPD: Столкнулся с проблемой преобразования p/y/r в "обычные" углы поворота 0-360 или (-)180-180 градусов по трем осям.
UPD2: Хотя! В принципе единственным значимым параметром ИМХО является roll, а в зависимости от его значения соответственно изменяются pitch и yaw, которые можно заменить абсолютными углами. Я так думаю.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт окт 12, 2017 8:33 am 
Не в сети
студент

Зарегистрирован: Сб янв 30, 2016 4:41 pm
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Проблема давно и благополучно решена, отписаться тут не мог из-за пребывания без инета.
Теперь вопрос состоит в другом - можно ли штатными средствами сделать светящийся объект, типа звезды?

P.S. Да, пишу космосим - убийцу Х3) когда найду ответ на вопрос - выложу!


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт окт 12, 2017 11:58 am 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1562
Откуда: Алматы
Благодарил (а): 12 раз.
Поблагодарили: 37 раз.
Пункты репутации: 5
в ладве решили проблему с яркостью - глобально увеличив яркость монитора. потом просто что не нужно - убавляли отдельно для этого элемента. поэтому если игра вылетела с критом, то рабочий стол показывает намного ярче, чем стандартно.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт окт 12, 2017 1:59 pm 
Не в сети
студент

Зарегистрирован: Сб янв 30, 2016 4:41 pm
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
SereZa писал(а):
...

В принципе решение интересное, попробую копать в этом направлении.
UPD. Или я поглупел, или не там ищу. Но что-то не могу найти настройки: а) уровня яркости монитора, б) уровня яркости отдельного объекта.
Версия 5.31, использую родной Engine3D (Ogre).

UPD2. Проблема решена, космосим века готов!!! :D


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб окт 14, 2017 8:57 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Пн мар 02, 2009 3:46 pm
Сообщений: 193
Откуда: РФ Тверская область
Благодарил (а): 3 раз.
Поблагодарили: 8 раз.
Пункты репутации: 0
Mortifer писал(а):

UPD2. Проблема решена, космосим века готов!!! :D

Зя ли посмотреть?

_________________
Жизнь коротка. Потерпи немножко.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн окт 16, 2017 9:36 am 
Не в сети
студент

Зарегистрирован: Сб янв 30, 2016 4:41 pm
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
ALEXix писал(а):
Mortifer писал(а):

UPD2. Проблема решена, космосим века готов!!! :D

Зя ли посмотреть?


Конечно можно. Вечером до компа доберусь - выложу демку. Заодно и еще вопросы изложу, в процессе возникшие.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт окт 17, 2017 7:21 am 
Не в сети
студент

Зарегистрирован: Сб янв 30, 2016 4:41 pm
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Вот убийца всех космосимов и КРУЗИСА с графоном и экшоном, суть такова (с) Кирилл
Вложение:
demo.zip [246.56 KiB]
Скачиваний: 13

Управление:
Up(W)/Down(S) - тангаж, +LShift - стрейф.
Left(A)/Right(D) - крен, +LShift - стрейф.
+(MWheel_Up) - разгон, дроссель +1%.
-(MWheel_Dn) - торможение или задний ход, дроссель -1%, до -10%.
` - Выключение маршевого двигателя, дроссель=0.
1-0 - скорость 10-100%.
ESC - выход.
Для работы требуется Engine3D.dll
Разрешение экрана 1024х768, т.к. делается для нетбука.

Проблема: когда по оси Z значение превышает 1 000 000 (приблизительно) камера перестает смещаться на малые расстояния, меньше 0.1. И чем значение Z больше, тем больший минимальный сдвиг (файл 1b.exe во вложении).

Перемещение осуществляется вот так:
Код:
1
2
3
4
5
6
    If LShift=0
      RotateCamera(Camera, \pitch, 0, \roll, #PB_Relative)
      MoveCamera(Camera, 0, 0, \spd*(-1)/1000*DTime)
    Else
      MoveCamera(Camera, \roll*(-1), \pitch*(-1), \spd*(-1)/1000*DTime)
    EndIf


DTime - кол-во миллисекунд с прошлого вызова.
Вопрос - это особенность огра?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт дек 05, 2017 4:43 pm 
Не в сети
профессор

Зарегистрирован: Чт сен 22, 2011 6:21 pm
Сообщений: 212
Благодарил (а): 29 раз.
Поблагодарили: 21 раз.
Пункты репутации: 0
Mortifer писал(а):
Вопрос - это особенность огра?

Это особенность числа с точностью "Float" (реальная точность 7 знаков)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт дек 05, 2017 5:25 pm 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1562
Откуда: Алматы
Благодарил (а): 12 раз.
Поблагодарили: 37 раз.
Пункты репутации: 5
немного офтопну: в стиме попадался некий блендер, типа вроде как бесплатное программное обеспечение для создания трехмерных объектов. то есть это можно будет в нем создать фигуру, скажем с 3 наборами анимации: стоит, ходит, ударяет что-то и засунуть это дело в PB?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт дек 05, 2017 6:10 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт июн 25, 2009 1:02 pm
Сообщений: 2232
Откуда: Russia — Belarus
Благодарил (а): 0 раз.
Поблагодарили: 66 раз.
Пункты репутации: 11
SereZa писал(а):
немного офтопну: в стиме попадался некий блендер, типа вроде как бесплатное программное обеспечение для создания трехмерных объектов. то есть это можно будет в нем создать фигуру, скажем с 3 наборами анимации: стоит, ходит, ударяет что-то и засунуть это дело в PB?

Конечно, только надо разобраться, как экспортировать в Ogre3D (3D движок в PB), но думаю вот:
http://wiki.ogre3d.org/Blender+Exporter

И да, Blender не обязательно в Steam'е, есть даже Portable.

_________________
EnableExplicit User


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Yahoo [Bot] и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB