CameraAttributesPhysical

package
v0.0.0-...-357ca8a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2025 License: MIT Imports: 25 Imported by: 0

Documentation

Overview

CameraAttributesPhysical is used to set rendering settings based on a physically-based camera's settings. It is responsible for exposure, auto-exposure, and depth of field.

When used in a WorldEnvironment it provides default settings for exposure, auto-exposure, and depth of field that will be used by all cameras without their own CameraAttributes, including the editor camera. When used in a Camera3D it will override any CameraAttributes set in the WorldEnvironment and will override the Camera3Ds Camera3D.Far, Camera3D.Near, Camera3D.Fov, and Camera3D.KeepAspect properties. When used in VoxelGI or LightmapGI, only the exposure settings will be used.

The default settings are intended for use in an outdoor environment, tips for settings for use in an indoor environment can be found in each setting's documentation.

Note: Depth of field blur is only supported in the Forward+ and Mobile rendering methods, not Compatibility.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Advanced

type Advanced = class

Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.

type Any

type Any interface {
	gd.IsClass
	AsCameraAttributesPhysical() Instance
}

type Extension

type Extension[T gdclass.Interface] struct{ gdclass.Extension[T, Instance] }

Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension

func (*Extension[T]) AsCameraAttributes

func (self *Extension[T]) AsCameraAttributes() CameraAttributes.Instance

func (*Extension[T]) AsCameraAttributesPhysical

func (self *Extension[T]) AsCameraAttributesPhysical() Instance

func (*Extension[T]) AsObject

func (self *Extension[T]) AsObject() [1]gd.Object

func (*Extension[T]) AsRefCounted

func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted

func (*Extension[T]) AsResource

func (self *Extension[T]) AsResource() Resource.Instance

type ID

type ID Object.ID

ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.

func (ID) Instance

func (id ID) Instance() (Instance, bool)

type Instance

Instance of the class with convieniently typed arguments and results.

var Nil Instance

Nil is a nil/null instance of the class. Equivalent to the zero value.

func New

func New() Instance

func (Instance) AsCameraAttributes

func (self Instance) AsCameraAttributes() CameraAttributes.Instance

func (Instance) AsCameraAttributesPhysical

func (self Instance) AsCameraAttributesPhysical() Instance

func (Instance) AsObject

func (self Instance) AsObject() [1]gd.Object

func (Instance) AsRefCounted

func (self Instance) AsRefCounted() [1]gd.RefCounted

func (Instance) AsResource

func (self Instance) AsResource() Resource.Instance

func (Instance) AutoExposureMaxExposureValue

func (self Instance) AutoExposureMaxExposureValue() Float.X

The maximum luminance (in EV100) used when calculating auto exposure. When calculating scene average luminance, color values will be clamped to at least this value. This limits the auto-exposure from exposing below a certain brightness, resulting in a cut off point where the scene will remain bright.

func (Instance) AutoExposureMinExposureValue

func (self Instance) AutoExposureMinExposureValue() Float.X

The minimum luminance (in EV100) used when calculating auto exposure. When calculating scene average luminance, color values will be clamped to at least this value. This limits the auto-exposure from exposing above a certain brightness, resulting in a cut off point where the scene will remain dark.

func (Instance) ExposureAperture

func (self Instance) ExposureAperture() Float.X

Size of the aperture of the camera, measured in f-stops. An f-stop is a unitless ratio between the focal length of the camera and the diameter of the aperture. A high aperture setting will result in a smaller aperture which leads to a dimmer image and sharper focus. A low aperture results in a wide aperture which lets in more light resulting in a brighter, less-focused image. Default is appropriate for outdoors at daytime (i.e. for use with a default DirectionalLight3D), for indoor lighting, a value between 2 and 4 is more appropriate.

Only available when ProjectSettings "rendering/lights_and_shadows/use_physical_light_units" is enabled.

func (Instance) ExposureShutterSpeed

func (self Instance) ExposureShutterSpeed() Float.X

Time for shutter to open and close, evaluated as 1 / shutter_speed seconds. A higher value will allow less light (leading to a darker image), while a lower value will allow more light (leading to a brighter image).

Only available when ProjectSettings "rendering/lights_and_shadows/use_physical_light_units" is enabled.

func (Instance) FrustumFar

func (self Instance) FrustumFar() Float.X

Override value for Camera3D.Far. Used internally when calculating depth of field. When attached to a Camera3D as its Camera3D.Attributes, it will override the Camera3D.Far property.

func (Instance) FrustumFocalLength

func (self Instance) FrustumFocalLength() Float.X

Distance between camera lens and camera aperture, measured in millimeters. Controls field of view and depth of field. A larger focal length will result in a smaller field of view and a narrower depth of field meaning fewer objects will be in focus. A smaller focal length will result in a wider field of view and a larger depth of field meaning more objects will be in focus. When attached to a Camera3D as its Camera3D.Attributes, it will override the Camera3D.Fov property and the Camera3D.KeepAspect property.

func (Instance) FrustumFocusDistance

func (self Instance) FrustumFocusDistance() Float.X

Distance from camera of object that will be in focus, measured in meters. Internally this will be clamped to be at least 1 millimeter larger than FrustumFocalLength.

func (Instance) FrustumNear

func (self Instance) FrustumNear() Float.X

Override value for Camera3D.Near. Used internally when calculating depth of field. When attached to a Camera3D as its Camera3D.Attributes, it will override the Camera3D.Near property.

func (Instance) GetFov

func (self Instance) GetFov() Float.X

Returns the vertical field of view that corresponds to the FrustumFocalLength. This value is calculated internally whenever FrustumFocalLength is changed.

func (Instance) ID

func (self Instance) ID() ID

func (Instance) SetAutoExposureMaxExposureValue

func (self Instance) SetAutoExposureMaxExposureValue(value Float.X)

SetAutoExposureMaxExposureValue sets the property returned by [GetAutoExposureMaxExposureValue].

func (Instance) SetAutoExposureMinExposureValue

func (self Instance) SetAutoExposureMinExposureValue(value Float.X)

SetAutoExposureMinExposureValue sets the property returned by [GetAutoExposureMinExposureValue].

func (Instance) SetExposureAperture

func (self Instance) SetExposureAperture(value Float.X)

SetExposureAperture sets the property returned by [GetAperture].

func (Instance) SetExposureShutterSpeed

func (self Instance) SetExposureShutterSpeed(value Float.X)

SetExposureShutterSpeed sets the property returned by [GetShutterSpeed].

func (Instance) SetFrustumFar

func (self Instance) SetFrustumFar(value Float.X)

SetFrustumFar sets the property returned by [GetFar].

func (Instance) SetFrustumFocalLength

func (self Instance) SetFrustumFocalLength(value Float.X)

SetFrustumFocalLength sets the property returned by [GetFocalLength].

func (Instance) SetFrustumFocusDistance

func (self Instance) SetFrustumFocusDistance(value Float.X)

SetFrustumFocusDistance sets the property returned by [GetFocusDistance].

func (Instance) SetFrustumNear

func (self Instance) SetFrustumNear(value Float.X)

SetFrustumNear sets the property returned by [GetNear].

func (*Instance) SetObject

func (self *Instance) SetObject(obj [1]gd.Object) bool

func (Instance) Virtual

func (self Instance) Virtual(name string) reflect.Value

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL