Autor Wątek: java(jogl,3d api) czy c# (tao,...)?  (Przeczytany 2635 razy)

Offline krychaj

  • Użytkownik

# Marzec 08, 2009, 20:30:42
Witam.

pierwszy post na forum, i nie wiem w którym dziale zapytać się o taką kwestię...

tworzę obecnie pewien system pomiarowy (elektronika + soft) i muszę w tym celu stworzyć aplikację operującą danymi z pomiarów oraz wizualizującą cały proces (poruszanie się człowieka). proces chce stworzyć w OpenGL.

Mam pewne doświadczenie z OGL w C++ oraz z Java3D API lecz zacząłem się zastanawiać nad nauką C#. Pytanie dotyczy tego który z tych języków daje mi większe możliwości? Możliwości pod względem wizualizacji, łatwość programowania, gotowych modułów (silniki, moduły do rysowania wykresów, łatwość pisania ramek komunikacji pomiędzy urządzeniami zewnętrznymi - np. obsługa rs232).

dodatkowo pytanie....czy JBuilder dorównuje poziomowi Windows Forms? a może przewyższa? a może inne IDE?

Spędziłem ostatnie 3 dni na poszukiwaniach przykładów z ładowaniem modeli dla C# oraz JAVA(jogl) i biednie z tym. Może jednak C++ jest wydajniejszy w przypadku OGL?

pozdrawiam

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline grrr

  • Użytkownik

# Marzec 08, 2009, 22:00:08
Po pierwsze:
- C++ jest wydajniejsze niż java, czy C# (statystycznie).
Po drugie:
- Możliwości języków: moim zdaniem to, co chcesz zrobić, sklecisz w każdym z tych języków, więc pisz, w czym masz ochotę. Łatwość programowania zależy przede wszystkim od znajomości języków i wszystkiego co jest "w koło" - kompilatorów, maszyn wirtualnych, bibliotek itp., więc najprawdopodobniej napiszesz najszybszy, najlepszy kod w tym języku, który znasz najlepiej...
Do Javy polecam Eclipse albo Netbeans (z JBuilderem nie miałem nic do czynienia, więc na jego temat się nie wypowiadam, Eclipse w 100% mi wystarcza).
Spędziłem ostatnie 3 dni na poszukiwaniach przykładów z ładowaniem modeli dla C# oraz JAVA(jogl) i biednie z tym. Może jednak C++ jest wydajniejszy w przypadku OGL?
Gotowych silników graficznych dla C++, C#, czy Javy jest sporo (choć dla C++ pewnie najwięcej). Mają przykłady, tutoriale, artykuły jak ładować modele... Możliwości masz naprawdę multum: wybierz np. C++ z Ogre, Javę z JMonkeyEngine itd... itd.... zdefiniuj swój cel: chcesz poznać nowy język programowania, wybierz sobie jakiś; chcesz się nauczyć pisać aplikacje wykorzystującą OpenGL (choć masz pewne w tym doświadczenie) wybierz język jaki chcesz; jak masz do napisania projekt i zależy Ci na nim, a nie na technologiach, użyj gotowego silnika i języka, który preferujesz; jeśli chcesz za jakiś czas pracować w GD, to jednak polecam C++.

Co do Javy z JOGL lub lwjgl (porzuć Java3D), C# z TAO, to zawsze będziesz miał narzut związany z tymi technologiami (czytaj: C++ będzie szybsze), choć przy porządnie napisanej aplikacji narzut związany z wywołaniem metod natywnych będzie trudnomierzalny.

Pytanie dotyczy tego który z tych języków daje mi większe możliwości?
Każdy z tej trójki ma bardzo duże możliwości. Dla Twojego problemu każdy się nada. Jeśli chcesz się nauczyć C#, tylko po to, żeby napisać ten projekt (a nie odwrotnie), to robisz błąd.

Offline Esidar

  • Użytkownik

# Marzec 08, 2009, 22:07:30
Do rysowania jednej postaci możesz użyć czegokolwiek. Wydajność nie ma tutaj znaczenia. Java i C# oferują te same mozliwości (ilość biblikotek, wydajność, łatwość pisania).
Jeżeli masz doświadczenie w Java to użyj Java. C# nie wiele tutaj zmieni.

Offline krychaj

  • Użytkownik

# Marzec 08, 2009, 22:25:49
dzięki za wyczerpująca odpowiedź.

mam już szkielet samej wizualizacji w OGL w C++...jednak, co się dziś doczytałem...Windows Forms nie obsługuje OGL (VS2008), i tu się zaczyna robić kolejny problem (ms jednak preferuje swoje technologię). Czy możecie zatem polecić mi jakieś IDE do tworzenia okienek (darmowe, a zarazem z możliwościami) w których bez problemu umieszczę okno z grafiką OGL (wizualizacja ma się odbywać w jakimś panelu - obok różne ustawienia, wykresy, ...)? A może jednak da się umieścić OGL w WF?

pytanie do grrr...dlaczego z góry skreślasz java3d?

pozdrawiam.
« Ostatnia zmiana: Marzec 08, 2009, 22:32:26 wysłana przez krychaj »

Offline Dab

  • Redaktor
    • blog

# Marzec 08, 2009, 22:32:41
Cytuj
.Windows Forms nie obsługuje OGL (VS2008)

W Tao Framework masz kontrolkę GLCanvas.

Offline krychaj

  • Użytkownik

# Marzec 08, 2009, 22:34:36
W Tao Framework masz kontrolkę GLCanvas.

ale TAO jest dla c#...a kod mam w c++. chyba ze jakiś inny engine, tylko że jak dotąd pisałem sam z książki (+ biblioteki milkshape)...

korzystaliscie może z bibliotek SharpGL? http://www.sharpgl.com/   Co o nich sądzicie?
« Ostatnia zmiana: Marzec 08, 2009, 23:20:17 wysłana przez krychaj »

Offline Dab

  • Redaktor
    • blog

# Marzec 08, 2009, 23:46:43
Napisałeś, że używasz Windows Forms. Jest to element .NET Framework, z którym współpracuje Tao - niezależnie od języka (C#, VB.net itd).

Offline Darck

  • Użytkownik

# Lipiec 22, 2009, 15:12:57
strona sharpgl padła. jakby ktoś przypadkiem miał jakieś materiały z niej proszę o kontakt.

Offline głos

  • Użytkownik

# Lipiec 23, 2009, 23:58:20
Padła bo istnieje i dynamicznie rozwija się o niebo lepszy projekt.
Proponuję zainteresować się rewelacyjną biblioteką openTK.
Już niedługo multiplatformowe gry w C# to nie będzie marzenie a codzienność.
Mamy już mono + openTK i gra śmigająca na Linuxach, Mac OS X-ach i pecetach bez rekompilacji jest możliwa!