Toon posts:

[Flash] Quality instellen van een enkele MC

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil graag van 1 MC in mijn flashproject de kwaliteit op low zetten. De actionscript dictionary zegt dat dit doormiddel van MC._highquality = 0; moet kunnen. Maar wanneer ik dit toepas dan zet hij alle MC's in mijn movie op low.

Weet iemand hiervoor de oplossing, en of het sowieso wel mogelijk is om dit te doen.

Verwijderd

Volgens mij gaat dat alleen voor je hele movie, net als bijv. je framerate. :)

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

_quality is een setting die de rendering-modus van de player bepaalt ( volgens mij doet de interne renderer een soort software-matige 4x supersampling op hoogste kwaliteit en kun je alleen maar omlaag, ralph help me out here :) ), en is derhalve een alles-of-niets oplossing. Wat jij wil kan dus niet

"You're only as good, as what you did last week."


Verwijderd

Dat zij ik toch oh,when? :+

Verwijderd

Het zit er in alle versies van flash tot mx niet in.

Flash rendert een scherm in grove lijnen ongeveer zo :

Alle objecten worden op depth (layer > depth) geplaatst. Per object word eerst de op diepte volgorde masking gedaan. Als alles op de stage staat word er clipping over de stage gedaan (alles wat zichtbaar is volgens de maten van de film). Na deze clipping word de verkregen afbeeldings data getekent op 4* 4* grote, waarna cubic interpolatie naar 4/ 4/ gebeurt (supersampling dus).
Derhalve is het nu niet mogelijk om mc's individueel op een andere quality gerenderd te laten worden.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Verwijderd schreef op 17 June 2003 @ 14:33:
Volgens mij gaat dat alleen voor je hele movie, net als bijv. je framerate. :)
Framerate weet ik nog zo net niet!

Althans als ik B-Top moet geloven >:)

Laten we ff wachten tot B-Top in de buurt is....

[ Voor 9% gewijzigd door BtM909 op 17-06-2003 15:09 . Reden: hmmm.. B-Top is me net voor :) ]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Erm, ik had al gereplied :)

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Verwijderd schreef op 17 June 2003 @ 15:07:
deze clipping word de verkregen afbeeldings data getekent op 4* 4* grote, waarna cubic interpolatie naar 4/ 4/ gebeurt (supersampling dus).
dat geloof ik niet. Ik heb de code van Flash 4 gezien en die doet mooi aan edge filtering - een 4 keer grotere tekening (ie zeg maar 32 bit) zou ONMOGELIJK zijn op mijn bakje, ie: 640x480 wordt dan 2560x1920*4 = 19MB!!! en daar 'even' in software een CUBIC! downsampling doen kost op Photoshop een hele hoop tijd. Haal ik geen frame / minuut.

Wat ie (volgens mij , in MX) wel doet is een edge trace bijhouden en die gaat interpoleren. Alles wordt ook mooi gecached natuurlijk.

Wel kan MX niet per/MC filteren zover ik weet - wel kun je de bitmap smoothing (ie DAT is wel cubic interpolation en ineens weet je waarom dat zo traag is) aan / afzetten per image. Weet niet wat ie doet met levels though...

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

hobbit_be schreef op 17 June 2003 @ 15:23:
[...]
dat geloof ik niet. Ik heb de code van Flash 4 gezien en die doet mooi aan edge filtering - een 4 keer grotere tekening (ie zeg maar 32 bit) zou ONMOGELIJK zijn op mijn bakje, ie: 640x480 wordt dan 2560x1920*4 = 19MB!!! en daar 'even' in software een CUBIC! downsampling doen kost op Photoshop een hele hoop tijd. Haal ik geen frame / minuut.
je berekening klopt alleen niet, de Flash Player rendert geen single pixels ( werkt intern niet met pixels maar met Twips waarbij 1 pixel, 2o TWIPS zijn ). Code voor het SWF formaat is trouwens ook online te vinden

/edit nog een linkje > http://www.openswf.org/spec/SWFfileformat.html

[ Voor 13% gewijzigd door oh,when? op 17-06-2003 15:34 ]

"You're only as good, as what you did last week."


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

offtopic:

