Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałLongina Celej Został zmieniony 11 lat temu
1
Port gry Artist Colony z PC na iPhone
2
Kim jestem? Andrzej Koloska, Producent w Vivid Games Doświadczenie w tworzeniu projektów na: iPhone, iPad, j2me, WinMo, Android, BREW, PC, NDS, xbox360 Chciałby zacząć projekt na N3D i PSN Gracz q3 ;)
3
Kto pracował przy projekcie? Bartosz Piwkowski Łukasz Lewiński Jarosław Wojczakowski Remigiusz Kościelny Tomasz Strzelczyk Bartosz Biniecki Przemysław Tkaczyk Paweł Mikołajewski
4
O czym będę mówił: Podejściu do portu gry z PC -> iPhone Problemach technicznych podczas portu Problemach designu gry podczas portu Procesach jakie można napotkać przy portowaniu gier
5
Artist Colony PC
6
PC: Jaka to gra? Casual Sim/Strategia – AI – Rozbudowa budynków – Interakcja między lokacją – Game Flow
7
PC: Jaka to gra? Elementy RPG
8
PC: Jaka to gra? Bardzo duży background Mapa lokacji
9
PC: Jaka to gra? Obszerny i rozbudowany HUD
10
PC: Jaka to gra? Duża ilość animacji postaci Długi gameplay Zmiany pór roku ~700MB assetów zmieścić w 50MB ~200-400MB wykorzystanej pamięci zmieścić w 25MB Fakt czy mit: aplikacje iPhone mogą wykorzystywać ponad 40MB pamięci?
11
PC: Jaka to gra? Brak optymalizacji wyszukiwania drogi Brak optymalizacji animacji postaci Brak optymalizacji w teksturach Brak zarządzania pamięcią Bardzo dobrze zakomentowany kod
12
Wydawca Twardy i krótki termin wykonania portu :) Pierwsze dni pracy - problem z SVNem Typowo: Preprodukcja ASAP Typowo: First Playable ASAP Kontakt z Nikitova tylko w ostateczności
13
Milestone'y First Playable Alpha Beta RC Gold Lite, Demo Brakujące milestone'y
14
iPhone: Preprodukcja Design HUDa - Które elementy są najważniejsze - główny HUD - Jak zmieścić elementy na ekranie iPhone'a?
15
iPhone: Preprodukcja Design HUDa - Jak zoptymalizować Jorunal i ekrany rozwoju
16
iPhone: Preprodukcja Design HUDa - Jak zoptymalizować Jorunal i ekrany rozwoju
17
iPhone: Preprodukcja Jak przerobić Menu? - Animacje Menu - Facebook - iTunes - Get More Games / Adverts
18
iPhone: Preprodukcja Jak przerobić controlsy i sterowanie? - Poruszanie kamery (feedback od gry - rączka) - Poruszanie postaciami (zakrycie HUDa, postać nad palcem, strzałki interakcji, scroll lokacji) - Zoom in/out?
19
iPhone: Preprodukcja - Technicznie Jak zmieścić tyle assetów w 50MB? Jak zmieścić się w 25MB pamięci? Jak zoptymalizować grę by mieć 20-25FPSów?
20
Produkcja portu Przekompilowanie kodu PC pod Visualem - Analiza kodu (Nikitova rulez!) - Pierwsze problemy - kontakt z iPlay/Nikitova - Kod renderujący (DX, asm) oddzielony od logiki Stworzenie wersji PC z rozdzielczością iPhone'a - Pozbycie się hardcodowych rozdzielczości (budynki, elementy lokacji, pivoty, etc) - Problemy z siatką wyszukiwania drogi - Zeskalowanie wszystkich grafik do rozdzielczości iPhone'a - Testowanie gry przez testerów - Wersja PC w rozdzielczości iPhone gotowa, po co?
21
Produkcja portu: FP iPhone #1 SDK i kompilacja gry pod Xcode - Komentowanie klas które się nie kompilują (20k błędów) - Gra się kompiluje, ale nic nie widać. Część logiki tika ;) Pierwsze podejście skończone
22
Produkcja portu: FP iPhone#2 Zastępowanie zakomentowanych klas na te z SDK (input, sound, etc) Sporo rzeczy zakomentowanych dalej, duży związek z logiką gry Przepisanie renderera z DX na Ogl Propozycje HUDA i controlsów zaakceptowane, można implementować. Pierwsza wersja First Playable skończona - brak logiki (za dużo zależności) - słaby performance - crash co 10 sekund ;)
23
Produkcja HUDa Masterpieces z kodu Implementacja głównego HUDa Implementacja Journala Implementacja in-game menu Implementacja Menu Dodatkowe ficzery: Facebook, iTunes
24
25MB pamięci / 50 MB instalka.PVR - większość grafik wyglądała źle w tym formacie Optymalizacja animacji postaci - redukcja klatek - plugin układający grafiki na siatce wypluwając wielkość, przerwy, koordynaty. Optymalizacja reszty grafik - układanie ich na teksturach Background gry - Jedna grafika na warstwach podzielona na obszary * SDK zajmuje 13MB w pamięci! WTF!
25
25MB pamięci / 50 MB instalka Ustawianie pivotów grafik - większość grafik z wersji PC miała binarnie zapisane pivoty. - ręczne ustawianie pivotów Optymalizacja kodu - wyszukanie i wyeliminowanie tablic statycznych - zmiana intów na shorty (32->16) - zmiana longów na inty (64->32) Zmiana ilości postaci w grze - statyczny związek z logiką gry - ikonki postaci mają związek z ilością postaci Różne iPady a pamięć - 3gs nie jest sprzętem do testowania pamięci ;)
26
Produkcja portu - Performance Game Update - ponad 100 ticków logiki na klatkę - wywalenie tych, które spełniły swoje warunki - update sekwencyjny co ramkę 0-20, 20-40, 40-60 Wyszukiwanie drogi - Optymalizacja obszaru wyszukującego drogę 3gs a najsłabszy iPad - różnice FPS
27
QA Portu Szybki port = features needs od wydawcy. Pracujcie wolniej! Poprawianie błędów z wersji PCtowej Ponad 800 zarejestrowanych błędów od fazy Beta Jeden błąd w grafice = budowanie paczki z grafikami Masa błędów w tekstach - MTF exportowany do gry - Zmiany w MTFie przez Designera wydawcy Zmiany w HUDzie - błędne koło Sales and Marketing guys, we hate them! Zewnętrzne testy
28
Gold In-App Purchase - SDK nie przygotowany Adverts - SDK nie przygotowany Programiści SDK nie chcą pomóc - walczymy Wersja Lite/Demo Guru Director - Nie lubimy takich ludzi, znów zmiany Gra gotowa!
29
Post Mortem - Zanim zaczniemy produkcje cisnąć providera SDK o featury których brakuje - Cisnąć providera SDK o dokumentacje i sample, których zawsze brakuje - Nie robić za szybko portu by nie zmieniać za dużo w grze ;) - MTF powinien być przetłumaczony raz a dobrze, zmiany w nim powinny być zrobione raz a dobrze. - Sales&Marketing guys powinni dostać grę znacznie wcześniej, starać się zmieniać strategię wydawcy - QA Wydawcy powinien zaznajomić się z wersją PCtową - Brak Feature Freeze powodem wielu zmian i poprawiania błędów z wersji PCtowej
30
Post Mortem - Lepszy support ze strony głownego programisty SDK, powinniśmy go dostać full time by nam pomagał - Code Branch by pokazać grę High Director bez sensu - Edytor resource'ów powinien być przepisany - Za krótki termin portu i sales&marketing guys powodował częsty crunch time przy projekcie - Kontakt z Nikitovą powinien być bardziej profesionalny, od samego początku
31
Końcowy efekt - Port wykonany na czas z tygodniową obsuwą wersji Lite - Bardzo szybko w app store pojawił się patch - Instalka gry zajmuje 47MB - Gra wykorzystuje ~27 maksymalnie pamięci - Gra chodzi przyzwoicie
32
Dziękuję za uwagę Kody promocyjne na gry Vivid Games do odbioru u osoby prowadzącej prelekcję Pytania?
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.