2008-10-10 10 views
15

Poszukuję dobrych pomysłów na prostą grafikę 3d jako mój końcowy projekt na intro do grafiki komputerowej. Jeśli chodzi o pewne podstawowe informacje, będziemy używać OpenGL i będziemy mieć nieco ponad miesiąc, aby nad nim pracować, więc nic zbyt daleko idącego. Im prostszy i "ładniejszy" wygląd, tym lepiej. Wymaga to jednak pewnego rodzaju interfejsu, z którym użytkownik może wchodzić w interakcje (więc bardzo prosta gra lub podobny jest dobrym pomysłem) i musi być 3D.Prosty projekt graficzny 3D?

Moim jedynym pomysłem jest jak dotąd trójwymiarowa wersja Tetrisa (google na kilka przykładów).

Edytuj: Skończyłem z 3D Tetris. Za mniej niż miesiąc czasu, you can see what I came up with here.

Odpowiedz

24

Edytor tekstu/kodu 3D. Tekst jest 3D, błędy wyróżniają się, wcięcia kodu nie tylko wcięcia, ale wystają na osi Z, strony/pliki są 3D i mogą być odwrócone jak ringpad.

Prawdopodobnie nieprzydatne, ale zabawne i ciekawsze niż gra IMO.

Alt text http://mattlant.com/images/3d.gif

+4

* ouch *. Koncepcja vim3d sprawia, że ​​mój mózg jest bolesny! – Draemon

+0

czysty pomysł, czy już go zbudowałeś? –

+0

Nie jestem pewien co do praktyczności, ale jest to pomysł jednego zabójcy. Przegłosowano na oryginalność – mdec

1

Chciałbym sprawdzić Panda3D lub Pygame.

Panda3D jest prawdopodobnie zbliżony do tego, czego szukasz, a jednym z pomysłów, który zawsze działa, jest umieszczenie twarzy użytkownika w głównej postaci lub obiekcie. 3d-pong z twarzą gracza? Użyj czegoś nieoczekiwanego ... jak tetris z burgerów zamiast cegieł.

7

Zastosowanie pewnej fizyki czyni ją bardziej interesującą. W jaki sposób zaimplementować Labirynt (zabawkę z labiryntu, w której ma się prowadzić piłkę od punktu początkowego do celu, przechylając ją).

Labyrinth http://ecx.images-amazon.com/images/I/51m%2B5cbaEeL._SL500_AA280_.jpg

EDIT: Erik powiedział mi, że to nazywa Labirynt.

+0

Ta gra nazywa się Labirynt - dobry pomysł. =) –

+0

Wdrażanie fizyki jest pewnym sposobem spędzania zbyt dużej ilości czasu na fizyce, a niewystarczająca ilość czasu na część graficzną projektu. Mówię z doświadczenia, podobnie jak ja prowadziłem podobny kurs na uniwersytecie. – Kibbee

+0

Tak, fizyka debugowania może być ogromnym konsumentem czasu. –

1

Uwielbiam mało samoorganizujące się aplikacje alife, takie jak boids. Mogą być fajni w kodowaniu i zawsze czerpać korzyści z ładnego interfejsu użytkownika, zwłaszcza 3D. Wprowadzane przez użytkownika dane mogą modyfikować aspekty środowiska, a także poruszać się po środowisku.

1

Próbowałem zrobić Asteroids 3D dla klasy raz. Nigdy nie ukończyłem części gry, ponieważ była to klasa graficzna. Statek może się poruszać, podobnie jak asteroidy, ale nie wykryto kolizji. Statek i asteroidy miały nałożone na nich tekstury 3D, a asteroidy zostały zbudowane z elipsoid, więc w rzeczywistości były 3D. Rozgrywka była jednak cała 2D.

1

Co powiecie na jedną z tych gier, które są drewnianym labiryntem z kulą toczącą się wokół szczytu. Przechylasz deskę i próbujesz dostać piłkę wokół labiryntu bez upadku w dół? Ma tę zaletę, że rozpoczęcie pracy jest stosunkowo łatwe, ale jeśli masz czas, możesz pomyśleć o niektórych rozszerzeniach.

+0

To zostało zasugerowane tutaj - http://stackoverflow.com/questions/193339/simple-3d-graphics-project#193355 –

1

Lubię egzoplanety. Idź przeczytać o nich. Na Wikipedii i http://exoplanet.eu jest wiele informacji. Astronomowie i publiczni ludzie mogliby zawsze korzystać ze świeżych animacji 3D pokazujących, jak działa Doppler effect, lub jak planeta przemieszczająca się przed gwiazdą czyni na przykład 0,5% dimmera.

Albo, nad czym pracuję, jest to, kiedy planeta przechodzi za swoją gwiazdą. Na Ziemi otrzymujemy tylko trochę mniej podczerwieni od tej gwiazdy. Użytkownik może dostosować orbitę, wielkość planety itp. I zobaczyć, jak to wpływa na to, co widzą astronomowie. To może być zabawne, proste do zrobienia i nieograniczony potencjał w rozszerzaniu pracy o ładniejsze tekstury, śliskie efekty świetlne, itp., A możesz skończyć z czymś, co przyczyni się do edukacji naukowej.

Ja sam robiłbym takie animacje 3D, gdybym nie był zajęty pomijaniem liczb dla prawdziwej nauki. Będę zazdrosny!

+0

jak http://kepler.nasa.gov/media/KEPLER.SWF ale zrobione lepiej – DarenW

8

Na uniwersytecie, dla mojego kursu programowania równoległego, zrobiłem implementację openGL/MPI z Conway's Game of Life. To było całkiem interesujące. Szkoda, że ​​nadal nie mam gdzieś kodu. Zaletą korzystania z otwartego GL jest to, że możesz rozłożyć siatkę w różnych orientacjach zamiast płaskiej siatki. Pamiętaj, że kod nie istnieje, dopóki nie zostanie sprawdzony pod kontrolą źródła.

+1

+1 ponieważ "kod nie istnieje, dopóki nie zostanie sprawdzony w kontroli źródła". –

3

Kostka Rubika.

1

Jeśli szukasz prawdziwego zadania o charakterze uniwersyteckim, moim zadaniem było wyprodukowanie małej "gry helikopterowej", w której możesz wystartować z lotniskowca w oceanie i latać wokół z efektami środowiskowymi, poruszającą się wodą itp. tj. nic zbyt skomplikowanego. Jako inny przykład, zadaniem postawionym na rok poprzedni był mały wyścigowy ścigacz.
Obawiam się, że możesz stracić znaki tetris, ponieważ wydaje się, że niewiele można zrobić na osi Z i może natknąć się na trochę zbyt 2d, choć oczywiście zależy to od twojego briefu.

W każdym razie da ci to możliwość eksperymentowania z podstawowymi funkcjami OpenGL, takimi jak: mgła, oświetlenie, geometria, tekstury i podstawowa fizyka ruchu & wykrywanie kolizji/reakcja.

Co więcej, choć często wykracza to poza zakres zadania o takim rozmiarze, można je dodatkowo wzbogacić o animowaną geometrię (np. Ludzi), mapowanie otoczenia, odbicia, cienie, układy cząstek, shadery, być może wyspa wysokościowa.

2

Jeśli kiedykolwiek grałeś Missile Command, wierzę, że może to być dobry projekt do "3d-ify".

1

Spróbuj gry przy przekraczaniu drogi przez kurczaka.

Prawdopodobnie będziesz musiał wykazać minimum gołe z:

  • tekstur
  • oświetlenie
  • animacja
  • interakcja
  • wykrywania kolizji

Do nie obejmuje nawet prostej fizyki, jeśli nie ma na nią żadnych znaków. Ustal priorytety zadań w oparciu o schemat oznaczania. Najpierw wykonaj coś prostego i zrób kopię zapasową:

1

Przepisz Blocks 3D. Grafika tego projektu wygląda teraz okropnie. Pamiętam, że grałem w tę grę (lub taką podobną) na 386 z grafiką szkieletową ... niesamowitą. Gra jest w zasadzie 3D tetris.

2

Szczerze mówiąc, całkiem łatwo jest załadować kilka animowanych modeli i skonfigurować prostą strzelankę pierwszoosobową. Chodzi mi o to, że aby uzyskać ogólne działanie, nie potrzebujesz tak wiele:

  • Załaduj i wyświetl wysokość lub drzewo BSP jako poziom.
  • Załaduj i wyrenderuj kilka prostych modeli MD2 (animacja klatki kluczowej, mała ilość polis i prosty format).
  • Narysuj proste hud.
  • Skrzyżowanie promienia/AABB, za każdym razem, gdy użytkownik kliknie, będziesz musiał rzucić promień ze środka ekranu i sprawdzić, czy przecinają się one z ramkami granicznymi wrogów.
  • Prosty system kamer FPS.

Powyższe jest dość wykonalne w ciągu miesiąca, o ile mi chodzi. (Prawdopodobnie jest to wykonalne w ciągu tygodnia, jeśli znasz już pewne rzeczy).

Powiązane problemy