check m'n edit ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
oh,when? schreef op 17 June 2003 @ 15:31:
[...]
je berekening klopt alleen niet, de Flash Player rendert geen single pixels ( werkt intern niet met pixels maar met Twips waarbij 1 pixel, 2o TWIPS zijn ). Code voor het SWF formaat is trouwens ook online te vinden
/edit nog een linkje > http://www.openswf.org/spec/SWFfileformat.html
Heel leuk allemaal maar helaas heeft dat er niets (wou geen 'bal' schrijven maar dat wens ik niemand toe ;) ) mee te maken. Tuurlijk 'rendert' de Player wel Pixels , tis gewoon dat de positie in 'twips' word uitgedrukt - dwz dat je dan een lijntje etc niet op integer values hoeft neer te plonken. ALLES wat op jouw scherm komt is gewoon 'pixel perfect'. De extra informatie (ie dus na de komma) wordt gebruikt voor het renderen naar pixels. (zoek effe ofp Wu Pixels, etc).

Flash Format kent helemaal geen pixels omdat het een vector formaat is, maar dit wist je zelf wel... maar WEL om te renderen.

Verwijderd

hobbit_be, kan je je edge rendering iets duidelijker uitleggen, en uitleggen hoe jij aan *4 in de size berekening komt?

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
edge 'rendering' nou ja had beter edge anti-alias zeggen. zoals je zelf wel weet gebeurt een alias artifact alleen op 'edges' - het heeft dus geen om bijvoorbeeld een vulling te gaan aliasing (tenzij bitmap). Nu een vector renderer weet heel goed waar deze overlaps gebeuren en gaat alleen die onderdelen 'renderen' (wat MX precies gebruikt is vast een wel kept secret want dit is moeilijk om goed en snel te krijgen) - in vroegere 3D kaarten werkte een alias ook alleen op 'de edges'. Hoe deze het nu is me nog niet precies duidelijk (maar wellicht wat jij zegt omdat het allemaal parallel (die resample) in hardware kan doen, maar ik verwacht wel dat ze alleen echte edges gaan aliasen en de rest mooi downsamplen of botweg copieren).

Deze techniek gebruik ik zelf ook voor mijn 'sub-pixel' perfect 32Bit rendering engine (ie ik weet waar een anti-alias nodig is). Flash is cool omdat ie tamelijk snel beziers kan aliases wat niet zo eenvoudig is.

Je zou denken dat het op een moderne bak niet zoveel zou mogen uitmaken maar als je grote polys hebt (ie veel oppervlak, weinig edge) is het verschil belachelijk veel.

*4 = 32bit renderer. Anti-alias werkt op alle 'channels' onafhankelijk en de alpha heb je ook nodig voor transparancy. HET probleem met transparancy is dat MX (eender welke engine) wel degelijk twee keer heel dat geheugen vlak moet opvullen (en dus rot is voor Z-Depth geklooi).

Wat flash doet is enorm zwaar voor je CPU, en ze gebruiken tricks (dus caching) enorm veel want als ie voor elke frame alles zou moeten hertekenen heb je een super-cpu nodig of dedicated hardware. (er zijn wel projectjes die SVG met OPENGL renderen maar erg vet is dat nog niet (en zal ook nooit zijn)).

Als je begrijpt wat ik bedoel zul je ook beseffen dat op een bepaald punt dit niet meer efficient is - (ie: weinig fill en veel content) , zou me niet verbazen als ze daar rekening mee houden.

Flash 4 gebruikte trouwens span-based-rendering net zoals de snelle software 3D. MX vast ook, of een 'adaptable' engine.

En een cubic downsample is ook traag (super) vandaar dat MX zo verschrikkelijk is als je bijvoorbeeld een embedded video gaat resizen (op mijn 400MHz valt ie onverbiddelijk plat: video kan niet gecached worden dus moet ie per frame dit gaan doen: alleen hardware kan dit realtime).

Hopelijk ben ik duidelijk. En natuurlijk zullen de MM er nog heel wat speciaal bijgooien - of dat hoop ik toch - want de Flash 4 code was niet echt 'fantastisch'. Het word tijd dat ze bij MM beseffen dat ze wel wat meer platform onafhankelijk mogen werken en de plugin size vergroten voor mensen die dat willen.

Verwijderd

Hobbit, nette uitleg, ben nog niet helemaal overtuigd, maar moet zeggen dat ik onder de indruk ben :) Demoscene zeker?

