Autor Wątek: DirectX w linuxie  (Przeczytany 5830 razy)

Offline Frondeus

  • Użytkownik

# Styczeń 14, 2010, 10:58:45
Mam taki mały problem:
W niedalekiej przyszłości skończy mi się licencja na W7 Rc.
Chciałbym się przenieść na Ubuntu, lecz nadal robić gry dla Windowsa z wykorzystaniem DirectXa.
I teraz mam pytanie: Jak to rozwiązać? Kompilować za pomocą MSVC w Wine? Czy VirtualBox z xp i MSVC ? A może można jakoś podłączyć sdk do linuxowego kompilatora i w nim pisać oraz kompilować do exe?   

OpenGL nie wchodzi narazie w gre( 5/3 kodu musiałbym pisać od nowa, zas reszta drużyny moze nie znac OpenGL'a )

Offline Mr. Spam

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

st3tc

  • Gość
# Styczeń 14, 2010, 11:05:50
Odpuść sobie Ubuntu. Mi strasznie muliło a w dodatku ostatecznie się rozleciało w pył jak sobie ściągnęło "łatkę". Niby będziesz miał OS-a, ale wszystko i tak musisz non stop dociągać z netu :). MSVC pod Wine raczej nie postawisz (chyba, że jakiś antyk). Pozostaje cross mingw i Wine ale ryzykowna to zabawa :)

Offline Liosan

  • Redaktor

# Styczeń 14, 2010, 11:08:35
Kurcze, jeśli masz licencję na XP żeby go postawić na vboxie, to czemu nie postawisz go obok ubuntu? Tylko i wyłącznie by używać go do deweloperki?

Chyba rozwiązanie z vboxem jest najlepsze z wymienionych przez Ciebie...

Liosan

Offline skoti

  • Użytkownik

# Styczeń 14, 2010, 11:22:29
Mam taki mały problem:
W niedalekiej przyszłości skończy mi się licencja na W7 Rc.
Chciałbym się przenieść na Ubuntu, lecz nadal robić gry dla Windowsa z wykorzystaniem DirectXa.
I teraz mam pytanie: Jak to rozwiązać? Kompilować za pomocą MSVC w Wine? Czy VirtualBox z xp i MSVC ? A może można jakoś podłączyć sdk do linuxowego kompilatora i w nim pisać oraz kompilować do exe?   

OpenGL nie wchodzi narazie w gre( 5/3 kodu musiałbym pisać od nowa, zas reszta drużyny moze nie znac OpenGL'a )
MSVC nie zadziała pod wine (chyba ze visual studio 6.0)... ale to akurat nie jest problemem, bo lepszy kod wygeneruje GCC 4.x (a cross kompilator mingw32/gcc generujący exe zapewne będzie w repo dystrybucji). Co do uruchamiania programu to ja z wine bym nie ryzykował (niby można, ale nigdy nie masz pewności czy będzie działać tak samo na Windowsie (lub czy błąd który naprawiasz na Wine istnieje na widnowsie ;p)) - lepiej postawić VB i tam system.

Jakoś nie wierze, że 166% kodu to dx ;p (nie wierze nawet ze 20%), i powiem, że warto przejść na OpenGL, jeśli chcesz pisać pod linuksem.

Offline Frondeus

  • Użytkownik

# Styczeń 14, 2010, 16:11:47
Co do mingw32 - czy jak podłączę include z SDK to skompiluje się do exe i będzie działać np. na laptopie z XP?
skoti : już mówiłem - reszta teamu nie ma pojęcia o OpenGlu, a uczenie się podstaw zajmie zbyt dużo czasu.(tym bardziej ze gra ma być tylko na win) . Jednak w przyszłości zamierzam przesiąść się na OpenGL ale to się stanie nie prędzej jak po zakończeniu aktualnego projektu ;
« Ostatnia zmiana: Styczeń 14, 2010, 16:14:27 wysłana przez Frondeus »

Offline novo

  • Użytkownik
    • my devblog

# Styczeń 14, 2010, 20:33:41
Nie wiem jak jest z DX-em, ale jak ja odpalalem swoj kod z OGLem w VB to brakowalo mu wielu rozszerzen. W DX masz zawsze REF, ale tak czy siak musisz sam sprawdzic. Ja bym Ci doradzil dokonczyc projekt na windzie(moze byc nawet jakis kilkumiesieczny trial z netu) i dopiero potem przestawiac sie na linuxa i pisac przenosny kod, tak zebys pod linem mogl testowac. Crosscompilacja i to jeszcze gierki to IMO bedzie masa nie potrzebnych klopotow i walki, a i tak rezultat na windowsie bedzie dzialal inaczej, niz w VB czy przez wine.

Pozdr.
novo

Offline civis

  • Użytkownik

# Styczeń 14, 2010, 21:41:32
Odpuść sobie Ubuntu. Mi strasznie muliło a w dodatku ostatecznie się rozleciało w pył jak sobie ściągnęło "łatkę". Niby będziesz miał OS-a, ale wszystko i tak musisz non stop dociągać z netu :).
Jeśli linux, to polecam właśnie Ubuntu. Istnieje duże prawdopodobieństwo że to właśnie z tą dystrybucją będziesz miał najmniej problemów. Ale oczywiście co kto woli.

