Large Image Export
Kevin Rushforth
kevin.rushforth at oracle.com
Fri Jun 13 18:20:53 UTC 2014
The funny thing is I was sure I had typed 8u40, but my fingers had other
ideas. :)
-- Kevin
Stephen F Northover wrote:
> ... a rare instance of Kevin getting a release name wrong!
>
> Steve
>
> On 2014-06-13, 11:39 AM, Kevin Rushforth wrote:
>> > could be moved into 8u20
>>
>> I meant 8u40.
>>
>> -- Kevin
>>
>>
>> Kevin Rushforth wrote:
>>> This is RT-22073 <https://javafx-jira.kenai.com/browse/RT-22073>
>>> which is currently targeted for 9, but could be moved into 8u20 if
>>> there was enough demand to fix it. The (rather ugly) app-level
>>> workaround is to break the operation up into 4Kx4K tiles, and render
>>> the tiles in a loop specifying the appropriate viewport and
>>> translation via ShapshotParams.
>>>
>>> -- Kevin
>>>
>>>
>>>
>>> Danno Ferrin wrote:
>>>> While working on a fun project I discovered that the Image Export
>>>> limits
>>>> the size of the export textures, mostly depending on your graphics
>>>> stack.
>>>> Here's one example:
>>>>
>>>> java.lang.RuntimeException: Requested texture dimensions (20581x245)
>>>> require dimensions (0x245) that exceed maximum texture size (16384)
>>>> at com.sun.prism.es2.ES2RTTexture.create(ES2RTTexture.java:220)
>>>> at
>>>> com.sun.prism.es2.ES2ResourceFactory.createRTTexture(ES2ResourceFactory.java:106)
>>>>
>>>> at
>>>> com.sun.prism.es2.ES2ResourceFactory.createRTTexture(ES2ResourceFactory.java:102)
>>>>
>>>> at
>>>> com.sun.javafx.tk.quantum.QuantumToolkit$QuantumImage.getRT(QuantumToolkit.java:1210)
>>>>
>>>> at
>>>> com.sun.javafx.tk.quantum.QuantumToolkit$18.run(QuantumToolkit.java:1345)
>>>>
>>>> at
>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>>>>
>>>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
>>>> at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>>>>
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>>>>
>>>> at
>>>> com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:129)
>>>>
>>>>
>>>> This is on a mid-2012 Mac Book Air, and the MacGLConext looks to limit
>>>> dimensions to 2^14.
>>>>
>>>> Is there anything I can do other than making sure my nodes don't
>>>> get bigger
>>>> than 16K on one side? I've tried setting a transform on the
>>>> snapshot and
>>>> zooming it below 16k, but it still gets the same exception with he
>>>> same
>>>> dimensions.
>>>>
>>>> --Danno
>
More information about the openjfx-dev
mailing list