• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Własny silnik graficzny oraz własne skrypty C ++

Object Storage Arubacloud
0 głosów
964 wizyt
pytanie zadane 5 stycznia 2018 w C i C++ przez DamianGorajczyk_1984 Nowicjusz (120 p.)
Cześć , witam wszystkich ;) Chciałem zadać takie pytanie :

Otóż jestem na etapie tworzenia własnego silniczka graficznego pisanego w technologii OpenGL i  C/C ++ w Windows , w pewnym momencie człowiek dochodzi do wniosku że przydały by się skrypty do takie silniczka , otóż skrypty pisane w języku C ++ i tu jest moje pytanie , jak się zabrać do tego , tzn jak dołączyć kod źródłowy skryptu C ++ do pliku wykonalnego exe mojego silnika 3D tak żeby on wykonywał ten skrypt .

Dzięki z góry za odpowiedź ;) pozdrawiam !
1
komentarz 5 stycznia 2018 przez criss Mędrzec (172,590 p.)
Dlaczego nie lua albo własny język skryptowy?
1
komentarz 5 stycznia 2018 przez draghan VIP (106,230 p.)

Dlaczego nie lua albo własny język skryptowy?

O ile Luę w pełni rozumiem, to nie widzę sensu w tworzeniu milionowego z kolei autorskiego języka skryptowego. Dlaczego uważasz, że coś własnego byłoby lepszym wyjściem, niż skrypty w C++?

komentarz 5 stycznia 2018 przez criss Mędrzec (172,590 p.)
Bo na ten moment nie mam pomysłu jak by to miało działać. Chyba ze myślisz o napisaniu parsera/interpretera cpp, ale to imo byłoby przerostem formy nad treścią. Chyba ze baaardzo by się ten cpp okroiło z ficzerow  (co ofc w pewnym stopniu jest zrozumiałe jako ze ma to być jako język skryptowy) ale to z kolei byłoby kłopotliwe w użytkowaniu.
komentarz 5 stycznia 2018 przez j23 Mędrzec (194,920 p.)

Bo na ten moment nie mam pomysłu jak by to miało działać.

W sumie dość prosto. Użytkownik musiałby tylko zainstalować kompilator gcc/clang. Choć użycie C++ jako języka skryptowego dla silnika graficznego to IMO lekka przesada.

komentarz 5 stycznia 2018 przez draghan VIP (106,230 p.)
Istnieją interpretery czy kompilatory kodu C++, które można osadzić w aplikacji hoście. Na pewno łatwiej to zrobić, niż napisać własny, w pełni funkcjonalny język skryptowy.
komentarz 5 stycznia 2018 przez Milesq Nałogowiec (32,020 p.)
można też w pythonie pisać skrypt albo kompilować C++ do formy dll'a

3 odpowiedzi

+1 głos
odpowiedź 5 stycznia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)

C++ i lua to fajne i przyjemne połączenie:

  • łatwo osadzić interpreter w aplikacji-hoście,
  • niespecjalnie skomplikowane przekazywanie danych między hostem a interpreterem (wszystko działa w formie stosu),
  • język lua nie jest trudny,
  • nie potrzeba się bawić w żadną kompilację każdego nowego pluginu czy co ważniejsze, pisanie własnego interpretera (dla C++ ani autorskiego języka skryptowego).

Przykłady: skrypty na przedmioty do Garry's moda, skrypty dla CS2D i o ile się nie mylę, to któryś Wiedźmin/Wiedźminy też korzystał/korzystały ze skryptów lua. 

0 głosów
odpowiedź 5 stycznia 2018 przez Pascal Bywalec (2,720 p.)
edycja 5 stycznia 2018 przez Pascal
Mógłbyś użyć prostego systemu pluginów, napisać własny interpreter własnego języka skryptowego lub też użyć gotowych rozwiązań np skryptów lua

Edit 1: całkowite przebudowanie wypowiedzi :P
Edit 2: poprawa literówek.
komentarz 5 stycznia 2018 przez criss Mędrzec (172,590 p.)
Możesz rozwinąć? Nie rozumiem co masz na myśli
komentarz 5 stycznia 2018 przez Pascal Bywalec (2,720 p.)
Mam na myśli prosty system pluginów.

