Blender  V2.93
background.h
Go to the documentation of this file.
1 /*
2  * Copyright 2011-2013 Blender Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef __BACKGROUND_H__
18 #define __BACKGROUND_H__
19 
20 #include "graph/node.h"
21 
22 #include "util/util_types.h"
23 
25 
26 class Device;
27 class DeviceScene;
28 class Scene;
29 class Shader;
30 
31 class Background : public Node {
32  public:
34 
35  NODE_SOCKET_API(float, ao_factor)
36  NODE_SOCKET_API(float, ao_distance)
37 
38  NODE_SOCKET_API(bool, use_shader)
39  NODE_SOCKET_API(bool, use_ao)
40 
41  NODE_SOCKET_API(uint, visibility)
43 
44  NODE_SOCKET_API(bool, transparent)
45  NODE_SOCKET_API(bool, transparent_glass)
46  NODE_SOCKET_API(float, transparent_roughness_threshold)
47 
48  NODE_SOCKET_API(float, volume_step_size)
49 
50  Background();
51  ~Background();
52 
53  void device_update(Device *device, DeviceScene *dscene, Scene *scene);
54  void device_free(Device *device, DeviceScene *dscene);
55 
56  void tag_update(Scene *scene);
57 
58  Shader *get_shader(const Scene *scene);
59 };
60 
62 
63 #endif /* __BACKGROUND_H__ */
unsigned int uint
Definition: BLI_sys_types.h:83
NODE_DECLARE Background()
void device_update(Device *device, DeviceScene *dscene, Scene *scene)
void device_free(Device *device, DeviceScene *dscene)
Shader * get_shader(const Scene *scene)
void tag_update(Scene *scene)
Definition: device.h:293
Definition: shader.h:80
Scene scene
#define CCL_NAMESPACE_END
void KERNEL_FUNCTION_FULL_NAME() shader(KernelGlobals *kg, uint4 *input, float4 *output, int type, int filter, int i, int offset, int sample)
#define NODE_SOCKET_API(type_, name)
Definition: node.h:63
#define NODE_DECLARE
Definition: node_type.h:148
Definition: node.h:98