Cumulia Illustrator Rendering Engine v1.0.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
material.h
1//##################################################################################################
2//
3// Copyright (c) 2024 Beijing Qiongqi Tech Co.,Ltd. All rights reserved.
4
5// This source code is confidential and proprietary to Beijing Qiongqi Tech Co.,Ltd(The Holder).
6// Any unauthorized use, copying, modification, or distribution of the code is strictly prohibited.
7// Any user shall obtain authorizaition from the Holder before modifying the source code. And the user shall not
8// sublicense, sell, distribute, or transfer the source code, whether in original or modified form, to any third party
9// without the prior written consent of the Holder.
10
11// This copyright notice and permission grant shall be included in all copies or substantial portions of the source code.
12
13// Author Cumulia Illustrator
14// Date 2024-05-01
15// Version V1.0.0
16//##################################################################################################
17
18#pragma once
19
20#include "program.h"
21#include "../variant/variant.h"
22#include "../object/object.h"
23#include "state.h"
24
25#include <memory>
26#include <vector>
27#include <map>
28
29namespace cil
30{
32 class Material : public Object
33 {
34 public:
35 std::shared_ptr<Program> program;
36 std::shared_ptr<std::map<std::string, std::shared_ptr<Variant>>> parameters;
37 std::shared_ptr<std::vector<std::shared_ptr<State>>> states;
38 };
39}
The Material class defines the material properties of an object. It affects the appearance of the obj...
Definition material.h:33
std::shared_ptr< std::vector< std::shared_ptr< State > > > states
This member is a dynamic array of shared pointers to States objects, which represents a collection of...
Definition material.h:37
std::shared_ptr< std::map< std::string, std::shared_ptr< Variant > > > parameters
This member is a shared pointer of a map object which uses a string as the key and a Variant as the v...
Definition material.h:36
std::shared_ptr< Program > program
This memeber is a shared pointer to a Program object, which represents a shader program containing ve...
Definition material.h:35
Definition object.h:23
Definition decal.h:23