Wymierne korzyści w szybkim kodowaniu osobistych projektów gier


14

Zauważyłem, że kilku programistów stawia przed sobą wyzwania czasowe, zwykle w zakresie „zapisu gry typu X w czasie Y” lub „zapisu liczby X gier dających tylko Y czasu dla każdego”. Jakie są wymierne korzyści z ustawiania przepływu pracy w ten sposób na kodowanie prędkości na chwilę? Wygląda na to, że musisz wymieniać wydajny kod, aby szybko coś zrobić. I przypuszczam, że dodanie ostatniej warstwy polerowania nie jest dużym priorytetem w tych wyzwaniach, więc można używać programisty.

Kilka lat temu stworzyłem kilka prostych strzelanek i łamigłówek 2D i z głupoty usunąłem większość kodu. Więc teraz jestem ciekawy zastosowania metody kodowania prędkości, aby ponownie zrobić kilka prostych rzeczy i zająć się logiką gry.


8
Kończę coś raz! Jestem tak winny pisania niesamowitych i solidnych ram i nigdy nie tworzyłem gry. Uczy go, aby go ukończyć. Inną zaletą jest to, że po zakończeniu możesz nauczyć się korzystać z profilera :).
Jonathan Dickinson

3
Dlaczego miałbyś kiedykolwiek usuwać swój kod?!? Mają jakiś system kontroli wersji, więc nawet zmieniony kod nigdy nie jest naprawdę stracony.
AttackingHobo

Odpowiedzi:


16

Przynajmniej z mojego doświadczenia, niektórzy programiści są czasami nazywani astronautami architektury .

Jeśli jesteś osobą, która musi wszystko wyodrębnić w określony sposób lub ciągle stara się zmienić kod, aby był piękniejszy lub coś w tym rodzaju, sesje czasowe, podczas których koncentrujesz się na produkcie końcowym, są bardzo dobrym ćwiczeniem . Może to wzmocnić fakt, że czasami prostsze rozwiązanie może sprawić, że wcześniej uda ci się zagrać w coś łatwiejszego, a zatem możesz wejść w szybszą pętlę iteracji, niż gdybyś zrobił duży projekt z góry.

W przeciwieństwie do astronautów architektury, jeśli jesteś programistą kowbojskim , te ćwiczenia czasowe są prawdopodobnie zbędne.


+1 Ponieważ często próbuję wskazać w odpowiedziach zorientowanych na architekturę, zrobienie czegoś jest często ważniejsze niż wykonanie jakiegoś projektu.
James

Brzmi dobrze. Wydaje się, że wymusza to tworzenie gier, a nie silników . Zabawne jest to, że w pracy często jestem zmuszony być programistą kowbojskim.
ChrisC,

9

Nigdy nie wyznaczyłem sobie takich terminów, ale szybka realizacja zadań może być ważna podczas pracy dla siebie.

Wygląda na to, że musisz wymieniać wydajny kod, aby szybko coś zrobić

Podczas pisania gry skuteczny kod zwykle nie stanowi problemu. Problem często pozostaje motywowany. Zdobycie czegoś, co działa, nawet jeśli nie jest optymalnie wydajne, może być wystarczająco dużym czynnikiem motywującym, abyś kontynuował i ukończył go. Zawsze możesz wrócić i zreformować później, jeśli skończysz z czymś dobrym. Próba zrobienia wszystkiego od samego początku może doprowadzić do tego, że nigdy się nie skończy.


+1 <cheers> dla aspektu motywacji. Po prostu robię wystarczająco dużo dla mojej obecnej gry i codziennie osiągam kamienie milowe - taki ogromny motywator do kontynuowania!
Jonathan Dickinson

2

Robię to kilka razy w roku; daj mi tydzień na zaprojektowanie, wdrożenie i wydanie gry.

Robię to, ponieważ jestem perfekcjonistą. Biorąc pod uwagę mój wybór, będę pracować nad grą na zawsze. Trudny termin (który publikuję z wyprzedzeniem) zmusza mnie do tego, aby przestać się rozwijać i po prostu wypuścić tę cholerną grę zgodnie z harmonogramem. Ponieważ moją osobistą zasadą związaną z tymi ćwiczeniami jest to, że nie mogę modyfikować żadnej z tych gier po upływie ich terminu, koncentruje się również na przyszłych projektach i nie rozprasza mnie myśl o ulepszaniu starszych.


Jaką grę możesz stworzyć w ciągu tygodnia?
finnw

@finnw Małe, mocno skoncentrowane! Ale jest wiele konkursów na tworzenie gier z znacznie krótszymi terminami, niż sobie to uznaję. Cały tydzień jest pozytywnie luksusowy w porównaniu do, powiedzmy, Ludum Dare.
Trevor Powell,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.