Odnośnie DX na linuksie... niby Wine posiada tam swoje biblioteki do tego, ale nie słyszałem żeby ktoś z powodzeniem pisał pod DX na linuksie. Najlepiej odpalać XP na jakiejś wirtualnej maszynie, bądź trzymać równolegle z linuksem.


Swoją drogą, jak masz XP, to czemu by z niego nie korzystać? ;)

st3tc

  • Gość
# Styczeń 14, 2010, 21:48:37
Jeśli linux, to polecam właśnie Ubuntu. Istnieje duże prawdopodobieństwo że to właśnie z tą dystrybucją będziesz miał najmniej problemów.
Miałem najwięcej :).

Offline Frondeus

  • Użytkownik

# Styczeń 14, 2010, 22:14:58
civis: A tak... z nudów ;)
st3tx: Ja nie mam zadnych. Wszytko ladnie dziala(na wirtualnej maszynie narazie) , Compiz tez nie robi problemow... Hellowordy pisze i nie ma z tmy problemow ;)

Offline skoti

  • Użytkownik

# Styczeń 14, 2010, 22:46:48
Jeśli linux, to polecam właśnie Ubuntu. Istnieje duże prawdopodobieństwo że to właśnie z tą dystrybucją będziesz miał najmniej problemów. Ale oczywiście co kto woli.
Chyba, żartujesz - z ubuntu spotkasz masę problemów które są tylko tam - jeśli miałbym wybór używać ubuntu lub windowsa wybrałbym windowsa (na szczęście są inne dystrybucje takie jak arch linux/sabayon/slackware które same nie stwarzają problemów).

Offline Frondeus

  • Użytkownik

# Styczeń 14, 2010, 23:04:18
czyli Ubuntu to zuo? A Slax? Co o nim sądzicie?

Offline civis

  • Użytkownik

# Styczeń 14, 2010, 23:32:40
Chyba, żartujesz - z ubuntu spotkasz masę problemów które są tylko tam - jeśli miałbym wybór używać ubuntu lub windowsa wybrałbym windowsa (na szczęście są inne dystrybucje takie jak arch linux/sabayon/slackware które same nie stwarzają problemów).
Korzystam od jakiegoś czasu, i nie zauważam dodatkowych problemów. Jakie masz na myśli?

czyli Ubuntu to zuo? A Slax? Co o nim sądzicie?
Nie brałbym opinii za prawdę. Niektórym może nie działać jak powinno, a drugim wręcz odwrotnie (tak jak mi). Ściągnij, potestuj trochę czasu, zobacz też inne i stwierdź, jeśli chcesz wybrać najlepiej. Ogólnie polecam te bardziej popularne linuksy (więcej paczek, szersza społeczność etc).

Offline kombain

  • Użytkownik

# Styczeń 14, 2010, 23:35:49
co do wirtualnej maszyny, to najbardziej rozbudowaną obsługę DX ma chyba virtualbox suna (ale to pewnie już wiesz). Jednak nie jest to stuprocentowa obsługa więc mogą być problemy...

Offline BrutalComputer

  • Użytkownik

# Styczeń 15, 2010, 15:51:44
Jeżeli chcesz pisać pod Windows, to raczej tylko pod Windowsem.
Cross kompilacja to jest nieco wyższa szkoła jazdy. ( tym bardziej, że jak już wspomniano MSVC nie działa pod wine )
A co do Ubuntu, to nie miałem z nim większych problemów i zawsze polecam początkującym. ( osobiście używam Gentoo )

Offline vashpan

  • Użytkownik
    • Strona

# Styczeń 15, 2010, 19:19:56
Ogolnie rzecz biorac jest to wykonalne, ale bardzo trudne, i do tego obarczone cala masa potencjalnych bledow - wiec z punktu widzenia produktywnosci - odrzucilbym takie rozwiazanie :)

Koledzy juz mowili ale moze ja podsumuje i dodam cos od siebie...

Wine jest i "jakos" dziala, ale to nie jest emulator, tylko ogolnie rzecz biorac implementacja API i bibliotek Windowsa na inne systemy - wiec z gory skazane na "roznice" w dzialaniu. Problemy pojawilyby sie z wasza gra pewnie bardzo szybko.

Do tego potrzebny jest kompilator. MinGW oczywiscie jest opcja, ale jezeli uparlibyscie sie na MSVC, to wydaje mi sie ze bylaby alternatywa. O ile caly Visual Studio nie dziala pod wine, to byc moze dziala jego kompilator ( tak, VS to tylko IDE, kompilator C/C++ MS to cl.exe i tak jak linker i masa innych narzedzi ( np. kompilator C# ) dziala z linii polecen ). Sprawdz to, odpalajac pod Wine cl.exe z <katalog vs>\VC\bin -> jezeli zadziala to byc moze skompilujesz z jego pomoca, z linii polecen swoj projekt :) Co do IDE to Code::Blocks bodajze cos takiego by wspieral, wiec skonfigurujesz sobie Code::Blocks i moze by smigalo. Oczywiscie nici z debugowania.

Opcja z maszyna wirtualna bylaby ok, tylko ze maszyny wirtualne inne niz komercyjne AFAIK, maja dosc lipne wsparcie ( albo i brak ) dla DX pod Windowsem, wiec robienie gry to marna sprawa. Ponowie tez pytanie kolegow - jezeli masz XP to po co sie bawic w Linuksa + VM, skoro mozesz sobie zainstalowac XP, i ewnetualnie obok Linuksa. Zero problemow.

***
Co do Ubuntu :) Wlasna praktyka:
Z tydzien temu zainstalowalem sobie Ubuntu 9.10, bo byl mi potrzebny Linuks.
Odpalilem go moze kilka razy od tamtego czasu a to problemy ktore w tym czasie sie zdarzyly:

- po instalacji, przy ekranie logowania... Nie moglem sie zalogowac, bo nie poznawal mojego hasla. Powod: na dole byl ustawiony uklad klawiatury... Italy :D Mimo ze przy instalacji wybralem polski i polska klawiature... Przez ta wloska klawiature zle wpisywal znaki nie-alfanumeryczne.

- pare dni potem zrobilem update ( Ubuntu jest tragiczny pod tym wzgledem. Zylion uaktalniem nikomu nie potrzebnych, rozniacych sie jedynie numerkiem przy ubuntu-xx ( to nawet nie sa rozne wersje samych programow, on instaluje rozne wersje PACZEK dla Ubuntu :| ) - i oczywiscie fail, bo nie znalazl na serwerze (!) ( nic nie grzebalem w repozytoriach ) paczek z kilkoma libkami...

- odpalam sobie konsole Pythona i numer wersji mnie rozwalil... 2.6.5-rc1. Ubuntu jest znany ze swoich "deweloperskich" wersji softu ale z wydania na wydanie po prostu przeginaja.... Co takiego super potrzebnego z pythona 2.6.5 jest Ubuntu ze MUSZA miec wersje RC? Python moze nie jest super kluczowym elementem systemu, ale wydaje mi sie ze wiele innych libek i programow ma "podobne" wersje, na czele z GRUB2 ( co zlego jest w stabilnym GRUBie1 ? )

- Kolejny update, tym razem jadra, fail ponowny. Kernel Panic po restarcie :D Opad rak. ( Wprawdze male usprawiedliwienie : Instalowalem Ubuntu z pomoca Wubi - fajna rzecz jak ktos chce miec Linuksa w celach "casual" - instalacja na partycji NTFS pod Windowsem, panic z powodu braku mozliwosci zamontowania tego egzotycznego systemu plikow ktory sie znajduje na innej partycji defakto ( jako zwykly plik ), no ale jak juz cos robia to powinni to przewidziec jak robia update jadra raz na tydzien albo i czesciej :) Jak zwykle rozniacy sie wersja dla Ubuntu )

Moze nie sa to wielkie rzeczy, ale "Zwykly User" pewnie by sie zalamal juz po pierwszym "failu" z tej listy :D To jest tylko tydzien. Ubuntu ma sporo zalet, przede wszystkim prosty i przejrzysty wyglad i interfejs ( dzieki GNOME, ale nie tylko ), lecz stabilnosc jest przerazajaca. Instaluje go juz niejako z przyzwyczajenia, pierwsze ubuntu, pamietam pierwsza moja wersje 5.04 - byly naprawde zgrabne i dosc ladnie dzialaly.

To mnie tylko upewnia w stwierdzeniu ze Linuks nie nadaje sie jako domowy system, w tej postaci w jakiej jest. To swietny system dla serwerow, dla superkomputerow, dla tych co chca, gdzie liczy sie modularnosc i mozliwosc dostosowania. Ale nie dla "normalnego uzytkownika".
PS: Na tym forum nie ma "normalnych uzytkownikow" :)




« Ostatnia zmiana: Styczeń 15, 2010, 19:25:25 wysłana przez vashpan »