Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
0.8.4:volumerendering [2022/06/16 13:36] – [Filtering and MipMaps] admin | 0.8.4:volumerendering [2022/06/16 13:46] – [Lighting] admin | ||
---|---|---|---|
Line 358: | Line 358: | ||
|Gamut|Texture used for mapping the 3D value during Raytracing| | |Gamut|Texture used for mapping the 3D value during Raytracing| | ||
|GamutMode|Defines when and how the value-color mapping happens. Here different modes are available: GamutNone, GamutByValue, | |GamutMode|Defines when and how the value-color mapping happens. Here different modes are available: GamutNone, GamutByValue, | ||
- | |GamutFactor|A factor applied to the absolute 3D value before mapping onto the gamut texture (default value is 1.0)| | + | |GamutFactor|A factor applied to the absolute 3D value before mapping onto the gamut texture (default value is 1.0). Use this value for shifting inside of the gamut texture. | |
+ | |GamutIntensity|Defines how intense coloring is.| | ||
+ | |GamutAlphaIntensity|Defines how intense alpha channel coloring is.| | ||
{{youtube> | {{youtube> | ||
Line 374: | Line 376: | ||
|GamutBySumMultiply|Gamut mapping will be applied to the final casted ray value and afterwards multiplied with the previously computed color value.| | |GamutBySumMultiply|Gamut mapping will be applied to the final casted ray value and afterwards multiplied with the previously computed color value.| | ||
- | ===== Filtering and MipMaps | + | ===== Lighting |
- | Since v0.8.4.2314 | + | Since v0.8.4.2314 |
- | You are also able to activate MipMaps, but in most test cases the result was unsatisfying. | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | The picture above is showing difference between nearest (left) and linear (right) filtering. | + | |
- | In most cases linear filtering is the expected output, but for some customers exact display of 3D data values is necessary. | + | |
+ | To activate lighting for a volumetric mesh, please use: | ||
<file pascal> | <file pascal> | ||
- | GorillaVolumetricMesh1.LinearFiltering := true; | + | GorillaVolumetricMesh1.UseLighting |
- | GorillaVolumetricMesh1.MipMaps | + | |
</ | </ | ||
+ | After it was activated, the implemented functions try to detect a surface from the given 3D data. | ||
+ | This is called IsoSurface detection. | ||
- | ===== Lighting ===== | + | Because this method always depends on the data, you can control this detection by **IsoSurfaceLimit** property. |
- | Since v0.8.4.2314 lighting and iso surface detection is also supported. | + | {{:0.8.4:vr_isosurf.jpg? |
- | Iso surface | + | <file pascal> |
+ | GorillaVolumetricMesh1.IsoSurfaceLimit := 0.125; | ||
+ | </ | ||
+ | |||
+ | When detection | ||
- | When detection of the volume surface was successful, we are able to apply lighting with all available shading models to it. | ||
The volumetric mesh therefore allows to choose between: Lambert, Phong, Blinn-Phong and PBR. | The volumetric mesh therefore allows to choose between: Lambert, Phong, Blinn-Phong and PBR. | ||
Line 402: | Line 403: | ||
<file pascal> | <file pascal> | ||
- | GorillaVolumetricMesh1.IsoSurfaceLimit := 0.125; | ||
GorillaVolumetricMesh1.ShadingModel := TGorillaShadingModel.smPBR; | GorillaVolumetricMesh1.ShadingModel := TGorillaShadingModel.smPBR; | ||
</ | </ | ||
- | __Notice:__ For PBR (physically based rendering) it does not need any PBR texture, instead it will use the // | + | __Notice:__ For PBR (physically based rendering) it does not need any PBR texture, instead it will use the // |
+ | |||
+ | |||
+ | {{youtube> | ||
+ | |||
+ | ===== Filtering and MipMaps ===== | ||
+ | |||
+ | Since v0.8.4.2314 switching between nearest and linear filtering is supported. | ||
+ | You are also able to activate MipMaps, but in most test cases the result was unsatisfying. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | The picture above is showing difference between nearest (left) and linear (right) filtering. | ||
+ | In most cases linear filtering is the expected output, but for some customers exact display of 3D data values is necessary. | ||
+ | |||
+ | <file pascal> | ||
+ | GorillaVolumetricMesh1.LinearFiltering := true; | ||
+ | GorillaVolumetricMesh1.MipMaps := true; | ||
+ | </ | ||
+ | |||
===== Multiple VolumetricMeshes / Complex Scenes ===== | ===== Multiple VolumetricMeshes / Complex Scenes ===== |