Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
bokeh [2020/01/10 09:29] adminbokeh [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-====== Bokeh / Depth Of Field ====== 
  
-To provide a more realistic look for you applications, Gorilla3D supplies a simple to use Bokeh (or Depth Of Field) component. 
- 
-{{ ::bokeh-example.jpg |}} 
- 
-In photography, bokeh is the aesthetic quality of the blur produced in the out-of-focus parts of an image produced by a lens.[2][3][4]  
- 
-Bokeh has been defined as "the way the lens renders out-of-focus points of light".[5]  
- 
-Differences in lens aberrations and aperture shape cause some lens designs to blur the image in a way that is pleasing to the eye, while others produce blurring that is unpleasant or distracting ("good" and "bad" bokeh, respectively).[6]  
- 
-Bokeh occurs for parts of the scene that lie outside the depth of field. Photographers sometimes deliberately use a shallow focus technique to create images with prominent out-of-focus regions. 
- 
-Bokeh is often most visible around small background highlights, such as specular reflections and light sources, which is why it is often associated with such areas.[6]  
- 
-However, bokeh is not limited to highlights; blur occurs in all out-of-focus regions of the image. 
- 
-__Source:__ https://en.wikipedia.org/wiki/Bokeh 
- 
-===== Limitations ===== 
- 
-Due to FMX limitations bokeh rendering have some harsh limitations. 
-In FMX the cameras near and far plane is hardcoded to 1.0 - 1000.0. 
-Therefore it's not possible to build a perfect implementation at the moment, 
-because camera's near/far plane need to be equal to bokeh shaders near/far plane. 
- 
-===== Example ===== 
- 
-<file pascal> 
-procedure TForm1.CreateBokeh(); 
-begin 
-  FBokeh := TGorillaBokeh.Create(FViewport); 
-  FBokeh.AutoFocus := true; 
-  FBokeh.Fstop := 1; 
-  FBokeh.FrustumNearFar := PointF(10, 100); 
-end; 
-</file>