JGS/ Joint Galaxy Survey 24627 104

O temacie

Autor

Zaczęty 21.11.2012 roku

Wyświetleń 24627

Odpowiedzi 104

Kazzmir
  • Gość
No to trzeba by zrobić kilka rodzajów shaderów.  Chodzi tylko o to żeby nie generować tekstury dla każdej planety z osobna, zwłaszcza jakby nie miało to być robione w realtime, a trzymane w danych aplikacji (która przecież z tego co pamiętam ma być mobilna).

tylko kto to zrobi...
na wszystko co się rusza, mobilne mają sens bo wiem jak się sprzedają takie aplikacje, mam statystki do 2012 i 2012-2013 i wyniki robią piorunujące wrażenie. ale myślę, że np tylko iosy to o wiele za mało.
 

Tomek

Tomek

Użytkownicy
Kapitan Rob
posty2181
Propsy2189
ProfesjaNierób
  • Użytkownicy
  • Kapitan Rob
Spoiler


słońcu na razie, najbardziej brakuje animowanego shadera









To wszystko Twoje zdjęcia?


Widzę, że zainwestowałeś wreszcie w porządny aparat. To się chwali. Ilukrotny zoom?
 

Kazzmir
  • Gość
Widzę, że zainwestowałeś wreszcie w porządny aparat. To się chwali. Ilukrotny zoom?

znaczy, fotki ziemi np? a to z orbity robiłem głupim jasiem xD
a jak chcesz inne to nie aparat pajacu, ale teleskop i kamera ccd xD
 

Tomek

Tomek

Użytkownicy
Kapitan Rob
posty2181
Propsy2189
ProfesjaNierób
  • Użytkownicy
  • Kapitan Rob
no pajacu, właśnie, pajacu

ja tak tylko pajacowalem :P
 

Sili0n

Sili0n

Użytkownicy
"Nic nie jest prawdziwe, wszystko jest dozwolone"
posty108
Propsy20
ProfesjaSkrypter
  • Użytkownicy
  • "Nic nie jest prawdziwe, wszystko jest dozwolone"
Co to będzie za projekt bo ta nazwa nic mi nie mowi :wstyd:
 

Tomek

Tomek

Użytkownicy
Kapitan Rob
posty2181
Propsy2189
ProfesjaNierób
  • Użytkownicy
  • Kapitan Rob
nazwa nic nie mówi? Joint Galaxy Survey. Nie wiem co znaczy survey, ale kojarzę joint. palisz jointa na początku gry? ta? no i potem masz tripa. tak to widzę.
 

Kazzmir
  • Gość
Co to będzie za projekt bo ta nazwa nic mi nie mowi :wstyd:

http://jointgalaxysurvey.pl
 

Kazzmir
  • Gość

do ostatecznego wyglądu mgławicy (helix nebula) jeszcze sporo brakuje. obiekt jest 3d i bazuje na oryginalnych zdjęciach tej mgławicy.
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Zgaduję jednak że to ręczna robota. Ja planowałem do tego inne podejście - prerenderować takie rzeczy na podstawie danych z bazy i wyświetlać jako update'ujący się chunkami skybox. Idealnie byłoby w ogóle robić to w realtime, ale niestety zasięg widzenia jest z konieczności ograniczony, więc to robiłoby za odpowiednik LOD'a (tradycyjny LOD nie ma sensu na scenie gdzie każdy obiekt jest praktycznie punktem, ale są ich pierdyliardy).

Mam wrażenie że albo zmieniłeś koncepcję (bo to miało być uniwersalne przedstawianie danych z całej dostępnej bazy gwiazd, a jednak chyba skupiasz się na konkretnych pojedynczych obiektach różnej skali), albo nie ogarniasz ile takich assetów trzeba by ręcznie stworzyć żeby pokryć w całą bazę na z grubsza podobnej jakości wyglądu :D

Kazzmir
  • Gość
fantastyczne plany miałeś. no właśnie, nie ogarniam...   
 

Voviz

Voviz

Użytkownicy
posty36
ProfesjaProgramista
  • Użytkownicy

Voviz

