NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 1 - 3D grafika v OpenGL a C++ - Úvod a instalace

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Miroslav Vojtek
Tvůrce
Avatar
Miroslav Vojtek:10.11.2021 23:21

Ahoj super, že se někdo pustil po dlouhé době do tutoriálů pro Opengl. Jsem zvědav jak vyřešíš rychlost rotační matice pro GLM knihovnu, protože pokud vím tak jim to možná blbne doteď. Tedy problém je, že nastavená rychlost otáčení objektu je rozdílná, když to pustíš na rozdílně výkonných PC a i když tomu dáš výpočet synchronizace času snímku tzv. frameTime.

Odpovědět
10.11.2021 23:21
Programování je také evoluce
Avatar
Richard Bleier
Tvůrce
Avatar
Odpovídá na Miroslav Vojtek
Richard Bleier:12.11.2021 0:09

Ahoj,

díky, že tě zaujaly moje OpenGL tutoriály. Pokusím se je psát pravidelně :-)

Co se týče tvého dotazu ohledně synchronizace rychlosti rotace, tak bych tento problém nejspíše vyřešil pomocí tzv. delta time. Knihovna GLFW obsahuje funkci glfwGetTime(), která ti vrátí aktuální time-stamp. Při odečtení času na začátku a konci cyklu získáš delta time, kterým vynásobíš rychlost rotace a tím vypočteš přesnou hodnotu (nejen) rotace. Podle mého názoru jde o poměrně přesný a spolehlivý způsob synchronizace.

pozn.: Jako alternativní knihovna pro měření času by se dala použít <chrono>, avšak záleží na implementaci.

 
Odpovědět
12.11.2021 0:09
Avatar
Miroslav Vojtek
Tvůrce
Avatar
Miroslav Vojtek:12.11.2021 13:51

Ano ať už použiješ jakoukoliv metodu pro výpočet aktuálního snímku, tak i přesto s GLM funkcí pro rotaci se to neotáčí stejně rychle. Proto jsem se musel vzdát knihovny GLM a dát tam upravené pro vlastní použití zdrojové kódy (vektory, matice, a další) od jiných autorů a už to běželo tak jak mělo. Prostě tam GLM má někde myslím bug a asi v použití výpočetní přesnosti pro daný výpočet rotační matice. Ono jak jsem pracoval s tou knihovnou tak tam byly ještě pár drobností, které mně vadily. Jinak je to skvělá knihovna, přehledná a rychle použitelná.

Odpovědět
12.11.2021 13:51
Programování je také evoluce
Avatar
Odpovídá na Miroslav Vojtek
Patrik Valkovič:12.11.2021 18:25

Já používal rotační matici a nebyl s tím problém :D A těch pár bajtů navíc už dnes není zase takový deal.

Odpovědět
12.11.2021 18:25
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Miroslav Vojtek
Tvůrce
Avatar
Odpovídá na Patrik Valkovič
Miroslav Vojtek:12.11.2021 20:30

Ahoj a používal si vlastní rotační matici nebo tu přes GLM knihovnu a nebo ještě původní už zastaralou glRotatef?

Odpovědět
12.11.2021 20:30
Programování je také evoluce
Avatar
Jáchym Kresta:18.2.2024 12:34

Místo glm/glm.hpp jsem musel napsat jenom glm.hpp

 
Odpovědět
18.2.2024 12:34
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Jáchym Kresta
DarkCoder:18.2.2024 14:05

To proto, že si nastavil cestu do vnitřní složky GLM nikoli do té vnější.

Odpovědět
18.2.2024 14:05
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.