Size: a a a

pro.graphon (and gamedev)

2020 February 25

T

Ternvein in pro.graphon (and gamedev)
Adanos Gotoman
Привет! Возможно, что фигню спрашиваю, Но всё же...
Можно ли сделать так, чтобы драг дропом из панели перетаскивать какой-то мнимый Shape, который при перетаскивании во вьюпорт будет превращаться в какую-то фигуру? То есть, перетащил первый раз, на форму вылетел круг, во второй уже куб и т.д.
Привет. Нет контекста. Технически, естественно, можно.
источник

AG

Adanos Gotoman in pro.graphon (and gamedev)
Ternvein
Привет. Нет контекста. Технически, естественно, можно.
Можешь подсказать, в какую сторону гуглить/думать?)
источник

T

Ternvein in pro.graphon (and gamedev)
В сторону оконного менеджера и/или библиотеки, которую используешь. Я же говорю, слишком мало контекста. Что есть "панель", принадлежит ли она твоему приложению, и что, собственно, приложение использует для доступа к API оконного менеджера.
источник

T

Ternvein in pro.graphon (and gamedev)
Если панель твоя, то вообще ничего из этого не нужно.
источник

AG

Adanos Gotoman in pro.graphon (and gamedev)
Да просто интересно стало, как, допустим, из одной кнопки "Фигура" дропнуть на форму шейп (пускай сфера), который при событии onMouseDown уже сгенерировался. И остаётся его только дотащить до формы. При следующем дропе программа уже пусть генерирует другой шейп (пускай куб) и т.д.
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Adanos Gotoman
Да просто интересно стало, как, допустим, из одной кнопки "Фигура" дропнуть на форму шейп (пускай сфера), который при событии onMouseDown уже сгенерировался. И остаётся его только дотащить до формы. При следующем дропе программа уже пусть генерирует другой шейп (пускай куб) и т.д.
Статические поля? Запоминай что было до этого
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Даже не статики, наверное
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Просто поля
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Adanos Gotoman
Привет! Возможно, что фигню спрашиваю, Но всё же...
Можно ли сделать так, чтобы драг дропом из панели перетаскивать какой-то мнимый Shape, который при перетаскивании во вьюпорт будет превращаться в какую-то фигуру? То есть, перетащил первый раз, на форму вылетел круг, во второй уже куб и т.д.
Пересечение луча под курсором с содержимым сцены (взятие расстояния из буфера глубины по большей части) или, если никуда не попал, с какой-нибудь плоскостью (на высоте 0, например)
источник

AG

Adanos Gotoman in pro.graphon (and gamedev)
Не, с панели я уже могу. Суть в том, чтов моём курсаче есть класс Shape3D (главный), а также его наследники - куб, сфера, параллелограмм. Шейп у меня в роде сумки, в которую я складирую фигуры.
Щас я захотел немного поизвращаться и сделать реализацию дропом. Только теперь не я буду реализовать классы фигур, а сама программа (или метод). И пускай будут не только те фигуры, которые в курсаче, но и другие (тетраэдр, октаэдр и т.д.)
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Alexander Busarov
Судя по комментариям - это несколько первых членов ряда Тейлора, я угадал?
верно
источник

NK

Nikita Kosenkov in pro.graphon (and gamedev)
Ребят всем привет, направили к вам из чата supapro.cxxx) кто может помочь с OpenGL, не хочу тут флудить поэтому если можно в личку?
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Nikita Kosenkov
Ребят всем привет, направили к вам из чата supapro.cxxx) кто может помочь с OpenGL, не хочу тут флудить поэтому если можно в личку?
Лучше пиши сюда
источник

NK

Nikita Kosenkov in pro.graphon (and gamedev)
Программа выводит, с помощью gldrawarraysinstanced, большое количество одинаковых фигур (например - эллипсов) и мне необходимо определять соответствующий эллипс положению мыши на экране. Я придумал такой алгоритм - передаю координаты мыши (уже пересчитанные из экранных в физические) прямо в Шейдер и узнаю принадлежит ли точка данному эллипсу. Соответственно мне необходимо вернуть значение из шейдера. Для этого я использую transform feedback или queries. Но данный подход не работает для всех инстансов, а только для первого gl_InstanceId = 0.
Как можно сделать так чтобы я мог в одну переменную типа int записать индекс gl_InstanceId и получить его уже в программе c++.

Заранее спасибо за помощь!!!!
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Nikita Kosenkov
Программа выводит, с помощью gldrawarraysinstanced, большое количество одинаковых фигур (например - эллипсов) и мне необходимо определять соответствующий эллипс положению мыши на экране. Я придумал такой алгоритм - передаю координаты мыши (уже пересчитанные из экранных в физические) прямо в Шейдер и узнаю принадлежит ли точка данному эллипсу. Соответственно мне необходимо вернуть значение из шейдера. Для этого я использую transform feedback или queries. Но данный подход не работает для всех инстансов, а только для первого gl_InstanceId = 0.
Как можно сделать так чтобы я мог в одну переменную типа int записать индекс gl_InstanceId и получить его уже в программе c++.

Заранее спасибо за помощь!!!!
SSBO
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
Это просто буфер который можно писать/читать в шейдерах и на цпу
источник

NK

Nikita Kosenkov in pro.graphon (and gamedev)
Я на queries пробовал это не поможет? Хотел как можно проще все это реализовать
источник

CU

Columbus Utrigas in pro.graphon (and gamedev)
SSBO это самое простое что можно придумать, просто буфер
источник

NK

Nikita Kosenkov in pro.graphon (and gamedev)
Columbus Utrigas
SSBO это самое простое что можно придумать, просто буфер
Ладно попробую ещё раз почитать про данный буфер
источник

NK

Nikita Kosenkov in pro.graphon (and gamedev)
Columbus Utrigas
SSBO это самое простое что можно придумать, просто буфер
Спасибо огромное за помощь
источник