Video: Unlimited Detail i intervju

Permalänk
Medlem
Skrivet av evulme:

kan ju bli någe stort av de här. Hoppas att dom vet vad dom sysslar med!!

Håller verkligen med (Y)

Visa signatur

Intel Core i5 12600K | ASUS RTX 3060Ti Dual OC 8GB
NZXT H510i Flow White/Black | Corsair Vengeance Pro Led 3200Mhz 16GB DDR4 |
Samsung 980 PRO 500GB | Corsair H100i Elite Capellix |
Corsair RM750 V2 750W

Permalänk
Medlem
Skrivet av Syranide:

Jag är lite osäker på varför du citerade mig eftersom du trots allt verkar hålla med mig.

Jag kände att jag hade rätt att uttala mig eftersom jag har läst två kurser inom 3D-programmering och har varit relativ påläst om voxlar redan innan denna hysteri startade.

Till skillnad från dig ser jag dock ingen anledning att tvivla på att han skulle använda Point Cloud Data. Han nämnder det i sin första video då han jämför PCD med voxlar, även om han inte är riktigt sanningsenlig i sin bedömning.
http://www.youtube.com/watch?v=Q-ATtrImCx4

Skrivet av Syranide:

mao, det är inte point clouds för då hade man inte ens uttryckt sig så. Och i senaste videon så erkänner han lite halvt att det är voxlar dom använder och inte faktiska pointclouds.

När intervjuarern berättar om Sparce Voxel Octree så medger han att det skulle kunna ses som det. Vilket är helt korrekt, för om du verkligen förstår vad ett Octree innebär så förstår du att det i det här fallet inte gör någon skillnad om trädet består av voxlar eller PCD. I en vanlig SVO går man rekursivt igenom alla celler i ett "Octree" tills cellen är lika stora som en pixel på skärmen. Om det inte finns tillräckligt med detaljrikedom sparad för att cellerna ska komma ner i samma storlek som en pixel kommer man se en kub istället. Om det samma händer med PCD i ett Octree kommer man om jag förstått det rätt se en rundad kant, ungefär som vektor grafik.

Ja jag vet att man kan göra voxlar på GPUn, i det här exemplet så beräknar de dock voxlarna på CPUn och ger grafikkortet en "chunk" med voxlar för att extrahera en polygonmesh från den m.h.a. marching cube algoritm.
http://http.developer.nvidia.com/GPUGems3/gpugems3_ch01.html

Angående skuggor så förstår jag inte hur det skulle vara något problem med att använda samma depth-buffer till både polygoner och voxlar speciellt eftersom de båda ska kunna kasta skugga på varandra, men annars har du rätt i ditt påstående.

Detta gör dock ingen skillnad, även om de använder sig av PCD så är tekniker som SVO likvärdiga och ingen av dem som har sysslat med det påstår att de kommer revolutionera grafiken för all framtid för det.
http://procworld.blogspot.com/2011/08/unlimited-detail.html

Visa signatur

Efficiunt Daemones, ut quae non sunt, sic tamen quasi sint, conspicienda hominibus exhibeant. - Lactantius

Permalänk
Medlem
Skrivet av AdelOst:

...
Till skillnad från dig ser jag dock ingen anledning att tvivla på att han skulle använda Point Cloud Data. Han nämnder det i sin första video då han jämför PCD med voxlar, även om han inte är riktigt sanningsenlig i sin bedömning.
http://www.youtube.com/watch?v=Q-ATtrImCx4
...

Kan det vara en fördel att spara point-clouds i ett octree för att sedan gör om det till voxlar för att köra marching cubes? Jämfört med att köra ett SVO dvs? Är det bekräftat att de använder MC på GPUn vid rendering?

Edit: Det slog mig just att de inte alls kör MC på GPUn, han säger att de skulle kunna kört på ett grafikkort från 90-talet. (Läste fel och förstod inte att du menade youtube-länken.)

Visa signatur

~ Macbook <> Debian-server

Permalänk
Medlem

Fraktaler.

För många, många år sedan lanserades fraktalkomprimering - av vanliga bilder - som nästa generations JPEG. Det funkar, men drar (eller drog, eftersom vi pratar 1990-tal) rätt mycket CPU. Inte heller blev komprimeringen i sig imponerande, men det gick i alla fall.

Hursomhelst, att fraktalgenerera individuella löv eller hela träd gick att göra 1990 på en hemdator om än slött. Släng in lite stokastik i det så är det en exakt replika av naturen. Slå ihop det med andra goa tekniker som SVO? Well, det kanske är möjligt? Jag läste inte längre än till D-nivå, redan då började matten bli jävligt bisarr...

Skriver och tänker på nivån som klockan säger...
Visa signatur

[Atari 400|600XL|800XL|XEGS|ST|STe|Mega ST|Mega STe|Portfolio][Commodore VIC20|64|116|128|+/4|8032|Amiga 500|Amiga 1200][BBC Micro][Sinclair QL|ZX81][TI 99/4A][Sord M5][Spectravideo 328|728][Cambridge Z88][ABC80][MFP-II][IBM RS/6000 59H][Apple LCII][Zaurus SL5000D][PDP 11/34][...massor av bråte...]

Permalänk

Jag önskar alla hade läst "Psykopatens värld" av Robert Hare, bara för att ha i åtanke när de ser den här intervjun och läser om all tvivelaktig information. Vore väldigt intressant att få reda på om de inte är mer än villiga att folk går in med mer kapital (trots viss antydan på motsatsen i videon). De har redan fått två miljoner dollar av regeringen, och det är nog många andra som trycker på att få gå in med kapital. Tyvärr kommer endast ett fåtal lära sig en läxa, eftersom de flesta fortsatt vill tro gott om alla människor. Och nej, det är ingen dygd att tro gott om alla, det finns många som kan vittna om hur dyrt de fick lära sig den läxan.

Permalänk
Medlem

Om nu Bruce Dell gick med på att göra denna intervjun för att övertyga folk om att deras teknik verkligen fungerar så som de påstår så verkar det har fått motsatt effekt. Inte minst då Bruce själv gör ett ganska oseriöst intryck och verkar mest var bra på att pratar dynga utan att egentligen avslöja någonting. Det är många frågetecken:

#1 Om deras teknik är revolutionerande, varför har de inte tagit patent på det då?

#2 Många nämner att deras teknik måste ta mycket minne. Dock ska man ju komma ihåg att även om tekniken i sig tillåter oändlig upplösning så är det ju inte samma sak som att en dator klarar av att hantera det. Bruce väljer nog sina ord med viss eftertanke. Deras demo visar tydligt hur en värld är uppbyggd av väldigt detaljerade, men klart avgränsade objekt som sedan återanvänds. Så gör man i alla spel. Inte nödvändigtvis för att spara minne, men för att det helt enkelt skulle ta för lång tid att modellera en helt värld med unika texturer och objekt.

#3 Bruce säger att man bara behöver processa synliga pixlar på skärmen, t.ex. 1920 x 1080 pixlar vid vanlig full HD upplösning, men detta stämmer ju knappast. Om man ska beräknar skuggor och reflektioner så ökar ju antalet beräkningar med antalet ljuskällor, så något är skumt i hans resonemang.

#4 När jag tittar på demot så får jag känslan av att det inte används någon traditionell projicering av 3D pukterna på ett plan. Därmed kommer man ha ett fast perspektiv som inte går att ändra, så som med Voxels.

#5 Oändlig upplösning kräver oändlig upplösning av varje pixelkoordinat, vilket naturligtvis är en omöjlighet. Även om dagens datorer är snabba på flyttalsoperationer så kan man inte hantera hur stora tal som helst. Däremot skulle varje objekt kunna ha en eget koordinatsystem med valfri upplösning beroende på vilken detaljrikedom man önskar.

#6 Alla som någon gång har använt point cloud data vet att det inte är helt lätt att rendera på ett bra sätt. Framför allt då det inte finns någon yta mellan punkterna. Zoomar du in ett objekt så ser du dels ett moln av punkter men också allt som finns bakom om du inte filtrerar bort dessa på ett mycket smart sätt vill säga. Denna filtrering är närmast omöjlig att göra snyggt på osymmetriska objekt. Även när objektet är längre ifrån så uppstår problem med avrundning av pixlarnas koordinater. Med traditionella polygoner kan man använda filter som anti-aliasing för att dölja dessa artefakter, men med cloud data fungerar inte detta. Point cloud datan kommer istället generera ett slags digitalt brus.

Även om deras demos visar sig vara äkta, så tror jag inte en sekund på Bruces beskrivning. Det känns som att han undanhåller något väsentligt.

Felstav
Permalänk
Medlem

«Heavier-than-air flying machines are impossible .»
Lord Kelvin, British mathematician and physicist, president of the British Royal
Society, 1895.

Permalänk
Medlem
Skrivet av AdelOst:

Jag är lite osäker på varför du citerade mig eftersom du trots allt verkar hålla med mig.

Jag kände att jag hade rätt att uttala mig eftersom jag har läst två kurser inom 3D-programmering och har varit relativ påläst om voxlar redan innan denna hysteri startade.

Det var ingen kritik utan jag fyllde mest igen det som jag tyckte var luckor.

Skrivet av AdelOst:

Till skillnad från dig ser jag dock ingen anledning att tvivla på att han skulle använda Point Cloud Data. Han nämnder det i sin första video då han jämför PCD med voxlar, även om han inte är riktigt sanningsenlig i sin bedömning.
http://www.youtube.com/watch?v=Q-ATtrImCx4

När intervjuarern berättar om Sparce Voxel Octree så medger han att det skulle kunna ses som det. Vilket är helt korrekt, för om du verkligen förstår vad ett Octree innebär så förstår du att det i det här fallet inte gör någon skillnad om trädet består av voxlar eller PCD. I en vanlig SVO går man rekursivt igenom alla celler i ett "Octree" tills cellen är lika stora som en pixel på skärmen. Om det inte finns tillräckligt med detaljrikedom sparad för att cellerna ska komma ner i samma storlek som en pixel kommer man se en kub istället. Om det samma händer med PCD i ett Octree kommer man om jag förstått det rätt se en rundad kant, ungefär som vektor grafik.

Det är stor skillnad på point clouds och SVO även om resultatet kan vara liknande. SVO är en extremt simpel representation som också är extremt simpel att traversera. Point clouds är absolut inte det, däremot om man vrider på alla orden som han så kan man ju självklart hävda att voxlar är point clouds.

Point clouds är en bunt punkter i en rymd, en punkt har ingen naturlig tillhörighet till andra punkter utan kopplas ihop via avstånd och liknande parametrar. Mao, det skulle inte ens fungera bra för ändamålet.

Jag känner mig säker på att dom använder SVO, men kanske hittat på några optimeringar för det. Dom säger ju tom själva att dom konverterar point clouds till trianglar, som sedan konverteras till deras format. Varför skulle man ens göra det om motorn bygger på point clouds? (Även påståendet om att det finns "64 atomer per kubikmillimeter" (dvs, 4x4x4) är ett korkat påstående om det är point clouds)

Skrivet av AdelOst:

Ja jag vet att man kan göra voxlar på GPUn, i det här exemplet så beräknar de dock voxlarna på CPUn och ger grafikkortet en "chunk" med voxlar för att extrahera en polygonmesh från den m.h.a. marching cube algoritm.
http://http.developer.nvidia.com/GPUGems3/gpugems3_ch01.html

Det är stor skillnad på den länken och den jag posta till, din länk har ingenting gemensamt med UD eller SVO. Tekniken du länka till gör om densitetfunktionen till voxlar för marching cubes som du säger, vilket sedan görs om till trianglar... vad har det med UD eller SVO att göra?

