- Radeon ProRender SDK
- Downloading and Getting Started
- How to Use RPR SDK
- Data Types
- Data Structs
- Info and Setting Types
- rpr_aa_filter
- rpr_aov
- rpr_api_version
- rpr_bool
- rpr_buffer_element_type
- rpr_buffer_info
- rpr_camera_info
- rpr_camera_mode
- rpr_color_space
- rpr_component_type
- rpr_composite_info
- rpr_composite_type
- rpr_context_info
- rpr_context_sampler_type
- rpr_context_properties
- rpr_creation_flags
- rpr_curve_parameter
- rpr_environment_override
- rpr_framebuffer_info
- rpr_grid_indices_topology
- rpr_grid_parameter
- rpr_hetero_volume_filter
- rpr_hetero_volume_indices_topology
- rpr_hetero_volume_parameter
- rpr_image_filter_type
- rpr_image_info
- rpr_image_wrap_type
- rpr_instance_info
- rpr_light_info
- rpr_light_type
- rpr_lut_info
- rpr_material_node_arithmetic_operation
- rpr_material_node_info
- rpr_material_node_input
- rpr_material_node_input_info
- rpr_material_node_input_type
- rpr_material_node_lookup_value
- rpr_material_node_transform_op
- rpr_material_node_type
- rpr_material_node_uvtype_value
- rpr_material_system_info
- rpr_mesh_info
- rpr_object_info
- rpr_parameter_info
- rpr_parameter_type
- rpr_post_effect_info
- rpr_post_effect_type
- rpr_render_mode
- rpr_scene_info
- rpr_shape_info
- rpr_shape_type
- rpr_status
- rpr_subdiv_boundary_interfop_type
- rpr_tonemapping_operator
- rpr_ubermaterial_emission_mode
- rpr_ubermaterial_ior_mode
- rpr_volume_type
- Shaders
- rpr_material_node_add
- rpr_material_node_ao_map
- rpr_material_node_arithmetic
- rpr_material_node_blend
- rpr_material_node_blend_value
- rpr_material_node_buffer_sampler
- rpr_material_node_bump_map
- rpr_material_node_checker_texture
- rpr_material_node_constant_texture
- rpr_material_node_diffuse
- rpr_material_node_diffuse_refraction
- rpr_material_node_dot_texture
- rpr_material_node_emissive
- rpr_material_node_fresnel
- rpr_material_node_fresnel_schlick
- rpr_material_node_gradient_texture
- rpr_material_node_image_texture
- rpr_material_node_input_lookup
- rpr_material_node_microfacet
- rpr_material_node_microfacet_anisotropic_reflection
- rpr_material_node_microfacet_anisotropic_refraction
- rpr_material_node_microfacet_beckmann
- rpr_material_node_microfacet_refraction
- rpr_material_node_noise2d_texture
- rpr_material_node_normal_map
- rpr_material_node_orennayar
- rpr_material_node_passthrough
- rpr_material_node_phong
- rpr_material_node_reflection
- rpr_material_node_refraction
- rpr_material_node_transparent
- rpr_material_node_twosided
- rpr_material_node_uv_procedural
- rpr_material_node_uv_triplanar
- rpr_material_node_volume
- rpr_material_node_ward
- Tutorials
- Basic Scene Demo
- Context Creation
- Scene Creation
- Camera Setup
- Mesh Creation
- Instance Creation
- Deformation Motion Blur
- Point Light Creation
- Emissive Shape Creation
- Environment Light Creation
- Textured Material Creation
- Materials Demo
- Uber Material Creation
- SSS Uber Material Creation
- Two Sided Materials
- Tiled Rendering
- AOVs Setting
- Framebuffer Access
- OpenGL Interop
- Gamma Post Process Effect
- Curve Creation
- Import/Export
- Shadow Catcher
- Adaptive Sampling
- Tracing
- Parameters Enumeration
- Volume
- Hybrid
- Mesh Obj
- API Reference
- rprBufferGetInfo
- rprCameraGetInfo
- rprCameraLookAt
- rprCameraSetAngularMotion
- rprCameraSetApertureBlades
- rprCameraSetExposure
- rprCameraSetFarPlane
- rprCameraSetFocalLength
- rprCameraSetFocalTilt
- rprCameraSetFocusDistance
- rprCameraSetFStop
- rprCameraSetIPD
- rprCameraSetLensShift
- rprCameraSetLinearMotion
- rprCameraSetMode
- rprCameraSetNearPlane
- rprCameraSetOrthoHeight
- rprCameraSetOrthoWidth
- rprCameraSetSensorSize
- rprCameraSetTiltCorrection
- rprCameraSetTransform
- rprCompositeCompute
- rprCompositeGetInfo
- rprCompositeSetInput1u
- rprCompositeSetInput4f
- rprCompositeSetInputC
- rprCompositeSetInputFb
- rprCompositeSetInputLUT
- rprCompositeSetInputOp
- rprContextAbortRender
- rprContextAttachPostEffect
- rprContextAttachRenderLayer
- rprContextClearMemory
- rprContextCreateBuffer
- rprContextCreateCamera
- rprContextCreateComposite
- rprContextCreateCurve
- rprContextCreateDirectionalLight
- rprContextCreateDiskLight
- rprContextCreateEnvironmentLight
- rprContextCreateFrameBuffer
- rprContextCreateFramebufferFromGLTexture2D
- rprContextCreateGrid
- rprContextCreateHeteroVolume
- rprContextCreateIESLight
- rprContextCreateImage
- rprContextCreateImageFromFile
- rprContextCreateImageFromFileMemory
- rprContextCreateInstance
- rprContextCreateLUTFromData
- rprContextCreateLUTFromFile
- rprContextCreateMaterialSystem
- rprContextCreateMesh
- rprContextCreateMeshEx
- rprContextCreateMeshEx2
- rprContextCreatePointLight
- rprContextCreatePostEffect
- rprContextCreateScene
- rprContextCreateSkyLight
- rprContextCreateSphereLight
- rprContextCreateSpotLight
- rprContextDetachPostEffect
- rprContextDetachRenderLayer
- rprContextGetAOV
- rprContextGetAttachedPostEffect
- rprContextGetAttachedPostEffectCount
- rprContextGetInfo
- rprContextGetParameterInfo
- rprContextGetScene
- rprContextRender
- rprContextRenderTile
- rprContextResolveFrameBuffer
- rprContextSetActivePlugin
- rprContextSetAOV
- rprContextSetAOVindexLookup
- rprContextSetAOVindicesLookup
- rprContextSetParameterByKey1f
- rprContextSetParameterByKey1u
- rprContextSetParameterByKey3f
- rprContextSetParameterByKey4f
- rprContextSetParameterByKeyPtr
- rprContextSetParameterByKeyString
- rprContextSetParameterString
- rprContextSetScene
- rprCreateContext
- rprCurveGetInfo
- rprCurveSetMaterial
- rprCurveSetTransform
- rprCurveSetVisibility
- rprCurveSetVisibilityFlag
- rprDirectionalLightSetRadiantPower3f
- rprDirectionalLightSetShadowSoftnessAngle
- rprDiskLightSetAngle
- rprDiskLightSetRadiantPower3f
- rprDiskLightSetRadius
- rprEnvironmentLightAttachPortal
- rprEnvironmentLightDetachPortal
- rprEnvironmentLightGetEnvironmentLightOverride
- rprEnvironmentLightSetEnvironmentLightOverride
- rprEnvironmentLightSetImage
- rprEnvironmentLightSetIntensityScale
- rprFrameBufferClear
- rprFrameBufferFillWithColor
- rprFrameBufferGetInfo
- rprFrameBufferSaveToFile
- rprFrameBufferSaveToFileEx
- rprFrameBufferSetLPE
- rprGridGetInfo
- rprHeteroVolumeGetInfo
- rprHeteroVolumeSetAlbedo
- rprHeteroVolumeSetAlbedoGrid
- rprHeteroVolumeSetAlbedoLookup
- rprHeteroVolumeSetAlbedoScale
- rprHeteroVolumeSetDensityGrid
- rprHeteroVolumeSetDensityLookup
- rprHeteroVolumeSetDensityScale
- rprHeteroVolumeSetEmission
- rprHeteroVolumeSetEmissionGrid
- rprHeteroVolumeSetEmissionLookup
- rprHeteroVolumeSetEmissionScale
- rprHeteroVolumeSetFilter
- rprHeteroVolumeSetTransform
- rprIESLightSetImageFromFile
- rprIESLightSetImageFromIESdata
- rprIESLightSetRadiantPower3f
- rprImageGetInfo
- rprImageSetFilter
- rprImageSetGamma
- rprImageSetInternalCompression
- rprImageSetMipmapEnabled
- rprImageSetOcioColorspace
- rprImageSetUDIM
- rprImageSetWrap
- rprInstanceGetBaseShape
- rprLightGetInfo
- rprLightSetGroupId
- rprLightSetTransform
- rprMaterialNodeGetInfo
- rprMaterialNodeGetInputInfo
- rprMaterialNodeSetID
- rprMaterialNodeSetInputBufferDataByKey
- rprMaterialNodeSetInputFByKey
- rprMaterialNodeSetInputImageDataByKey
- rprMaterialNodeSetInputNByKey
- rprMaterialNodeSetInputUByKey
- rprMaterialSystemCreateNode
- rprMaterialSystemGetInfo
- rprMaterialSystemGetSize
- rprMeshGetInfo
- rprObjectDelete
- rprObjectSetName
- rprPointLightSetRadiantPower3f
- rprPostEffectGetInfo
- rprPostEffectSetParameter1f
- rprPostEffectSetParameter1u
- rprPostEffectSetParameter3f
- rprPostEffectSetParameter4f
- rprRegisterPlugin
- rprSceneAttachCurve
- rprSceneAttachHeteroVolume
- rprSceneAttachLight
- rprSceneAttachShape
- rprSceneClear
- rprSceneDetachCurve
- rprSceneDetachHeteroVolume
- rprSceneDetachLight
- rprSceneDetachShape
- rprSceneGetBackgroundImage
- rprSceneGetCamera
- rprSceneGetCameraRight
- rprSceneGetEnvironmentLight
- rprSceneGetInfo
- rprSceneSetBackgroundImage
- rprSceneSetCamera
- rprSceneSetCameraRight
- rprSceneSetEnvironmentLight
- rprShapeAttachRenderLayer
- rprShapeAutoAdaptSubdivisionFactor
- rprShapeDetachRenderLayer
- rprShapeGetInfo
- rprShapeMarkStatic
- rprShapeSetAngularMotion
- rprShapeSetContourIgnore
- rprShapeSetDisplacementMaterial
- rprShapeSetDisplacementScale
- rprShapeSetHeteroVolume
- rprShapeSetLayerMask
- rprShapeSetLightGroupID
- rprShapeSetLinearMotion
- rprShapeSetMaterial
- rprShapeSetMaterialFaces
- rprShapeSetMotionTransform
- rprShapeSetMotionTransformCount
- rprShapeSetObjectGroupID
- rprShapeSetObjectID
- rprShapeSetScaleMotion
- rprShapeSetReflectionCatcher
- rprShapeSetShadowCatcher
- rprShapeSetSubdivisionAutoRatioCap
- rprShapeSetSubdivisionBoundaryInterop
- rprShapeSetSubdivisionCreaseWeight
- rprShapeSetSubdivisionFactor
- rprShapeSetTransform
- rprShapeSetVertexValue
- rprShapeSetVisibility
- rprShapeSetVisibilityFlag
- rprShapeSetVisibilityInSpecular
- rprShapeSetVolumeMaterial
- rprSkyLightAttachPortal
- rprSkyLightDetachPortal
- rprSkyLightSetAlbedo
- rprSkyLightSetDirection
- rprSkyLightSetScale
- rprSkyLightSetTurbidity
- rprSphereLightSetRadiantPower3f
- rprSphereLightSetRadius
- rprSpotLightSetConeShape
- rprSpotLightSetImage
- rprSpotLightSetRadiantPower3f
- Transitioning from RPR 1.X to 2.0
- Radeon Image Filters
- Basic Example
- Filters
- ACES filmic tone mapping filter
- AI custom model filter
- AI denoiser filter
- AI upscale filter
- Auto linear tone mapping filter
- BGRA TO RGBA conversion filter
- Bilateral denoiser filter
- Binary operation filter
- Bloom filter
- Color space changing filter
- Convert filter
- Depth of field filter
- Dilate (erode) filter
- Drago tone mapping filter
- Dynamic resampling filter
- Edge-avoiding À-Trous wavelet filter
- Emboss filter
- Exponential tone mapping filter
- Filmic uncharted tone mapping filter
- Gamma correction filter
- Gaussian blurring filter
- Horizontal flip filter
- Hue-saturation changing filter
- Laplace edge detection filter
- Linear photographic tone mapping filter
- Linear tone mapping filter
- Local weighted regression filter
- Max-white tone mapping filter
- Median denoiser filter
- Morphological antialiasing filter
- Motion blur filter
- Motion buffer filter
- Multiplication filter
- NDC depth filter
- Photographic tone mapping filter
- Posterization filter
- Range remap filter
- Reinhard tone mapping filter
- Resampling filter
- RGB noise filter
- Rotation filter
- Sharpen filter
- Sobel edge detection filter
- Spread filter
- Temporal accumulation filter
- User defined filter
- Vertical flip filter
- Weighted sum filter
- Combining Filters
- Data Types
- Data Structs
- Info and Setting Types
- API Reference
- rifCommandQueueAttachImageFilter
- rifCommandQueueAttachImageFilterRect
- rifCommandQueueDetachImageFilter
- rifContextCreateCommandQueue
- rifContextCreateImage
- rifContextCreateImageFilter
- rifContextCreateImageFromDirectX11Buffer
- rifContextCreateImageFromDirectX11Texture
- rifContextCreateImageFromDirectX12Memory
- rifContextCreateImageFromMetalMemory
- rifContextCreateImageFromOpenClMemory
- rifContextCreateImageFromOpenGlTexture
- rifContextExecuteCommandQueue
- rifContextGetDeviceInfo
- rifContextGetInfo
- rifContextSetInfo
- rifCreateContext
- rifCreateContextFromDirectX12Context
- rifCreateContextFromMetalContext
- rifCreateContextFromOpenClContext
- rifCreateOpenCLContextSharedWithDirectX11
- rifFlushQueue
- rifGetDeviceCount
- rifGetErrorCodeDescription
- rifGetErrorCodeString
- rifGetLastErrorMessage
- rifImageFilterClearParameterImage
- rifImageFilterGetInfo
- rifImageFilterSetComputeType
- rifImageFilterSetParameter1f
- rifImageFilterSetParameter1i
- rifImageFilterSetParameter1u
- rifImageFilterSetParameter2f
- rifImageFilterSetParameter2i
- rifImageFilterSetParameter2u
- rifImageFilterSetParameter3f
- rifImageFilterSetParameter3i
- rifImageFilterSetParameter3u
- rifImageFilterSetParameter4f
- rifImageFilterSetParameter4i
- rifImageFilterSetParameter4u
- rifImageFilterSetParameter8f
- rifImageFilterSetParameter8i
- rifImageFilterSetParameter8u
- rifImageFilterSetParameter16f
- rifImageFilterSetParameter16i
- rifImageFilterSetParameter16u
- rifImageFilterSetParameterFloatArray
- rifImageFilterSetParameterImage
- rifImageFilterSetParameterImageArray
- rifImageFilterSetParameterString
- rifImageGetInfo
- rifImageMap
- rifImageUnmap
- rifObjectDelete
- rifParameterGetInfo
- rifSyncronizeQueue
- Tracing
- Radeon Machine Learning
- Examples
- Data Types
- Data Structs
- rml_context
- rml_context_params
- rml_graph
- rml_memory_info
- rml_model
- rml_op
- rml_op_batch_norm_params
- rml_op_bias_add_params
- rml_op_binary_params
- rml_op_cast_params
- rml_op_celu_params
- rml_op_clip_params
- rml_op_concat_params
- rml_op_const_params
- rml_op_conv_2d_params
- rml_op_conv_2d_transpose_params
- rml_op_desc
- rml_op_depth_to_space_params
- rml_op_elu_params
- rml_op_flatten_params
- rml_op_gemm_params
- rml_op_leaky_relu_params
- rml_op_local_response_norm_params
- rml_op_pad_params
- rml_op_placeholder_params
- rml_op_pool_2d_params
- rml_op_pool_2d_global_params
- rml_op_port_params
- rml_op_pow_params
- rml_op_quantize_linear_params
- rml_op_reduce_params
- rml_op_resize_2d_params
- rml_op_reshape_params
- rml_op_round_params
- rml_op_selu_params
- rml_op_slice_params
- rml_op_space_to_depth_params
- rml_op_squeeze_params
- rml_op_stack_params
- rml_op_thresholded_relu_params
- rml_op_top_k_params
- rml_op_transpose_params
- rml_op_unary_params
- rml_op_unsqueeze_params
- rml_size_2d
- rml_strings
- rml_tensor
- rml_tensor_info
- Info and Setting Types
- API Reference
- rmlConnectGraphs
- rmlCreateContextFromClQueue
- rmlCreateContextFromD3DQueue
- rmlCreateContextFromMTLQueue
- rmlCreateDefaultContext
- rmlCreateGraph
- rmlCreateModelFromGraph
- rmlCreateOperation
- rmlCreateTensor
- rmlCreateTensorFromClBuffer
- rmlCreateTensorFromD3DResource
- rmlCreateTensorFromMTLBuffer
- rmlGetClBufferFromTensor
- rmlGetD3DResourceFromTensor
- rmlGetGraphInputNames
- rmlGetGraphOutputNames
- rmlGetLastError
- rmlGetMTLBufferFromTensor
- rmlGetModelInputInfo
- rmlGetModelMemoryInfo
- rmlGetModelOutputInfo
- rmlGetTensorInfo
- rmlInfer
- rmlLoadGraph
- rmlLoadGraphFromBuffer
- rmlLoadGraphFromFile
- rmlMapTensor
- rmlPrepareModel
- rmlReleaseContext
- rmlReleaseGraph
- rmlReleaseModel
- rmlReleaseTensor
- rmlResetModelStates
- rmlSetD3DCommandList
- rmlSetDMLFloat16Allowed
- rmlSetLoggingEnabled
- rmlSetMIOpenAutoTuningOn
- rmlSetModelInput
- rmlSetModelInputInfo
- rmlSetModelOutput
- rmlSetModelOutputNames
- rmlSetNumD3DCommandLists
- rmlUnmapTensor
- RadeonRays
- Examples
- Data Types
- Data Structs
- Info and Setting Types
- API Reference
- rrAllocateAccelerationStructureDevicePtr
- rrAllocateCommandStream
- rrAllocateDeviceBuffer
- rrCmdBuildGeometry
- rrCmdBuildScene
- rrCmdIntersect
- rrCreateContext
- rrCreateContextDX
- rrCreateContextMTL
- rrCreateContextVk
- rrCreateGroupMPS
- rrDestroyContext
- rrGetCommandStreamFromD3D12CommandList
- rrGetCommandStreamFromMTLCommandBuffer
- rrGetCommandStreamFromVkCommandBuffer
- rrGetDevicePtrFromBuffer
- rrGetDevicePtrFromD3D12Resource
- rrGetDevicePtrFromMTLResource
- rrGetDevicePtrFromVkBuffer
- rrGetGeometryBuildMemoryRequirements
- rrGetSceneBuildMemoryRequirements
- rrGetTraceMemoryRequirements
- rrMapDevicePtr
- rrReleaseCommandStream
- rrReleaseDevicePtr
- rrReleaseEvent
- rrReleaseExternalCommandStream
- rrSetLogFile
- rrSetLogLevel
- rrSubmitCommandStream
- rrUnmapDevicePtr
- rrWaitEvent
- Uber Shader
- Radeon ProRender Plug-ins
- Material Library
- Blender
- Maya
- 3ds Max
- Unreal Engine
- Houdini
- Inventor
- USD Hydra Delegate
Gamma Correction Filter¶
Filter¶
RIF_IMAGE_FILTER_GAMMA_CORRECTION
Description¶
Gamma encoding of images is used to optimize the usage of bits when encoding an image, or bandwidth used to transport an image, by taking advantage of the non-linear manner in which humans perceive light and color. Can be defined as
Vout = Vin1/γ. Gamma correction should be used as the final stage of postprocessing for output to the low dynamic range (LDR) device or saving to an LDR image file.
Parameters¶
Parameter | Type | Input/Output | Description |
---|---|---|---|
gamma | float | input | The gamma value. A gamma value γ < 1 is sometimes called an encoding gamma, and the process of encoding with this compressive power-law nonlinearity is called gamma compression. Conversely, a gamma value γ > 1 is called a decoding gamma and the application of the expansive power-law nonlinearity is called gamma expansion. Value range is [0, 5], default value is 1. |
Usage Example¶
rif_image_filter filter = nullptr;
rifContextCreateImageFilter(context, RIF_IMAGE_FILTER_GAMMA_CORRECTION, &filter);
rifImageFilterSetParameter1f(filter, "gamma", 0.1f);
rifCommandQueueAttachImageFilter(queue, filter, inputImage, outputImage);
rifContextExecuteCommandQueue(context, queue, nullptr, nullptr, nullptr);