Avara3D 0.2.0
C++ API reference
AmbientLight.h
1//
2// AmbientLight.h
3// avara3d
4//
5// Created by Morgan Davis on 7/31/2024.
6// Copyright © 2026 Morgan K Davis. All rights reserved.
7//
8
9#ifndef AVARA3D_VISUAL_LIGHT_AMBIENTLIGHT_H
10#define AVARA3D_VISUAL_LIGHT_AMBIENTLIGHT_H
11
12#include <string>
13
14#include "a3d/Color.h"
15#include "a3d/visual/light/Light.h"
16
17namespace a3d {
18
20 class AmbientLight : public Light {
21
22 public:
23 // [Public Lifecycle Functions]
24
27
29 explicit AmbientLight(const std::string& name);
30
32 explicit AmbientLight(const Color& color);
33
35 AmbientLight(const std::string& name, const Color& color);
36
37 AmbientLight(const AmbientLight&) = default;
38 AmbientLight& operator=(const AmbientLight&) = default;
39
40 AmbientLight(AmbientLight&&) noexcept = default;
41 AmbientLight& operator=(AmbientLight&&) noexcept = default;
42 };
43
44}
45
46#endif // AVARA3D_VISUAL_LIGHT_AMBIENTLIGHT_H
Uniform light that contributes independent of position, direction, or distance.
Definition: AmbientLight.h:20
AmbientLight(const std::string &name, const Color &color)
Creates an AmbientLight with name and color.
AmbientLight(const Color &color)
Creates an unnamed AmbientLight with color.
AmbientLight()
Creates an unnamed white AmbientLight.
AmbientLight(const std::string &name)
Creates a named white AmbientLight.
Represents a normalized RGBA color.
Definition: Color.h:27
Base class for light sources attached to Scene Nodes.
Definition: Light.h:32
const std::optional< std::string > & name() const
Returns the optional light name.
const Color & color() const
Returns the light color.