I know iOS gives at least two or three options. A single enum seems cleaner 
than two properties (and yet another constructor! Speaking of which it would be 
better if this were a mutable property).

Is it that you don't like that some options can't be honored?

On Jul 13, 2013, at 12:00 PM, Kevin Rushforth <kevin.rushfo...@oracle.com> 
wrote:

> I don't really like the single enum approach. I would prefer to keep the 
> existing MSAA boolean, and then, if needed, add a separate attribute for 
> requesting the number of samples; if desired there could be a read-only 
> attribute that returns the actual number of samples used. Most chipsets give 
> limited (or no) control over the number of samples anyway so an enum doesn't 
> seem like a good fit.
> 
> -- Kevin
> 
> 
> Gerrit Grunwald wrote:
>> +1 for the enum approach...will make it easier to enhance for future 
>> options...
>> 
>> Gerrit 
>> Am 12.07.2013 um 19:55 schrieb Richard Bair <richard.b...@oracle.com>:
>> 
>>  
>>> Thor recently pushed an implementation for MSAA for those cases when the 
>>> feature is supported by the card and where a Scene (or SubScene) is created 
>>> with the antiAliasing flag set to true. MSAA is "Multi-sampled Anti 
>>> Aliasing", which means that the graphics card, when configured in this 
>>> mode, will sample each fragment multiple times. The upshot is that 3D 
>>> doesn't look as jaggy.
>>> 
>>> However this has an impact on performance (usually an extra buffer copy or 
>>> at the very least you will be sampling each pixel multiple times so if you 
>>> are doing something graphically intense then that might push you over the 
>>> edge where you start to see performance degradation). Now multi-sampling 
>>> can be 2x, 4x, etc. The higher the multi-sampling value, the better the 
>>> quality, and the lower the performance.
>>> 
>>> I'm also bothered but the name "antiAliasing" because there are many forms 
>>> of anti-aliasing in the world and it isn't clear which this is. I think 
>>> perhaps we should instead have an enum. The idea is that we can add to the 
>>> enum over time with greater options for how to perform the scene 
>>> antialiasing.
>>> 
>>> public enum SceneAntiAliasing {
>>>   DISABLED,
>>>   DEFAULT,
>>>   MSAA_2X,
>>>   MSAA_4X
>>> }
>>> 
>>> And then grow it over time to include potentially other techniques. My 
>>> thought here is that the implementation is going to matter to folks. 
>>> They're going to want to be able to make the performance / quality 
>>> tradeoff, and perhaps even the implementation tradeoff (since different 
>>> implementations may provide somewhat different results). DISABLED turns it 
>>> off, obviously. DEFAULT allows us to pick what we think is the best (might 
>>> be different on different platforms. Desktop might go with MSAA_16x or 
>>> equivalent while iOS might be MSAA_2X). Then some standard options.
>>> 
>>> Thoughts?
>>> Richard
>>>    

Reply via email to