In the middle of multithreading parsers.
This commit is contained in:
@@ -5,51 +5,67 @@
|
||||
#include "config/primitives.hpp"
|
||||
#include "assets/identifiers.hpp"
|
||||
#include "assets/data_stores/texture_store.hpp"
|
||||
#include "assets/data/surface_properties.hpp"
|
||||
#include "assets/data/uniform_surface_properties.hpp"
|
||||
#include "util/enum_bitfield_operators.hpp"
|
||||
|
||||
namespace assets::material_components
|
||||
{
|
||||
using surface_properties = surface_properties;
|
||||
using transparency = z3d::f32;
|
||||
using ambient_color_texture = texture_id;
|
||||
using diffuse_color_texture = texture_id;
|
||||
using specular_color_texture = texture_id;
|
||||
|
||||
using ambient_filter = z3d::vec3;
|
||||
using diffuse_filter = z3d::vec3;
|
||||
using specular_filter = z3d::vec3;
|
||||
using shininess = z3d::f32;
|
||||
using alpha = z3d::f32;
|
||||
using ambient_filter_texture = texture_id;
|
||||
using diffuse_filter_texture = texture_id;
|
||||
using specular_filter_texture = texture_id;
|
||||
using shininess_texture = texture_id;
|
||||
using alpha_texture = texture_id;
|
||||
using bump_texture = texture_id;
|
||||
|
||||
namespace indices
|
||||
{
|
||||
inline constexpr z3d::size surface_properties = 0;
|
||||
inline constexpr z3d::size transparency = 1;
|
||||
inline constexpr z3d::size ambient_color_texture = 2;
|
||||
inline constexpr z3d::size diffuse_color_texture = 3;
|
||||
inline constexpr z3d::size specular_color_texture = 4;
|
||||
inline constexpr z3d::size shininess_texture = 5;
|
||||
inline constexpr z3d::size alpha_texture = 6;
|
||||
inline constexpr z3d::size bump_texture = 7;
|
||||
enum : z3d::size
|
||||
{
|
||||
ambient_filter,
|
||||
diffuse_filter,
|
||||
specular_filter,
|
||||
shininess,
|
||||
alpha,
|
||||
ambient_filter_texture,
|
||||
diffuse_filter_texture,
|
||||
specular_filter_texture,
|
||||
shininess_texture,
|
||||
alpha_texture,
|
||||
bump_texture
|
||||
};
|
||||
}
|
||||
|
||||
enum class flags : z3d::u8
|
||||
{
|
||||
none = 0,
|
||||
surface_properties = 1 << indices::surface_properties,
|
||||
transparency = 1 << indices::transparency,
|
||||
ambient_filter_texture = 1 << indices::ambient_color_texture,
|
||||
diffuse_filter_texture = 1 << indices::diffuse_color_texture,
|
||||
specular_filter_texture = 1 << indices::specular_color_texture,
|
||||
ambient_filter = 1 << indices::ambient_filter,
|
||||
diffuse_filter = 1 << indices::diffuse_filter,
|
||||
specular_filter = 1 << indices::specular_filter,
|
||||
shininess = 1 << indices::shininess,
|
||||
alpha = 1 << indices::alpha,
|
||||
ambient_filter_texture = 1 << indices::ambient_filter_texture,
|
||||
diffuse_filter_texture = 1 << indices::diffuse_filter_texture,
|
||||
specular_filter_texture = 1 << indices::specular_filter_texture,
|
||||
shininess_texture = 1 << indices::shininess_texture,
|
||||
alpha_texture = 1 << indices::alpha_texture,
|
||||
bump_texture = 1 << indices::bump_texture
|
||||
};
|
||||
|
||||
using all = z3d::structure<
|
||||
surface_properties,
|
||||
transparency,
|
||||
ambient_color_texture,
|
||||
diffuse_color_texture,
|
||||
specular_color_texture,
|
||||
ambient_filter,
|
||||
diffuse_filter,
|
||||
specular_filter,
|
||||
shininess,
|
||||
alpha,
|
||||
ambient_filter_texture,
|
||||
diffuse_filter_texture,
|
||||
specular_filter_texture,
|
||||
shininess_texture,
|
||||
alpha_texture,
|
||||
bump_texture
|
||||
|
||||
Reference in New Issue
Block a user