https://www.youtube.com/watch?v=qJ3vymx5IJk
https://www.youtube.com/watch?v=Tj3LYjFMUdI

Po odpowiednich modyfikacjach powinien umożliwić ci na zrobienie tego co chcesz
komentarz 5 stycznia 2018 przez DamianGorajczyk_1984 Nowicjusz (120 p.)
Cześć , właśnie myślałem wcześniej o tym aby stworzyć własny prosty język skryptowy , który by można było wykonywać w trakcie Runtime mojego silniczka , jednak właśnie tutaj zaczynają się schody bo trzeba by napisać właśnie ten interpreter od podstaw oraz zastosować proste algorytmy RPN(Reverse Polish Notation - Odwrotnej Notacji Polskiej) ,aby wyrażenia algebraiczne takie jak przekształcenia np. wektorowe i macierzowe wykonywały się . jeśli chodzi o pliki cpp skryptów to w moim silniczku już mam napisane operatory wykonujące właśnie takie działania algebry liniwej i tylko własnie szukam sposobu jak mniej więcej można by dołączyć taki plik cpp. skryptowy - no człowiek w końcu już trochę siedzi w tym C ++ i w dodatku kod C ++ kompilowany jest wysoko wydajny , chociaż rzeczywiście napisanie własnego języka skryptu i przepuszczenie go w silniczku przez interpreter jest faktycznie fajnym pomysłem - ale dużo czasu może zająć ;) Pozdrawiam
komentarz 5 stycznia 2018 przez Pascal Bywalec (2,720 p.)
edycja 5 stycznia 2018 przez Pascal
W internecie jest dużo bibliotek do obsługi skryptów lua, w skryptach tych można "rejestrować" funkcje z c++.

https://eliasdaler.wordpress.com/2014/07/18/using-lua-with-cpp-luabridge/

 

edit 1: pomyliłem artykuły :P
komentarz 5 stycznia 2018 przez criss Mędrzec (172,590 p.)

@Pascal - nie oglądałem filmików, ale słowo kluczowe "pluginy" już mi podpowiedziały o czym myślisz. Nie głupie. Może warto rozważyć i przede wszystkim rozwinąć troche ten pomysł (strzelam, że obejrzenie podesłanych przez ciebie materiałów Gynvaela pomoże :P). Wydaje się to troche kombajnem, ale może być ciekawe. 

@DamianGorajczyk - sam interpreter to nie jest duży problem, a może być ciekawe doświadczenie. No ale trzeba wziąć pod uwage, że to najmniej wydajne rozwiązanie. Takim czymś pomiędzy własnym interpreterem a systemem pluginów jest lua i to wydaje mi się najsensowniejszym rozwiązaniem (ostrzegam, że zupełnie nie jestem w temacie lua, więc dlatego wydaje mi się), chociaż chętnie zobaczyłbym jak radzą sobie dwa pozostałe.

0 głosów
odpowiedź 5 stycznia 2018 przez Knayder Nałogowiec (37,640 p.)
Taki mam pomysł, że po prostu z poziomu interfejsu tego silnika (Zgaduję że to silnik z jakimś tam edytorem czegoś tam), kompilujesz wszystko. Główne moduły silnika byłby już wcześniej skompilowane, a ten kod który pisze użytkownik byłby po prostu dołączany do kompilacji.

Podobne pytania

0 głosów
1 odpowiedź 1,067 wizyt
pytanie zadane 15 maja 2017 w Inne języki przez kalendarmenn Obywatel (1,270 p.)
0 głosów
1 odpowiedź 605 wizyt
pytanie zadane 16 czerwca 2018 w C i C++ przez Zayebisty Gaduła (3,200 p.)
0 głosów
2 odpowiedzi 466 wizyt
pytanie zadane 13 sierpnia 2015 w Offtop przez Bartek09797 Początkujący (440 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...