Overigens is er ook een opengl swf player. MEt het nadeel dat deze niet as doet.
Als je wat techdocs hebt om deze bevindingen te ondersteunen zou ik deze graag hier zien.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Verwijderd schreef op 18 June 2003 @ 10:18:
Hobbit, nette uitleg, ben nog niet helemaal overtuigd, maar moet zeggen dat ik onder de indruk ben :) Demoscene zeker?
Ex- ja :) ten tijde van Mode-X en Pascal - Asm combinatie. Ooit nog mee gedaan voor een demo aan Assembly 9*?
Overigens is er ook een opengl swf player. MEt het nadeel dat deze niet as doet.
Als je wat techdocs hebt om deze bevindingen te ondersteunen zou ik deze graag hier zien.
zoals ik al zei zullen de mannen van MM niet zo stom zijn om in detail uit te leggen wat ze doen (behalve te basics) - anders zouden de Illustrator klootzakken gewoon hetzelfde gaan doen (oo zo traag hier met aliasing ;) - eventueel kan ik je wel de code posten (private) van Flash 4. Je vind vast wel spul op:

http://citeseer.nj.nec.com/cs

DE plek voor al je graphics needs :)

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

hobbit_be schreef op 18 June 2003 @ 11:58:
eventueel kan ik je wel de code posten (private) van Flash 4.
Ik heb de code van de Flash 6 player hier liggen, maar eigenlijk nooit echt goed bekeken ( alleen actionscript implementatie ) maar mijn C++ kennis is een beetje vastgeroest om er echt nuttige info uit te halen. Volgens mij kun je een license op die code gewoon bij MM kopen trouwens.... :)

heldere uitleg trouwens :)

[ Voor 4% gewijzigd door oh,when? op 18-06-2003 12:18 ]

"You're only as good, as what you did last week."


Verwijderd

De code van de Flash 6 player is idd verkrijgbaar via een rfi :)

Idd Helder. Welkom Hobbit :)

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Verwijderd schreef op 18 June 2003 @ 17:35:
De code van de Flash 6 player is idd verkrijgbaar via een rfi :)
Kun je daar als particulier aangeraken? Zou best willen zien hoe ze het oplossen allemaal?

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

hobbit_be schreef op 18 juni 2003 @ 18:32:
[...]Kun je daar als particulier aangeraken? Zou best willen zien hoe ze het oplossen allemaal?
volgens mij als je een zak geld meeneemt wel, moet je ff op de macromedia site kijken. :)

"You're only as good, as what you did last week."


  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 22-08 08:05

GrimaceODespair

eens een tettenman, altijd ...

/me staat met open mond te gapen naar de vaktechnische kennis van bovengetekenden

B-top, is dat jou bijdrage aan de nieuwe FAQ ? :+

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

GrimaceODespair schreef op 19 juni 2003 @ 00:44:
B-top, is dat jou bijdrage aan de nieuwe FAQ ? :+
owja shit.... :X :X

"You're only as good, as what you did last week."


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
oh,when? schreef op 18 June 2003 @ 18:47:
[...]
volgens mij als je een zak geld meeneemt wel, moet je ff op de macromedia site kijken. :)
Heb effe geprobeert het in te vullen :) De vorige keer (met Flash 4) ben ik er ook zo aangeraakt :) Was het al vergeten...

Verwijderd

Errr, wanneer gaan we aan die faq beginnen GoD?

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 22-08 08:05

GrimaceODespair

eens een tettenman, altijd ...

Ik had al een paar dingetjes in een Word document gezet (A4-tje ofzo)... een maand geleden :) Ben zelf ook niet veel meer met Flash bezig geweest, maar aangezien ik enthousiast gereageerd heb op de uitnodiging om wat dingen ervoor te schrijven, voel ik mij zeker verplicht om daar iets aan te doen.

Het zou trouwens makkelijk zijn als we daar een communicatiekanaal voor hadden, zodat Owen, jij en ik er eens wat over kunnen breenstormen. Want dit topic van Patrick bevuilen is ook GoT-technisch niet zo netjes :)

Wij onderbreken deze thread voor reclame:
http://kalders.be


Verwijderd

Topicstarter
haha, nou mijn vraag is beantwoord, en ik vind de hele discussie die eruit ontstaan interessanter dan mijn vraag :D ... Toch blijf ik het vreemd vinden want nu zie ik net in de actionscript dictionary ook weer staan Textfield._highquality ... Ook hier staat dat deze eigenschap de global _highquality overschrijft. Maar ga gerust door met je discussie, ik heb er totaal geen moeite mee hoor ;)
Pagina: 1