kickstarter JGS
#30 2013-08-16, 17:44(Ostatnia zmiana: 2013-08-16, 18:03)
Za takie rzeczy w tym projekcie odpowiadam ja.  Zamierzam zrobić to tak - wszechwświat (oczywiście nie cały, tylko jego część umieszczoma w aplikacji) będzie podzielony na części w których będzie określona ilość gwiazd. Gwiazdy będą ładowane z bazy danych i wyświetlane za pomocą systemu LOD. Nie będzie to zwykły LOD - obiekty będące wystarczająco daleko zostaną wyświetlone jako puste prefaby. Przykładowo obiekt będący 300pkt. od kamery będzie niewidoczny, 200 tekstura i światło, 100 pełen model. Sądzę że to będzie wystarczająca optymalizacja.
 
"(...) Dziś wyjdziesz z domu... prosto przez okno, bez spadochronu"
PeIHa

Kazzmir
  • Gość
od siebie dodam że faktycznie obiektów jest od cholery i trochę. gwiazd nie biorę pod uwagę bo w zasadzie nad nimi dużo nie trzeba siedzieć, nawet nad setkami egzogwiazd z którymi jednak można się uporać. ale mgławice, nad nimi będę siedział dniami i nocami, jak będzie trzeba nie będę spał, wszystkich nie zrobię, ale te które będą dostępne będą sumą plusów tego projektu.
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Za takie rzeczy w tym projekcie odpowiadam ja.  Zamierzam zrobić to tak - wszechwświat (oczywiście nie cały, tylko jego część umieszczoma w aplikacji) będzie podzielony na części w których będzie określona ilość gwiazd. Gwiazdy będą ładowane z bazy danych i wyświetlane za pomocą systemu LOD. Nie będzie to zwykły LOD - obiekty będące wystarczająco daleko zostaną wyświetlone jako puste prefaby. Przykładowo obiekt będący 300pkt. od kamery będzie niewidoczny, 200 tekstura i światło, 100 pełen model. Sądzę że to będzie wystarczająca optymalizacja.
Mam wrażenie że nie poparłeś tego żadnymi testami, jestem tego wręcz prawie pewien. Ja za to doprowadziłem tą aplikację do podstawowego działającego stanu i nawet nie ze znajomości unity, ale po prostu z praktycznych testów mogę powiedzieć że to jest podejście które nic nie da.

Po pierwsze, głównym problemem nie jest wyświetlanie. Twój "pusty prefab" będzie w praktyce tak samo ciężki jak mój prefab sześcianu (bo ich używałem w fazie alfa). Problem tkwi w ilości obiektów na scenie, nie ich złożoności.

Po drugie, takie rozwiązanie zabiłoby wizualną stronę aplikacji. Załóżmy że zamiast "wyświetlać jako puste prefaby" nie będziesz wyświetlał dalekich gwiazd w ogóle. Ok, tym razem wydajność się poprawi, ale w takim oglądaniu wszechświata chodzi własnie o to żeby widzieć na raz całe mgławice itd, a nie tylko ich warstwę najbliższą kamerze.

Podział na chunki to jest rozwiązanie, ale trzeba pójść krok dalej i zewnętrznym ścianom zewnętrznych chunków ustawić widoczną od środka teksturę z prerenderowanym tym, co jest za nimi. Nie musi być w dużej rozdzielczości, a da to efekt nieskończenie dużego zasięgu widzenia. Na dodatek można renderować je w o wiele wyższej jakości niż byłoby to robione w realtime. Trzeba by jednak napisać skrypt który by te tekstury (nazywam je w uproszczeniu "skyboxami chunków") renderował. To że finalnie będą skalowane do niewielkich rozmiarów a potem rozciągane nie powinno być problemem, bo wydaje mi się że spokojnie można by przy renderowaniu nakładać na nie lekki proceduralny szum, który usunie wrażenie rozmycia, a nie zafałszuje specjalnie realności widoku.

To podejście pozwoli zaoszczędzić właśnie takiej ręcznej roboty jak te tekstury mgławic. Skala projektu jest za duża żeby pozwolić sobie zarówno na ręczne tworzenie tego typu assetów, jak i nawet umieszczenie ich w aplikacji (to byłaby kolosalna ilość danych).

Kazzmir
  • Gość

Kazzmir
Gość

kickstarter JGS
#33 2013-08-16, 19:03(Ostatnia zmiana: 2013-08-16, 19:12)
z punktu zero/ziemia realna widzialność mgławic jest praktycznie nijaka, wyświetlanie ich z ziemi w jakikolwiek bardziej skomplikowany sposób trochę mija się z celem. chciałbym z ciekawości zobaczyć jedną, dowolną mgławicę wygenerowaną tak jak mówisz, porównałbym z tym do czego dążę... bez względu na ilość, i czas poświęcony na przygotowanie choćby kilkudziesięciu w pierwszym rzucie.

póki nie jestem w stanie porównać, myślę że nakład pracy przy sumie moich metod jest wart zachodu
 

Voviz

Voviz

Użytkownicy
posty36
ProfesjaProgramista
  • Użytkownicy
@Avallach
Testami tego nie poparłem i po przeczytaniu twojego postu myśle że można zrobić to tak że poprostu obiekty będą realtimeowo wczytywane w obrębie np. 300 pkt. od kamery. Tak na prawdę nie rozumiem twojego pomysłu.
 
"(...) Dziś wyjdziesz z domu... prosto przez okno, bez spadochronu"
PeIHa

Kazzmir
  • Gość
nadal poszukiwany jest chętny Java programista.
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Na jakimś bardzo dobrym pc załadować całą bazę na raz. Ustawić bardzo wysoką widoczność i jakość grafik (poładować efekty cząsteczkowe, rozmycia, światła itd). Podzielić świat na chunki. Po kolei ustawiać kamerę na środku każdego chunka i obracać ją w 6 głównych kierunków. Za każdy razem obraz jest zapisywany do określonego pliku.

Przy używaniu aplikacji ustalamy na ile chunków ma być widoczność w każdą stronę. Ładujemy tylko te. Na "tylnej" od nas ścianie każdego z nich wyświetlamy ten obraz z pliku, który zawiera to co byłoby za nim. Taka atrapa. Z punktu widzenia użytkownika obraz jest prawie ten sam co na tym naszym super pc z bajerami. Ale nie jest on renderowany w realtime, to po prostu rodzaj z góry gotowego skyboxa.

nadal poszukiwany jest chętny Java programista.
Chyba C#. Unity nie wspiera Javy.

Kazzmir
  • Gość

 

Voviz

Voviz

Użytkownicy
posty36
ProfesjaProgramista
  • Użytkownicy
@Avallach
Przecież jeśli będzie to skybox to nie będziesz mógł przykładowo - oblecieć do okoła gwiazdy. Chyba że coś źle zrozumiałem.
 
"(...) Dziś wyjdziesz z domu... prosto przez okno, bez spadochronu"
PeIHa

Kazzmir
  • Gość

Kazzmir
Gość

kickstarter JGS
#39 2013-08-17, 11:11(Ostatnia zmiana: 2013-08-17, 11:17)
Na jakimś bardzo dobrym pc załadować całą bazę na raz. Ustawić bardzo wysoką widoczność i jakość grafik (poładować efekty cząsteczkowe, rozmycia, światła itd). Podzielić świat na chunki. Po kolei ustawiać kamerę na środku każdego chunka i obracać ją w 6 głównych kierunków. Za każdy razem obraz jest zapisywany do określonego pliku.

Przy używaniu aplikacji ustalamy na ile chunków ma być widoczność w każdą stronę. Ładujemy tylko te. Na "tylnej" od nas ścianie każdego z nich wyświetlamy ten obraz z pliku, który zawiera to co byłoby za nim. Taka atrapa. Z punktu widzenia użytkownika obraz jest prawie ten sam co na tym naszym super pc z bajerami. Ale nie jest on renderowany w realtime, to po prostu rodzaj z góry gotowego skyboxa.

ten opis to jest z punktu widzenia ziemi? a co gdybym chciał znaleźć się jakimkolwiek innym miejscu, generowanie takich chunków dla dowolnego miejsca w przestrzeni wydaje się niemożliwe...  jak połączyć randomowo generowane współrzędne gwiazd, dodaj do tego te 3 mln które są znane, chmarę mgławic rozrzuconą po całej drodze mlecznej, wciąż rosnącą liczbę egzoplanet i tak dalej.
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry