Перейти к содержимому


Свернуть чат Чат Открыть чат во всплывающем окне

Гость : (5 дней назад) Только он уже не актуален.
Гость : (5 дней назад) smt005: https://smt005.my1.ru/ так он и сейчас есть!
Yakim (Watco... : (4 недель назад) молодец
Nextovoy : (4 недель назад) И поэтому я нажал пару кнопочек чтобы виртуозно продемонстрировать что это правда ;d
Гость : (4 недель назад) Да) Только я не тот гость что написал про "что-то смешное", я просто прокомментировал запись другого гостя, потому что мне лень заходить в учётную запись
Yakim (Watco... : (15 Июнь 2019 - 04:46) Сам себя не похвалишь, никто не похвалит, да?)
Гость : (11 Июнь 2019 - 22:21) Это самое лучшее из проектов за последние 4 года
Гость : (10 Июнь 2019 - 17:43) Что-то смешное на форуме: http://forum.skyrive...php?f=18&t=4869
Гость : (21 Май 2019 - 18:30) Тут могла быть ваша реклама
Гость : (18 Май 2019 - 11:56) Эх, это же одно и то же...
Гость : (18 Май 2019 - 11:56) Точнее тут: http://forum.skyrive...4767&start=1230 :D
Гость : (18 Май 2019 - 11:55) Афигеть, никто ничего не делает. Помнится ещё Nextovoy делал прикольный проект >_> http://forum.skyrive...4767&start=1230
Гость : (15 Май 2019 - 11:38) Афигеть, форум был создан в 2014. Помнится ещё такой форум был https://smt005.my1.ru/
Гость : (23 Апрель 2019 - 17:46) Поддерживаю! (Шаман)
Гость : (21 Апрель 2019 - 09:25) А ну ка начали делать Remastered и другие классные проекты
Гость : (21 Апрель 2019 - 09:25) Ну и чо сидим на жопе ровно то .-.
Гость : (17 Февраль 2019 - 13:27) Вот это поворот, это я удачно зашел.
Nextovoy : (06 Февраль 2019 - 08:49) кыш-кыш-кыш
Гость : (05 Февраль 2019 - 21:23) ?
lz : (24 Январь 2019 - 13:55) а ну кыш-кыш
Гость : (24 Январь 2019 - 02:19) https://www.patreon.com/mechanoids
Гость : (24 Январь 2019 - 02:18) http://forum.skyrive...file.php?id=242
Nextovoy : (21 Декабрь 2018 - 18:49) Не ну а чего... Если тут мало что весёлого стало происходить :(
Yakim (Watco... : (19 Декабрь 2018 - 20:08) Изображение
Nextovoy : (12 Декабрь 2018 - 15:20) Пойду ногти подстригу...
Гость : (09 Декабрь 2018 - 15:05) патч
Nextovoy : (29 Ноябрь 2018 - 19:58) Пойду побреюсь...
PA3UJIb : (29 Ноябрь 2018 - 15:15) Что за мод? Что меняет/добавляет? От какой части Механоидов? Как его поставить на "чистую" игру? Почему я тыкаю мышкой в ссылку и ничего не происходит?
Гость : (29 Ноябрь 2018 - 05:55) Новый мод на Механоиды 1: goo.gl/u4857V
Гость : (29 Ноябрь 2018 - 05:53) Привет
Nextovoy : (20 Ноябрь 2018 - 12:23) Ну, М3 вовсю делают официально, поэтому... Remastered в принципе от фанатов фанатам может долго делаться. Colobot вот уже сколько лет только переписывают, а игрушка то затягивает
Гость : (18 Ноябрь 2018 - 22:11) думаю, к 2197 году потомки смогут поиграть в альфу...
smt005 : (07 Ноябрь 2018 - 12:34) Блиин, я думал что уже игра готова, а нет. Заглохло всё?
lz : (30 Сентябрь 2018 - 13:40) Оно там просто всё вместе лежит.
Folgen : (30 Сентябрь 2018 - 12:05) Даже сам Товарищ Майор не нашел бы.
Folgen : (30 Сентябрь 2018 - 12:04) Ого, ребусы.
lz : (30 Сентябрь 2018 - 11:53) Я там постоянно.
lz : (30 Сентябрь 2018 - 11:52) Можно початиться в реалтайме в телеге - https://t.me/joincha...j5MKUrxakTyCPwQ
lz : (30 Сентябрь 2018 - 11:46) Тулзы качаются программой bootstrap_tools из бутстраппера (как скачать - у меня в подписи). Если хочется самим собирать, отпишитесь ещё, я инструкции по сборке допишу.
PA3UJIb : (29 Сентябрь 2018 - 05:29) по ходу это из LLVM
PA3UJIb : (29 Сентябрь 2018 - 05:27) cmake скрипты недописаны. А заголовочники сначала подумал, что из boost, но и там такого не нашел
Folgen : (27 Сентябрь 2018 - 08:38) У меня вообще фигня с СиМэйк. Я уж подумал ну его. А там хедеры нужны от Полигона4.
Folgen : (27 Сентябрь 2018 - 08:37) Вот-вот!
PA3UJIb : (26 Сентябрь 2018 - 20:07) Не знаю, я не смог его "tools" собрать - многих заголовочных нету и хз где их брать.
Гость : (24 Сентябрь 2018 - 14:07) У кого-нибудь есть полный пак инструментария от lz?

Фотография
- - - - -

Terrain Engine

OpenGL Heightmap

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 24

#21 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 13 Апрель 2015 - 16:04

Уже качаю

 

-----------------------------------

 

Ай, эти довороты камеры меня укачивают  :wacko:

 

-----------------------------------

 


глянуть файлы FBO.hpp (класс фреймбуффер обжекта описан), Origin.hpp (система координат), Camera.hpp (мой ноу-хау подход к камерам в ОпенГЛ)

Класс "система координат" ну, сделал, да, сделал, хотя по-моему и повороты, и точка начала отсчета - все они в матрице трансформаций есть. Оттуда и вытягивать всё. Но в отдельном классе тоже хорошо.

Класс камеры "тяжеловат" - многие функции бы убрать. Вообще, на мой косой взгляд, в камере должны быть только позиция, ориентация и матрица проекций - то есть "откуда", "куда" и "как" смотрит. Это как сделано у меня :-Р

Класс ФБО - ну, с классом проще, да. Я пока просто мало с ним работал, чтобы найти там фичи, которые в ООП надо было бы заворачивать.


 


#22 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 14 Апрель 2015 - 20:45

Так я тебе чисто для примеров кода посоветовал глянуть - как ОпенГЛ функции применять. На случай если ты ещё не до конца вкурил работу с ФБО.

Кста, выяснил, наконец, что FBO хранит в своих пропертях read и write буфферы - так что glReadBuffer и glDrawBuffers не нужно более одного раза вызывать - только вьюпорт каждый раз при биндиньи другого ФБО.

 

Класс "система координат" ну, сделал, да, сделал, хотя по-моему и повороты, и точка начала отсчета - все они в матрице трансформаций есть. Оттуда и вытягивать всё.

Ага, ты так и не просёк фишку. Обратная матрица будет использоваться не намного реже обычной. Если хранить и использовать в виде матрицы, то нахождение обратной для 4х4 требует значительных вычислений. Плюс 4-я строка (0,0,0,1) только место занимает и никогда не меняется - зачем лишние 16 байт тратить? А в виде трех ортоганальных векторов и точки отсчёта нахождение обратной матрицы сводится к простому транспонированию тройки координатных осей и умножению точки отсчёта на матрицу 3х3 - это много проще нахождения обратной матрицы для 4х4.

 

Короче говоря, так рациональнее хранить систему координат, чем в виде матрицы. Хотя по сути, тройка осей и точка отсчёта - это матрица mat4x3.

 

Класс камеры "тяжеловат" - многие функции бы убрать. Вообще, на мой косой взгляд, в камере должны быть только позиция, ориентация и матрица проекций - то есть "откуда", "куда" и "как" смотрит. Это как сделано у меня :-Р

А я мыслил о камере как о виртуальном объекте, представляющем собой прямоугольную проекционную плоскость шириной xSize, высотой ySize и находящуюся на расстоянии zNear от центра системы координат, к которой камера "прилеплена" (Origin). С моим ноу-хау подходом zNear может быть настолько маленькой, что такая объект-камера в зрачке персонажа поместится. Хм, для большего реализма такой камеро-симуляции перспектива должна задаваться не углом, а двиганьем проекционной плоскости (изменением zNear) ближе-дальше к центру проекции, что есть центр системы координат, к которой камера прилеплена. Типа как выдвигание объектива камеры при зуме: плоскость ближе - угол обзора шире, плоскость дальше - угол обзора меньше (т.е. всё укрупняется). Хм, в реале как у камеры эффект получаецца... :rolleyes:



#23 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 14 Апрель 2015 - 21:22


Хотя по сути, тройка осей и точка отсчёта - это матрица mat4x3

Ну, если так подходить, то да, тогда согласен. Чутка больше математики только, не?


А я мыслил о камере как о виртуальном объекте, представляющем собой прямоугольную проекционную плоскость шириной xSize, высотой ySize и находящуюся на расстоянии zNear от центра системы координат

Интересно, можно ли визуализировать такой фруструм?


 


#24 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 14 Апрель 2015 - 23:09

Ну, если так подходить, то да, тогда согласен. Чутка больше математики только, не?
Наоборот. И вапще, я имел в виду, что содержимое COrigin (m,p) можно просто интерперитировать как mat4x3 и так и использовать. Но только напрямую, т.к. обратная матрица определена лишь для квадратных матриц.


Интересно, можно ли визуализировать такой фруструм?
Точно так же он визуализируется, как обычный фрустум, только бОльшего основания нет - оно бесконечно далеко, т.к. задней плоскости отсечения нет.

#25 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 15 Апрель 2015 - 19:49

---

Наткнулся на артикл, рассказывающий как хаймапа у эпиков сделана. Внимание привлёк этот абзац:

 
Static Render Data Stored as Textures in GPU Memory

The Landscape system stores the render data for the terrain in Textures in GPU memory, allowing data to be looked up in the vertex shader. The data is packed into a 32-bit Texture with the height occupying 16-bits in the form of the R and G channels and X and Y offsets stored as 8-bit values in the B and A channels, respectively.

Гениальное решение, как оно не пришло мне в голову? Это позволяет плотнее кучковать вершины в местах с большим перепадом высот, оттягивая их от ровных участков. Т.е. топология трегуов сохраняется, хоть конкретные позиции вершин и не привязаны к квадратной сетке. Так можно даже овраги и навесы делать. И не будет растянутостей на вертикальных склонах.

Но тут проблема с терраформингом возникает. Ведь если сетка регулярная, то можно чётко сказать, какая вершина находится на конкретных горизонтальных координатах. Но когда у каждой есть своё смещение, то уже нельзя. Так что такой способ хорош лишь для рендера, наверное, и терраформинг тогда отпадает. Хотя хз, нужно ещё помозговать...







Темы с аналогичным тегами OpenGL, Heightmap

Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных