2009-04-26 19 views
5

Tworzę turową grę top-down w języku C#. Wymagania graficzne są dość proste: jest to całkowicie 2D, wymaga rysowania niektórych zdjęć zrobionych z plików graficznych (być może najpierw ich obracania), rysowania linii w celu utworzenia siatki heksadecymalnej i możliwości umieszczania tekstu w dowolnym miejscu na ekranie.Najlepsze rozwiązanie dla prostej grafiki gier w C#/.net

Zastanawiam się, jakie najlepsze API jest do robienia tych grafik. Czy XNA to przesada, czy jest coś bardziej odpowiedniego? Dzięki (Mam zerowe doświadczenie z grafiką lub rozwojem gier w .net, więc nie bój się wygłupiać żadnych odpowiedzi).

Odpowiedz

2

Użyłem silnika Farseer Physics, który wcześniej był całkiem fajny i niezwykle łatwy do pobrania (jestem programistą, a nie twórcą gier). Działa dla Silverlight, więc możesz stworzyć grę internetową. Proponuję silverlight lub WPF dla 2D.

http://www.codeplex.com/FarseerPhysics

+0

Używam tego do gry. To może być przesada, ale powinno działać. – BenMaddox

+0

Czyż Farseer nie jest silnikiem fizyki, a nie ramą renderowania? W jaki sposób pomógłby mu w jakikolwiek sposób z komponentem wizualnym? –

1

Jeśli jest to tak proste, jak się wydaje, a nawet w czasie rzeczywistym, może nie trzeba żadnej z tych rzeczy. Rysowanie siatki heksadecymalnej i niektórych zdjęć nie powinno być trudne, nawet bez silnika gry. Może WPF byłaby na to dobra.

0

XNA brzmi jak dobry wybór (to będzie lepiej niż przy użyciu DirectX SDK !! i to jest dość łatwe do nauczenia)

1

Biorąc pod uwagę swoje wymagania, można po prostu używać zwykłego C# i GDI (2D rastrowy). Jednak nauka XNA jest łatwa i będzie ci dobrze służyć, gdy zdecydujesz się na grę w czasie rzeczywistym (2d lub 3d). Tak czy inaczej dobrze się bawić, a jeśli XNA wydaje się być skomplikowana, kiedy zaczynasz, po prostu wróć do GDI. Tworzenie gier powinno być tak zabawne, jak ich odtwarzanie :)

2

Polecam WPF. Ładowanie grafiki i przenoszenie jej powinno być dość łatwe. Ponieważ WPF również jest oparty na wektorze, twój rysunek linii jest prosty.

XNA byłby kolejnym krokiem. Świetne wsparcie dla grafiki sprite, a także daje dostęp do shaderów.

3

Polecam XNA do tego. Jeśli nie chcesz trochę narzutu XNA, znalazłem SlimDX jako bardzo ładne małe ramy. Zapewniają także podstawowe klasy gry, dzięki którym tego typu rzeczy są łatwe.

Wykonanie rysunku bezpośrednio w WPF jest również dość łatwe, ale trudniejsze do przedłużenia później. XNA i SlimDX dają dostęp do shaderów, bardzo drobnoziarnistą kontrolę nad mieszaniem alpha, jak również możliwość łatwego przedłużenia porcji do 3D później, jeśli zajdzie taka potrzeba.

0

Możesz to zrobić, używając klas wewnątrz przestrzeni nazw System.Drawing. I XNA jest z pewnością przesadą dla tego typu rzeczy. Poza tym wprowadziłbyś wiele zależności do swojej małej gry, co może być niechcianą rzeczą dla twoich graczy.

0

Zapoznaj się z Unity 3D - jest oparty na C# i może być używany do 2D. Może to być przesada (w tym cena), ale dla rozwoju gry generalnie jest to OGROMNA pomoc.

Powiązane problemy