Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2018, 09:12   #11
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Цитата:
Сообщение от Isaev Посмотреть сообщение
Каждый круглый угол - жесткий скиниг на свою кость.
Это я сделал. Но мой вопрос остаётся открытым: Как сделать, чтобы масштабировалось в оба направления, так как кость может масштабироваться, только в одном направлении.

Цитата:
Сообщение от Isaev Посмотреть сообщение
Мне, в общем, самому интересно через что точно возможно
Я немного распишу тот способ, который предлагал выше. В этом способе не нужно применять кости и скининг, а только операции с матрицами: glm::scale и glm::translate

У нас есть объект, который мы хотим масштабировать по оси Y, при этом, чтобы размеры синих окантовок не менялся:
Cant001.png

На самом деле это не цельный объект, а объект разбитый на части:
Cant002.png

При масштабировании по оси Y в программе на OpenGL можно базу масштабировать с помощью glm::scale, а объекты-окантовки переносить с помощью glm::translate

Последний раз редактировалось 8Observer8; 21.01.2018 в 09:15.
8Observer8 вне форума Ответить с цитированием
Старый 25.01.2018, 03:30   #12
Isaev
Пользователь
 
Регистрация: 16.03.2007
Сообщений: 13
По умолчанию

Цитата:
Сообщение от 8Observer8 Посмотреть сообщение
При масштабировании по оси Y в программе на OpenGL можно базу масштабировать с помощью glm::scale, а объекты-окантовки переносить с помощью glm::translate
то, что нужно... Я не понимаю только одного в таком подходе... Для каждой оси "объекты окантовки" должны быть разные (при этом они имеют общие группы точек). Потому изначально задать объект, как разбитый на части мы не можем. Можем ли мы его разбивать программно на три объекта в зависимости от выбранной оси? Или мы его задаём, как куб и 26 объектов окантовки вокруг? Это как-то перегружено выглядит.

ps: масштабирование да, нужно будет не всегда только по одной оси
Isaev вне форума Ответить с цитированием
Старый 25.01.2018, 13:14   #13
coremission
Форумчанин
 
Аватар для coremission
 
Регистрация: 09.11.2017
Сообщений: 121
По умолчанию

Выглядит - да, перегруженно, у меня есть подозрение что если у Вас простая фаска - "срез" то ее можно сделать геометрическим шейдером. "подозрение" - потому, что я только теоретически с ними знаком, не использовал
Профессионально программирую видео-игры. Пишу бекстейдж-блог о разработке игр CoreMission.net.
Разрабатываю календарь выхода игр.
coremission вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемещение объекта OpenGl bosyak Мультимедиа в Delphi 7 06.11.2015 05:38
Проблема с текстурированием объекта в OpenGL Argentum_47 Общие вопросы C/C++ 4 21.03.2012 18:04
С++ и OpenGl-растяжение alexblg Общие вопросы C/C++ 6 10.02.2011 15:12
как происходит вращение, растяжение объекта? Dmitry72 Мультимедиа в Delphi 3 05.11.2009 17:38
Загрузка объекта OpenGL? spamer Мультимедиа в Delphi 6 05.10.2009 18:13