Hoofdcategorieën

'Gametextures tot zeventig procent kleiner'

Door René Wichers, maandag 9 oktober 2006 15:39
Bron: Bit-tech, views: 34.869

Op de London Games Developers Conference heeft het bedrijf Allegorithmic software gepresenteerd waarmee de grootte van gametextures zeer fors kan worden gereduceerd. Het zogeheten ProFX-programma maakt gebruik van een techniek die 'procedural texturing' wordt genoemd, en waarmee textures zonder kwaliteitsverlies zeventig procent kleiner gemaakt kunnen worden. De officiële site rept zelfs van een compressieverhouding van 1:300. De technologie is met name bruikbaar voor spellen die online worden aangeboden, omdat de gamegraphics een belangrijk deel van de downloadtijd voor hun rekening nemen. Ook de laadtijden van spellen zouden dankzij ProFX verkort kunnen worden; de makers claimen dat het opbouwen van textures met hun software sneller gaat dan het uitlezen van ongecomprimeerde graphics van 'courante' harde schijven.

Het compressiesysteem werd gedemonstreerd met behulp van de game Roboblitz. Dit spel, dat op de Unreal 3-engine draait, mocht niet groter dan 50MB zijn om via Xbox Live Arcade verspreid te worden. De ProFX-auteurs slaagden daar naar eigen zeggen probleemloos in: de 80MB aan textures die voor het eerste level van het spel nodig zijn, werden in vier seconden gegenereerd met behulp van een bestand van slechts 280KB. Op de vraag waarom niet iedereen van deze software gebruik maakt, liet woordvoerder Sébastien Deguy weten dat ProFX-editor MapZone niet al te eenvoudig in het gebruik is, maar diverse scholingsprogramma's moeten dat probleem verhelpen. Volgens Deguy is het dan ook een kwestie van tijd voordat de grote gamestudio's zijn product in gebruik nemen. De Allegorithmic-software is beschikbaar voor Xbox- en Windows-games; ondersteuning voor de PlayStation 3 komt 'binnenkort' op de markt.

MapZone for ProFX-screenshot (klein)
Volgende 16:29
Vorige 14:47

Reacties

«  1  2  3  4  5  »


een demo naar een fps gebaseerd op dezelfde technologie (hij is maar 97kb dus een moeite om het de downloaden is het niet ;))

http://kk.kema.at/files/kkrieger-beta.zip

homepage:

http://www.theprodukkt.com/home

Ah, ik had al zo'n vermoeden dat dit alles bekend voorkwam, maar het zijn de oude Farbrausch jongens :) Wel leuk om te zien dat na al die jaren Ryg en Chaos hun werk nog steeds mensen versteld doet staan :)

Overigens zijn onderdelen van de game Spore ook gebaseerd op zaken die Farbrausch en andere demosceners vroeger al gebruikten: niet alleen procedural textures maar ook models op basis van formules en operatie definities.

Ach so, het is idd wel erg werkkzeug1 en dan hebben ze idd gelijk dat het niet echt laag drempelig is. Als je denkt dat je even een demol in elkaar flanst met die tool kom je van een aardig kouwe kermis thuis.

Maar man, wat hebben die gasten mooie dingen in 64Kb weten te frotten..

(alhoewel deze fairlight 64Kb er ook best mag zijn.!)

Dat ding vreet 300 MB Ram :P :o

Ik betwijfel of dat dezelfde techniek is hoor, Farbrausch maakt meestal gebruik van textures die eigenlijk uit hele simpele formules gegenereerd kunnen worden. Zij kunnen niet zo maar elke willekeurige texture ff comprimeren met zulke ratio's...


Maar wat ik me dan af vraag, kan dit ook voor foto's en andere plaatjes gebruikt worden? :Y)

neen!

het is hetzelfde als .product
deze textures zijn ook niets meer dan formules en dit werkt dus ook niet met willekeurige bitmaps.

Haalt alle textures uit directx heb ik me laten vertellen vroeger ?

Was dit er vroeger ook al niet ? S3 had toch al een "texture compression" zodat je met minder videogeheugen ook al hele mooie plaatjes kon krijgen in je games. UT was daar een voorbeeld van met speciale drivers.
Althans ... dat staat mij bij

Klopt en ook direct x enzo hebben compressed textures natuurlijk.. maar dit is gewoon weer een stap verder in de techniek

Texture compression bestaat idd al een hele tijd en de technologie van S3 is vanaf versie 6.0 meegenomen in DirectX.

Als ik het goed begrijp werkt de software van Allegorithmic anders, in plaats van een kant-en-klare texture laden wordt het bouwplan voor de texture geladen en wordt de texture dan in elkaar gezet. Beetje het Ikea-idee, een handleiding en onderdelen in een doos nemen ook minder ruimte in dan een al in elkaar gezette kast ;)

Dat is idd echte (lossy) compression waarbij een blokje van 2x2 of 4x4 pixels worden opgedeeld in kleinere data. De hardware kan deze compressie in real-time uitpakken tijdens het renderen.

Wat hier besproken wordt is eigenlijk helemaal geen compressie. In plaats van een array van pixels op te slaan, wordt nu opgeslagen hoe die texture tot stand is gekomen. Een "teken lijn van (1, 1) naar (54, 63) met kleur (255, 0, 0)" commando kost bijvoorbeeld veel minder data dan het uiteindelijke plaatje.

Het nadeel is wel dat de textures echt met dit programma gemaakt moeten worden - het is niet mogelijk om bestaande textures met deze techniek te "comprimeren". Daarnaast mag het duidelijk zijn dat je met ongecomprimeerde textures een stuk meer vrijheid hebt, niet alles is nou eenmaal efficient te beschrijven met commando's en formules

Bij de claim
makers claimen dat het opbouwen van textures met hun software sneller gaat dan het uitlezen van ongecomprimeerde graphics van 'courante' harde schijven
heb ik echter sterk mijn twijfels, en ik vraag me af hoe ze dat gemeten hebben. Het duurt wellicht langer om de data van disk te halen dan zelf die textures op de CPU te genereren, maar ze vergeten daarbij voor het gemak even het feit dat data lezen van disk parallel loopt aan de CPU. Je kunt dus een leescommando geven en verder je ding doen, en zodra de data binnen is daar gebruik van maken. Deze manier is ideaal voor streaming content, omdat het game gewoon door kan lopen terwijl de data langzaam binnenkomt. Ik vraag me af of deze techniek nog steeds nuttig blijkt in een game als san andreas waar gigantisch veel real-time gestreamed wordt - volgens mij zorgt het berekenen van de textures uiteindelijk alleen maar voor extra stalls.

Wat natuurlijk wel handig is is dat de data maar één keer omgezet hoeft te worden, zodat het voornamelijk voordelig is voor downloads - je download minder data, maar bij de install of het eerste keer runnen van je game worden de textures uitgepakt en weggeschreven naar disk.

Wat hier besproken wordt is eigenlijk helemaal geen compressie, maar puur een andere manier om de data te beschrijven:
Zover ik weet is compressie een andere manier van data beschrijven.

Daar heb je helemaal gelijk in, ik heb de zin weggehaald

Het duurt wellicht langer om de data van disk te halen dan zelf die textures op de CPU te genereren, maar ze vergeten daarbij voor het gemak even het feit dat data lezen van disk parallel loopt aan de CPU. Je kunt dus een leescommando geven en verder je ding doen, en zodra de data binnen is daar gebruik van maken
Bij SCSI schijven of bij de S-ATA schijven met commandqueue-tagging zoals de WD Raptor wel ja. Normale IDE schijfjes belasten de processor toch echt nog steeds hoor door deze met interrupts te bestoken. SCSI en Raptors vallen overigens zeker niet onder de noemer 'courante' schijven; het moge duidelijk zijn waarom :)

Overigens, het is natuurlijk allemaal verkooppraat en als tegenargument voor de PS3/XBox360 en PC's kunnen we melden dat we binnenkort Blu-Ray of HD-DVD hebben en dus ook ruimte genoeg voor opslag. Voor online games heeft meneer wel een goed punt maar is die markt niet erg klein?

Wat ik bedoel is dat "leescommando geven, wachten op data, iets doen met die data, voer onafhankelijke operatie X uit" langer duurt dan "leescommando geven, voer onafhankelijke operatie X uit". Natuurlijk kost lezen van disk tijd, maar het is heel goed te parallelliseren, ookal krijg je tussendoor interrupts.

Markt groeit wel

EA Downloader
Steam

Beide programma's bieden toch ook al enorm grote games aan

toch denk ik dat dit wel degelijk sneller is, de meeste games hebben straks een dualcore cpu, en een 10000rpm s-ata schijf als het mee zit. Als je dan maar 280KB ipv 80MB van je disk moet lezen dat scheelt een heet stuk tijd. Je CPU maakt dat makkelijk goed.

Volgens de claim duurt het uitpakken maar enkele seconden,
toch een stuk sneller dan van een cd-rom of alles raw van de harde schijf lezen.

Verder kun je besparen op kosten,
een dvd kost duurder dan een cd-rom. Eentje is weer goedkoper dan twee.
Detail, maar in dergelijke oplages telt het wel even.

Daarnaast wordt steeds vaker de mogelijkheid geboden om via internet extra levels te downloaden, of zelfs complete episodes.
Jan met de pet op is denk ik blijer met een bestand van 50 MB die op een 2Mb lijntje enkele minuten duurt dan een bestand van enkele 100den MB wat weer minimaal een kwartier duurt. Ook kost het gewoon minder GB, klinkt ook onnozel,
maar het komt geregeld voor dat spellen legaal mbv bittorrent worden verspreid omdat de bandbreedte niet alleen ontoereikend is, het kost ook gewoon geld.

Volgens de claim duurt het uitpakken maar enkele seconden
Als je niets aan het doen bent ja. Tijdens het laden wel mooi, maar voor streaming data geen optie :). Overigens vond ik het 2e CPU argument wel een goede, die staat nu vaak ongebruikt te zijn en kan daar uitstekend voor ingezet worden.

Kost duurder? Het is duurder of iets kost meer... :+
(Reactie op lblies)

@lblies
kost meer of is duurder

Bij de claim
makers claimen dat het opbouwen van textures met hun software sneller gaat dan het uitlezen van ongecomprimeerde graphics van 'courante' harde schijven
heb ik echter sterk mijn twijfels, en ik vraag me af hoe ze dat gemeten hebben. Het duurt wellicht langer om de data van disk te halen dan zelf die textures op de CPU te genereren
Wat ik niet uit de site kan halen is waar het proces van het opbouwen van de textures plaatsvindt, doet de CPU dat of de GPU? In het laatste geval kan ik me voorstellen dat het razendsnel gaat, sneller dan inlezen vanaf de HD - uiteraard wel ten koste van je framerate. Je kaart kan immers niet tegelijk renderen en decoderen.Dan heb je weer veel voordeel van Crossfire / SLI. Hoe dan ook, het is goed dat er bedrijven zijn die eens op een andere manier naar het gebruik van textures kijken, we accepteren immers allemaal dat meer detail en realisme ook meer opslagruimte vereist, maar dat hoeft dus helemaal niet zo te zijn.

@.oisyn:
Het is inderdaad efficienter doordat je ongebruikte core(s) gebruikt voor het berekenen van die textures. DVD/BR is toch relatief traag mbt het ophoesten van grote blokken data, en je kunt zo dus meer parallel doen.

Ik moet er wel bij zeggen dat het er wel vanaf hangt wat voor textures je maakt. Hoe meer bewerkingen voor 1 texture, hoe trager (duh) en ik denk dan ook dat er een 'sweet spot' zit tot wanneer je kunt gaan met hun systeem.

Het is wel nuttig in games waarbij in grote werelden toch veel content gedistribueerd moet worden, en dit is ook de reden waarom in Spore ze deze technieken gaan gebruiken (ook voor models). Weet niet zeker of ze de Farbrausch boys' code hebben ingekocht daarvoor, wel dat ze duitsers daarvoor hadden ingehuurd, lijkt me dat er niet zoveel zijn naast Farbrausch die dit tot in de finesses beheersen.

Dat klopt ook dat uitpakken (precalcen eigenlijk),bekijk maar eens die 64K dingen die er mee gemaakt zijn. Die staan eerst een forse tijd de textures (en volgens mij ook de muziek) te calcen en naar een temp dir te zetten al voor ze starten. Maar goed bij downloadable content zou je er dus voor kunnen kiezen het zo te maken dat er 1 keer gedownload en gecalculeerd wordt om vervolgens die data gewoon offline op een lokale schijf te cachen. (gooit de gebruiker die data toch weg, niks aan het handje calculeer je het toch gewoon nog een keertje :) )

Dit is compleet anders.

In plaats van dat je vroeger bijvoorbeeld een grasmat maakte door het in photoshop te tekenen, wordt het hier in termen van functies opgebouwd. Bijv. (groen + noise) * motion_blur. Geeft meteen aan waarom het nog niet veel wordt toegepast; het is véél lastiger om een kwalitatief hoge texture te maken met procedures dan tekenen met pixels.

Dit soort tools bestonden al járen. In de allereerste 3D films (tijdperk van Tron) was procedural zelfs de énige manier, aangezien textures gewoon te groot waren om te verwerken door de computers van toen. En zowat elk rendering programma heeft ook procedural textures.

Nog voor de eerste shaders op GFX kaarten bestonden probeerde men dit soort tools al aan de gamedevelopers te slijten. Je kan zelf het daverende succes tot nog toe bepalen ;) Ik heb dan ook mijn twijfels of het dit bedrijf wél gaat lukken.

ik denk dat ze het met hun marketingpraat wel halen.

maargoed, het blijft wel lastig om op deze manier textures te maken, photoshop is toch een stuk makkelijker.
dat is argument 1, en ten tweede is dit *slechts* een manier om dingen kleiner op te slaan, het zal zeker weten ten koste gaan van de laadtijden(ze kunnen de pot op met hun verhaal over leestijden) en eens geladen kost het alsnog gigantisch veel videogeheugen.

aan de andere kant geldt ook het kudde-effect voor developers. en zeker aangezien er nu een game gemaakt word met UE3 en deze techniek zullen meerderen het nut inzien.

"In plaats van dat je vroeger bijvoorbeeld een grasmat maakte door het in photoshop te tekenen, wordt het hier in termen van functies opgebouwd."

Procedureel textures maken is niet nieuw. Sla een Foley, van Dam et al: Computer Graphics, Principles and Practice maar eens open, en presto. Probleem was dat vroeguh de computers niet snel genoeg waren om het allemaal mooi te doen.

Doet me denken aan de techniek die farb-rausch gebruikte voor hun scene demo's.

http://www.theproduct.de/text.html

x GB aan textures in 64kilobyte (+muziek/models/etc)

En het doet me ook denken aan Genetica, een texture-generator. Door middel van diagrammen - die een bepaald logaritme bevatten - die je aan elkaar knoopt genereer je uiteindelijk een bepaalde texture.

.. doet me denken aan The Black Lotus en dan specifiek de demo Jizz.

Dat was nog wel even wat eerder dan .product ;-)

Zou deze techniek via een patch/mod ook te gebruiken zijn in spellen die al uit zijn ?
Das namelijk ook erg interessant dan :)

1 woord; nee.
zie ook de andere reacties op deze site.

dat is alemaal heel mooi maar hoe groot is dat compressie/decompressie programma van hun dan?

waarschijnlijk ook heel klein. als je kijkt naar de voorloper hiervan (.produkt) zie je dat ze een hele FPS game met textures, modellen, geluiden én de code om het allemaal op te bouwen in 96kb kunnen proppen.

wel is het waar dat deze textures nooit zo mooi zullen worden als echte bitmaps, simpelweg omdat dit formules zijn en niet beelden. als je een formule zou maken om een bestaande foto op te slaan, dan heb je in principe het TGA formaat. lossless compressie.

Ik zie het genereren aan de hand van formules eerder als een voordeel, lijkt me stuk beter uitzien op moment dat je de texture oprekt e.d.

Ja Sony daar zit je dan met Blu-ray :D

Sony heeft zelf al aangekondigd dat de PS4 vermoedelijk de online dienst als primaire gamebron gaat gebruiken
tenzij er binnen 5 jaar dus overal glasvezel ligt, weten ze bij Sony dus ook al wel dat compressie gewoon noodzakelijk is
(kwestie van ook het ramgebruik binnen de perken te houden: een PS3/X360 heeft 512MB ram totaal, huidige high end pc's hebben 2GB ram + 512MB vram)

Sony gebruikt de opslagcapaciteit smoes eigenlijk alleen om z'n BR te promoten en als anti-kopieer maatregel
dit laatste lijkt misschien raar, maar het is een feit dat een spel van 5GB veel sneller de wereld rond gaat dan 1 van 20GB, neem daar bij dat de meeste mensen een hekel hebben aan geripte game, plus het feit dat BR-schijfjes en writer veel duurder zijn een DVDwriter en DVD-R's (het is misschien tijdelijk, maar als dit 2-3 jaar invloed heeft zijn ze al lang tevreden)

smoes? Er zijn nu al meerdere games in ontwikkeling die er dankbaar gebruik van maken en ook 360 developers zouden graag meer ruimte hebben dan 1 enkele DVD.

Dan nemen ze toch twee DVD's ;)
2 keer 8.5Gb moet genoeg zijn.

Maar dat zou met deze techniek dus niet nodig zijn.
En spellen van 4 of meer CD's waren er ook voordat men overging op DVD ...

"Dankbaar" als in 'we hebben naast alle game-data nog 3 GB over op de DVD, laten we nog wat (onnodige) movies erbij doen zodat ie tenminste vol lijkt'. Of 'laten we de movies gewoon als standaard MPEG opslaan en de audio ook als WAV, anders krijgen we de 2e DVD niet vol' ...

Klinkt een beetje cynisch, maar het is vaak wel de realiteit. Er zijn maar weinig games die de volledige capaciteit ook echt 'nuttig' inzetten.

Maar ff on-topic: ik denk ook wel dat de tijd eindelijk rijp is voor procedural-textures; de CPUs (en de GPUs met tig shaders al helemaal) en de Internet-bandbreedte kunnen het anno 2006 makkelijk aan.

Ik heb in het verleden ook demo's geprogrammeerd en stond eerlijk gezegd verbaasd van wat voor 'n 'realistische' beelden je met formules kunt bereiken; toen was alles uiteraard nog pre-calc't, maar tegenwoordig kan dat makkelijk real-time :Y)

Wiskunde is & blijft een prachtige taal, al wordt de schoonheid vaak miskent :7

Haha "tot 70 pct" wordt er gezegt. als je nu een game als RFOM van 20 gig naar max 70 pct verkleint heb je nog steeds 14 gig nodig, staat MS dan met zen DVD.

Haha "tot 70 pct" wordt er gezegt. als je nu een game als RFOM van 20 gig naar max 70 pct verkleint heb je nog steeds 14 gig nodig, staat MS dan met zen DVD.
Verkleinen tot 70% betekend dat je 30% overhoud op het einde he. 20gig /100 = 0.2gig * 30 = 6gig.

Het is sowieso onzin dat een game tegenwoordig 20GB nodig zou hebben..

Zelfs mijn Steam map met vele games waaronder alle nieuwe Source games is nog geen 12GB..

tot 70 procent verkleinen != verkleinen tot 70 procent van het origineel...

Of wel 20 GB * 0.3 = 6 GB.
en geen 14...

Als dit met en textures kan, kan dat toch ook met foto's?

Dat kan ook, het is namelijk minder KB groot op je memory stick om je hele studio + modellen mee te nemen.
Maar of dat handiger is ...

Nee, dat kan helaas niet.

Ze nemen een paar eenvoudige patronen en maken dat door middel van een aantal bewerkingen foto-realistisch. Je kan niet de andere kant op, dus van een echte foto naar een paar patronen en een aantal bewerkingen.

Waar het erg handig voor is, is voor het genereren van textures die veel herhaald worden, zoals muren en vloeren enz. Ook van text hoeven ze alleen een eenvoudige versie (of bv alleen het font) op te slaan. Daarna kan het met die bewerkingen weer foto-realistisch gemaakt worden.

Het lijkt een beetje op .werkkzeug1 van Farbrausch
laat

heb vroeger nog met .werkkzeug1 geprutst, was heel boeiend, maar toch een vrij hoge leercurve. Het duurde even vooraleer ik er ietwat deftige textures uitkreeg. De screenshot in het bovenstaande artikel lijkt kwa layout verdacht veel op het programma van farbrausch.

Geweldig. Zulke vindingen zijn tenminste echt handig, zelfs als het de helft minder zou zijn zou ik het al geweldig vinden.

Nu nog een uitvinding dat films van 800 MB naar 1 MB :9

Jan Sloot anyone ? :Y)

weet nog steeds niet of ik dat als hoax/hype om het boek te promoten moet zien of dat ik 't serieus moet nemen.

Wel toevallig... Iemand heeft iets uitgevonden waardoor supergrote bedrijven ineens aan de bedelstaf kunnen worden gebracht... en dan krijgt de man een 'hartaanval'??? en de broncode nergens te vinden?

Weet dat bedrijfsgiganten veel macht hebben... ze willen niet hun bedrijf failliet laten gaan door een uitvindertje.

Dus ik vind zijn dood nogal verdacht.

Zie ook de theorieen over de dood van Rudolf Diesel.

Aan de andere kant, ik heb nog nooit -iets- van dat ding van Sloot gezien. Ik wil best in een complot geloven, maar dan moet ik wel een fragment van bewijs zien. Voor hetzelfde geld had hij een idee, en nog helemaal niets uitgewerkt, maar dat iets te fraai opgeleukt naar buiten gebracht.

hij heeft zijn uitvinding laten ZIEN, schijnt het.

Hij had altijd al problemen met z'n hart, hij nam daar ook mediceinen tegen. Nou is zijn vinding al onmogelijk verklaard door verschillende experts. Tel je 1 en 1 bij elkaar op (hartproblemen + bedrog), dan lijkt z'n dood ineens niet zo heel raar meer..

Deze manier van compressie is eigenlijk de meest efficiente die mogelijk is voor in games; alle objecten apart benoemen.

Precies. Schijnt het.

Het schijnt ook dat er naar de octrooiaanvragen is gekeken, waarin Sloot het 'maar' over een compressiefactor 8 had, wat nu ook mogelijk is. De rest schijnt 'het papier waarop het was geschreven niet waar te zijn.'

Het blijft een raar verhaal uiteraard, maar voorlopig zijn er alleen een slechte octrooiaanvraag, en een toevallig tijdstip van z'n dood.
Tel je 1 en 1 bij elkaar op (hartproblemen + bedrog), dan lijkt z'n dood ineens niet zo heel raar meer..
Precies. Hij schijnt ook heel erg beschermend, tot in het paranoide toe, over z'n uitvinding te zijn geweest. Stel je maar eens voor: een bloednerveuze hartpatient die denkt dat iedereen z'n uitvinding wil stelen of hem om wil leggen....

ach, maar ja, wie kun je een 'expert' noemen?

De experts in de tijd van de middeleeuwen zullen ook wel gezegd hebben dat vliegen onmogelijk was :+

Als je het per se -wil- geloven, houdt niemand je tegen, hoor. :)

Dit principe werd in bijv. de demoscene al vaker gedemonstreerd. Een van de bekendste producties die op deze manier werkt is .the product van Farbrausch: http://theproduct.de/ en die gaat nog veel verder door ook de muziek op deze manier te genereren.

Eigenlijk is het ook geen echte compressie te noemen. Alles wordt on the fly gegenereerd, alleen het resultaat is ongeveer hetzelfde: een texture. Ik vraag me al een tijdje af wanneer dit echt in spellen zou worden gebruikt. Aan de andere kant; we hebben met DVD's de ruimte. En anders kunnen we weer terug naar CD's of zelfs diskettes (Farbrausch heeft ook een spelletje gemaakt en die is volgens hun traditie <1MB)
«  1  2  3  4  5  »

Op dit item kan niet meer gereageerd worden.

Volgende 16:29
Vorige 14:47
VNU Media logo Hosted by True

© 1998 - 2009 Tweakers.net - Alle rechten voorbehouden - Uw Privacy - Algemene Voorwaarden

Uitgever van: