Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

C/C++ Graficke biblioteke srednjeg i viseg nivoa

[es] :: 3D programiranje :: C/C++ Graficke biblioteke srednjeg i viseg nivoa

Strane: 1 2

[ Pregleda: 3693 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon C/C++ Graficke biblioteke srednjeg i viseg nivoa01.02.2020. u 22:05 - pre 50 meseci
Pozdrav,

evo nova tema sa popisom grafickih biblioteka koje sam probao u poslednje vreme a voleo bih da cujem i vasa iskustva i sta se tu trenutno sve vrti.

Da rascistimo u startu, pricamo o uglavnom free C/C++ bibliotekama za grafiku koje mogu da rade bez windows managera (npr bez X11 ili Windows) tj koje mogu da rade i na embedded platformama poput Rasppery Pi i slicno (OpenGL ES) a to sto rade i na PC platformi (OpenGL) je lepo od njih :)

QT5, Unity i njihovi drugari nisu za ovu temu, ovo je "ispod" toga :)

Uglavnom meni bar zgodna resenja su ona koja mogu da u jednoj liniji code-a definisu jednu GUI komponentu npr button, checkbox i slicno a da ostane fleksibilno da se ta baza menja i nadograduje. Ima dosta biblioteka, pisacu o onim koje sam prakticno probao.

Raylib
https://www.raylib.com
https://www.raylib.com/examples.html
Vrlo fina cross-platform biblioteka koja je organizovana pop principu liniskog code-a, bez mnogo dubioza sa objektima, sednes kucas pozicije/boje i teraj ...
Citat:
raylib is a programming library to enjoy videogames programming; no fancy interface, no visual helpers, no auto-debugging... just coding in the most pure spartan-programmers way.


RayGUI
https://github.com/raysan5/raygui
Logican nastavak, biblioteka viseg nivoa koja koristi Raylib bazu.
Citat:
raygui is a simple and easy-to-use immediate-mode-gui library.


bgfx
https://github.com/bkaradzic/bgfx
Odlicna i vrlo popularna biblioteka u gaming krugovima, autor Branimir Karadžić, dosta slozenija od raylib, slozenija procedura za prevodjenje
Citat:
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.


OpenCV
https://github.com/opencv/opencv
Kompletan framework za grafiku i vizuelno procesiranje, prilicno glomazan ali vrlo pedatno napisan i stabilan
Citat:
OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.


cvui
https://github.com/Dovyski/cvui
https://dovyski.github.io/cvui/
Single-header fajl biblioteka sa osnovnim grafickim komponentama poput checkbox, button i slicno, radi na OpenCV bazi
Citat:
cvui is a (very) simple UI lib built on top of OpenCV drawing primitives. Other UI libs, such as imgui, require a graphical backend (e.g. OpenGL) to work, so if you want to use imgui in a OpenCV app, you must make it OpenGL enabled, for instance.



[Ovu poruku je menjao mikikg dana 01.02.2020. u 23:48 GMT+1]
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 04:01 - pre 50 meseci
"da rade bez windows managera (npr bez X11 ili Windows) tj koje mogu da rade i na embedded platformama "

X11 je display server a Windows ima api koji je na nivou kernela.

"QT5, Unity i njihovi drugari nisu za ovu temu"

Zasto ne QT, on moze da radi bez X11 takodje.

No opet gtk i Qt imaju tu prednost da mozes da radis preko bilo cega, recimo Wayland umesto X11
sve zavisi sta hoces.
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 13:11 - pre 50 meseci
Citat:
Branimir Maksimovic:
Zasto ne QT, on moze da radi bez X11 takodje.


Zato sto *** "Subscriptions starting at $459/month" :) i to samo za desktop i mobile a za embedded mora da pitas kolko jos preko toga :)
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

bojan_bozovic

Član broj: 29028
Poruke: 3292
87.116.178.*

Sajt: angelstudio.org


+392 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 14:27 - pre 50 meseci
Qt je LGPL3 koliko vidim, a ako ti je to nedovoljno, tj. za komercijalni proizvod koji bas ne moze da ima LGPL komponentu, nema razloga da se i ne plati licenca. Samo sta je to sto bas ne moze da ima LGPL komponentu?
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 15:42 - pre 50 meseci
Citat:
mikikg:
Citat:
Branimir Maksimovic:
Zasto ne QT, on moze da radi bez X11 takodje.


Zato sto *** "Subscriptions starting at $459/month" :) i to samo za desktop i mobile a za embedded mora da pitas kolko jos preko toga :)


Pa to ako hoces da staticki linkujes, no za embedded ne znam jel vazi lgpl ili ne. Verujem da si u pravu. No ako vec zaradjujes neke pare
onda mozda ta racunica i nije losa ukoliko hoces da skratis developer time. Pretpostavljam da je za firme ok.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 15:43 - pre 50 meseci
Citat:
bojan_bozovic:
Qt je LGPL3 koliko vidim, a ako ti je to nedovoljno, tj. za komercijalni proizvod koji bas ne moze da ima LGPL komponentu, nema razloga da se i ne plati licenca. Samo sta je to sto bas ne moze da ima LGPL komponentu?


Ne moze ako staticki linkujes, sto mislim da je za embedded.
 
Odgovor na temu

bojan_bozovic

Član broj: 29028
Poruke: 3292
87.116.178.*

Sajt: angelstudio.org


+392 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 15:50 - pre 50 meseci
Moze mislim da se staticki linkuje i LGPL, mada ta komponenta ostaje LGPL, program moze da bude proprietry. E sad, ako je bas problem da About box ili dokumentacija imaju link na LGPL source, izvoli pa plati. Ustvari, prema ovome https://stackoverflow.com/ques...43/gpl-lgpl-and-static-linking

treba da bude i mogucnost ponvnog linkovanja. Ni to nije problem, da se omoguci ponovno linkovanje.

https://copyleft.org/guide/com...-guidech12.html#x15-11500011.5

Citat:
If you choose to statically link or otherwise combine your program with an LGPLv3’d work via mechanisms other than a shared library, you may choose your own license for the work provided the license terms limitations for user modification, reverse engineering and debugging are met, and given that the LGPL’d components are still governed by LGPL’s terms. You must offer or provide CCS for the LGPL’d components. The source code material provided must be sufficient to regenerate the combined work with a user-modified version of the LGPL’d components.


Sto bi to bio problem? Jedino ako zelis da sprecis reverse engineering i ponovno linkovanje, ali onda lepo plati komercijalnu licencu.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 17:36 - pre 50 meseci
Pa problem je jer moras da das source code.
 
Odgovor na temu

bojan_bozovic

Član broj: 29028
Poruke: 3292
87.116.178.*

Sajt: angelstudio.org


+392 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 17:39 - pre 50 meseci
Ne moras, mozes da das svoj objektni fajl za linker, da sve ostane closed source, samo da korisnik moze da builda Qt iz sorsa i linkuje u izvrsni fajl.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 17:46 - pre 50 meseci
Pazi takva peripetija je tesko izvodljiva pogotovo sto to moze da ne moze. Qt je ranije bio cist GPL, ali su ga preneli na LGPL zbog pritisaka KDE zajednice.
No ostala je ta zackoljica i tesko da ce neko na sudu pravdati svoje postupke time da je dao obj fajl, ukolliko do toga dodje.
Pazi davanje obj fajla znaci ne smes da stripujes od simbola sto se lako da debagovati. Za firmu koja misli da zaradjuje na tome neprihvatljivo.
Lakse je platiti sta traze ako vec hoce to da koriste.
 
Odgovor na temu

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 17:52 - pre 50 meseci
Citat:
Branimir Maksimovic:
Pa to ako hoces da staticki linkujes, no za embedded ne znam jel vazi lgpl ili ne. Verujem da si u pravu. No ako vec zaradjujes neke pare
onda mozda ta racunica i nije losa ukoliko hoces da skratis developer time. Pretpostavljam da je za firme ok.

Sta pretpostavljas, placala ga prva firma gde smo radili zajedno. :) Znas da je OK. HAND....
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

bojan_bozovic

Član broj: 29028
Poruke: 3292
87.116.178.*

Sajt: angelstudio.org


+392 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 17:53 - pre 50 meseci
Zasto bi bilo tesko izvodljivo? Sta linker radi a da ne radi executable loader kad ucita dll/so fajl? Generise jednu tablu simbola sa jump instrukcijama tamo gde su procedure iz biblioteke?
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 18:08 - pre 50 meseci
Ako bi nekome davao tolike pare za SW to sigurno nebi bio QT :)
Ima jos toliko divnog software-a koji zasluzuje svaki ulozen dinar, nije vezano za grafiku ili mozda i jeste :)
https://www.hex-rays.com/cgi-bin/quote.cgi
Taj sve "razbucava" ...
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 18:53 - pre 50 meseci
Citat:
bojan_bozovic:
Zasto bi bilo tesko izvodljivo? Sta linker radi a da ne radi executable loader kad ucita dll/so fajl? Generise jednu tablu simbola sa jump instrukcijama tamo gde su procedure iz biblioteke?


Razlika je u tome sto u slucaju dinamickog linkovanja ne trebaju simboli iz tvog exe fajla da bi linkovao vec samo iz liba koji linkujes.
 
Odgovor na temu

bojan_bozovic

Član broj: 29028
Poruke: 3292
87.116.178.*

Sajt: angelstudio.org


+392 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 19:01 - pre 50 meseci
Dobro, ali to se ponajpre odnosi na sprecavanje reverznog inzenjeringa, kada je problem bez simbola disasemblirati? U kom slucaju nista LGPL ne bi dolazilo u obzir?
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
109.72.51.23



+1064 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa02.02.2020. u 19:20 - pre 50 meseci
Bojane, da sa LGPL dajes program na izvolte, jer se moze lako disasemblirati.

Miki, Qt ti jedina ozbiljna cross platform opcija trenutno.
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa03.02.2020. u 11:49 - pre 50 meseci
Hvala na informacijama oko QT ...

Nego da li ste probali jos nesto van trenutnog spiska, na primer Nuclear, Juce, iPlug2 i slicno?

Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa04.02.2020. u 17:23 - pre 50 meseci
To sto kazete na "izvolte" kako god da ga linkujes je drugi problem :)
Nema tu skrivanja, evo vam ga cuveni RME na primer (projekat je od TC electronic, i on je stradao :), stavili ljudi lepo graficke assete po fajlovima da se ne muce ljudi da vade iz hedera-a, a binary kad se otvori evo sta izlazi ... Rade ljudi u Juce framework-u ... I pocinje od initGL pa vozi Misko ... :)


Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
Prikačeni fajlovi
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa04.02.2020. u 21:56 - pre 50 meseci
Za manje upucene, ovo je RME-ov TotalMix, cisto primer jedne vrlo kompleksne graficke aplikacije sa izuzetno intezivnim i kompleksnim I/O ka perifernom uredjaju ...


Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
Prikačeni fajlovi
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: C/C++ Graficke biblioteke srednjeg i viseg nivoa05.02.2020. u 16:49 - pre 50 meseci
Oko svega ovoga se vrte graficki asseti, u gornjem screenshot je na primer sve u bitmap, posebni fajlovi, od rasterizovanih fontova raznih boja/velicina do svih onih buttona i pozadina u raznim bojama, pritisnuti, disejblovani i tako sva stanja posebno.
To su uradili da bi mogli da gurnu to sve u GPU memoriju pa ih posle uz transformaciju lepe u izlazni buffer ekrana + zbog kompatibilnosti, to ce da radi tako svuda isto stim sto ne moze da se skalira ekran/app/scena bez gubljenja kvaliteta.
Pricamo o SW iz Februara 2020, dakle tako se trenutno radi u produkciji ...

Da su baje ko sto nisu oni bi trebali da naprave vektorske te sve dugmice, svaki da ima svoj "materijal" i ostale uobicajne atribute za 3D objekte i da kompletno to sve stoji u GPU memoriji kako bi posle preko ver/frag shejdera to ultra-mega efikasno "orendali" na ekran, da ne spominjen 4K HD, kako bi ona RME aplikacija izgledala sa bitmap a kako sa vektorima + PBR renderingom ? :)

I na kraju gde to sve smestiti, te sve graficke assete, vektore i bitmape i na kraju kako transportovati te assete, oni uglavnom svi idu u kompletu, i tu dolazimo do vrlo interesatnog ne tako novog ali sve vise zastupljenog glTF file formata koji preporucuje OpenGL i Khronos group kao buduci univerzalni transfortmi format za graficke assete, dakle u jednom fajlu su definisani svi verteksi, sve teksture, sve pozicije objekta, svetlo na sceni, pozicija/animacija kamere, animacija objekta, dodatno moze da se nadogradi sam transportni format sa svojim funkcijama, postoje import/exporter skripte za sve poznate 3D alate poput Autodesk, Adobe, Blender pa nadalje.
Koje iz te 3D price njemu su poznati FBX, DAE, OBJ, Collada i slicni file formati, glTF je prakticno sve to zajedno.

Ova tema je samo jedan moj mali doprinos toj glTF prici, kroz tu applicaiju sam izucio format ...
https://www.elitesecurity.org/...droid-glTF-viewer-sa-OpenGL-ES




Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
Prikačeni fajlovi
 
Odgovor na temu

[es] :: 3D programiranje :: C/C++ Graficke biblioteke srednjeg i viseg nivoa

Strane: 1 2

[ Pregleda: 3693 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.