summaryrefslogtreecommitdiff
path: root/doc/classes/Sky.xml
blob: ba9c5ee661565aad955776cad0656a38a0ef399f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Sky" inherits="Resource" version="4.0">
	<brief_description>
		The base class for [PanoramaSky] and [ProceduralSky].
	</brief_description>
	<description>
		The base class for [PanoramaSky] and [ProceduralSky].
	</description>
	<tutorials>
	</tutorials>
	<methods>
	</methods>
	<members>
		<member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="Sky.ProcessMode" default="0">
			Sets the method for generating the radiance map from the sky. The radiance map is a cubemap with increasingly blurry versions of the sky corresponding to different levels of roughness. Radiance maps can be expensive to calculate. See [enum ProcessMode] for options.
		</member>
		<member name="radiance_size" type="int" setter="set_radiance_size" getter="get_radiance_size" enum="Sky.RadianceSize" default="2">
			The [Sky]'s radiance map size. The higher the radiance map size, the more detailed the lighting from the [Sky] will be.
			See [enum RadianceSize] constants for values.
			[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, especially [constant RADIANCE_SIZE_512] and above. Only use such high values on high-end hardware.
		</member>
	</members>
	<constants>
		<constant name="RADIANCE_SIZE_32" value="0" enum="RadianceSize">
			Radiance texture size is 32×32 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_64" value="1" enum="RadianceSize">
			Radiance texture size is 64×64 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_128" value="2" enum="RadianceSize">
			Radiance texture size is 128×128 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_256" value="3" enum="RadianceSize">
			Radiance texture size is 256×256 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_512" value="4" enum="RadianceSize">
			Radiance texture size is 512×512 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_1024" value="5" enum="RadianceSize">
			Radiance texture size is 1024×1024 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_2048" value="6" enum="RadianceSize">
			Radiance texture size is 2048×2048 pixels.
		</constant>
		<constant name="RADIANCE_SIZE_MAX" value="7" enum="RadianceSize">
			Represents the size of the [enum RadianceSize] enum.
		</constant>
		<constant name="PROCESS_MODE_QUALITY" value="0" enum="ProcessMode">
			Uses high quality importance sampling to process the radiance map. In general, this results in much higher quality than [constant PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be used if you plan on changing the sky at runtime.
		</constant>
		<constant name="PROCESS_MODE_REALTIME" value="1" enum="ProcessMode">
			Uses the fast filtering algorithm to process the radiance map. In general this results in lower quality, but substantially faster run times.
			[b]Note:[/b] The fast filtering algorithm is limited to 128x128 cubemaps, so [member radiance_size] must be set to [constant RADIANCE_SIZE_128].
		</constant>
	</constants>
</class>