Poängen med UD och SVO är att man kan beräkna en pixel utan att geometrins komplixitet påverkar prestandan i någon större grad. Och triangelrendering bygger istället på att geometrins komplexitet är vad som påverkar och väldigt lite beror på antalet pixlar.

Skrivet av AdelOst:

Angående skuggor så förstår jag inte hur det skulle vara något problem med att använda samma depth-buffer till både polygoner och voxlar speciellt eftersom de båda ska kunna kasta skugga på varandra, men annars har du rätt i ditt påstående.

Självklart kan man använda samma depth-buffer till både polygoner och voxlar, men då åker du också på de precisionsproblemen (och övriga problem) som skuggor lider av idag... vilket är ett väldigt stort problem när man har detaljer på den nivån. Det skulle troligtvis uppstå väldigt många konstigheter på ytan och i små utrymmen (vilket även är ett problem idag). Så jag vet inte hur bra det skulle funka i praktiken om man är ute efter detaljer på den nivån som UD visar.

Skrivet av AdelOst:

Detta gör dock ingen skillnad, även om de använder sig av PCD så är tekniker som SVO likvärdiga och ingen av dem som har sysslat med det påstår att de kommer revolutionera grafiken för all framtid för det.
http://procworld.blogspot.com/2011/08/unlimited-detail.html

Skrivet av Corran:

Fraktaler.

För många, många år sedan lanserades fraktalkomprimering - av vanliga bilder - som nästa generations JPEG. Det funkar, men drar (eller drog, eftersom vi pratar 1990-tal) rätt mycket CPU. Inte heller blev komprimeringen i sig imponerande, men det gick i alla fall.

Hursomhelst, att fraktalgenerera individuella löv eller hela träd gick att göra 1990 på en hemdator om än slött. Släng in lite stokastik i det så är det en exakt replika av naturen. Slå ihop det med andra goa tekniker som SVO? Well, det kanske är möjligt? Jag läste inte längre än till D-nivå, redan då började matten bli jävligt bisarr...

Tanken är bra i teorin om vi haft oändligt med prestanda, men hela poängen med SVO är att datan ska vara extremt snabb att traversera. Om datan inte faktiskt finns utan beror på en dyr matematisk formel så faller det hela. Visst går det säkert utnyttja procedurell generering för SVO i framtiden om det skulle bli populärt, men det skulle inte vara som en direkt lösning på minnesproblemet.

Permalänk
Skrivet av Syranide:

Jag känner mig säker på att dom använder SVO, men kanske hittat på några optimeringar för det. Dom säger ju tom själva att dom konverterar point clouds till trianglar, som sedan konverteras till deras format. Varför skulle man ens göra det om motorn bygger på point clouds? (Även påståendet om att det finns "64 atomer per kubikmillimeter" (dvs, 4x4x4) är ett korkat påstående om det är point clouds)

Var det inte per kvadratmillimeter? Jag trodde att de bara behövde lägga "atomer" på ytan av föremålet, inte fylla det med atomer?

Visa signatur

The cake is a pie.

Permalänk
Medlem
Skrivet av el_genius:

Var det inte per kvadratmillimeter? Jag trodde att de bara behövde lägga "atomer" på ytan av föremålet, inte fylla det med atomer?

Det är säkerligen så ja, men påståendet syftar antagligen på att modellerna dom visar kan ha upp till 64 atomer per kubikmillimeter (dvs, att det är "upplösningen").

PS. Kvadratmilliter kan inte vara rimligt då det skulle implicera ett 2D-plan. Men det spelar mindre roll, slutsatsen skulle ändå vara den samma.

Skrivet av Boss302:

«Heavier-than-air flying machines are impossible .»
Lord Kelvin, British mathematician and physicist, president of the British Royal
Society, 1895.

http://en.wikipedia.org/wiki/Perpetual_motion#Invention_histo...

Vad vill du ha sagt egentligen? Att vår kunskap inom aerodynamik för 100 årsedan var obefintlig? Så för att en framstående person gav ett felaktigt uttalande på felaktiga grunder så får vi inte kritisera något, inte ens uppenbart skitsnack? Datorgrafik är ett väldigt seriöst och aktivt forskningsområde, och tekniken UD bygger på finns det också seriös forskning inom. Det är inte magi eller revolutionerande.

Det KAN vara del av grunden till nästa steg inom datorgrafik, precis som vi gått från Forward Shading till Deferred Shading (vilket förövrigt "uppfanns" 1988!). Det betyder inte att vi kunde använda Deferred Shading när folk började forska och visa demon på det. Det är först nu det verkligen blivit användbart. UD och liknande tekniker är inte praktiska som alternativ inom de närmsta åren (det är ingen konspiration av EA).

Permalänk
Skrivet av Boss302:

Det är ju också intressant.
Eftersom de i princip inte vill ta emot några pengar så lär det vara några riktiga nötter ifall det är ett scam o de bara sitter o blåljuger.

Han antydde att de inte behöver mer kapital, vad säger att de inte kommer ta in mer bara för det? Han avslutar intervjun väldigt bekvämt genom att mer eller mindre säga "vi kommer gå undan nu, det är så vi jobbar, sen kommer tvivlarna undra vart vi tog vägen, men de kommer få se". Väldigt effektivt sätt att kunna dra ut på tiden utan att behöva leverera. Under tiden kommer de kunna plocka in mer kapital från naiva och giriga investerare. Jag kör med samma metod och säger - vi får väl se.

Själv ska jag somna till fina minnen av Refaat El-Sayed. Och även Valdi Ivancic som skulle sälja laptops för 1000kr och samtidigt annonserade att han ska bli vår näste statsminister.

Permalänk
Medlem

Hur fanken gör man animationer med point-clouds? Jag är medveten om att det går, men är det svårare med pointclouds i förhållande till en polygon baserad model? Jag pysslade lite med 3Dsmax förr i tiden men är absolut ingen höjdare på´t. Måste man göra en separat model för varje liten rörelse?

Visa signatur

2600k@ 4,4 Vattenkylt med en Noctua 120mm @ 7v. 16 gig Corsair Dominator. GTX 1050 Ti Passivtkylt. Corsair RM550 80 Gold. Corsair M4 ssd 256 gig. Asus Sabertooth p67. (Takfläkten låter mer än själva datorn).

Permalänk
Medlem

Haters gonna hate.

Visa signatur

Playstation 4 + Nintendo Switch
R7 5800x3d - MSI B450 - RTX 3080 TUF - EVGA 650w G3 - ASUS PG279Q

Permalänk
Skrivet av DellaK:

Haters gonna hate.

Retards gonna post.

Visa signatur

Livet är en fesk!

Permalänk
Medlem

Skulle vilja se honom bli intervjuad av Carmac, då skulle vi ganska snabbt få veta vad det här egentligen är.

Visa signatur

Intel i7 950 -|- Asus P6T Deluxe V2 -|- Corsair 6GB 1333MHz -|- Gigabyte GeForce GTX 460 1GB -|- Corsair HX 650W -|- FD R3 -|- 1TB Samsung F3 -|- CM Hyper 212+ -|- Win7

Permalänk
Medlem
Skrivet av brickN:

Skulle vilja se honom bli intervjuad av Carmac, då skulle vi ganska snabbt få veta vad det här egentligen är.

Förutom att allt som Carmac frågade skulle han inte kunna svara för det är "under utveckling" ju! Så skulle inte ge oss något

Visa signatur

AMD Ryzen 7 7800X3D | Noctua NH-U12A | Gigabyte B650 Aorus Elite AX | Corsair 2x16GB DDR5 6000MHz CL30 Vengeance RGB | PowerColor Radeon RX 6800 XT 16GB Red Dragon | Fractal Design Torrent Compact | Seasonic Prime GX 1300W | MSI Optix MAG274QRF-QD + HP ZR24w | WD Black SN850X 2TB | Windows 11 Home 64-Bit |

Permalänk
Medlem

Finns ju massor av anledningar till att neka kapital! Man slipper bla insyn i företaget och eftersom de är ekonomisk oberoende kan de lika gärna vänta tills ett riktigt stort företag köper upp deras teknik.

Permalänk
Medlem
Skrivet av brickN:

Skulle vilja se honom bli intervjuad av Carmac, då skulle vi ganska snabbt få veta vad det här egentligen är.

Lär aldrig hända då Carmack jobbar på att införa samma sak i id Tech 6 motorn

http://www.pcper.com/reviews/Graphics-Cards/John-Carmack-id-T...

Kan även ta och citera ett intressant stycke av vad Carmack sagt

Citat:

In our current game title we are looking at shipping on two DVDs, and we are generating hundreds of gigs of data in our development before we work on compressing it down. It’s interesting that if you look at representing this data in this particular sparse voxel octree format it winds up even being a more efficient way to store the 2D data as well as the 3D geometry data, because you don’t have packing and bordering issues. So we have incredibly high numbers; billions of triangles of data that you store in a very efficient manner

Jag tror inte Carmack är tveksam till tekniken pga lagringsutrymmet som Notch är, utan han är nog mer orolig över prestandan, vilket förklarar varför han sa att UD inte var möjligt med nuvarande generationens hårdvara och konsoler. Och där har ju Euclideon redan bevisat att det inte är så hårdvarukrävande.

Edit: Ett annat intressant stycke

Citat:

What John does see ray tracing useful for is a very specific data
model he has created called "sparse voxel octrees" that allow him to
store immense amounts of data in a fashion that is easily accessed
using ray tracing methods. That doesn't mean that John sees direct
rendering occurring using those rays, just that the theory and
algorithms of ray tracing are useful for his specific purpose. This
new data model and algorithm being worked on for id Tech 6 would allow,
according to John, nearly infinite amounts of geometric detail in the
world without the problems seen with tessellation engines or trying to
store gigabytes of data locally

Visa signatur

Intel i5 12600K | Asus TUF Gaming Z690-Plus D4 | Asus Geforce RTX 3060 Ti | 32 GB DDR4 | Fractal Design North | Corsair iCue Link H100i | Cooler Master V750 Gold i Multi

Permalänk
Medlem
Skrivet av Teknocide:

JPEG komprimerar bitmaps med viss kvalitetsförlust och stor komprimeringsgrad. Kanske använder de sig av en liknande komprimeringsteknik för att spara punktdata i 3D med "acceptabel precisionsförlust". Grus och liknande – till synes slumpmässigt – innehåll kan genereras ner på atomär nivå utan att lagra någon speciell data alls. Jag föreställer mig att det är så Minecraft gör för att skapa sina miljöer: ett enda slumpmässigt grund-seed som återanvänds om och om igen för att ge en till synes varierad miljö.

Det som kommer ta plats är modeller, vilket gäller för triangelbaserad grafik också. Bara för att varje kvadratmillimeter av en slät vägg innehåller 16 partiklar behöver det inte betyda att varje partikel har ett eget x-y-z-värde sparat i en datastruktur, det skulle bli alldeles för mycket onödig redundans.

Jag skulle säga att det inte bara är möjligt utan MYCKET möjligt. Bara iden att man skulle lagra xyz data för varje punkt är ju skrattretande.

För att demonstrera vad jag menar ska jag ta ett exempel som vem som helst kan testa och se själva: Video-komprimering!

Ta en full-hd film. Det är...
...1920x1080pixlar = 2'073'600pixlar/frame
...*24p = 49'766'400pixlar/sekund
...*60*60 = 179'159'040'000pixlar/timme
...*1.5 = 268'738'560'000pixlar för en full-hd film på 1½timme
...*32 = 8'599'633'920'000 bitar om vi skulle säga 32bitars färg - det färgdjup vi brukar ha på våra datorer.
Alltså
~8.6Tb = ~1TB data om vi inte komprimerade.
Men faktum är att man kan få tag på en sådan film på bara 3.5GB! (Tog ett faktiskt exempel med en film i 1080p, x264 encoded, 1:27 lång, inte en siffra out of my ass.)
Dvs. den komprimerade datan tar bara, håll i er... 0.35% av den faktiska datan!
Eller omvänt: istället för 32bit/pixel så sparar vi bara 0.112bit per pixel. Och en bit är bara 1 etta eller nolla.
Dvs. med 1bit, dvs 1 etta eller nolla, kan vi beskriva färgen på ~9pixlar! (Istället för 9*32=288bitar!)
Vi har en komprimering på hissnande 1:286 !!! (8.93~9 på raden ovan.)
...och då har jag helt ignorerat ljudet dessutom.

Man har kommit på smarta algoritmer för detta. Dom är inte exakta och bygger (bl.a.) på att pixlar oftast inte ändras hur mycket som helst från en frame till nästa.

Men varför skulle man inte kunna göra samma sak för punkter som beskriver en yta? Utnyttja det faktum att punkterna inte är slumpmässiga data utan har en stark koppling till varandra?
Det slår jag vad om att man kan. Eller snarare, det vet jag att man kan.

Edit:
Låt oss säga att vi har en komprimering på 1:250.
Vi beskriver en punkt med x,y,z.
Låt oss säga att det rent programmeringstekniskt representeras av 3st float (väldigt troligt).
float = 32bit >>> 3*32 = 96bit = 12byte per punkt för koordinater.
Men punkten behöver färg också, så lägg på 32bit = 4byte ytterligare för att få färg: 12+4 = 16byte per punkt.
Hur mycket minne skulle vi behöva för att representera, säg, 10miljoner punkter utan komprimering?
Svar: 10'000'000*16/1024/1024 = 153MB.
Hur mycket skulle det bli om vi hade en komprimering på 1:250?
Svar: 625KB
(OMG!!! 625KB!1!1!! ...not.)

Omvänt:
Hur många punkter skulle vi kunna beskriva med säg 1GB? (något som vi lätt skulle kunna lägga i ram-minnet på vilken modern dator som helst.)
1GB = 1'073'741'824 byte ... 1073741824/16 = 67'108'864
...utan komprimering.
Med komprimering skulle det bli 250ggr mer, dvs...
Svar: 16'777'216'000 ~ 16.8 miljarder punkter (med färg!) kan beskrivas med 1GB komprimerad data!

Edit2:
Vad blir det i kvadratmeter???
Om vi antar 16punkter per kvadratmillimeter (det var nått sånt va?), och det går en miljon kvadratmillimeter på en kvadratmeter...
Det skulle ge att:
Med 1GB kan man beskriva 1048.6kvadratmeter yta med en punktupplösning på 16punkter/kvadratmillimeter!
Rätta mig om jag har fel... men jag slår vad om att ni inte trodde det!

Slutligen vill jag tillägga att allt är bara approximationer och gissningar. Men även om komprimeringen bara var 1:25 istället för ca 1:250 som den är med dagens videokomprimering, så skulle det ge över 100kvadratermeter med unik färgad yta. Som en 100kvadratmeter stor textur som du kan fylla med vad du vill. Med en upplösning på 4pixlar/mm, dvs motsvarande en textur med dimensionerna 40'000x40'000pixlar, eller uttryckt i kamera termer, ett foto på 1600Mpix. (Tänk på hur mycket du kan zooma in på ett 16Mpix foto - föreställ dig att du zoomar in 100gånger mer!) Och detta i det mer konservativa fallet 1:25, på utrymmet av 1GB.

Edit3:
Bara för att förtydliga att folk som säger att det skulle gå åt ORIMLIGT mycket data bara drar ut en massa siffror ur röven:
Helt utan komprimering skulle du kunna beskriva 4kvadratmeter "yta" med en upplösning på 16punkter/kvadratmillimeter eller 8000x8000punkter, om-det-hade-varit-ett-foto motsvarande 64Mpix - på 1GB.

Visa signatur

SweClockers Dark Pearl tema: http://www.sweclockers.com/forum/trad/1484891
(Rek. Stylus)

Permalänk
Skrivet av Paronfesken:

Retards gonna post.

and idiots reply

Permalänk
Medlem
Skrivet av dpom86:

Jag skulle säga att det inte bara är möjligt utan MYCKET möjligt. Bara iden att man skulle lagra xyz data för varje punkt är ju skrattretande.
...Edit3:
Bara för att förtydliga att folk som säger att det skulle gå åt ORIMLIGT mycket data bara drar ut en massa siffror ur röven:
Helt utan komprimering skulle du kunna beskriva 4kvadratmeter "yta" med en upplösning på 16punkter/kvadratmillimeter eller 8000x8000punkter, om-det-hade-varit-ett-foto motsvarande 64Mpix - på 1GB.

För det första så bygger filmkomprimering på extremt "lossy compression" och det faktum att du har keyframes du kan utgå ifrån när du konsturera alla andra frames. Det är inte på något sätt applicerbart här. Sen får du inte glömma att du kan inte traversera en komprimerad datastruktur utan att packa upp den. Mao, du kan bara ha väldigt lätt komprimerad data. Och lägg då till att komprimeringen man kör för texturer på grafikkort är 1:2 eller 1:4 och har många fula artefakter. Och att JPEG som är väldigt lossy har mellan 1:3 till 1:20 för duglig kvalitet.

Så absolut kan man ha välkomprimerad data på HDDn, men även där går det inte komprimera hur bra som helst, http://en.wikipedia.org/wiki/Entropy_(information_theory), men i minnet är det absolut inte lätt... speciellt inte om det ska gå fort.

1 GB = 1024*1024*1024

Så om varje voxel tar 16 byte så blir det:
1024*1024*1024 / 16 = 67108864 voxlar

Men då har vi inte räknat med att det är octrees, vilket betyder att storleken nästan dubblas eftersom du måste spara alla högre nivåer med (16+8+4+2+1 = 31), åtminnstonne i minnet. Sen tar även representationen för alla tomma slutnoder en viss mängd utrymme.

Men om vi igornerar det, och sprider ut voxlarna på ett PLATT 2D-plan, så blir det:
sqrt(67108864) = 8192 (^2)

Så, för 1GB okomprimerad data får du en helt platt yta på 8192*8192, lägg då till att det är mycket upp och ner, och ska marken tom vara ihålig för att reprenstera grus och gräs och liknande så är det lätt 5-10 pixlar per punkt i 2D-planet.
sqrt(67108864 / 5) = 3663 (^2)

Och då ska vi inte glömma hus, träd, buskar, etc, som kan vara extremt mycket dyrare än så.

Och låt oss säga att vi ha en otrolig komprimering på 1:100:
sqrt(67108864 / 5 * 100) = 36635 (^2)

Och så säger vi att varje punkt i 2D-planet är 1 millimeter stor.
36635 / 1000 = 36.6 meter^2 (EDIT: oops, det är ska vara 36.6m)

Det är inte alls imponerande, trots att vi har en otrolig komprimeringsalgoritm, som vi på något sätt även använder i minnet, och ändå använder vi 1GB... och inte representerar någon typ av material och dess parametrar.

Och som du kanske märker av uträkningar så skulle inte ens en algoritm på 1:1000 (eller motsvariga optimeringar) hjälpa situationen på något avsevärt sätt. Och då har jag ändå räknat till fördel för algoritmen i alla mina uträkningar.

sqrt(67108864 / 5 * 1000) = 115852 (^2)
115852 / 1000 = 115.9 meter^2

Jag hoppas att jag inte gjort något räknefel, isf får ni skrika.

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av Syranide:

För det första så bygger filmkomprimering på extremt "lossy compression" och det faktum att du har keyframes du kan utgå ifrån när du konsturera alla andra frames. Det är inte på något sätt applicerbart här.

...mer text...

Att det inte skulle vara på något sätt applicerbart var det dummaste jag hört. Det är inte mitt fel om inte du kan göra algoritmer.
Det har aldrig slagit dig att man kan ha "key-points" precis som man har key-frames? Det har aldrig slagit dig att om du har key-points så blir lossy beskrivning av kringliggande punkter högst acceptabelt? Det har aldrig slagit dig att du troligtvis inte behöver mer än två koordinater för att beskriva "b"-punkter? Det har aldrig slagit dig att man kan dra nytta av att en yta oftast böjer sig långsamt, speciellt om avståndet mellan varje punkt är ~0.25mm? Det har aldrig slagit dig att en färgkomprimering liknande den man använder för film är högst troligt användbar då färgerna troligtvis inte varierar så mycket på skalan 0.25mm? Ditt snack om datakomprimering tycks ju bygga på att du inte vill ha det lossy, men vem har sagt at UD inte är lossy? Och personligen tycker jag video-komprimering, som ju om du stackar frames'en på hög är som att beskriva färgvolymer i 3d, är mycket applicerbart här!

Och att påstå att ~30m^2 inte är imponerande är ju löjligt.
Vi pratar verkligen inte om en 30m^2 stor spelvärld. Vi pratar om 30m^2 med unik information.
Tänk på texturer i dagens spel. En textur på 8000x8000 (4m^2) eller mer är extremt stort. Mer än vad som behövs för att beskriva hur någon yta ska se ut i dagens polygon spel. Så det känns som du inte riktigt har tänkt på att det är ungefär samma information som i dagens spel. Samma mängd information för att beskriva det som du har på en skärm. Dagens spel laddar och tar bort resurser allt eftersom dom behövs för renderingen på skärmen. Varför skulle vi inte kunna göra det i detta fallet om jag får fråga? Hur mycket textur-data tror du egentligen att det finns på din skärm vid någon given tidpunkt i ett spel? Som sagt, vi snackar bara om hur mycket information som ligger inladdad, du kan ju ha flera gigabyte mer som du inte behöver just precis då.

Slutligen är det väll bara en hypotes att sparse-octrees är det som används även om det är troligt. Men om det är det som används så sa ju faktiskt John Carmack redan våren 2008 att han funderade på att ha en sådan teknik med "unlimited geometry" i Id tech6 motorn:
"What I really want to get out of the ray tracing is this infinite geometry which is more driven by the data structure that you have to use ray tracing to access, rather than the fact that you’re bouncing these multiple rays around. I could do something next generation with this and I hope that it pans out that way" //John
"This new data model and algorithm being worked on for id Tech 6 would allow, according to John, nearly infinite amounts of geometric detail in the world without the problems seen with tessellation engines or trying to store gigabytes of data locally." // http://www.pcper.com/reviews/Graphics-Cards/John-Carmack-id-T...
...min poäng är att om John trodde att det skulle gå att få hanterbara datamängder, och ett av hans uttalade önskemål var att artister bara skulle kunna gröpa ur hela världen som lera (jag vill dock poängtera att han aldrig uttryckligen sagt att det är skulle bli möjligt med denna metoden), så har jag all anledning att tro att det skulle vara åtminstone hyffsat genomförbart. Och om han jobbade på det till Id tech6 motorn så har jag all anledning att tro att det är lite mer än bara en-rolig-teori-att-leka-med-i-tanken.

Edit:
Jag höll på att glöma...
Och som svar på att man inte kan accessa komprimerad information:
Om vi kan ha en realtidskomprimering på säg 1:3, så kan vi ha 12m^2 med unik information i 1GB minne. (Nod-grejset dock inte inräknat, men det är inte bekräftat heller.)
Men är det realistiskt att du skulle begränsa dig till 1GB med en teknik som planerar att släppas mot framtida hårdvara? Nej.
Så säg att vi slukar upp 4GB, varför inte. Då får vi ~48m^2 med unik "yt-data".
Som man får se i deras demonstrationer så består ju världen av ganska lite unik yta. Allt är upprepat på ett extremt sätt.
Visst är det fullt tänkbart att denna yta vi har till förfogande i detta räkneexempel skulle räcka för att representera de få unika objekt de har i sin värld?
Och innan du säger "Titta på ett träd bara! Det har ju en yta på flera kvadratmeter!" så är mitt svar: Hur många unika blad ser du på trädet? Hur många variationer av inskannade blad behöver man för att sätta ihop något som ser ut som ett övertygande lövverk? Dom säger ju själva att dom gjorde kaktusen från ett par stycken blad som de lekte runt med lite. Givetvis tror jag inte att deras teknik är utan gränser så som dom försöker få det att låta. Men den verkar högst intressant ändå! Vem har t.ex. sagt att vi egentligen behöver en upplösning på 4punkter per millimeter bara för att dom skryter med det i sitt alla-objekt-är-likadana demo? Reducera det till 1punkt per millimeter och du får plötsligt x16 mer yta att leka med! Denna mängd data kanske räcker för att beskriva det som finns på din skärm just då! Resten kan ju ligga packat på hårddisken med hög komprimering! Det är upp till motorn/programmeraren att prefetcha/komprimera-upp datan till minnet i tid till den faktiskt behöver användas.

Edit2:
Jag vill samtidigt passa på att påpeka (mest för att en vän kände skepcis över att inga animationer syntes egentligen) att om du har "key-points" så skulle du antagligen kunna lösa animeringsproblemet genom att i stort sett bara beskiva hur dessa key-ponts rör sig i tiden - förutsatt att du har bra algoritmer för att välja ut vilka punkter som ska bli key-points och att du har bra algoritmer för hur övriga punkter runt om ska följa med (ungefär som skinning i dagens animationer). Eftersom animation även den oftast beskriver följsamma kontinuerliga rörelser och inte slumpmässiga ryck så skulle ytterligare datakomprimering vara möjlig även här! Det största frågetecknet är ju deras sökalgoritm för renderingen tycker jag. Den skulle man vilja lägga vantarna på.

Visa signatur

SweClockers Dark Pearl tema: http://www.sweclockers.com/forum/trad/1484891
(Rek. Stylus)

Permalänk
Medlem
Skrivet av dpom86:

Att det inte skulle vara på något sätt applicerbart var det dummaste jag hört. Det är inte mitt fel om inte du kan göra algoritmer.
Det har aldrig slagit dig att man kan ha "key-points" precis som man har key-frames? Det har aldrig slagit dig att om du har key-points så blir lossy beskrivning av kringliggande punkter högst acceptabelt? Det har aldrig slagit dig att du troligtvis inte behöver mer än två koordinater för att beskriva "b"-punkter? Det har aldrig slagit dig att man kan dra nytta av att en yta oftast böjer sig långsamt, speciellt om avståndet mellan varje punkt är ~0.25mm? Det har aldrig slagit dig att en färgkomprimering liknande den man använder för film är högst troligt användbar då färgerna troligtvis inte varierar så mycket på skalan 0.25mm? Ditt snack om datakomprimering tycks ju bygga på att du inte vill ha det lossy, men vem har sagt at UD inte är lossy? Och personligen tycker jag video-komprimering, som ju om du stackar frames'en på hög är som att beskriva färgvolymer i 3d, är mycket applicerbart här!

För det första, ta och tagga ner lite. Du räknade fel, jag rättade till det utan att klaga på dig och lade fram fakta. Och jag känner inte för att gå till personangrepp men du har uppenbarligen ingen djup kunskap inom algoritmer om det är ditt svar... vad du personligen tycker bryr sig inte en algoritm om.

En komprimeringsfaktor på 1:100 lär sällan vara något man träffar på i verkligheten, inte ens med lätt komprimerbar data och som går att packa upp snabbt, och om den är rimligt lossy. Oavsett om du nu hittar en algoritm som är 1:100 för voxlar så kommer du aldrig någonsin kunna köra det i realtid (om den inte är väldigt lossy). Och som sagt va, inte ens 1:1000 hjälper situationen avsevärt.

För att du ska förstå sammanhanget så för att få 1:100 i JPEG för naturbilder så är det motsvarigheten till ca 4% kvalitet i JPEG, mao, bilden kommer ut som skräp... och då är det mer eller mindre den bästa komprimeringsteknik vi känner till för naturbilder! .. plus att det är inte ens i närheten av realtid!

S3TC komprimering som man använder för komprimering av texturer som används i realtid idag för grafikkort är 1:4 och 1:6, och med påtagligt försämrad kvalitet.

Skrivet av dpom86:

Och att påstå att ~30m^2 inte är imponerande är ju löjligt.
Vi pratar verkligen inte om en 30m^2 stor spelvärld. Vi pratar om 30m^2 med unik information.
Tänk på texturer i dagens spel. En textur på 8000x8000 eller mer är extremt stort. Mer än vad som behövs för att beskriva hur någon yta ska se ut i dagens polygon spel. Så det känns som du inte riktigt har tänkt på att det är ungefär samma information som i dagens spel. Samma mängd information för att beskriva det som du har på en skärm. Dagens spel laddar och tar bort resurser allt eftersom dom behövs för renderingen på skärmen. Varför skulle vi inte kunna göra det i detta fallet om jag får fråga? Hur mycket textur-data tror du egentligen att det finns på din skärm vid någon given tidpunkt i ett spel? Som sagt, vi snackar bara om hur mycket information som ligger inladdad, du kan ju ha flera gigabyte mer som du inte behöver just precis då.

30m^2 är inte imponerande, det är lika imponerande som vilken annan siffra som helst. Det är inte PRAKTISKT att använda i ett spel, inte överhuvudtaget, och beroende på vad du vill ha för kvalitet kan det vara 3m^2 eller 200m^2, oavsett inte PRAKTISKT.

Och oavsett, det spelar ingen roll att skärmen bara har ~1.000.000 punkter att rita, du behöver MYCKET mer av världen inladdad hela tiden, och låt oss inte ens prata om mardrömmen att streama octrees.

I ett modernt spel kan du ofta representera kilometervis med hus, terräng och effekter med 1GB okomprimerad data. Och om du inte tar fram förstoringsglaset så lär du ha svårt att få känslan att världen är repeterad.

Skrivet av dpom86:

Slutligen är det väll bara en hypotes att sparse-octrees är det som används även om det är troligt. Men om det är det som används så sa ju faktiskt John Carmack redan våren 2008 att han funderade på att ha en sådan teknik med "unlimited geometry" i Id tech6 motorn:
"What I really want to get out of the ray tracing is this infinite geometry which is more driven by the data structure that you have to use ray tracing to access, rather than the fact that you’re bouncing these multiple rays around. I could do something next generation with this and I hope that it pans out that way" //John
"This new data model and algorithm being worked on for id Tech 6 would allow, according to John, nearly infinite amounts of geometric detail in the world without the problems seen with tessellation engines or trying to store gigabytes of data locally." // http://www.pcper.com/reviews/Graphics-Cards/John-Carmack-id-T...
...min poäng är att om John trodde att det skulle gå att få hanterbara datamängder, och ett av hans uttalade önskemål var att artister bara skulle kunna gröpa ur hela världen som lera (jag vill dock poängtera att han aldrig uttryckligen sagt att det är skulle bli möjligt med denna metoden), så har jag all anledning att tro att det skulle vara åtminstone hyffsat genomförbart. Och om han jobbade på det till Id tech6 motorn så har jag all anledning att tro att det är lite mer än bara en-rolig-teori-att-leka-med-i-tanken.

Det är SVOs dom använder, dom har mer eller mindre erkänt det själva och allt dom pratar om tyder på det. Och resultatet dom visar är mer eller mindre identiskt med det alla andra presenterar för SVO.

Det spelar ingen roll om John Carmack själv har utforskat det SVO och alla de typer, om han inte använder det så betyder det att det inte höll måttet av flera olika anledningar. Och även om han nu bestämmer sig för att använda det, så känner jag mig säker på att det inte är på mm-voxel-nivå (fast där möjligtvis materialparameterar genererar fler nivåer). Utan handlar nog snarare om en naturlig vidareutveckling av megatextures över voxelbaserad terräng eller något liknande.

Sen angående UD så vill jag lämna dig med ett sista räkneexempel.

8 GB = 8 * 1024 * 1024 * 1024 = 8589934592
sqrt(8589934592) = 92681 (^2)
92681 / 4 / 1000 = 23 m^2 (4an från 4x4x4 = 64 voxlar per kubikmillimeter)

Det blir 529st 1m^2 block (23 * 23). Så, om vi antar att det går åt ~12 gånger (6 sidor, plus lite extra för kurviga ytor) så många voxlar när vi gör våra 2D-block till 3D, så blir det ca ~44 st block (529 / 12), sen får vi inte glömma overhead i octrees så vi delar på 2 igen som en gissning, så det blir ~22 st block (44 / 2). Viktigt att notera är att jag nu har räknat med att varje voxel kan representeras som en enda byte (vilket inte ens är orimligt då dom faktiskt skulle kunna använda en färgpalett, posiiton behöver inte beskrivas).

Notera att jag då använder de rimligaste värdena jag kan komma på, 8GB har han i sin laptop, det kan vara upp till 64 voxlar per kubikmillimeter, dvs 4x4x4. Och jag uppskattar ett block till att ha en bas på 1m^2. Och vi antar att dom lyckats komprimera varje voxel till 1 byte. Och vips, så har vi 22 st block, och i videon säger dom att dom har 24.

Nej då det är säkert bara en slump att min uträkning ens hamnade i närheten av deras faktiska antal.

Jag diskuterar gärna, men presentera fakta eller något som du kan backa up isf.

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av Syranide:

För det första, ta och tagga ner lite. Du räknade fel, jag rättade till det utan att klaga på dig och lade fram fakta. Och jag känner inte för att gå till personangrepp men du har uppenbarligen ingen djup kunskap inom algoritmer om det är ditt svar.

En komprimeringsfaktor på 1:100 lär sällan vara något man träffar på i verkligheten, inte ens med lätt komprimerbar data och som går att packa upp snabbt, och om den är rimligt lossy. Oavsett om du nu hittar en algoritm som är 1:100 för voxlar så kommer du aldrig någonsin kunna köra det i realtid. Och som sagt va, inte ens 1:1000 hjälper situationen avsevärt.

För att du ska förstå sammanhanget så för att få 1:100 i JPEG för naturbilder så är det motsvarigheten till ca 4% kvalitet i JPEG, mao, bilden kommer ut som skräp... och då är det mer eller mindre den bästa komprimeringsteknik vi känner till för naturbilder! .. plus att det är inte ens i närheten av realtid!

S3TC komprimering som man använder för komprimering av texturer som används i realtid idag för grafikkort är 1:4 och 1:6, och med påtagligt försämrad kvalitet. Och texturer är enormt mycket lättare än arbiträr voxeldata.

30m^2 är inte imponerande, det är lika imponerande som vilken annan siffra som helst. Det är inte PRAKTISKT att använda i ett spel, inte överhuvudtaget, och beroende på vad du vill ha för kvalitet kan det vara 3m^2 eller 200m^2, oavsett inte PRAKTISKT.

Och oavsett, det spelar ingen roll att skärmen bara har ~1.000.000 punkter att rita, du behöver MYCKET mer av världen inladdad hela tiden, och låt oss inte ens prata om mardrömmen att streama octrees.

I ett modernt spel kan du ofta representera kilometervis med hus, terräng och effekter med 1GB okomprimerad data. Och om du inte tar fram förstoringsglaset så lär du ha svårt att få känslan att världen är repeterad.

Det är SVOs dom använder, dom har mer eller mindre erkänt det själva och allt dom pratar om tyder på det. Och resultatet dom visar är mer eller mindre identiskt med det alla andra presenterar för SVO.

Det spelar ingen roll om John Carmack själv har utforskat det SVO och alla de typer, om han inte använder det så betyder det att det inte höll måttet av flera olika anledningar. Och även om han nu bestämmer sig för att använda det, så känner jag mig säker på att det inte är på mm-voxel-nivå (fast där möjligtvis materialparameterar genererar fler nivåer). Utan handlar nog snarare om en naturlig vidareutveckling av megatextures över voxelbaserad terräng eller något liknande.

Sen angående UD så vill jag lämna dig med ett sista räkneexempel.

8 GB = 8 * 1024 * 1024 * 1024 = 8589934592
sqrt(8589934592) = 92681 (^2)
92681 / 4 / 1000 = 23 m^2 (4an från 4x4x4 = 64 voxlar per kubikmillimeter)

Det blir 529st 1m^2 block (23 * 23). Så, om vi antar att det går åt ~12 gånger (6 sidor, plus lite extra för kurviga ytor) så många voxlar när vi gör våra 2D-block till 3D, så blir det ca ~44 st block (529 / 12), sen får vi inte glömma overhead i octrees så vi delar på 2 igen som en gissning, så det blir ~22 st block (44 / 2). Viktigt att notera är att jag nu har räknat med att varje voxel kan representeras som en enda byte (vilket inte ens är orimligt då dom faktiskt skulle kunna använda en färgpalett, posiiton behöver inte beskrivas).

Notera att jag då använder de rimligaste värdena jag kan komma på, 8GB har han i sin laptop, det kan vara upp till 64 voxlar per kubikmillimeter, dvs 4x4x4. Och jag uppskattar ett block till att ha en bas på 1m^2. Och vi antar att dom lyckats komprimera varje voxel till 1 byte. Och vips, så har vi 22 st block, och i videon säger dom att dom har 24.

Nej då det är säkert bara en slump att min uträkning ens hamnade i närheten av deras faktiska antal.

Jag diskuterar gärna, men presentera fakta eller något som du kan backa up isf.

Skickades från m.sweclockers.com

Jag har inte räknat fel någonstans, jag gör bara inte samma antaganden som dig.

1:100 må vara sällsynt. Men att du kan få 1:300 i film är ett faktum.

Jag tog en realtidskompression på 1:3 som exempel, och återigen så försöker du påstå att det handlar om "arbiträr voxeldata" ungefär som att 1. Du inte accepterar lossy-ness och 2. Du vägrar inse att datan är högst strukturerad och approximerbar i de fall vi faktiskt diskuterar. Det är inte som en zip-fil med "arbiträr" data. Att det är texturer är ju inte alls intressant eftersom du knuffar in det ovälkomna ordet arbiträr i ditt påstående. Om det är arbiträrt så spelar det mindre roll att det är voxlar också för den delen.

Vad menar du med att det inte är praktiskt? Du erbjuder inte äns ett resonemang. Mitt resonemang är enkelt: Flera av de punkter du ser på skärmen kan komma från samma uppsättning data. Precis som du inte har en unik textur för varje meter av husvägg i ditt exempel.

Som sagt, "världen" och "unik yta" har ingen direkt jämförelse här. Du behöver mycket mer av världen säger du. En trädkrona kan bestå av några fåtal upprepade löv säger jag. Ser tydligt att det finns en begränsning i hur mycket unik information du kan presentera samtidigt, men inget problem med mitt resonemang. Spelutvevckling genom alla tider har handlat om att ta det man har och göra det bästa av det. Att säga att ett hus är en unik uppsättning data är lika dumt som att säga att ett träd är en unik uppsättning data. För väggar behöver du bara små-små bitar, ungefär som marken i UD, eller en tegel-kloss kan ju vara en bit t.ex. om väggen är av tegel. Ett fönsterbleck kan vara en bit, en ruta av glas en bit osv. Genom att blanda dessa bitar så skulle du kunna åstadkomma liknande variation med mycket lite "unik" data precis som många av husväggarna i ditt exempel använder samma textur, många av dörrarna använder samma textur, dörr-handtagen använder samma textur osv...

Ok då använder dom väll nått SVO aktigt i så fall.

Vad får dig att tro att John inte använder det? Det är uppenbart att du inte läste länken jag skickade med. Jag skrev att han hoppas få in det i Id tech6 motorn. Den är inte ute än. Faktum är att det kommande spelet RAGE körs på Id tech5 motorn! Kan ju inte garantera att han fortfarande har det kvar som en del i den kommande-kommande motorn för jag kan ju inte fråga, men om du faktiskt har något underlag eller fakta som stödjer att han skulle ha övergett det som du tycks tro så får du gärna dela med dig av den källan.

Du avslutar onekligen med en fin uträkning, och den är intressant. Du säger ~500m^2 på 8GB. Jag säger absolut inte emot dig. Jag poängterade från början att allt är spekulation och har breda marginaler. Dina beräkningar invaliderar inte några av mina, och jag har aldrig sagt att dina beräkningar är fel... Jag håller bara inte med dig om att resultatet man kommer fram till är ett problem. Jag håller inte med om flera saker faktiskt, men jag har inte sagt att du räknat fel.

Slutligen tycker jag det är ganska drygt av dig att säga att jag hade fel och att du rättade till mina fel när ingetdera av de två påståendena är sanna! Du presenterade din egen ide och kan inte backa upp att något jag sagt skulle vara fel. Alla mina uträkningar är korrekta för de antaganden som jag tydligt presenterar. Att få ett annat resultat med andra antaganden är inte precis en nyhet.

Edit:
Det är precis sådant här jag pratar om:

Skrivet av Syranide:

Så, för 1GB okomprimerad data får du en helt platt yta på 8192*8192, lägg då till att det är mycket upp och ner, och ska marken tom vara ihålig för att reprenstera grus och gräs och liknande så är det lätt 5-10 pixlar per punkt i 2D-planet.
sqrt(67108864 / 5) = 3663 (^2)

Och då ska vi inte glömma hus, träd, buskar, etc, som kan vara extremt mycket dyrare än så.

Du ignorerar ju praktiskt taget allt jag sagt. Hur många unika punkter behöver du för att beskriva marken? Med gräs osv på så kan vi väll dra till med något bara, säg 800000. För det så får vi kanske lite gruskorn, lite grästuvor(som i sig kan bestå av upprepningar av en mindre uppsättning grässtrån), några löv och lite stenar. Med denna datan har vi råmaterialet till att dekorera hur mycket terräng (mark) som helst. 1m^2 eller 1000000m^2 spelar ju ingen roll! Vi snackar fortfarande om att upprepa samma data för ett i sammanhanget billigt overhead. Och om vi har ~8000x8000 till vårt förfogande, ja då har vi använt 100st av 8000 rader och har "bara" 7900 rader kvar till resten av världen. Stammen på ett träd: Antagligen upprepningar av ett fåtal bitar bark. Bladen - redan gått igenom. Husen - redan gått igenom. Jag ser helt enkelt inte dina enorma problem som du påstår finns här med objekt som tar upp enorma mängder data. Enligt mig, och det har jag sagt hela tiden, så borde detta räcka för att åstadkomma en hel del om man bara är lite smart i sina lösningar.

Visa signatur

SweClockers Dark Pearl tema: http://www.sweclockers.com/forum/trad/1484891
(Rek. Stylus)

Permalänk

http://nwn.blogs.com/nwn/2011/08/is-the-future-of-immersive-3...

Såg att Carmack hade gett ett litet svar på Perssons påståenden. Synd Carmack inte var mer tydlig från början.

Permalänk
Medlem
Skrivet av greenbayd:

http://nwn.blogs.com/nwn/2011/08/is-the-future-of-immersive-3...

Såg att Carmack hade gett ett litet svar på Perssons påståenden. Synd Carmack inte var mer tydlig från början.

Ja det nämner dom t.o.m. i filmen. Att han givit lite respons alltså.

Visa signatur

SweClockers Dark Pearl tema: http://www.sweclockers.com/forum/trad/1484891
(Rek. Stylus)

Permalänk
Medlem
Skrivet av dpom86:

Jag har inte räknat fel någonstans, jag gör bara inte samma antaganden som dig.

Jag citerar:

"Med 1GB kan man beskriva 1048.6kvadratmeter yta med en punktupplösning på 16punkter/kvadratmillimeter!"

Så förklara gärna, för om jag inte är helt snurrig så tar dina 1048 m^2 (och 16 punkter per mm^2) ... 1048.6 * (1000^2 * 16) = 15.6 GB (det är sent och jag är trött så rätta mig gärna om jag klantat mig)

Och då har vi inte ens räknat med att det finns flera nivåer i ett octree, att världen inte enbart är platt och att en voxel kanske bör representeras som mer än 1 byte.

Och sen är det väldigt viktigt att inse att 1048m^2 i praktiken är en yta på 33*33m... det är inte ens i närheten av en fotbollsplan!

Skrivet av dpom86:

1:100 må vara sällsynt. Men att du kan få 1:300 i film är ett faktum.

Jag tog en realtidskompression på 1:3 som exempel, och återigen så försöker du påstå att det handlar om "arbiträr voxeldata" ungefär som att 1. Du inte accepterar lossy-ness och 2. Du vägrar inse att datan är högst strukturerad och approximerbar i de fall vi faktiskt diskuterar. Det är inte som en zip-fil med "arbiträr" data. Att det är texturer är ju inte alls intressant eftersom du knuffar in det ovälkomna ordet arbiträr i ditt påstående. Om det är arbiträrt så spelar det mindre roll att det är voxlar också för den delen.

Jag accepterar lossyness, jag säger ju tom att dagens grafikkort har 1:4 och 1:6, väldigt lossy. Men som jag visade innan med ett räkneexempel, det spelar ingen roll om du ens hittar en realtidsalgoritm som är 1:100, mängden data du får ut är ändå OFANTLIGT STOR relativt vad som används idag och vad som praktiskt kan distribueras.

Skrivet av dpom86:

Vad menar du med att det inte är praktiskt? Du erbjuder inte äns ett resonemang. Mitt resonemang är enkelt: Flera av de punkter du ser på skärmen kan komma från samma uppsättning data. Precis som du inte har en unik textur för varje meter av husvägg i ditt exempel.

Praktiskt som i att, att en kvadratkilometer yta skulle kräva en stor del av bluray-skiva... det är inte praktiskt. Precis som att streama RAW 1080p film över nätet till konsumenter inte heller är praktiskt.

Skrivet av dpom86:

Som sagt, "världen" och "unik yta" har ingen direkt jämförelse här. Du behöver mycket mer av världen säger du. En trädkrona kan bestå av några fåtal upprepade löv säger jag. Ser tydligt att det finns en begränsning i hur mycket unik information du kan presentera samtidigt, men inget problem med mitt resonemang. Spelutvevckling genom alla tider har handlat om att ta det man har och göra det bästa av det. Att säga att ett hus är en unik uppsättning data är lika dumt som att säga att ett träd är en unik uppsättning data. För väggar behöver du bara små-små bitar, ungefär som marken i UD, eller en tegel-kloss kan ju vara en bit t.ex. om väggen är av tegel. Ett fönsterbleck kan vara en bit, en ruta av glas en bit osv. Genom att blanda dessa bitar så skulle du kunna åstadkomma liknande variation med mycket lite "unik" data precis som många av husväggarna i ditt exempel använder samma textur, många av dörrarna använder samma textur, dörr-handtagen använder samma textur osv...

Självklart, du har bra tankar, men med all sannolikhet faller det i praktiken. För vad jag vet så funkar SVO just nu inge vidare med roterade objekt. Så alla objekt skulle behöva vara vridna i 90-graders vinklar (detta kanske däremot går att lösa ganska effektivt, men vad jag vet har ingen visat att det går att göra effektivt än). Ganska fyrkantig värld det skulle bli, isf. Och då utgår du också ifrån att det ens går att komponera ihop flera lager av SVO-objekt effektivt... något som bör vara ett väldigt stort problem i praktiken eftersom du med all sannolikhet behöver traversera samtliga SVO-objekt inom ett område (nu blev kostnaden beroende av geometrins komplexitet igen = dåligt), vilket också med all sannolikhet är varför UD inte gör det utan håller sig till en fast grid... dom slipper överlapp.

Och då kommer man även ifrån den stora fördelen med UD, att du kan göra din oändligt komplicerade modell, och den kommer prestera precis lika bra... visst, den kommer prestera precis lika bra men den kommer istället sluka enorma mängder utrymme. Och för att minska mängden utrymme så skulle det krävas ett gräsligt arbete med att handplacera objekt (vilket då troligtvis kanske förstör prestandan istället). Sen underskattar du alla småeffekter som används idag, en tegelvägg är inte bara en repeterad tegeltextur, utan det ligger säkerligen minst en textur ovan på den som skapar variation över hela väggen. Och samma gäller för allt annat också.

Och sen kommer vi tillbaka till minnesproblemet, allting du nämnde ovan, kan man även göra med trianglar och texturer (och det gör dom!)... vilket betyder att trianglar och texturer alltid kommer vara mycket mer utrymmeseffektivt. Och spelutvecklare har redan utrymmesproblem idag med mer eller mindre alla spel. All låta varje objekt ta upp avsevärt mer utrymme kommer inte lösa det. Och när man får mer utrymme kan man även öka kvaliteten på trianglarna och texturerna.

Vi kan redan idag använda högupplösta displacementmaps (för väggar, mark, etc) och liknande tekniker och det skulle emulera mycket av det som UD stoltserar med... men man gör inte det för prestandan och utrymmet (och tiden!) spenderas bättre på annat håll, som atmosfäriska effekter, ljussättning, skuggor, dimma, etc.

Skrivet av dpom86:

Ok då använder dom väll nått SVO aktigt i så fall.

Vad får dig att tro att John inte använder det? Det är uppenbart att du inte läste länken jag skickade med. Jag skrev att han hoppas få in det i Id tech6 motorn. Den är inte ute än. Faktum är att det kommande spelet RAGE körs på Id tech5 motorn! Kan ju inte garantera att han fortfarande har det kvar som en del i den kommande-kommande motorn för jag kan ju inte fråga, men om du faktiskt har något underlag eller fakta som stödjer att han skulle ha övergett det som du tycks tro så får du gärna dela med dig av den källan.

John Carmack har också sagt att Idtech 6 inte kommer att komma på många år. Och jag sa inte att han övergivit det, utan att han uppenbarligen inte använder det just nu, och att om han kommer använda det, så har jag väldigt svårt att se att han isf skulle gå rätt i UDs fotspår.

Skrivet av dpom86:

Du avslutar onekligen med en fin uträkning, och den är intressant. Du säger ~500m^2 på 8GB. Jag säger absolut inte emot dig. Jag poängterade från början att allt är spekulation och har breda marginaler. Dina beräkningar invaliderar inte några av mina, och jag har aldrig sagt att dina beräkningar är fel... Jag håller bara inte med dig om att resultatet man kommer fram till är ett problem. Jag håller inte med om flera saker faktiskt, men jag har inte sagt att du räknat fel.

[/quote]

Och nej, jag säger inte 500m^2 på 8GB, jag sa 22 block på 8GB om du läser hela kommentaren. Dvs, 22 block likt dom som UD använder, och UD använder 24 unika block (och har 8GB minne i sin dator!). Min poäng var att UD har med all sannolikhet inte alls kommit på någon revolutionerande teknik och att minnesutrymmet absolut är ett problem. För dom visar mer eller mindre EXAKT så många block som jag räknade fram att dom bör kunna visa. Och hur intressant är deras värld som isf tar 8GB utrymme?

Allting som är O(N^2) är i praktiken väldigt sällan praktiskt, det gäller även kvadratmeter med voxlar. Dvs, om inte ALLT i hela världen kan representeras som enormt återanvända instanser av voxelobjekt, så kommer utrymmet öka O(N^2) med storleken. Det är inte praktiskt. Och voxlar kommer alltid att kräva mer minne än trianglar och texturer, tills trianglarna bli små som voxlar. Trianglar har inte denna stenhårda begränsning.

Skrivet av dpom86:

Slutligen tycker jag det är ganska drygt av dig att säga att jag hade fel och att du rättade till mina fel när ingetdera av de två påståendena är sanna! Du presenterade din egen ide och kan inte backa upp att något jag sagt skulle vara fel. Alla mina uträkningar är korrekta för de antaganden som jag tydligt presenterar. Att få ett annat resultat med andra antaganden är inte precis en nyhet.

Om jag inte gjort fel i min beräkning ovan, så har du visst gjort en felberäkning, om jag pga trötthet själv räknat fel istället så ber jag om ursäkt.

Och min poäng var att du pratar om t.ex hur olika komprimeringsalgoritmer visst kan användas för att komprimera voxlar utan att visa på att det ens finns några som helst belägg för dom går att anpassa till voxlar på det sättet du beskriver.

Skrivet av dpom86:

Edit:
Det är precis sådant här jag pratar om:

Du ignorerar ju praktiskt taget allt jag sagt. Hur många unika punkter behöver du för att beskriva marken? Med gräs osv på så kan vi väll dra till med något bara, säg 800000. För det så får vi kanske lite gruskorn, lite grästuvor(som i sig kan bestå av upprepningar av en mindre uppsättning grässtrån), några löv och lite stenar. Med denna datan har vi råmaterialet till att dekorera hur mycket terräng (mark) som helst. 1m^2 eller 1000000m^2 spelar ju ingen roll! Vi snackar fortfarande om att upprepa samma data för ett i sammanhanget billigt overhead. Och om vi har ~8000x8000 till vårt förfogande, ja då har vi använt 100st av 8000 rader och har "bara" 7900 rader kvar till resten av världen. Stammen på ett träd: Antagligen upprepningar av ett fåtal bitar bark. Bladen - redan gått igenom. Husen - redan gått igenom. Jag ser helt enkelt inte dina enorma problem som du påstår finns här med objekt som tar upp enorma mängder data. Enligt mig, och det har jag sagt hela tiden, så borde detta räcka för att åstadkomma en hel del om man bara är lite smart i sina lösningar.

Jag referrar till ovan, din tanke är väldigt bra i teorin, den löser minnesproblemet (däremot blir inte grafikerna så glada)... men istället förstör den hela poängen med UD om ingen hittar en fantastisk algoritm som kan söka igenom överlappande och arbiträrt placerade och roterade SVO-objekt på O(1) eller väldigt väldigt billigt.

Och tills någon tagit fram en sådan algoritm så kan vi inte heller anta att någon kommer att kunna göra det. Om någon inte kan presentera en vetenskaplig teori för hur det isf skulle funka. Återigen, rätta mig gärna om jag har fel.

Permalänk
Medlem
Skrivet av Syranide:

Jag citerar:

"Med 1GB kan man beskriva 1048.6kvadratmeter yta med en punktupplösning på 16punkter/kvadratmillimeter!"

Så förklara gärna, för om jag inte är helt snurrig så tar dina 1048 m^2 (och 16 punkter per mm^2) ... 1048.6 * (1000^2 * 16) = 15.6 GB (det är sent och jag är trött så rätta mig gärna om jag klantat mig)

Och då har vi inte ens räknat med att det finns flera nivåer i ett octree, att världen inte enbart är platt och att en voxel kanske bör representeras som mer än 1 byte.

Och sen är det väldigt viktigt att inse att 1048m^2 i praktiken är en yta på 33*33m... det är inte ens i närheten av en fotbollsplan!

Jag accepterar lossyness, jag säger ju tom att dagens grafikkort har 1:4 och 1:6, väldigt lossy. Men som jag visade innan med ett räkneexempel, det spelar ingen roll om du ens hittar en realtidsalgoritm som är 1:100, mängden data du får ut är ändå OFANTLIGT STOR relativt vad som används idag och vad som praktiskt kan distribueras.

Praktiskt som i att, att en kvadratkilometer yta skulle kräva en stor del av bluray-skiva... det är inte praktiskt. Precis som att streama RAW 1080p film över nätet till konsumenter inte heller är praktiskt.

Självklart, du har bra tankar, men med all sannolikhet faller det i praktiken. För vad jag vet så funkar SVO just nu inge vidare med roterade objekt. Så alla objekt skulle behöva vara vridna i 90-graders vinklar (detta kanske däremot går att lösa ganska effektivt, men vad jag vet har ingen visat att det går att göra effektivt än). Ganska fyrkantig värld det skulle bli, isf. Och då utgår du också ifrån att det ens går att komponera ihop flera lager av SVO-objekt effektivt... något som bör vara ett väldigt stort problem i praktiken eftersom du med all sannolikhet behöver traversera samtliga SVO-objekt inom ett område (nu blev kostnaden beroende av geometrins komplexitet igen = dåligt), vilket också med all sannolikhet är varför UD inte gör det utan håller sig till en fast grid... dom slipper överlapp.

Och då kommer man även ifrån den stora fördelen med UD, att du kan göra din oändligt komplicerade modell, och den kommer prestera precis lika bra... visst, den kommer prestera precis lika bra men den kommer istället sluka enorma mängder utrymme. Och för att minska mängden utrymme så skulle det krävas ett gräsligt arbete med att handplacera objekt. Sen underskattar du alla småeffekter som används idag, en tegelvägg är inte bara en repeterad tegeltextur, utan det ligger säkerligen minst en textur ovan på den som skapar variation över hela väggen. Och samma gäller för allt annat också.

Och sen kommer vi tillbaka till minnesproblemet, allting du nämnde ovan, kan man även göra med trianglar och texturer (och det gör dom!)... vilket betyder att trianglar och texturer kommer alltid vara mycket mer utrymmeseffektivt. Och spelutvecklare har redan utrymmesproblem idag med mer eller mindre alla spel. All låta varje objekt ta upp avsevärt mer utrymme kommer inte lösa det. Och när man får mer utrymme kan man även öka kvaliteten på trianglarna och texturerna.

Vi kan redan idag använda högupplösta displacementmaps (för väggar, mark, etc) och liknande tekniker och det skulle emulera mycket av det som UD stoltserar med... men man gör inte det för prestandan och utrymmet spenderas bättre på annat håll, som atmosfäriska effekter, ljussättning, skuggor, dimma, etc.

John Carmack har också sagt att Idtech 6 inte kommer komma på många år. Och jag sa inte att han övergivit det, utan att han uppenbarligen inte använder det just nu, och att om han kommer använda det, så har jag väldigt svårt att se att han isf skulle gå i UDs fotspår.

Och nej, jag säger inte 500m^2 på 8GB, jag sa 22 block på 8GB om du läser hela kommentaren. Dvs, 22 block likt dom som UD använder, och UD använder 24 unika block (och har 8GB minne i sin dator!). Min poäng var att UD har med all sannolikhet inte alls kommit på någon revolutionerande teknik och att minnesutrymmet absolut är ett problem. För dom visar mer eller mindre EXAKT så många block som jag räknade fram att dom bör kunna visa, utan att räkna på optimeringar. Och hur intressant är deras värld som isf tar 8GB utrymme?

Allting som är O(N^2) är i praktiken väldigt sällan praktiskt, det gäller även kvadratmeter med voxlar. Dvs, om inte ALLT i hela världen kan representeras som enormt återanvända instanser av voxelobjekt, så kommer utrymmet öka O(N^2) med storleken. Det är inte praktiskt. Och voxlar kommer alltid att kräva mer minne än trianglar och texturer, tills trianglarna bli små som voxlar.

Skickades från m.sweclockers.com

Citera på du bara. Citera lite mer så blir det t.o.m. rätt. Du plockar bara en mening som citat ur ett sammanhang. Sammanhanget är komprimeringen som du inte tar med. Faktum är att du räknar ut antalet punkter på 1000m^2 och slänger på enheten GB på det. Var påstår du att jag skrivit 1punkt=1byte någonstans? Däri ligger det du klantat dig med om du undrade.

Och jag köper fortfarande inte att det skulle vara ett problem att det "bara" är 33x33m. Hur många gånger ska vi tjata om det egentligen?

"...spelar ingen roll ... mängden data du får ut är ändå OFANTLIGT STOR relativt vad som används idag och vad som praktiskt kan distribueras."
Återigen för att vi inte använder samma antaganden så kommer du fram till ditt "OFANTLIGT STOR".
Jag kommer inte fram till samma sak för jag har något annorlunda antaganden ...fortfarande!
Det är typ det jag försöker säga hela tiden; sammanfattning av våran osämja: Jag tror inte datan behöver bli så stor. Antaganden + siffror -> du svarar: Om man räknar såhär så blir det JÄTTE STORT! -> jag svarar: Men jag räknar inte så. Det blir stort men jag tror inte det behöver bli jättestort -> du svarar: Men om man använder mina antaganden så blir det fortfarande JÄTTE STORT! Ser du inte det? Kolla siffror! -> Jag svarar: Men dina räkningar bygger fortfarande bara på dina egna antaganden och inte på mina. Inte jättestort! -> Jo OFANTLIGT! -> Nääh! -> Joo! -> Nääh...

"Praktiskt som i att, att en kvadratkilometer yta skulle kräva en stor del av bluray-skiva... det är inte praktiskt."
Om du hade ett spel med så bra grafik som säljs några år, säg 4år, in i framtiden (Även om UD motorn skulle bli klar säg nästa år tar det tid att göra ett spel också!) som kräver "en stor del av en bluray-skiva", så svarar jag: Vad är det som är konstigt med det? Det är ungefär som att säga "Tänk om filmer i framtiden tog upp en hel bluray skiva!" Duh! Varför inte spel på Bluray? Vi snackar flera år in i framtiden dessutom.

"du har bra tankar, men med all sannolikhet faller det i praktiken"
Så kan det mycket väl vara. Jag försöker säga ett det inte är så löjligt orimligt som många säger. Jag argumenterar för att det skulle ligga inom det teoretiskt möjliga. Teorier funkar inte alltid i praktiken tyvärr.

"Och för att minska mängden utrymme så skulle det krävas ett gräsligt arbete med att handplacera objekt."
Det gör man väll ändå? Eller vad? En artist som gör 10 olika träd måste fortfarande göra allt jobb. Han måste ju göra allt som ska vara olikt på de 10träden , det ploppar ju inte dit av ren magi. Vad skulle bli extra jobb menar du?

"Sen underskattar du alla småeffekter som används idag, en tegelvägg är inte bara en repeterad tegeltextur, utan det ligger säkerligen minst en textur ovan på den som skapar variation över hela väggen"
Jag vet. Jag gör spel. Jag trodde bara inte jag behövde gå in så djupt. Du kan ha små voxelbitar som du lägger på teglet för att ge det den där variationen. Och du kan ju ha ett par olika grundbitar av tegel, inte bara en. Det var väll inte så svårt att komma på den lösningen, det kunde du väll kommit fram till själv tycker jag. Det kanske inte blir lika bra variation som dagens lösningar, men det blir ju bättre på andra sätt istället. Måste det ha alla fördelar från dagens teknik verkligen??

"Och sen kommer vi tillbaka till minnesproblemet, allting du nämnde ovan, kan man även göra med trianglar och texturer (och det gör dom!)... vilket betyder att trianglar och texturer kommer alltid vara mycket mer utrymmeseffektivt."
Fel. Det kan du citera Carmack på, att när du drar upp detaljrikedomen till en viss nivå så blir trianglar och texturer mer utrymmeskrävande.

"Vi kan redan idag använda högupplösta displacementmaps (för väggar, mark, etc) och liknande tekniker och det skulle emulera mycket av det som UD stoltserar med... men man gör inte det för prestandan och utrymmet spenderas bättre på annat håll, som atmosfäriska effekter, ljussättning, skuggor, dimma, etc."
Visst, men sen är det ju lite skillnad i hur mycket prestanda som krävs för de två också eller? Det du föreslår skulle få en modern dator att kräla på sina knän om man försökte göra det på sättet du föreslår. "Går att göra med dagens teknik" är ett högst teoretiskt påstående om du inte är beredd att acceptera <1fps. Det går dom ju igenom i filmen t.o.m. Jag har hyfsad koll på vad man kan göra och precis som dom säger i filmen så kan man bara "putta upp" pixlar, du kan inte faktiskt skapa håligheter under utstickande grejer. För det krävs riktig geometri. Dessutom stretchas texturerna ut där du stretchar i polygonens yta så det ser också sämre ut desto mer du stretchar. Och återigen kan jag citera Carmack om du vill där han säger att tekniken inte är smidig, mycket jobb och krångel och du kan ändå inte få allt du vill ha. (...utan måste ha riktig geometri för att få det som du vill) Det är i samma veva som han pratar om att han vill att man ska kunna skulptera världen som lera. Vilket han poängterar att du inte kan med dessa tekniker för det finns flera saker du inte kan fixa med det.

"Och nej, jag säger inte 500m^2 på 8GB"
Eh, jo! Du säger det OCH 22block. På samma sätt som jag säger 100m^2. Jag har aldrig sagt att det motsvarar 100m^2 av spelvärld eller nått sånt. Jag går bara aldrig så långt som att försöka approximera mina ytor till block som du gör. Jag jämför dina äpplen med mina äpplen. Sedan att du har gått vidare och gjort äpplesaft av dina betyder inte att jag inte kan jämföra mina äpplen med de äpplen du använde för att göra saften.

"Min poäng var att UD har med all sannolikhet inte alls kommit på någon revolutionerande teknik och att minnesutrymmet absolut är ett problem."
Tja det är fullt möjligt men gör inte mina teorier omöjliga bara för att dina är mer sannolika.

"Allting som är O(N^2) är i praktiken väldigt sällan praktiskt, det gäller även kvadratmeter med voxlar. Dvs, om inte ALLT i hela världen kan representeras som enormt återanvända instanser av voxelobjekt, så kommer utrymmet öka O(N^2) med storleken. Det är inte praktiskt. Och voxlar kommer alltid att kräva mer minne än trianglar och texturer, tills trianglarna bli små som voxlar."
Återigen ger du mig en lektion i hur matten skulle bli om vi går på dina antaganden istället för mina. Du avslutar vackert med att säga emot dig själv då du tidigare i texten säger att voxlar alltid kommer ta mer plats. "Alltid mycket mer effektivt" har blivit "tills" i denna meningen - det finns t.o.m. ett "mycket" med för att verkligen understryka din motsägelse.

Visa signatur

SweClockers Dark Pearl tema: http://www.sweclockers.com/forum/trad/1484891
(Rek. Stylus)

Permalänk
Medlem
Skrivet av dpom86:

Citera på du bara. Citera lite mer så blir det t.o.m. rätt. Du plockar bara en mening som citat ur ett sammanhang. Sammanhanget är komprimeringen som du inte tar med. Faktum är att du räknar ut antalet punkter på 1000m^2 och slänger på enheten GB på det. Var påstår du att jag skrivit 1punkt=1byte någonstans? Däri ligger det du klantat dig med om du undrade.

Och jag köper fortfarande inte att det skulle vara ett problem att det "bara" är 33x33m. Hur många gånger ska vi tjata om det egentligen?

Ok, jag missade att det handlade om komprimering. Men du har fortfarande inte visat att det finns några typer av realtidskomprimeringalgortimer som är MINST 1:16 (för annars kommer det fortfarande ta MINST 16GB utrymme i minnet), och där man dessutom kan beskriva en voxel med ENABRT 1 byte. Och där man dessutom inte har någon overhad från octreet. Plus att du antar att hela världen är spikrak och platt. Du har gjort ett otroligt komplicerat problem (en värld) till ett trivialt exempel (ett platt plan).

Hur kan det inte vara ett problem med att 33x33m tar MINST 1GB utrymme (med din icke existerande realtidskomprimering, och utan allt det jag nämner ovan)? 33x33m är ju inte ens lika stort som en counter-strike karta! Och enligt mina beräkningar, så om man inte kan komprimerar datan men istället använder en palett (från 12 bytes till 1 byte), så tar 22m^2 av rimlig data 8GB.

Och det spelar ingen roll vad du påstår om komprimering, det finns förnärvarande inga algoritmer som jag känner till som kan åstadkomma hög komprimeringsgrad och dekomprimering av SVO i realtid.

Skrivet av dpom86:

"...spelar ingen roll ... mängden data du får ut är ändå OFANTLIGT STOR relativt vad som används idag och vad som praktiskt kan distribueras."
Återigen för att vi inte använder samma antaganden så kommer du fram till ditt "OFANTLIGT STOR".
Jag kommer inte fram till samma sak för jag har något annorlunda antaganden ...fortfarande!
Det är typ det jag försöker säga hela tiden; sammanfattning av våran osämja: Jag tror inte datan behöver bli så stor. Antaganden + siffror -> du svarar: Om man räknar såhär så blir det JÄTTE STORT! -> jag svarar: Men jag räknar inte så. Det blir stort men jag tror inte det behöver bli jättestort -> du svarar: Men om man använder mina antaganden så blir det fortfarande JÄTTE STORT! Ser du inte det? Kolla siffror! -> Jag svarar: Men dina räkningar bygger fortfarande bara på dina egna antaganden och inte på mina. Inte jättestort! -> Jo OFANTLIGT! -> Nääh! -> Joo! -> Nääh...

Ja, och läs ovan, jag tänker anse att 1 liter vatten visst får plats på 1mm^3, det är löjligt, det finns ingenting som stödjer att det skulle vara möjligt, och tills någon bevisar eller lägger fram en teori om hur det skulle gå till, så kan jag inte heller rimligtvis anta att det någonsin kommer vara rimligt (för även om det fysiskt möjligt så är lösningen antagligen att hälla det i ett svart hål).

Skrivet av dpom86:

"Praktiskt som i att, att en kvadratkilometer yta skulle kräva en stor del av bluray-skiva... det är inte praktiskt."
Om du hade ett spel med så bra grafik som säljs några år, säg 4år, in i framtiden (Även om UD motorn skulle bli klar säg nästa år tar det tid att göra ett spel också!) som kräver "en stor del av en bluray-skiva", så svarar jag: Vad är det som är konstigt med det? Det är ungefär som att säga "Tänk om filmer i framtiden tog upp en hel bluray skiva!" Duh! Varför inte spel på Bluray? Vi snackar flera år in i framtiden dessutom.

Nu skrev jag tom fel, jag menade faktiskt 1000m^2 vilket inte ens är i närheten av 1km^2. Vilket är löjligt lite, som sagt va, det är inte ens i närheten av en fotbollsplan (ett hyreshus eller vad du nu vill jämföra med, och det krävs mer variation än bara en vägg och ett fönster).

Och återigen, om du utgår från att vi kan hitta sätt att låta UD använda 100GB utrymme, fundera då även på vad man kan göra med trianglar om vi ger dom 100GB utrymme. Väldigt mycker mer skulle jag gissa.

Det är meningslöst att argumentera med "vadå långsamt? långsamt idag var snabbt för 100 årsedan! så därav är ingenting snabbt eller långsamt, och min bil är därför lika snabb som din.".

Skrivet av dpom86:

"du har bra tankar, men med all sannolikhet faller det i praktiken"
Så kan det mycket väl vara. Jag försöker säga ett det inte är så löjligt orimligt som många säger. Jag argumenterar för att det skulle ligga inom det teoretiskt möjliga. Teorier funkar inte alltid i praktiken tyvärr.

Och här håller jag inte med dig det minsta, att argumentera över teoritisk framtida utveckling är löjligt. Då antar jag också att vi hittar en algoritm som mappar trianglar till ett octree på O(1) och därmed blir trianglar bättre än SVO på alla sätt... och så räknar jag med att vi kan komprimera varje triangel till 1 byte. Alla problem lösta, SVO är meningslöst... men det kanske inte funkar i praktiken!

Skrivet av dpom86:

"Och för att minska mängden utrymme så skulle det krävas ett gräsligt arbete med att handplacera objekt."
Det gör man väll ändå? Eller vad? En artist som gör 10 olika träd måste fortfarande göra allt jobb. Han måste ju göra allt som ska vara olikt på de 10träden , det ploppar ju inte dit av ren magi. Vad skulle bli extra jobb menar du?

Jag anser att situationen i UD skulle vara värre i praktiken, men eftersom det inte finns några verktyg idagsläget så är det självklart svårt att ge några konkreta exempel. Min poäng var iaf att UD marknadsförs som "skanna en palm", så har du en palm i spelet, om du istället måste klippa upp den i löv och stomme, och sedan kopiera och placera dessa förhand så har mycket av poängen och unikheten försvunnit.

Skrivet av dpom86:

"Sen underskattar du alla småeffekter som används idag, en tegelvägg är inte bara en repeterad tegeltextur, utan det ligger säkerligen minst en textur ovan på den som skapar variation över hela väggen"
Jag vet. Jag gör spel. Jag trodde bara inte jag behövde gå in så djupt. Du kan ha små voxelbitar som du lägger på teglet för att ge det den där variationen. Och du kan ju ha ett par olika grundbitar av tegel, inte bara en. Det var väll inte så svårt att komma på den lösningen, det kunde du väll kommit fram till själv tycker jag. Det kanske inte blir lika bra variation som dagens lösningar, men det blir ju bättre på andra sätt istället. Måste det ha alla fördelar från dagens teknik verkligen??

Vadå man kan "ha små voxelbitar som du lägger på teglet"? Hur sjutton skulle det gå till, ytterligare en massa SVO-objekt med "kludd" som man överlappar? Och visst man kan ha flera variationer av tegel. Men det jag menar är:

http://borralm.files.wordpress.com/2010/10/brick_wall.jpg
Det skulle kunna vara en tegelvägg i ett spel, först har man en tegeltextur som upprepas, sen ovanpå det har man lagt en till textur som ger till synes oändlig färgvariation. Dvs, om du skulle gjort det i ett spel så skulle ingen tegelsten på väggen se ut exakt som någon annan, även om grundtexturen upprepas många gånger. Det går dra det här mycket längre, man kan även använda displacement mapping och tessellering, och så har man något som är väldigt likt UD! Du skulle tom kunna sampla tegelstenar i realtid på GPUer för att göra hela väggen unik... och det skulle återigen krävs mindre utrymme.

Och jag ser verkligen inte dragningskraften med detaljrikedomen som visas i UD, trianglar kan emulera det mesta av detaljrikedomen, redan idag om man slipper tänka på shading och allt annat som måste in i ett spel (t.ex. som att folk inte har obegränsat med RAM!). Men som sagt va, det finns ens praktisk sida i det hela också, och den är inte än på några år, och om några år så har nog trianglar tagit ännu några steg längre frammåt.

Skrivet av dpom86:

"Och sen kommer vi tillbaka till minnesproblemet, allting du nämnde ovan, kan man även göra med trianglar och texturer (och det gör dom!)... vilket betyder att trianglar och texturer kommer alltid vara mycket mer utrymmeseffektivt."
Fel. Det kan du citera Carmack på, att när du drar upp detaljrikedomen till en viss nivå så blir trianglar och texturer mer utrymmeskrävande.

Ja, det är väl självklart det finns en brytpunkt där trianglar och texturer bli mer ineffektiva, dvs, troligtvis då en triangel i medel motsvarar ~4-8 voxlar kanske. Och det finns absolut ingen anledning att någonsin göra på det sättet. För på den nivån funkar tessellering, procedurell genering och displacement mapping bättre. Dvs, det finns ingen anledning att någonsin lagra så små trianglar.

Skrivet av dpom86:

"Vi kan redan idag använda högupplösta displacementmaps (för väggar, mark, etc) och liknande tekniker och det skulle emulera mycket av det som UD stoltserar med... men man gör inte det för prestandan och utrymmet spenderas bättre på annat håll, som atmosfäriska effekter, ljussättning, skuggor, dimma, etc."
Visst, men sen är det ju lite skillnad i hur mycket prestanda som krävs för de två också eller? Det du föreslår skulle få en modern dator att kräla på sina knän om man försökte göra det på sättet du föreslår. "Går att göra med dagens teknik" är ett högst teoretiskt påstående om du inte är beredd att acceptera <1fps. Det går dom ju igenom i filmen t.o.m. Jag har hyfsad koll på vad man kan göra och precis som dom säger i filmen så kan man bara "putta upp" pixlar, du kan inte faktiskt skapa håligheter under utstickande grejer. För det krävs riktig geometri. Dessutom stretchas texturerna ut där du stretchar i polygonens yta så det ser också sämre ut desto mer du stretchar. Och återigen kan jag citera Carmack om du vill där han säger att tekniken inte är smidig, mycket jobb och krångel och du kan ändå inte få allt du vill ha. (...utan måste ha riktig geometri för att få det som du vill) Det är i samma veva som han pratar om att han vill att man ska kunna skulptera världen som lera. Vilket han poängterar att du inte kan med dessa tekniker för det finns flera saker du inte kan fixa med det.

Du kan kolla Unigen Heaven som du säkerligen känner till, det kör i full FPS på modern hårdvara, och visst, det har inte riktigt samma nivå av detaljer som UD, men UD går inte ens att använda i realtid i spel idag! Och verkligen, hur mycket mer detaljer än vad som visas i Unigen behövs i praktiken?

Skrivet av dpom86:

"Och nej, jag säger inte 500m^2 på 8GB"
Eh, jo! Du säger det OCH 22block. På samma sätt som jag säger 100m^2. Jag har aldrig sagt att det motsvarar 100m^2 av spelvärld eller nått sånt. Jag går bara aldrig så långt som att försöka approximera mina ytor till block som du gör. Jag jämför dina äpplen med mina äpplen. Sedan att du har gått vidare och gjort äpplesaft av dina betyder inte att jag inte kan jämföra mina äpplen med de äpplen du använde för att göra saften.

Nej det sa jag faktiskt inte, 500m^2 på 8GB var innan jag gjorde klart alla beräkningarna i kommentaren (där jag in octree overhead, etc). Och därefter har jag ingen aning om vad du snackar om.

Skrivet av dpom86:

"Min poäng var att UD har med all sannolikhet inte alls kommit på någon revolutionerande teknik och att minnesutrymmet absolut är ett problem."
Tja det är fullt möjligt men gör inte mina teorier omöjliga bara för att dina är mer sannolika.

Eh va?
Självklart är dina teorier inte omöjliga, men fram tills att någon ens lägger fram några belägg för att dom funkar så är det totalt meningslöst att anta att dom är sanna. Som sagt va, jag antar att vi hittar en log(N) komprimeringsalgoritm i framtiden, för det verkar lösa mina problem väldigt väl.

Skrivet av dpom86:

"Allting som är O(N^2) är i praktiken väldigt sällan praktiskt, det gäller även kvadratmeter med voxlar. Dvs, om inte ALLT i hela världen kan representeras som enormt återanvända instanser av voxelobjekt, så kommer utrymmet öka O(N^2) med storleken. Det är inte praktiskt. Och voxlar kommer alltid att kräva mer minne än trianglar och texturer, tills trianglarna bli små som voxlar."
Återigen ger du mig en lektion i hur matten skulle bli om vi går på dina antaganden istället för mina. Du avslutar vackert med att säga emot dig själv då du tidigare i texten säger att voxlar alltid kommer ta mer plats. "Alltid mycket mer effektivt" har blivit "tills" i denna meningen - det finns t.o.m. ett "mycket" med för att verkligen understryka din motsägelse.

Voxlar är mer eller mindre den yttersta generaliseringen av en värld (atomer), mao, så för att SVO ska vara effektivt så måste voxlar vara den absolut bästa approximeringen av ett problem. Och en voxel är inte det, fördelen med voxlar är att dom är "atomer", så man kan approximera de flesta objekt väldigt väl, men inte utrymmeseffektivt. Trianglar är en mindre generell approximering som bygger på observation att många ytor är platta eller har en platt utgångspunkt som sedan kan tesselleras för att skapa variation.

Dvs, varför vill vi representera en tegelväg som individuella voxlar, när man kan representera den som en enda stor quad som tesselleras och displacement-mappas och på så sätt kan varje tegelsten i väggen bli tillsynes helt unik och samtidigt vara ungefär lika detaljerad som SVO-alternativet, samtidigt som man kan göra den oändligt stor. Och allt som krävs är, 1 quad, 1-4 lagom upplösta texturer och några shaders.

Jag vet inte riktigt vart diskussionen tagit vägen, men UD är inte praktiskt idag (prestanda, utrymme, etc), och det är säkerligen flera år tills det ens finns hopp om att det blir praktiskt. Och om det blir praktiskt då bygger på att vi väldigt effektivt löst komprimering, animering, etc OCH dessutom utvecklat bra verktyg för att jobba med det. Vilket är väldigt stora problem. Notera att jag säger ingenting om SVO generellt, för det finns säkerligen praktiska användningsområden för SVO redan idag, men UD har en väldigt specifik fokus.

Och det går inte argumentera förbi att utrymme är ett problem för trianglar och texturer även idag, voxlar kan omöjligt vara mer utrymmeseffektiva för samma kvalitet för praktiska ändåmål i dagsläget.

Sen tycker jag återigen att det blivit väldig hysteri kring detaljerna i UD, som sagt va, moderna grafikkort klarar av pressa ut liknande grafik i 60 FPS om dom också skiter i shading och alla andra effekter. Men som sagt va, spelutvecklare har som tur va insett att detaljstudera stenar och grässtrån är långt ifrån det viktigaste man gör i spel... utan att helhetsintrycket är det viktiga, animering, atmosfär, ljussättning, skuggor, variation, dimma, effekter, etc. Och det enda SVOer visat för sig hitills i någorlunda realtid är en ytterst repeterad, platt och statisk och solid värld... men väldigt detaljerad.

Skickades från m.sweclockers.com

Permalänk
Skrivet av Syranide:

Sen tycker jag återigen att det blivit väldig hysteri kring detaljerna i UD, som sagt va, moderna grafikkort klarar av pressa ut liknande grafik i 60 FPS om dom också skiter i shading och alla andra effekter. Men som sagt va, spelutvecklare har som tur va insett att detaljstudera stenar och grässtrån är långt ifrån det viktigaste man gör i spel... utan att helhetsintrycket är det viktiga, animering, atmosfär, ljussättning, skuggor, variation, dimma, effekter, etc. Och det enda SVOer visat för sig hitills i någorlunda realtid är en ytterst repeterad, platt och statisk och solid värld... men väldigt detaljerad.

Skickades från m.sweclockers.com

Grejen är ju att de gör det på EN kärna i en laptopprocessor. Då har de HELA gpuns beräkningskraft kvar till dina effekter.

Visa signatur

The cake is a pie.